4.3 KiB
4.3 KiB
SpacetimeDB + Axum + 阿里云 OSS 后端重写任务总纲
日期:2026-04-20
关联设计文档:
- ../docs/technical/SPACETIMEDB_AXUM_OSS_BACKEND_REWRITE_DESIGN_2026-04-20.md
- ../docs/technical/NODE_BACKEND_MODULE_AND_API_INDEX.md
关联拆分任务:
- 01_M0_M2_FOUNDATION_AND_AUTH.md
- 02_M3_RUNTIME_PROFILE.md
- 03_M4_STORY_AND_GAMEPLAY.md
- 04_M5_CUSTOM_WORLD_AND_AGENT.md
- 05_M6_ASSETS_OSS_EDITOR.md
- 06_M7_TEST_DEPLOY_CUTOVER.md
- 07_CROSS_CUTTING_AND_ACCEPTANCE.md
0. 使用说明
这份总纲用于把控整体重写节奏,拆分文件用于落地执行。
执行原则:
- 第一阶段优先兼容当前
/api/*、/healthz、/generated-*访问习惯。 - 不允许先删旧能力再补新能力,必须按能力面平移。
- 以当前 Node 后端
96条路由、6个挂载面、12个模块为最低覆盖基线。 - 每个阶段完成后,都要形成可运行、可回归、可继续迭代的中间态。
1. 总体里程碑
M0:冻结当前后端能力清单与迁移边界M1:搭建 Rust 工作区、Axum 主入口与基础中间件M2:完成鉴权、会话、JWT、refresh cookie 主链迁移M3:完成 runtime snapshot / settings / profile 迁移M4:完成 story action 主循环与核心 gameplay reducer 迁移M5:完成 custom world / agent 主链迁移M6:完成 assets / OSS 主链迁移M7:完成联调、回归、部署与切流准备
2. 阶段导航
M0 ~ M2
重点:
- 冻结能力清单
- 搭建 Rust workspace
- 搭建 Axum 基础设施
- 迁移鉴权、会话、JWT、refresh cookie
详见:
M3
重点:
- 迁移 runtime snapshot
- 迁移 settings
- 迁移 profile dashboard / browse history / save archive
详见:
M4
重点:
- 迁移 story action 主循环
- 迁移 gameplay reducer
- 兼容当前 story view model 与 state 恢复接口
详见:
M5
重点:
- 迁移传统 custom world 问答流
- 迁移 custom world library / gallery
- 迁移 custom world agent 会话、消息、卡片、操作
详见:
M6
重点:
- 迁移 assets
- 接入阿里云 OSS
- 做旧静态资源路径兼容
详见:
M7
重点:
- 联调
- 回归
- 部署
- 观测
- 灰度切流
详见:
3. 横向专项
以下专项贯穿整个迁移期:
- contract 与前端兼容
- SpacetimeDB schema 演进治理
- 大对象与缓存治理
- 文档持续维护
详见:
4. 第一优先级建议执行顺序
- 先做
M0,冻结基线,避免迁移过程中口径漂移。 - 再做
M1 + M2,先把 Axum 壳与鉴权打稳。 - 当前执行顺序允许前置
M6的 OSS 基础设施与直传票据能力,为后续各阶段复用统一资产入口。 - 再做
M3,优先跑通快照、设置、profile。 - 再做
M4,把 story action 主循环真正迁走。 - 然后做
M5,迁 custom world 与 agent。 - 最后收口
M6余下资产绑定、M7部署与切流。
5. 最终验收清单
- 当前
96条后端接口已全部迁移或有兼容替代 - 当前
6个挂载面已全部迁移 - 当前
12个内部模块已完成新架构落位 - Axum 已成为唯一 HTTP / SSE / 副作用边界
- SpacetimeDB 已成为唯一运行时状态真相源
- 阿里云 OSS 已成为唯一资产对象仓
- 前端主流程在不大改 UI 的前提下可跑通
- 能完成灰度切流,并保留可回退能力