docs(w05): Task 8/9 的测试助手名核正 —— activity.test.ts 里没有 viewOf 也不 import ASSESSMENT_STEPS

计划原稿让 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) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LKMZDwMbyKzjw6Hembwvet
This commit is contained in:
xcs
2026-08-29 19:16:14 +08:00
co-authored by Claude Opus 5
parent 40daa6c9f7
commit abe92e0531
@@ -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('**全只读** —— 签之前只核对,不改', () => {