feat: add template publish workflow

This commit is contained in:
2026-05-13 21:44:29 +08:00
parent 74af8c1f3b
commit 1da8acf9a4
11 changed files with 721 additions and 6 deletions
@@ -923,3 +923,49 @@
- reviewer 填写真实 `return-bundle.csv`
- reviewer 将 evidence 从 `TEMPLATE` 改成 `READY`
- 最终批准人填写真实批准日期并签署清单
## 2026-05-13 GOV-DB-006 完成与 GOV-API-007 模板发布链落地
### 本轮完成项
- 已完成 `GOV-DB-006`:
- `contract_templates` 增加 `template_code`、`published_at`、`published_by`、`latest_governance_asset_id`
- 新增迁移:`backend/migrations/versions/20260513_0018_add_template_publish_fields.py`
- 现有模板会按合同类型/名称自动补齐模板编号,用于和 formal-launch 治理资产映射
- 已完成 `GOV-API-007` 的模板分支:
- 新增模板发布接口:`POST /api/v1/templates/{template_id}/publish`
- 新增模板下线接口:`POST /api/v1/templates/{template_id}/unpublish`
- 新增模板回滚接口:`POST /api/v1/templates/{template_id}/rollback`
- 模板发布前会校验 `template_code` 对应治理资产是否处于生产可发布状态
- 模板回滚会生成新的模板版本,而不是直接覆盖旧版本
- 已补齐模板页的基础操作:
- 模板列表显示 `template_code` 和发布状态
- 管理员可在模板页直接执行“发布 / 下线”
- 在版本历史中可直接执行“回滚到此版本”
- 已顺手修复模板前端表单一个老问题:
- `template_category` 和 `industry_category` 现在会真正随表单提交,不再只停在前端显示层
### 本轮验证
- 后端测试:
- `python -m unittest tests.test_template_service tests.test_templates_api`
- 结果:`21 tests OK`
- 后端编译:
- `python -m py_compile backend/app/services/template_service.py backend/app/api/templates.py`
- 结果:通过
- 前端检查:
- `npm --prefix frontend run lint`
- 结果:通过
- `npm --prefix frontend run build`
- 结果:通过,模板页构建正常
### 当前状态更新
- `GOV-DB-006` 已从 `PLANNED` 更新为 `COMPLETED`
- `GOV-API-007` 已进入 `IN_PROGRESS`
- 模板发布链已具备
- 规则发布链、知识库发布链仍未补齐
- 现在模板层已具备“编辑 -> 版本化 -> 发布 -> 下线 -> 回滚”的正式治理动作
### 当前阻塞项
- `GOV-API-007` 还未全量完成:
- `review_rules` 仍缺 publish / unpublish / rollback
- `knowledge_bases` 仍缺 publish / unpublish / rollback
- 正式生产放行层面仍然继续阻塞在真实人工复核和最终批准签署
@@ -4,7 +4,7 @@ batch,priority,area,task_id,title,current_gap,target_deliverable,depends_on,acce
5A,P0,database,GOV-DB-003,新增复核决议表,当前复核结论只存在CSV回填模板中,新增 governance_review_decisions 表支持 approved rejected changes_required 等结果,GOV-DB-001;GOV-DB-002,系统可记录多次复核历史和最新有效结论,COMPLETED
5A,P0,database,GOV-DB-004,新增证据登记表,当前证据路径和证据状态只存在文档与脚本规则中,新增 governance_evidences 表支持 file_id url status checksum reviewer metadata,GOV-DB-001,系统可校验证据是否存在且不是模板占位,COMPLETED
5A,P0,database,GOV-DB-005,新增发布批次与门禁结果表,当前上线批准状态只存在 PowerShell 产物中,新增 governance_release_batches 和 governance_gate_runs 表,GOV-DB-001;GOV-DB-003;GOV-DB-004,系统可追踪一次发布批次的门禁快照和结果,COMPLETED
5A,P1,database,GOV-DB-006,模板表补治理字段,contract_templates 只有内容和启停没有版本与发布元数据,为 contract_templates 增加 template_code version published_at published_by latest_governance_asset_id,GOV-DB-001,模板可区分草稿版和生产发布版,PLANNED
5A,P1,database,GOV-DB-006,模板表补治理字段,contract_templates 只有内容和启停没有版本与发布元数据,为 contract_templates 增加 template_code version published_at published_by latest_governance_asset_id,GOV-DB-001,模板可区分草稿版和生产发布版,COMPLETED
5A,P1,database,GOV-DB-007,知识库文档表补法源元数据,知识库文档缺少效力级别生效日期发文机关和法源类型,为知识库相关表增加 source_type authority effective_date region tags,none,知识库可按法源维度治理和过滤,PLANNED
5B,P0,backend_api,GOV-API-001,新增治理资产列表接口,当前没有统一治理视图接口,新增 /governance/assets 列表筛选汇总接口,GOV-DB-001,前端可按资产类型状态角色查看治理资产,COMPLETED
5B,P0,backend_api,GOV-API-002,新增复核分配接口,当前无法在系统内分配真实复核人,新增 /governance/assignments 创建更新撤销接口,GOV-DB-002,管理员可在系统内完成复核任务分配,COMPLETED
@@ -12,7 +12,7 @@ batch,priority,area,task_id,title,current_gap,target_deliverable,depends_on,acce
5B,P0,backend_api,GOV-API-004,新增证据上传绑定接口,当前系统没有专门的治理证据绑定接口,新增 /governance/evidences 上传绑定替换校验接口,GOV-DB-004,系统可阻止模板证据进入已批准状态,COMPLETED
5B,P0,backend_api,GOV-API-005,新增上线批准汇总接口,当前没有系统内 release approval summary,新增 /governance/releases/summary 和 /governance/releases/{id} 接口,GOV-DB-005,前端可直接展示当前上线阻断项与通过项,COMPLETED
5B,P0,backend_api,GOV-API-006,新增CSV台账导入接口,当前正式上线台账只靠仓库脚本导入,新增 /governance/imports/formal-launch 接口读取既有 CSV 映射到治理表,GOV-DB-001;GOV-DB-002;GOV-DB-003;GOV-DB-004,旧台账可一次性导入数据库且保留来源信息,COMPLETED
5B,P1,backend_api,GOV-API-007,模板规则知识库发布接口,当前内容模块没有生产发布动作,为 templates review-rules knowledge-bases 增加 publish/unpublish/rollback 接口,GOV-DB-005;GOV-DB-006,已批准资产才能被发布到生产可用集合,PLANNED
5B,P1,backend_api,GOV-API-007,模板规则知识库发布接口,当前内容模块没有生产发布动作,为 templates review-rules knowledge-bases 增加 publish/unpublish/rollback 接口,GOV-DB-005;GOV-DB-006,已批准资产才能被发布到生产可用集合,IN_PROGRESS
5C,P0,frontend,GOV-WEB-001,新增复核总控中心页面,当前没有统一治理控制台,新增 /governance 页面展示资产统计阻断项角色视图和发布批次,GOV-API-001;GOV-API-005,管理员可在单页看到当前正式上线治理全貌,COMPLETED
5C,P0,frontend,GOV-WEB-002,新增复核人工作台页面,当前真实法务业务运营没有系统内待办页,新增 /governance/workbench 页面支持按角色查看待处理任务,GOV-API-001;GOV-API-002;GOV-API-003,复核人可只看到与自己相关的任务包,COMPLETED
5C,P0,frontend,GOV-WEB-003,新增资产详情与证据页,当前无法在系统内查看单资产的签署链和证据链,新增治理资产详情页和证据面板,GOV-API-001;GOV-API-003;GOV-API-004,可在页面内查看每个资产的复核记录和证据状态,COMPLETED
1 batch priority area task_id title current_gap target_deliverable depends_on acceptance status
4 5A P0 database GOV-DB-003 新增复核决议表 当前复核结论只存在CSV回填模板中 新增 governance_review_decisions 表支持 approved rejected changes_required 等结果 GOV-DB-001;GOV-DB-002 系统可记录多次复核历史和最新有效结论 COMPLETED
5 5A P0 database GOV-DB-004 新增证据登记表 当前证据路径和证据状态只存在文档与脚本规则中 新增 governance_evidences 表支持 file_id url status checksum reviewer metadata GOV-DB-001 系统可校验证据是否存在且不是模板占位 COMPLETED
6 5A P0 database GOV-DB-005 新增发布批次与门禁结果表 当前上线批准状态只存在 PowerShell 产物中 新增 governance_release_batches 和 governance_gate_runs 表 GOV-DB-001;GOV-DB-003;GOV-DB-004 系统可追踪一次发布批次的门禁快照和结果 COMPLETED
7 5A P1 database GOV-DB-006 模板表补治理字段 contract_templates 只有内容和启停没有版本与发布元数据 为 contract_templates 增加 template_code version published_at published_by latest_governance_asset_id GOV-DB-001 模板可区分草稿版和生产发布版 PLANNED COMPLETED
8 5A P1 database GOV-DB-007 知识库文档表补法源元数据 知识库文档缺少效力级别生效日期发文机关和法源类型 为知识库相关表增加 source_type authority effective_date region tags none 知识库可按法源维度治理和过滤 PLANNED
9 5B P0 backend_api GOV-API-001 新增治理资产列表接口 当前没有统一治理视图接口 新增 /governance/assets 列表筛选汇总接口 GOV-DB-001 前端可按资产类型状态角色查看治理资产 COMPLETED
10 5B P0 backend_api GOV-API-002 新增复核分配接口 当前无法在系统内分配真实复核人 新增 /governance/assignments 创建更新撤销接口 GOV-DB-002 管理员可在系统内完成复核任务分配 COMPLETED
12 5B P0 backend_api GOV-API-004 新增证据上传绑定接口 当前系统没有专门的治理证据绑定接口 新增 /governance/evidences 上传绑定替换校验接口 GOV-DB-004 系统可阻止模板证据进入已批准状态 COMPLETED
13 5B P0 backend_api GOV-API-005 新增上线批准汇总接口 当前没有系统内 release approval summary 新增 /governance/releases/summary 和 /governance/releases/{id} 接口 GOV-DB-005 前端可直接展示当前上线阻断项与通过项 COMPLETED
14 5B P0 backend_api GOV-API-006 新增CSV台账导入接口 当前正式上线台账只靠仓库脚本导入 新增 /governance/imports/formal-launch 接口读取既有 CSV 映射到治理表 GOV-DB-001;GOV-DB-002;GOV-DB-003;GOV-DB-004 旧台账可一次性导入数据库且保留来源信息 COMPLETED
15 5B P1 backend_api GOV-API-007 模板规则知识库发布接口 当前内容模块没有生产发布动作 为 templates review-rules knowledge-bases 增加 publish/unpublish/rollback 接口 GOV-DB-005;GOV-DB-006 已批准资产才能被发布到生产可用集合 PLANNED IN_PROGRESS
16 5C P0 frontend GOV-WEB-001 新增复核总控中心页面 当前没有统一治理控制台 新增 /governance 页面展示资产统计阻断项角色视图和发布批次 GOV-API-001;GOV-API-005 管理员可在单页看到当前正式上线治理全貌 COMPLETED
17 5C P0 frontend GOV-WEB-002 新增复核人工作台页面 当前真实法务业务运营没有系统内待办页 新增 /governance/workbench 页面支持按角色查看待处理任务 GOV-API-001;GOV-API-002;GOV-API-003 复核人可只看到与自己相关的任务包 COMPLETED
18 5C P0 frontend GOV-WEB-003 新增资产详情与证据页 当前无法在系统内查看单资产的签署链和证据链 新增治理资产详情页和证据面板 GOV-API-001;GOV-API-003;GOV-API-004 可在页面内查看每个资产的复核记录和证据状态 COMPLETED