From 99c07906cd2c3772304a461d0a006ad4adc68db9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B5=85=E5=BF=B5?= Date: Wed, 21 Oct 2026 18:20:08 +0800 Subject: [PATCH] =?UTF-8?q?docs(plan):=20P3=20Task=203=20=E5=8B=BE?= =?UTF-8?q?=E9=80=89=20+=20Task=206=20=E7=BC=96=E6=8E=92=E4=B9=89=E5=8A=A1?= =?UTF-8?q?=E5=85=AD=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Code --- .../plans/2026-10-21-slice-import-pipeline-phase3.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/superpowers/plans/2026-10-21-slice-import-pipeline-phase3.md b/docs/superpowers/plans/2026-10-21-slice-import-pipeline-phase3.md index 2af2be9..9269e14 100644 --- a/docs/superpowers/plans/2026-10-21-slice-import-pipeline-phase3.md +++ b/docs/superpowers/plans/2026-10-21-slice-import-pipeline-phase3.md @@ -73,7 +73,7 @@ tests/integration/import-*.test.ts - content_terms 写入(is_primary:首个为 true 余 false——WP 单主分类语义近似,JSDoc 注明) - [ ] 实现 + 绿 → commit `feat(import): term 物化与缺失自建` -### Task 3: 内容写入器(稳定身份 + checksum skip) +### Task 3: 内容写入器(稳定身份 + checksum skip)✅ 完成(2b61431 + rider fe72df3,双审通过;296 测试;幂等三态含跨快照五列身份、checksum 三方独立对拍、published 全程未碰;审查沉淀:counts 键全局命名空间契约、unsupported/failed 分项键、NULL-entry 缝归属 Task 6) **Files:** `content-writer.ts`;Test `tests/integration/import-content.test.ts` @@ -112,6 +112,7 @@ tests/integration/import-*.test.ts **Files:** `import.service.ts` 补全;Test `tests/integration/import-full.test.ts` - [ ] 失败测试:mini.xml register→import 全链:site/connection/snapshot→job→terms(2+自建0)→content_entries(**3**:post/product/page——attachment 不建,前置事实 11)→media(2+对拍)→routes(首页+2列表+3内容+2媒体 asset+2 attachment 301+tags…)→报告(各计数+**清洗统计**+版本块+冲突/失配清单);**published_revision_id 全 NULL**(导入不发布断言);**mapConfig.locale=site.default_locale 接线断言**(前置事实 8) +- [ ] **Task 3 审查移交的编排义务**:① NULL-entry 占位行收编(content-writer 六列分支 UPDATE 挂 entry——精确位置已标注在代码缝注释)② 多写入器 counts 按**求和**聚合(import.service 现为⊕覆盖——键名全局唯一已 JSDoc 契约化;编排层改或约定各写入器键前缀,二选一定死)③ 写入器 identity 参数共享基类型(Pick)防漂移 ④ stale 回收(已在清单)⑤ REPORT_WRITE_FAILED 测试补 ⑥ wp:attachment 双写入方单一 owner 决策(content-writer record-only 足迹 vs media-writer——媒体域归 Task 4,编排广播时 media-writer 消费 attachment 行、content-writer 只留 record 足迹,Task 6 定分派规则) - [ ] 报告落 artifacts/import//reports/import.json+html(沿用 Plan 2 Task 6 报告纪律:动态文本转义/错误封顶/清洗统计入报告) - [ ] stale 回收:超时 running → stale 置位与心跳列决策(ADR-017) - [ ] 绿 → commit `feat(import): 全链编排与导入报告`