docs: initialize rewrite plan and freeze backend surfaces
This commit is contained in:
59
backend-rewrite-tasklist/03_M4_STORY_AND_GAMEPLAY.md
Normal file
59
backend-rewrite-tasklist/03_M4_STORY_AND_GAMEPLAY.md
Normal file
@@ -0,0 +1,59 @@
|
||||
# M4:story action 与 gameplay reducer 任务清单
|
||||
|
||||
## 1. SpacetimeDB gameplay 表
|
||||
|
||||
- [ ] 设计 `story_session`
|
||||
- [ ] 设计 `story_event`
|
||||
- [ ] 设计 `npc_state`
|
||||
- [ ] 设计 `quest_record`
|
||||
- [ ] 设计 `inventory_slot`
|
||||
- [ ] 设计 `treasure_record`
|
||||
- [ ] 设计 `battle_state`
|
||||
- [ ] 设计 `player_progression`
|
||||
- [ ] 设计 `chapter_progression`
|
||||
|
||||
## 2. 核心 reducer
|
||||
|
||||
- [ ] 设计 `resolve_story_action`
|
||||
- [ ] 设计 `continue_story`
|
||||
- [ ] 设计 `begin_story_session`
|
||||
- [ ] 设计 `sync_runtime_snapshot_projection`
|
||||
- [ ] 设计 `apply_quest_signal`
|
||||
- [ ] 设计 `apply_inventory_mutation`
|
||||
- [ ] 设计 `resolve_npc_interaction`
|
||||
- [ ] 设计 `resolve_treasure_interaction`
|
||||
- [ ] 设计 `resolve_combat_action`
|
||||
- [ ] 设计 `update_progression_state`
|
||||
|
||||
## 3. 迁移模块规则
|
||||
|
||||
- [ ] 迁移 `story`
|
||||
- [ ] 迁移 `combat`
|
||||
- [ ] 迁移 `inventory`
|
||||
- [ ] 迁移 `npc`
|
||||
- [ ] 迁移 `progression`
|
||||
- [ ] 迁移 `quest`
|
||||
- [ ] 迁移 `runtime-item`
|
||||
- [ ] 迁移 `runtime` 的状态归一化规则
|
||||
|
||||
## 4. 兼容接口
|
||||
|
||||
- [ ] 兼容 `POST /api/runtime/story/actions/resolve`
|
||||
- [ ] 兼容 `GET /api/runtime/story/state/:sessionId`
|
||||
- [ ] 兼容 `POST /api/runtime/story/initial`
|
||||
- [ ] 兼容 `POST /api/runtime/story/continue`
|
||||
|
||||
## 5. ViewModel 兼容
|
||||
|
||||
- [ ] 兼容当前 `RuntimeStoryActionResponse`
|
||||
- [ ] 兼容当前 `RuntimeStoryOptionView`
|
||||
- [ ] 兼容当前 `interaction` 元数据
|
||||
- [ ] 兼容当前 battle / toast / patch 响应结构
|
||||
- [ ] 兼容当前 `currentStory` 回填逻辑
|
||||
|
||||
## 6. 阶段验收
|
||||
|
||||
- [ ] 当前前端 story 选项点击后可走新后端闭环
|
||||
- [ ] NPC / quest / treasure / combat 主循环行为不回退
|
||||
- [ ] `story state` 恢复链可用
|
||||
- [ ] 旧 Node 版 story route 回归用例完成平移
|
||||
Reference in New Issue
Block a user