# 发布源码 发行包用于作为独立 Git 仓库根目录或 DSH 本地插件目录。主工作目录可能还有其他项目和私有材料,不能把整个父目录推送。只使用构建产出的源码 ZIP,保留隐藏的 `.github`、`.gitignore` 等文件。 ## 本地发布检查 全部开发、文档与测试修改完成后执行: ```text python tools/check.py python tools/check.py --installation python tools/release.py ``` 第二条是有 DSH 安装时的额外验收,不属于普通 CI。构建先检查明确列出的源文件,再生成暂存 ZIP,验证每个文件字节和压缩包隐私,全部通过才产生最终 ZIP。校验或隐私检查失败不覆盖前一个成功包。固定成员时间与文件模式,使用无需压缩器的 ZIP 存储方式;相同源字节产生相同 ZIP。 `dist` 中得到版本化 ZIP、逐文件哈希清单、`SHA256SUMS`。清单不含电脑路径、用户名和构建时间。保存旧版本 ZIP 可回退;构建不自动上传或打标签。 ## 建立公开仓库 1. 解压源码 ZIP 到新的独立目录,检查隐私扫描结果和文件清单。 2. 创建你选择的公开仓库;本项目不预填维护者姓名、邮箱或尚不存在的仓库地址。 3. 以该目录为仓库根上传,勿上传本机状态、采集输出或私有验收报告。 4. 启用 Actions;等待 Windows、Linux、macOS 的合成测试完成。已提供流程不代表远端已经执行通过。 5. 按需启用 GitHub 的私密漏洞报告。设置实际仓库信息之后,再添加 repository/homepage/bugs 等字段。 6. 创建对应版本标签与 Release,附上 ZIP、版本化 manifest 和 SHA256SUMS。 `package.json` 的 `private: true` 是防止误发布到 npm,不妨碍公开源码或 DSH 本地安装。未经单独规划,不应把宿主 peer 依赖当作完整 npm 安装链路。 ## 版本和兼容性 版本号只在 `package.json` 维护;宿主回执和诊断从它读取。升级宿主或微信版本后分别验证加载、固定采集、文本读取、取消、隐私和 Auto 边界。不要将合成测试、真实运行时注册、真实采集和模型摘要质量混为一项“通过”。 GitHub Actions 依赖已固定到公开上游提交,具体来源见 `tools/upstream-sources.json`。升级动作提交需复核对应官方仓库;工作流只有读取源码和上传合成构建产物的权限,不进行公开 Release 发布。