diff --git a/project-docs/AI合同起草与审查助手-当前工作进度保存-2026-05-11.md b/project-docs/AI合同起草与审查助手-当前工作进度保存-2026-05-11.md index 230bf3ed..534fdd77 100644 --- a/project-docs/AI合同起草与审查助手-当前工作进度保存-2026-05-11.md +++ b/project-docs/AI合同起草与审查助手-当前工作进度保存-2026-05-11.md @@ -1859,3 +1859,48 @@ - 正式上线前完整生产门禁演练已经通过。 - Git 在演练前为 `main...origin/main 0/0`,工作区干净。 - 当前还没有真正执行生产部署动作;下一步如果继续,就是进入真实生产部署或先生成上线发布记录。 + +## 2026-05-16 真实生产后端部署与发布门禁闭环 + +### 本轮完成项 +- 已进入真实生产部署链路,不再停留在演练: + - 前端 Docker 部署已执行,远程前端替换、构建和重启完成。 + - 首次前端部署后的发布门禁失败,根因不是前端部署动作失败,而是生产后端仍是旧版本,`/api/v1/system/readiness` 缺少新前端需要的 P0 / pilot 字段,导致 `/pilot-readiness` 页面运行时报错。 +- 已补齐独立后端 Docker 部署入口: + - `scripts/deploy-backend-docker.ps1` + - 部署包文档和正式生产部署清单已补充“后端 API 契约变更时先发后端、再发前端”的顺序说明。 +- 已修复后端迁移中的 PostgreSQL JSON 绑定问题: + - `backend/migrations/versions/20260512_0016_create_contract_template_versions.py` + - 解决 `contract_template_versions.variables_json` 插入时 PostgreSQL 无法适配 dict/list 的问题。 +- 已修复生产回归中发现的治理版本外键删除问题: + - `backend/app/services/review_rule_service.py` + - `backend/app/services/template_service.py` + - `backend/app/repositories/review_rule_version_repository.py` + - `backend/app/repositories/contract_template_version_repository.py` + - 删除规则或模板前,先删除对应版本快照,避免 PostgreSQL 外键导致 `DELETE /review-rules/{id}` 和 `DELETE /templates/{id}` 返回 500。 + +### 本轮验证 +- 本地后端验证: + - `backend\.venv\Scripts\python.exe -m py_compile app\services\review_rule_service.py app\services\template_service.py app\repositories\review_rule_version_repository.py app\repositories\contract_template_version_repository.py` + - `backend\.venv\Scripts\python.exe -m unittest tests.test_review_rule_service tests.test_template_service tests.test_review_rules_api tests.test_templates_api` + - 结果:`40 tests OK` +- 真实后端 Docker 部署: + - 命令:`powershell -NoProfile -ExecutionPolicy Bypass -File scripts\deploy-backend-docker.ps1 -IncludeBackupDrill` + - 产物:`project-docs/qa-artifacts/phase7-backend-docker-deploy/2026-05-16T13-19-01/backend-docker-deploy-summary.md` + - 结果:`PHASE7_BACKEND_DOCKER_DEPLOY_PASS` + - 远程备份:`/opt/ai-contract-platform/backups/phase7-backend-deploy/backend-before-2026-05-16T13-19-01.tgz` +- 部署后生产发布门禁: + - 产物:`project-docs/qa-artifacts/phase7-backend-docker-deploy/2026-05-16T13-19-01/release-gate/2026-05-16T13-19-17/release-gate-summary.md` + - 结果:`Status=PASS` + - 通过项: + - `dependency governance=PASS` + - `production health=PASS` + - `security baseline=PASS` + - `production regression=PASS` + - `backup drill=PASS` + +### 当前状态 +- 真实生产后端已经部署到 `192.168.3.90`,容器已重建并通过部署后发布门禁。 +- 前端部署后曾出现的 `/pilot-readiness` 契约不一致问题已随后端部署消除。 +- Phase 1 生产回归中暴露的规则/模板删除 500 问题已修复、提交、部署并经生产回归验证通过。 +- 当前没有新的生产发布阻塞项。