Files
knowledge-governance/docs/SOURCE_CATALOG_ACCEPTANCE.md
T
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

3.7 KiB
Raw Blame History

真实多层来源目录验收

入口:http://100.92.49.78:8088/(Tailscale内)

交付范围

  • 首页选择来源后默认只显示第一层文件夹;根目录文件收起并显示数量,可主动展开。
  • 点击文件夹只请求当前目录的直接子项,不把全量目录树塞进浏览器。
  • 顶部工作标签显示真实来源/目录路径,可逐级返回。
  • 文件夹优先于文件,显示递归文件数、大小、治理范围、已导入/已解析、处理中和失败数。
  • 当前为本地只读快照,页面明确标注,不冒充实时来源连接。
  • 来源文件名中的控制字符转换为可见符号,目录身份不变;不读取或投影宿主机local_path。

真实来源

  • 钉钉“公司级技术支持知识库”:4548个节点、1079个实际文件夹、3468份文件;第一层8个目录,另有5份根目录文件默认收起。
  • 钉钉“技术诊断部知识沉淀”:2173个节点、404个实际文件夹、1768份文件。
  • AList“国内工业”:6569个节点、1688个实际文件夹、4880份文件;第一层严格为01公司资料、02产品资料、03行业洞察、04销售赋能、05流程制度、06通用模板。
  • AList同时导入海外工业、国内教育、海外教育三个完整只读快照。
  • PP资料下载中心:以真实potalTags.tagType构造8个第一层入口;613份已治理公开文档去重计数。597份进入至少一个标签目录,16份没有这8类标签,作为根目录文件默认收起。一个文件可出现在多个标签目录,但总数只计算一次。

总计:7个来源、38986个目录节点、9880个含来源根节点的文件夹节点、28796份跨来源文件。

数据与安全

Migration 9新增不可变目录快照、节点和当前快照指针。导入流程为:构建安全快照→完整校验→单事务插入→切换当前指针。没有删除旧快照,没有修改来源,没有调用钉钉/PP/AList写入、上传、移动、重命名或删除接口。

目录API仅投影治理连接ID、节点ID、名称、类型和聚合状态;不返回来源外部ID、来源定位哈希、宿主机路径或快照指纹。

验证

  • Python目录构建测试:7/7通过;完整真实快照在独立PostgreSQL库导入,数据库38986节点与构建结果一致。
  • Go全项目测试、相关vet通过;目录API独立PostgreSQL测试验证直接子项、文件夹优先、面包屑、状态聚合及未知节点404。
  • Web:14个测试文件、58项测试通过;TypeScript、Vite构建通过。
  • Firefox真实验收:公司级知识库3层导航、PP三层导航、AList两层导航;首层目录数8/8/6;根目录文件5/16默认收起;DOM与API直接子项完全一致;1440/1024/768无页面级横向溢出;写请求0。
  • 视觉复核:顶部路径无重复、范围标签不拆字、递归文件数口径明确、单页不显示无效分页。
  • Migration=9;原source_items/content_objects/versions/test_publications保持618/535/618/535;活动任务0;范围规则0;文件覆盖0。
  • API、数据库健康;所有服务运行、零重启且运行镜像匹配;本机和Tailscale入口HTTP 200。
  • 生产发布请求仍关闭,Release Worker仍关闭。

证据:

  • tmp/source-catalog-acceptance.json
  • tmp/SOURCE_CATALOG_FIREFOX.png
  • tmp/backups/pre-source-catalog-20260908T223638.dump(299195字节,0600,pg_restore目录检查通过)
  • 回退镜像:knowledge-governance-api:before-source-catalog、knowledge-governance-web:before-source-catalog

未包含:来源实时登录/刷新、钉钉/AList文件到治理source_items的全量映射、原文预览。这些属于后续已确认的“来源链接”和解析/导入阶段,不能以目录快照冒充。