Files
knowledge-governance/compose.release-gates.yaml
姚章浩 6440e3f679 feat(release): 发布目标知识库可选(源库 → 目标库映射)
- 迁移 000044:production_kb_bindings + release_item_executions.target_knowledge_base_id
- 系统设置新增「生产知识库绑定(对内/对外)」:从生产 WeKnora 实际列表选库,
  保存时真校验(不存在拒收;生产端不可达只提示并如实回报),仅管理员可改
- 执行计划按绑定解析目标库并冻结进 release_item_executions;空目标直接拒收;
  已发布过的条目保留原目标(重试/回滚回到同一处)
- DocumentBundle.RemapKnowledgeBase:knowledges/chunks/knowledge_tags/wiki_pages/
  wiki_folders 的 knowledge_base_id 与 ES 文档字段改写为目标库,重算表/文档摘要并重新封装
- 契约比对改为「声明的映射对」(KnowledgeBaseMapping),其余字段继续 fail-closed
- 契约检查器 / 目标身份 / 验证器全部走映射后的目标库;对象通道无需改写
- Compose 拆分:数据面接线 compose.release-sim.yaml + 两道门禁 compose.release-gates.yaml
- 测试:RemapKnowledgeBase 全通道/无操作/fail-closed、映射契约、绑定接口、RBAC、真实 PG 集成
2026-10-08 15:41:13 +08:00

18 lines
907 B
YAML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 生产发布的两道门禁(请求门禁 + 执行门禁)。叠加这一份 = 真正「翻闸」。
# 用法:docker compose -f compose.yaml -f compose.release-sim.yaml -f compose.release-gates.yaml up -d api release-worker
# 翻闸后:
# - api 开放「授权发布 / 授权回滚」接口(授权人 = PRODUCTION_RELEASE_AUTHORIZER_REF,Bearer 0600 文件)
# - release-worker 加载发布配置并连接受限的目标数据面
# 关闭:去掉本文件重新 up 即可(门禁默认关闭)。
services:
api:
environment:
PRODUCTION_RELEASE_REQUESTS_ENABLED: "true"
PRODUCTION_BACKUP_RESTORE_VERIFIED: "true"
PRODUCTION_RELEASE_AUTHORIZER_REF: yaozhanghao
PRODUCTION_RELEASE_AUTH_TOKEN_FILE: /run/release-secrets/production_release_auth_token
release-worker:
environment:
RELEASE_WORKER_ENABLED: "true"
RELEASE_DEBUG_ITEM_ERRORS: "true"