模块 14 —— 开发计划(WBS / 验收 / 里程碑)
依据:design-v2 §15、模块 00 §5(开发顺序)、模块 01~13
版本:v1.0 | 状态:开发就绪(评审通过后开工)
里程碑
周期
目标(Definition of Done)
M0
2 周
契约定稿(proto/openapi/schema 三方 lint 通过)、决策记录签字、CI 骨架、工作区脚手架
M1
4~6 周
单节点:core+storage+raft(--dev-single 模式跑通 CRUD/草稿/发布);集群 join 可用
M2
4~6 周
发布引擎全量(幂等/回滚/结构发布/共享级联)、crypto、render、jobs
M2.5
3~4 周
Admin UI(单会话/草稿/发布/历史/回滚)、watch 服务端、可观测性
M3
4~6 周
三语言 SDK + 契约测试对拍
M4
持续
混沌、加固、文档、发布(镜像+SBOM+compose 示例)
2. WBS 任务拆解(按里程碑 → 模块 → 任务清单引用)
里程碑
任务(引用模块规格 §任务清单)
M0
00 契约/CI 骨架;01 错误类型+数据模型初稿;13 三方 lint 与 golden 骨架
M1
01 core 全量;02 storage;03 raft(bootstrap/join);00 --dev-single 联调
M2
04 publish 全量;07 crypto;08 render;11 jobs
M2.5
06 watch;05 api 全量;10 observability;09 admin-ui
M3
12 sdk 三语言 + 契约测试
M4
13 混沌/基准;14 发布清单;安全加固(CSP/审计补全)
角色
负责模块
A(后端/共识)
01 → 02 → 03 → 04(关键路径)
B(后端/应用)
05 → 06 → 10;与 A 并行联调(--dev-single 先行)
C(后端/安全渲染)
07 → 08 → 11;07 完成后支援 B
D(前端/SDK)
M0 起做 09 骨架;M3 转 12 SDK(可外包/后加入)
4. 每模块 Definition of Done
模块规格任务清单全勾选;2. 对应用例 ID 测试全绿;3. 文档注释完整;
无 clippy warning;5. 错误映射正确(05 表);6. 指标/审计埋点到位。
M1 验收 :dsh --dev-single 起单节点 → 建项目/分支 → 改草稿 → 发布 → GetConfig 读到新版本;
3 节点(bootstrap+join+join)→ kill 任一节点读写不中断;watch 收到发布事件。
M2 验收 :幂等重复发布只生效一次;回滚后版本历史完整;结构发布全分支推进;
共享库发布自动级联;磁盘扫描无明文;YAML/TOML/JSON 等价。
M2.5 验收 :Admin UI 全流程(登录→改草稿→发布→回滚);第二个登录被拒(I7);
指标/审计可查;健康检查正确。
M3 验收 :三语言 SDK 契约测试对拍全绿。
M4 验收 :混沌测试通过;基准达标(写 QPS ≥10k、watch ≥10k、发布→SDK ≤1s、
内存 ≤128MB、二进制 ≤50MB);发布清单(镜像/SBOM/compose)就绪。
风险
应对
openraft trait 与文档不一致
M1 第 1 周固定版本并写最小 demo(模块 03 任务 1)
rust-rocksdb 构建/链接问题
备选:librocksdb-sys 版本固定;CI 缓存构建产物
三语言 SDK 时间超支
M3 优先 Go + Python(服务端主流),TS 浏览器版后置
版本存储增长
checkpoint + 裁剪(模块 11)提前到 M2 初
单会话卡死
会话清扫(模块 11)+ CLI force-logout(M1 即实现)
□ 评审本批 15 份模块规格并签字 □ 建仓库骨架(server workspace + proto 接入)
□ CI 骨架(stage 1~3) □ openraft 版本固定 + 最小 demo □ --dev-single 模式打通 CRUD