Files
knowledge-governance/docs/DOCUMENT_WORKBENCH_ACCEPTANCE.md
zheromiku dcdc8d1ddd feat: 知识治理平台(含已验证发布/回滚契约)
全栈知识治理平台首次入库(P1-P10 + 发布链路模拟验证闭环):

- 治理核心:源目录/变更集/人工审核/发布批次/发布执行(fail-closed 闸口)
- 测试通道:WeKnora 测试 KB 上传/轮询/验收;poll 完成时写入
  parser_generation/index_generation,修复 manual/seed 路径发布闸口永久拦截
- 发布适配器 v071(本地 source=测试角色 / 云端 target=生产角色 模拟验证通过):
  * ES 导出/导入 mapping 自适应(.keyword 子字段、可选 tenant_id)
  * OSS locator 支持嵌套 scheme;chunks.seq_id 由目标序列分配
  * bundle 归档同身份重试原子替换;verifier 按 bundle chunk_type 计数
  * 回滚 job payload 支持 prior_execution_id(strict 解码)
- 三通道发布+回滚演练实测:publish 4/4 verified,检索命中,
  rollback 4/4 rolled_back,目标端 PG is_enabled=false、ES is_enabled=false
- 前端 A·Data-console 风格全站统一,120 用例通过
- 门禁:go vet / go test 全包通过,gofmt 干净
2026-09-30 10:54:06 +08:00

4.3 KiB
Raw Permalink Blame History

文档工作台第一版:已交付与未完成边界

打开方式

本地治理平台:http://100.92.49.78:8088/ (Tailscale 内访问)

首页“来源与目录”:选择来源/分类,在文件表中搜索、筛选对内/对外和处理状态;点击文件名称打开详情。“解析监控”每15秒刷新当前记录状态;“待处理文件”只列超限、失败、来源异常。“发布管理”保留审核和生产门禁,流程说明默认折叠。“来源连接”显示连接和本机快照检查,历史审计默认折叠。

文件表区域内滚动,表头固定;不是无限拉长整页。顶部标签保持单例、可关闭、刷新恢复,首页固定。

真实数据与来源边界

  • 治理清单618份:PP历史文档613份,人工隔离验收文档5份。
  • 618份均有名称;547份能匹配现存PP分类,PP其余66份标记分类待补齐。
  • 现有快照只证明分类,不证明完整原始目录/父子关系。页面明确标注“PP分类 · 不代表完整原始目录”。
  • 对外613、对内5,均展示现有记录,不自动改变可见性;解析完成不代表生产已上线。
  • 已解析535;超限54,列入待处理。其他状态保持后端原值映射,不凑百分比。
  • 钉钉/AList目录尚未接通,不展示虚构目录;多个来源以连接ID而非来源类型隔离筛选。
  • PP“检查快照变化”只检查已保存的本机快照,不是实时抓取PP网站。

本轮改动范围

  • SourceAsset API补充安全展示字段(文件名、相对分类/目录、连接、可见性依据、摄取状态、失败码、处理记录和受控重试能力)。拒绝展示绝对主机路径、URL和越界目录。
  • scripts/import_display_metadata.py:读取既有只读manifest和inventory;按已有来源身份匹配,只补空白title/normalized_path。默认事务回滚预览,--apply才提交。没有源文件写入、下载、上传、版本/范围/发布变更。重复dry-run更新0行。
  • 前端完整分页加载、去重及总数校验后建立来源分类清单,不能将第一页冒充全部数据。加载失败不能显示成功的零数量。
  • 复用后端已存在的失败重试门禁;未对真实文件触发重试。
  • 发布批次不再要求审核完整候选页,只允许选择已批准且就绪项。生产发布仍独立关闭。

实测证据

  • Web:45/45 tests;TypeScript、Vite build通过。
  • Go:GOPROXY=off go test ./...通过;相关包vet通过。依赖外部配置的集成测试默认仍跳过,不能把全量命令扩称所有远端E2E通过。
  • 独立PostgreSQL测试库governance_document_ui_test:本轮SourceAsset真实查询测试通过;测试库保留,未删除数据。
  • scripts/accept_document_workbench.py:真实Firefox搜索、分类筛选、范围筛选、文件详情、自动刷新、标签恢复、默认折叠说明、列表区域滚动通过;1440/1024/768宽度无页面横向溢出。脚本不执行审核/上传/重试/生产写入。
  • 结果:tmp/document-ui-acceptance.json;截图:tmp/DOCUMENT_WORKBENCH_FIREFOX.png;完整清单核对:tmp/document-ui-catalog.json。
  • 本机Web HTTP 200,Tailscale入口HTTP 200;API healthy,API/Web运行镜像匹配、零重启。
  • 生产请求开关false,Release Worker开关false、配置路径空。
  • 数据保持source_items/content_objects/versions/test_publications = 618/535/618/535;活动任务0。
  • 仅重建API/Web,不重建PostgreSQL及两个Worker、不修改WeKnora、不连接生产,不提交或push。
  • 回退镜像:knowledge-governance-api:before-document-ui、knowledge-governance-web:before-document-ui。补齐元数据前已生成0600原生数据库备份并检查dump目录。

尚未完成(不得称为全部功能完成)

  1. 来源/目录级对内外规则编辑、继承与单独覆盖、批量设置、规则变更审计和下游权限生效验证。当前范围只可查看/筛选,不是权限管理器。
  2. 钉钉及AList真实目录接入;PP完整原始层级仍需可靠来源元数据。
  3. 原文预览、内容差异、逐文件审核核对入口。
  4. 页面化配置检查计划、目标知识库及通知方式;目前仍由管理员配置。

以上未完成项是独立实施和验收边界,本轮不以换标题或隐藏技术细节冒充完成。