From 8b114c77c408ccb9f1ca8f9f34c5817140de5cf6 Mon Sep 17 00:00:00 2001 From: unanmed <1319491857@qq.com> Date: Wed, 30 Sep 2026 13:39:55 +0800 Subject: [PATCH] docs(04-12): sync tracking (executed on another device) --- .planning/ROADMAP.md | 4 ++-- .planning/STATE.md | 20 ++++++++++---------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/.planning/ROADMAP.md b/.planning/ROADMAP.md index face9f0..f0d99ca 100644 --- a/.planning/ROADMAP.md +++ b/.planning/ROADMAP.md @@ -232,7 +232,7 @@ Plans: **Wave 11** *(blocked on Wave 10 completion)* -- [ ] 04-12-PLAN.md — 04-11 落地修正·**桶导出边界 + 消费者直连 + `shared` 单文件(代码改动)**(D-69 / D-70):按 **D-69(硬约束:barrel 只允许 `export * from './<同目录项>'`,消费者必须直连 `@user/client-base`、不得经 barrel 转发)** 落地 D-70 的 6 条修正——① `client-modules/src/render/utils/index.ts` **删除**指向 `./layout` 的越界转发 `export *` 与其 `@ts-expect-error`(保留 `./saves` / `./use`);② `render/ui/save.tsx` 拆分 `../utils` 导入(`adjustGrid` / `IGridLayoutData` → `@user/client-base`,`getSave` / `SaveData` 仍留 `../utils`)、`render/ui/title.tsx` 的 `adjustCover` → `@user/client-base`;③ `render/utils/saves.ts` 的 `getConfirm` / `waitbox` → `@user/client-base` 并删除其 `@ts-expect-error`;④ `client-base/src/shared/{shared.ts,index.ts}` 折成单文件 `client-base/src/shared.ts` 并删除 `shared/` 目录(`client-base/src/index.ts` 的 `./shared` 与 `map/*` 的 4 处相对说明符**一字不改**、仍解析);⑤ **逐字保留** `client-base/src/{components/{choices,input,misc,scroll,textboxTyper,tip}.tsx,elements/index.ts}` 内 **8** 处引用 `render/use.ts` / `render/renderer` 的架构耦合 `@ts-expect-error`(D-59 / D-67,留待用户收尾;`textboxTyper.ts` 另有 1 处既有 `无法推导` 标注同属保留,故这 7 文件合计 9 处);⑥ **零新增转发导出**、`client-modules/src/render/index.tsx` 维持现状;门禁 = 桶边界(8 个 in-scope barrel 的 `export * from` 全为 `./` 前缀 + `render/utils/index.ts` 不再转发 `./layout`)/ F1..F4 收口自检 / F5 的 8 处标注逐字保留 + porcelain 零命中 / 范围与用户改动 / CRLF + 人工复核(**不设 `check:type` / `build` / TS 诊断数类门禁**,D-68 的延续);`autonomous: false`(Task 0 汇报关卡等待用户「可以执行」);无依赖变更、不执行 `pnpm i`;本步不引入任何新命名;`REND-01` / `REND-02` 仍 Pending +- [x] 04-12-PLAN.md — 04-11 落地修正·**桶导出边界 + 消费者直连 + `shared` 单文件(代码改动)**(D-69 / D-70):按 **D-69(硬约束:barrel 只允许 `export * from './<同目录项>'`,消费者必须直连 `@user/client-base`、不得经 barrel 转发)** 落地 D-70 的 6 条修正——① `client-modules/src/render/utils/index.ts` **删除**指向 `./layout` 的越界转发 `export *` 与其 `@ts-expect-error`(保留 `./saves` / `./use`);② `render/ui/save.tsx` 拆分 `../utils` 导入(`adjustGrid` / `IGridLayoutData` → `@user/client-base`,`getSave` / `SaveData` 仍留 `../utils`)、`render/ui/title.tsx` 的 `adjustCover` → `@user/client-base`;③ `render/utils/saves.ts` 的 `getConfirm` / `waitbox` → `@user/client-base` 并删除其 `@ts-expect-error`;④ `client-base/src/shared/{shared.ts,index.ts}` 折成单文件 `client-base/src/shared.ts` 并删除 `shared/` 目录(`client-base/src/index.ts` 的 `./shared` 与 `map/*` 的 4 处相对说明符**一字不改**、仍解析);⑤ **逐字保留** `client-base/src/{components/{choices,input,misc,scroll,textboxTyper,tip}.tsx,elements/index.ts}` 内 **8** 处引用 `render/use.ts` / `render/renderer` 的架构耦合 `@ts-expect-error`(D-59 / D-67,留待用户收尾;`textboxTyper.ts` 另有 1 处既有 `无法推导` 标注同属保留,故这 7 文件合计 9 处);⑥ **零新增转发导出**、`client-modules/src/render/index.tsx` 维持现状;门禁 = 桶边界(8 个 in-scope barrel 的 `export * from` 全为 `./` 前缀 + `render/utils/index.ts` 不再转发 `./layout`)/ F1..F4 收口自检 / F5 的 8 处标注逐字保留 + porcelain 零命中 / 范围与用户改动 / CRLF + 人工复核(**不设 `check:type` / `build` / TS 诊断数类门禁**,D-68 的延续);`autonomous: false`(Task 0 汇报关卡等待用户「可以执行」);无依赖变更、不执行 `pnpm i`;本步不引入任何新命名;`REND-01` / `REND-02` 仍 Pending **UI hint**: yes @@ -427,7 +427,7 @@ Phases execute in numeric order: 1 → 2 → 3 → 4 → 5 → 6 → 7 | 1. 事件系统 | 13/13 | In Progress| | | 2. 寻路系统 | 5/5 | In Progress| | | 3. 数据端完成 | 19/19 | Complete | 2026-09-12 | -| 4. 渲染适配与双布局 | 11/11 | In Progress| | +| 4. 渲染适配与双布局 | 12/12 | In Progress| | | 5. Legacy 移植 | 0/TBD | Not started | - | | 6. 单元测试 | 18/18 | In Progress| | | 7. 数据端缺陷修复 | 15/16 | 暂缓 (Deferred) | - | diff --git a/.planning/STATE.md b/.planning/STATE.md index 142de46..b2801ae 100644 --- a/.planning/STATE.md +++ b/.planning/STATE.md @@ -4,16 +4,16 @@ milestone: v1.0 current_phase: 04 current_phase_name: 渲染适配与双布局 status: executing -stopped_at: Completed 04-11-PLAN.md(渲染端结构性重构·第二步移植实施:components/elements/map + layout 下沉 @user/client-base(39 文件移动 / 42 新路径);client-base 新增 shared + 桶导出 + 5 依赖;实现层改指 @user/client-base;架构耦合 10 处 @ts-expect-error 暂记;按 D-68 不要求可运行;REND-01/REND-02 保持 Pending) -last_updated: "2026-09-24T10:35:43.630Z" -last_activity: 2026-09-24 -last_activity_desc: Planned 04-12-PLAN.md(04-11 落地修正:桶导出边界 + 消费者直连 + shared 单文件) -state_head: 126d8e40201c0bb09ee628a71668cd214b9757de +stopped_at: Completed 04-12-PLAN.md(桶导出边界修正:shared 单文件化 + 消费者直连 @user/client-base;8 个 in-scope barrel 全部只导出同目录项;架构耦合 8 处标注逐字保留;由用户在异地执行,commit 81e4e98;REND-01/REND-02 保持 Pending) +last_updated: "2026-09-25T00:00:00.000Z" +last_activity: 2026-09-25 +last_activity_desc: Completed 04-12-PLAN.md(桶导出边界修正;用户在异地执行) +state_head: d8fa4b8 progress: total_phases: 7 completed_phases: 1 total_plans: 83 - completed_plans: 81 + completed_plans: 82 milestone_name: milestone --- @@ -28,10 +28,10 @@ See: .planning/PROJECT.md (updated 2026-09-17) ## Current Position -Phase: 04 (渲染适配与双布局) — READY TO EXECUTE -Plan: 11/12 已执行(04-01..04-11);04-12(04-11 落地修正:桶导出边界 + 消费者直连 + shared 单文件)已规划待执行(Wave 11) -Status: 04-12 已规划并通过 checker(0 blocker / 0 warning / 4 info-advisory);待用户回复「可以执行」后执行;Phase 4 整体仍未完成 — REND-01/REND-02 保持 Pending -Last activity: 2026-09-24 — Planned 04-12-PLAN.md(04-11 落地修正:桶导出边界) +Phase: 04 (渲染适配与双布局) — IN PROGRESS +Plan: 12/12 已执行(04-01..04-12) +Status: 04-12 完成(桶导出边界修正);下一步 = 部分 UI 的进一步接口适配(D-71),走两步:先只读收集(04-13)、再执行;Phase 4 整体仍未完成 — REND-01/REND-02 保持 Pending +Last activity: 2026-09-25 — Completed 04-12-PLAN.md(桶导出边界修正;异地执行) Progress: [█████░░░░░] 50%