From abe92e053120cd2fafc657bd226702e7b747661a Mon Sep 17 00:00:00 2001 From: xcs Date: Sat, 29 Aug 2026 19:16:14 +0800 Subject: [PATCH] =?UTF-8?q?docs(w05):=20Task=208/9=20=E7=9A=84=E6=B5=8B?= =?UTF-8?q?=E8=AF=95=E5=8A=A9=E6=89=8B=E5=90=8D=E6=A0=B8=E6=AD=A3=20?= =?UTF-8?q?=E2=80=94=E2=80=94=20activity.test.ts=20=E9=87=8C=E6=B2=A1?= =?UTF-8?q?=E6=9C=89=20viewOf=20=E4=B9=9F=E4=B8=8D=20import=20ASSESSMENT?= =?UTF-8?q?=5FSTEPS?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 计划原稿让 Task 8/9 复用「Task 7 已经加进去的 viewOf / ASSESSMENT_STEPS」, 而 Task 7 的实现者核过文件后用的是既有的 viewHtml(:38 本地定义)与 manifest.assets.businessModel.steps —— 照原稿写会去找两个不存在的东西。 这个文件刻意走清单而不是 case-model.ts 的源常量:源常量对得上而清单里漏装, 正是它要拦的那类错。ASSESSMENT_STEPS 是真导出,但那是 steps.test.ts 的用法。 Co-Authored-By: Claude Opus 5 (1M context) Claude-Session: https://claude.ai/code/session_01LKMZDwMbyKzjw6Hembwvet --- .../plans/2026-08-29-act-work-05-rewrite.md | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/docs/superpowers/plans/2026-08-29-act-work-05-rewrite.md b/docs/superpowers/plans/2026-08-29-act-work-05-rewrite.md index 8cebebc..16d451e 100644 --- a/docs/superpowers/plans/2026-08-29-act-work-05-rewrite.md +++ b/docs/superpowers/plans/2026-08-29-act-work-05-rewrite.md @@ -1826,7 +1826,15 @@ EOF - [ ] **Step 1: 写失败的测试** -(`viewOf` 与 `ASSESSMENT_STEPS` 的引入在 Task 7 已经加进这个文件了 —— 若不在,照 Task 7 Step 1 的头部补上。) +> **⚠️ 助手名照文件里真有的写**(2026-08-29 控制端核正:计划原稿这里写的 `viewOf` / `ASSESSMENT_STEPS` +> **在这个测试文件里都不存在**)。`activity.test.ts` 用的是: +> +> - **`viewHtml(name)`** —— 本地定义在 `:38`(`manifest.assets.viewTemplates.find(...)?.html ?? ''`); +> - 取剧本走 **`manifest.assets.businessModel.steps`**,不是 import `ASSESSMENT_STEPS`。 +> +> 这是刻意的:这个文件测的是**装配出来的清单**(成品),不是 `case-model.ts` 里的源常量 —— +> 源常量对得上而清单里漏装,正是它要拦的那类错。**照它现有的写法来,别新引一套。** +> (`ASSESSMENT_STEPS` 确实是 `case-model.ts` 的真导出,但那是 `steps.test.ts` 的用法,别串台。) ```ts describe('件② 差异评估结论审核', () => { @@ -1909,15 +1917,17 @@ EOF - [ ] **Step 1: 写失败的测试** -(同上,`viewOf` 复用 Task 7 在这个文件里定义的那个。) +> **⚠️ 同 Task 8 的那条核正**:这个文件里没有 `viewOf`,用本地的 **`viewHtml(name)`**(`activity.test.ts:38`); +> 取剧本走 **`manifest.assets.businessModel.steps`**,不是 import `ASSESSMENT_STEPS`。下面的示例代码照这个改。 ```ts describe('件③ 落账确认', () => { - const html = viewOf('landing-confirm'); + const html = viewHtml('landing-confirm'); it('在 viewTemplates 里,T_release 指向它', () => { expect(html).not.toBe(''); - expect(ASSESSMENT_STEPS.find((s) => s.item === 'T_release')?.view).toBe('landing-confirm'); + expect((manifest.assets.businessModel.steps as ReadonlyArray<{ item: string; view?: string }>) + .find((s) => s.item === 'T_release')?.view).toBe('landing-confirm'); }); it('**全只读** —— 签之前只核对,不改', () => {