docs: initialize rewrite plan and freeze backend surfaces

This commit is contained in:
2026-04-20 23:52:49 +08:00
parent adc57ba49b
commit 7c844854c0
13 changed files with 1633 additions and 0 deletions

View File

@@ -0,0 +1,51 @@
# 横向专项、执行顺序与最终验收
## 1. 横向专项任务
### Contract 与前端兼容
- [ ] 梳理当前 `packages/shared/src/contracts/*` 到 Rust DTO 的映射
- [ ] 设计 Rust 侧 contract 生成或手写策略
- [ ] 保持当前字段名、枚举值、响应结构稳定
- [ ] 为 breaking change 建立显式变更流程
### SpacetimeDB schema 演进治理
- [ ] 约定 stable reducer 命名规则
- [ ] 约定 stable table 命名规则
- [ ] 约定列追加式演进规则
- [ ] 约定软删除而不是直接删表删列的场景
- [ ] 约定事件表与投影表拆分规则
### 大对象与缓存治理
- [ ] 明确哪些内容入 OSS
- [ ] 明确哪些内容只存 SpacetimeDB 元数据
- [ ] 明确哪些内容允许短期本地缓存
- [ ] 明确 workflow cache 生命周期
### 文档维护
- [ ] 每个阶段完成后同步更新设计文档
- [ ] 每个阶段完成后补一份落地记录
- [ ] 完成接口迁移后更新新的模块与 API 索引文档
## 2. 第一优先级建议执行顺序
1. 先做 `M0`,冻结基线,避免迁移过程中口径漂移。
2. 再做 `M1 + M2`,先把 Axum 壳与鉴权打稳。
3. 再做 `M3`优先跑通快照、设置、profile。
4. 再做 `M4`,把 story action 主循环真正迁走。
5. 然后做 `M5`,迁 custom world 与 agent。
6. 最后做 `M6 + M7`,收口 assets、editor、部署与切流。
## 3. 最终验收清单
- [ ] 当前 `96` 条后端接口已全部迁移或有兼容替代
- [ ] 当前 `6` 个挂载面已全部迁移
- [ ] 当前 `12` 个内部模块已完成新架构落位
- [ ] Axum 已成为唯一 HTTP / SSE / 副作用边界
- [ ] SpacetimeDB 已成为唯一运行时状态真相源
- [ ] 阿里云 OSS 已成为唯一资产对象仓
- [ ] 前端主流程在不大改 UI 的前提下可跑通
- [ ] 能完成灰度切流,并保留可回退能力