docs: v1 审查记录补交 + v2 计划修订(controller 透出步骤 + NIT 记录)

This commit is contained in:
2026-08-13 16:04:54 +08:00
parent 0a8fd6c8a2
commit 7940b3d4c6
2 changed files with 25 additions and 4 deletions
@@ -20,6 +20,7 @@
| `biz/dao/dao_scene_node.go` | Modify | CREATE TABLE 加 `script TEXT` + EnsureColumn 迁移 | | `biz/dao/dao_scene_node.go` | Modify | CREATE TABLE 加 `script TEXT` + EnsureColumn 迁移 |
| `biz/model/dto/level.go` | Modify | NodeVO 加 `Script string \`json:"script"\`` | | `biz/model/dto/level.go` | Modify | NodeVO 加 `Script string \`json:"script"\`` |
| `biz/service/level.go` | Modify | buildNode 透出 `Script` | | `biz/service/level.go` | Modify | buildNode 透出 `Script` |
| `biz/controller/level.go` | Modify | nodeVO 映射透出 `Script` |
| `ui-src/src/utils/theater.js` | Modify | 加 `parseScript(raw)`(JSON 解析 + 空值回退) | | `ui-src/src/utils/theater.js` | Modify | 加 `parseScript(raw)`(JSON 解析 + 空值回退) |
| `ui-src/src/components/RubyText.vue` | Modify | 加 `highlight` prop(逐字高亮) | | `ui-src/src/components/RubyText.vue` | Modify | 加 `highlight` prop(逐字高亮) |
| `ui-src/src/components/StoryPlayer.vue` | Create | 台词流演绎器:气泡/朗读/高亮/表情/跳过 | | `ui-src/src/components/StoryPlayer.vue` | Create | 台词流演绎器:气泡/朗读/高亮/表情/跳过 |
@@ -86,15 +87,23 @@
Script: nodeRec["script"].String(), Script: nodeRec["script"].String(),
``` ```
- [ ] **Step 5: 编译 + 既有单测验证** - [ ] **Step 5: controller nodeVO 透出**
`controller/level.go` 的 nodeVO 中 `Config: n.Config,` 后加:
```go
Script: n.Script,
```
- [ ] **Step 6: 编译 + 既有单测验证**
Run: `go build ./... && go test ./biz/service/ ./common/` Run: `go build ./... && go test ./biz/service/ ./common/`
Expected: 全部 PASSlevel_play / pinyin 单测不受影响) Expected: 全部 PASSlevel_play / pinyin 单测不受影响)
- [ ] **Step 6: Commit** - [ ] **Step 7: Commit**
```bash ```bash
git add biz/model/entity/entity_scene_node.go biz/dao/dao_scene_node.go biz/model/dto/level.go biz/service/level.go git add biz/model/entity/entity_scene_node.go biz/dao/dao_scene_node.go biz/model/dto/level.go biz/service/level.go biz/controller/level.go
git commit -m "feat: scene_node 新增 script 剧本列并透出 NodeVOv2 剧情演绎数据层)" git commit -m "feat: scene_node 新增 script 剧本列并透出 NodeVOv2 剧情演绎数据层)"
``` ```
@@ -152,6 +161,11 @@ props 加:
Run: `cd ui-src && npx vite build --mode h5 2>&1 | tail -3` Run: `cd ui-src && npx vite build --mode h5 2>&1 | tail -3`
Expected: 构建成功无报错(dev server 已开时 `npx vite build` 也可省略,仅做语法验证) Expected: 构建成功无报错(dev server 已开时 `npx vite build` 也可省略,仅做语法验证)
> 审查记录(fd67912 双审查 APPROVE):
> - NIT1(已修):`.dark .ruby-hl/.ruby-cur` 特异性低于 `.dark .ruby-ch`,深色模式高亮色被覆盖,补 `.dark` 变体
> - NIT2(记录待验证):cur-pop 动画的 transform 作用于小程序 `<text>` 不可靠,真机验证;无效则挪到外层 view
> - NIT3(不修):parseScript 对 `[null]` 等畸形元素未校验,后端导入校验保证 text 合法,调用方兜底
- [ ] **Step 4: Commit** - [ ] **Step 4: Commit**
```bash ```bash
@@ -97,7 +97,7 @@ git commit -m "feat: 剧场化工具 theater.js(互动形态判定 + 开场演
</template> </template>
<script> <script>
import RubyText from '../RubyText.vue' import RubyText from './RubyText.vue'
import { propVisual } from '../utils/visual.js' import { propVisual } from '../utils/visual.js'
import { speak } from '../utils/speech.js' import { speak } from '../utils/speech.js'
@@ -540,6 +540,13 @@ git add ui-src/src/pages/play/play.vue
git commit -m "feat: 闯关页剧场化(开场演出覆盖层+动作卡呈现+分支演出晃动过渡)" git commit -m "feat: 闯关页剧场化(开场演出覆盖层+动作卡呈现+分支演出晃动过渡)"
``` ```
**审查后修复(b48bb41 双审查 ApprovedNIT 合并修复)**
- 删除残留死样式 `.options`/`.option`/`.option-mark`/`.option-text`/`.option.disabled`/`.option:active`(模板已由 ActionCard 接管)
- 分支演出 `setTimeout` 句柄存 `this.branchTimer`,页面 `onUnload()` 清理(防卸载后回调写状态)
- `submit` 幽灵步修复:`routeSteps.push` 改为 `if (data.next || data.final)` 时才 push(API 异常无返回时不污染进度点)
- ActionCard `listen()``if (this.disabled) return` 守卫(演出 600ms 期间不可点听读,防音效重叠)
--- ---
### Task 5: `result.vue` 结局演出(彩带 + 动态标题 + 鼓励语) ### Task 5: `result.vue` 结局演出(彩带 + 动态标题 + 鼓励语)