Files
Agent-System-Documents/docs/records/2026-10-15-unified-document-renderer-implementation/batch5-task10-review-r1.md
T

4.1 KiB
Raw Blame History

统一文档渲染器第五批 Task 10 实施评审 r1

日期:2026-10-16。状态:实现与复审闭合(SELF)。用户已预先授权后续阶段连续推进、不再逐阶段请求人工评审;profile 发布、公司视觉值裁定和三份安全派生件视觉批准仍属业务验收,未在本批执行。

固定对象:

  • Backend 分支:feature/unified-document-renderer-task10(已推送远端),基线 d9d8f016ece5015ff6872a6a8c6a449a7353c062;
  • Backend 最终 HEAD:a2f4978be83514ae0e474039fb42b76bfc2a05d4;
  • Renderer gitlink:0d1c5121d137be817db5f98d3c13320dfa919c8a(Renderer 远端 main);
  • Dev modules/backend gitlink 随本记录同批更新到上述 Backend HEAD。

1. 提交序列

提交 内容
b0dd533 引入 deps/agent-document-renderer gitlink 与 agent-document-renderer 本地 replace
a21a3b5 普通工作区 Word 交付改走共享 Renderer(render_document)
9aa9129 生产提示词与 house-style 配方退役旧 Word 指引
35bd87c 跟进 Renderer 语义与协作式取消修复
fec2d16 首轮独立 Review 的 Important/Minor 全量修复:可信冻结时间、持久幂等交付、Markdown 优先持久化、真实对照、Python/DOCX 旁路封闭
6c01d00 二轮 Review 三项 Important:改名 DOCX 旁路、完整旧 fixture 语义对照、对齐/任务/分隔线/编号的真实对照
a2f4978 三轮 Review 唯一 Important:按 _rels/.rels officeDocument 关系与 [Content_Types].xml 识别 WordprocessingML,畸形/歧义/不安全元数据按 Word 拒绝

2. 最终能力

  • 普通 Word 生成只经共享 Renderer 与公司默认 profile;旧 Go/Python 路径仅在迁移对照模式可用,不再是生产路径。
  • 项目受控文档、review/approved 模式在写入任何制品前拒绝并转交 RDM,Backend 不提供默认规则回退。
  • 交付为 Markdown 优先、DOCX 与 manifest 派生;同一冻结输入幂等,重启后节点 ID 稳定,部分失败返回 partial/unknown 回执。
  • 直接制品登记按 OPC 内容(而非文件名)拒绝 WordprocessingML(含模板与宏变体),普通 ZIP/二进制制品不受影响。
  • 新旧对照覆盖完整旧 fixture:标题、行内样式、惰性链接、引用、反引号与波浪线代码块、嵌套有序/无序列表、任务勾选、分隔线、起始编号与表格对齐,注入丢失可被检出。

3. 评审轨迹

轮次 评审对象 结论
1 d9d8f01..9aa9129 完整 Task 10 范围(独立 CLI) 0 Critical;多项 Important(旧 Python 路径仍可生产调用等)
2 d9d8f01..fec2d16(全新独立 CLI) 0 Critical / 3 Important(改名 DOCX、对照 fixture 不全、对齐丢失漏报)
3 fec2d16..6c01d00 窄闭合复审(全新 CLI) 2、3 项关闭;1 项因固定 word/document.xml 判定未完全关闭
4 6c01d00..a2f4978 窄闭合复审(当前主模型,未参与实施) PASS:0 Critical / 0 Important

第 4 轮记录的非阻塞次要项(后续改进,不阻塞交付):_rels/.rels、[Content_Types].xml 部件名与 content type 字符串按精确大小写匹配,刻意构造的大小写变体包可被识别为非 Word。该绕过需要恶意构造,不影响正常模型输出路径。

4. 验证(来源等级)

  • SELF(实施 CLI,a2f4978 同树):聚焦测试、go test -count=1 ./internal/tools、全量 go test ./...、go test -race ./internal/tools ./internal/runmgr、go vet ./...、go build ./...、git diff --check 均通过。
  • REPLAY(当前主模型,a2f4978 干净树):go test -count=1 ./internal/tools ./internal/docgen/... 通过;Dev 检出该 gitlink 后 go build ./... 通过。
  • GATE:NOT_RUN(Backend PR/CI 尚未创建,留待 Task 13 组合交付)。

5. 未执行项

profile 发布、公司默认视觉值裁定、三份安全派生件视觉批准、真实运行库迁移、PR/合入与部署均未执行;RDM 的 Renderer pin 仍为 732e7e7,需在 Task 13 组合前升级到 0d1c512 并重验。