Files
mini-openclaw-v2/docs/project-process/07-delivery.md
T
qiaoqichaoandClaude Code d56c699ce6 chore(v2): 从兴邦预审v2白名单抽取独立可运行基座
按 docs/v2/05-implementation-plan.md §1 候选迁移表与 claude_use/T00 白名单,
从 55e2cdb 抽取 224 个文件(2.48 MB)到独立目录 F:/mini-OpenClaw-v2。

- 排除:凭据(.env/server-deploy.conf/旧DELIVERY.md)、运行数据(xingbang_data 等
  4 个 SQLite)、依赖(venv/node_modules 符号链接)、归档(_backup*/test-evidence/
  ori_file)、Office 临时文件
- 目标目录独立 git 仓库,初始恢复点;Gitea 远程与分支待 OQ-06 Q2 定案
- 未部署、未启动服务、未调用模型

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-29 12:58:26 +08:00

4.6 KiB

阶段 ⑦ 交付与发布

输入:验证通过的修订及证据。输出:实际目标分支/环境接受记录、产物和回滚路径。备份、合并、镜像推送、云端部署是四个不同边界。

1. 要求与DoD

  • 明确本次是源码备份、文档交付、代码合并还是部署,不能混称上线。
  • 验证绑定最终源码修订;未通过时不发布镜像。
  • 外部/生产/共享状态变更有任务授权及可核验记录;已有授权无需重复确认。
  • 分支/镜像/数据资源有明确恢复路径和owner。
  • 目标环境实际观测成功;未观测项标Unobserved。

2. 规则

ID 规则
R-7.1 真实边界证据绑定revision:远程分支SHA、合并记录、镜像摘要、目标健康检查分别记录;本地通过不能冒充部署
R-7.2 改动通过可比较的分支/PR进入默认分支;本项目当前main,操作前核对;不直接覆盖main
R-7.3 必需检查绑定最终源码修订;验证之后有行为变化须重验相关检查
R-7.4 删除、生产数据、模型外发、镜像发布和部署须在副作用前具有相应用户/策略授权;不足时明确具体阻塞点
R-7.5 审计记录谁、何时、何操作、作用资源、授权来源和结果;日志不含凭据
R-7.6 无高风险操作的项标N/A并说明;纯文档不能被误当成必须部署
R-7.7 恢复方式绑定具体提交、镜像和数据资源,owner与恢复后检查明确
R-7.8 可用性以安全验证支持,不能为证明回滚去破坏当前运行;未演练标未演练
R-7.9 失败/超时也须可恢复;代码回退不等于数据恢复,迁移不得依靠删库回退

3. 本项目执行路径

3.1 源码备份

先git status/log确认用户改动→检查新增凭据/运行数据→显式暂存选定文件→在codex/备份分支提交→推送已确认origin→git ls-remote比对SHA。备份可保存未完成状态,必须注明测试状态,不充当发布候选。

不提交.env、server-deploy.conf、.docker-codex、会话/数据库/日志、Office锁文件;代码内样例须标演示。已跟踪文件不因.gitignore自动移出历史,迁移时另外检查。恢复用新目录克隆指定分支,不重置用户现有目录。

3.2 合并前验证

仓库根目录使用项目虚拟环境:

.\backend\venv\Scripts\python.exe scripts/verify.py

报告位于test-evidence//REPORT.md。PR至少一人评审,目标分支和最终SHA明确。Gitea runner和必需检查未核验时如实说明,不借GitHub YAML宣称已有Gitea门禁。

3.3 镜像与部署

现有入口:Dockerfile、docker-entrypoint.sh、docker-compose.yml、deploy/docker-compose.aliyun.yml;发布脚本scripts/publish-acr.ps1和scripts/publish-acr.sh;部署脚本scripts/deploy-aliyun.sh。

只有授权发布时才运行。发布前复查脚本参数与目标,因为当前配置是旧版资源。先verify→构建→使用不可变Git标签和镜像摘要→推ACR→目标拉取→Compose up→检查前端、/api/xingbang/health和关键业务操作→保存服务器结果。实际脚本若不足以执行某门禁,应补齐并测试后再宣称机制成立。

当前云端Compose仅绑定127.0.0.1;保持授权访问边界,公网开放需要另行定义身份、TLS和访问控制。使用示例环境文件准备实际配置,密钥经受控渠道配置;文档不存真实值。

3.4 v2隔离

v2必须独立目录、Compose项目、容器名、卷、镜像和宿主端口。未完成隔离时不得直接用旧版Compose部署新版。数据库迁移先备份并演练;不运行down -v或清理脚本删除旧业务数据。配置和脚本存在不代表隔离已验证。

4. 交付记录模板

目标边界;源码SHA/分支;验证命令与日志;镜像标签/摘要(如适用);环境与数据资源;授权来源;接受证据;回滚方式与owner;尚未验证的范围。通过率/模型效果须有业务评估,不能写成部署成功的附带结论。

5. 轻量路径

纯文档:链接/编号/格式/事实检查、独立提交、所需远程备份核验;镜像/部署N/A。源码恢复快照记录原样保留的检查失败,但不能因此发布。行为变更仍执行阶段⑥和AGENTS规定的verify。

6. 相关文档

验证 · 学习 · 当前部署和Gitea · 本次交付。

变更:XB-1.0 / 2026-09-28,改为Gitea+Docker+ACR/ECS流程,未执行云端部署。