|
1 | | -# Kiwi Kanban |
| 1 | +# 看板入口已迁移 |
2 | 2 |
|
3 | | -> 更新日期:2026-07-31 |
4 | | -> |
5 | | -> 当前里程碑:M1 Redis 8.8.1 Cache OFF compatibility foundation |
6 | | -> |
7 | | -> 当前 task:PR `#404` integration(远端 `codex/fix-resp-parser-limits`,本地 v4);最新基线 `main` at `ed49ab4c3c362ba77111dbcd9791f93ebfce74a4` |
8 | | -> |
9 | | -> 当前运行模式:Cache OFF |
10 | | -> |
11 | | -> 规则:每张实现卡必须引用完整 Requirement ID;完成必须附 exact commit、环境和可重复验证证据。 |
| 3 | +M0-M10 路线、M0-M6 当前可执行里程碑范围、WP0-WP7 工作包及其状态和依赖统一维护在 [SDD.md](SDD.md)。 |
12 | 4 |
|
13 | | -## In Progress |
14 | | - |
15 | | -| ID | 工作项 | Requirement / Gate 关系 | 当前状态 | |
16 | | -|---|---|---|---| |
17 | | -| `RESP-LIMITS-001` | 在已合并 #406 的零声明驱动分配合同上,完成 #404 的有界 RESP 解析、未认证 buffer、parser 历史副本和 optional pipeline 背压 | `REQ-COMPAT-002`、`REQ-COMPAT-006`、`REQ-STABILITY-002`、`REQ-STABILITY-003`、`REQ-WORK-003` | #402、#403、#405、#406 已合并;v4 已解决最新 base 的 parser/pipeline 冲突,并通过 Windows/WSL 最终验证;当前发布、CI 与 review 状态从 PR #404 实时查询 | |
18 | | - |
19 | | -## Ready for a separate implementation task |
20 | | - |
21 | | -启动下列卡片必须创建新的 Codex task、linked worktree、TaskId 和 recovery checkpoint。Planning branch 和旧草稿 worktree 都不能直接切换成 implementation。 |
22 | | - |
23 | | -| ID | 工作项 | Requirement / Decision | 前置条件 | |
24 | | -|---|---|---|---| |
25 | | -| `M1-001-T2` | Redis 8.8.1 trusted Oracle provenance:primary build、fresh-checkout independent rebuild、binary hash equality、rebuild runtime evidence | `REQ-COMPAT-001`、`REQ-COMPAT-008`、`REQ-COMPAT-009`、`REQ-COMPAT-010`;`D011`、`D012` | PR `#383` 已合并;仍须新建专用 implementation task/worktree;当前 PR `#388` 不替代该任务;真实双 checkout reproducibility 是卡片内第一道实现门禁 | |
26 | | -| `M1-002` | RESP2/RESP3 持久连接级 raw wire differential harness | `REQ-COMPAT-002`、`REQ-COMPAT-006` | `M1-001-T2` 产生可验证 provenance | |
27 | | -| `M1-003` | Redis 8.8.1 TCL external-server runner | `REQ-COMPAT-004` | `M1-001-T2` | |
28 | | -| `M1-004` | redis-rs test-only compatibility crate | `REQ-COMPAT-005`、`REQ-COMPAT-006` | `M1-001-T2` | |
29 | | -| `M1-005` | partial-I/O property tests、parser fuzz seeds 与连接生命周期测试 | `REQ-COMPAT-002`、`REQ-COMPAT-006` | Task 1 manifest 可用 | |
30 | | -| `M2-001` | RocksDB authority/durability contract | `REQ-STORAGE-001`、`REQ-STORAGE-002` | Task 1 manifest;与 M1 Oracle 保持隔离 | |
31 | | -| `M2-002` | 扩展 close/reopen 至全部 RocksDB handle、TTL/metadata、Snapshot 和故障证据 | `REQ-STORAGE-002`、`REQ-STORAGE-004` | `M2-001` | |
32 | | -| `M2-003` | format version、Comparator 和 Kiwi RocksDB key/value encoding contract | `REQ-STORAGE-003`、`REQ-STORAGE-005` | `M2-001` | |
33 | | -| `M4-001` | `kiwi_redisraft_public_v1` 机器可读 manifest | `REQ-RAFT-003`、`REQ-RAFT-004` | Task 1 manifest schema | |
34 | | - |
35 | | -## Accepted implementation |
36 | | - |
37 | | -| ID | 工作项 | Evidence | 状态 | |
38 | | -|---|---|---|---| |
39 | | -| `M1-001-T1` | Redis 8.8.1 exact compatibility manifest | PR `#372`;final Head `6a692bc195f96327296296977a100af301deaf01`;merge commit `9e91707d774ad367d682e23677dcef79ecb14338` | 已合并到 `main` | |
40 | | -| `PR388-001` | C/C++ sccache 构建接入、跨平台回归探针、PRD/用户故事及 review 一致性修复 | PR `#388`;final Head `1ee8c916a55d03d02a250ed95af83712fa14a742`;2026-07-30 merged | 已合并到 `main` | |
41 | | - |
42 | | -## Frozen unaccepted drafts |
43 | | - |
44 | | -| ID | Worktree | 内容 | 规则 | |
45 | | -|---|---|---|---| |
46 | | -| `M1-001-T2-DRAFT` | `D:\test\github\kiwi\.worktrees\redis-8.8.1-stability-foundation` | 六文件未提交 Oracle build/verifier 草稿 | 不继续、不 stage、不 commit、不 push、不清理;后续新 task 只读审计,不把绿测当作方案 A 证据 | |
47 | | - |
48 | | -## Frozen by system stability gate |
49 | | - |
50 | | -下列卡片在 `docs/quality/system-stability-gate.md` 全部通过、M7 前置设计完成审查且用户明确批准对应的单独 implementation task 前,不得转入 Ready 或 In Progress。Gate PASS、PR 合并或里程碑 Ready 均不自动授权生产实现。 |
51 | | - |
52 | | -| ID | 工作项 | Requirement | Gate | 冻结范围 | |
53 | | -|---|---|---|---|---| |
54 | | -| `M7-001` | 建立并修改用于 Kiwi 发行的 Redis fork | `REQ-HOT-002`;`REQ-LICENSE-002` 至 `REQ-LICENSE-008` | Gate PASS + 单独 implementation task 明确批准 | fork 代码、patch、生产构建均禁止 | |
55 | | -| `M7-002` | Embedded Redis Hot Tier 动态库 C ABI spike | `REQ-HOT-010`、`REQ-HOT-012`;`REQ-LICENSE-003`、`REQ-LICENSE-005`、`REQ-LICENSE-007` | Gate PASS + 单独 implementation task 明确批准 | `.so`、`.dylib`、`.dll`、import/static library 均禁止 | |
56 | | -| `M7-003` | Kiwi 安全 loader、pairing manifest 和 FFI binding | `REQ-HOT-010`、`REQ-HOT-011`、`REQ-HOT-012` | Gate PASS + 单独 implementation task 明确批准 | 生产 crate 依赖、配置和加载路径均禁止 | |
57 | | -| `M7-004` | String update-or-invalidate MVP | `REQ-HOT-001`、`REQ-HOT-003` 至 `REQ-HOT-007`、`REQ-HOT-009` | Gate PASS + 单独 implementation task 明确批准 | Cache ON 读写路径禁止 | |
58 | | -| `M8-001` | Cache OFF/ON differential 与热层故障注入 | `REQ-HOT-004` 至 `REQ-HOT-008`;`REQ-RAFT-002` | M7 全部资格门禁 | 不得用未实现热层替代当前正确性测试 | |
59 | | -| `M8-002` | Redis/Kiwi OFF/Kiwi ON 性能与资源基线 | `REQ-PERF-001`、`REQ-PERF-002`、`REQ-PERF-003`;`REQ-OBS-003` | M7/M8 正确性门禁 | 性能工作不得先于语义与故障证明 | |
60 | | - |
61 | | -## Backlog |
62 | | - |
63 | | -| ID | 工作项 | Requirement | Milestone | |
64 | | -|---|---|---|---| |
65 | | -| `M3-001` | Redis 8.8.1 String/Hash/List/Set/ZSet required profile 闭环 | `REQ-COMPAT-003`、`REQ-COMPAT-007` | M3 | |
66 | | -| `M3-002` | Transaction、WATCH、Lua 与错误/TTL 语义闭环 | `REQ-COMPAT-003`、`REQ-COMPAT-006`、`REQ-COMPAT-007` | M3 | |
67 | | -| `M3-003` | Pub/Sub、阻塞命令、ACL、RESP3 与连接行为闭环 | `REQ-COMPAT-002`、`REQ-COMPAT-003`、`REQ-COMPAT-006`、`REQ-COMPAT-007` | M3 | |
68 | | -| `M4-002` | Rust OpenRaft deterministic simulator | `REQ-RAFT-006` | M4 | |
69 | | -| `M4-003` | RAFT.CLUSTER/NODE/TRANSFER_LEADER 与 INFO/CONFIG | `REQ-RAFT-003`、`REQ-RAFT-004` | M4 | |
70 | | -| `M4-004` | Membership、Snapshot、Leadership Transfer 和 LogStore reopen 扩展 | `REQ-RAFT-001`、`REQ-RAFT-002`、`REQ-RAFT-005` | M4 | |
71 | | -| `M5-001` | 3/5 节点 process harness 与网络故障矩阵 | `REQ-RAFT-006`、`REQ-RAFT-007` | M5 | |
72 | | -| `M5-002` | 磁盘故障、Snapshot 中断和 Elle/Jepsen history | `REQ-STORAGE-004`;`REQ-RAFT-005`、`REQ-RAFT-007` | M5 | |
73 | | -| `M5-003` | `SUBMIT_UNKNOWN`、查询和受控去重 | `REQ-RAFT-008` | M5 | |
74 | | -| `M6-001` | System Stability Gate Review | `REQ-STABILITY-001` 至 `REQ-STABILITY-006` | M6 | |
75 | | -| `M9-001` | 跨平台发行、SBOM、升级/回滚与运维门禁 | `REQ-LICENSE-003` 至 `REQ-LICENSE-008`;`REQ-WORK-003` | M9 | |
76 | | -| `M10-001` | 单 Group 瓶颈证据与 Multi-Raft 立项评估 | 新里程碑批准时新增 | M10 | |
77 | | - |
78 | | -## Done in planning/documentation |
79 | | - |
80 | | -以下状态只表示项目真相、设计合同和实施计划完成,不表示源码实现完成。 |
81 | | - |
82 | | -| ID | 工作项 | 证据 | |
83 | | -|---|---|---| |
84 | | -| `M0R-001` | 项目宪法、需求、决定、Roadmap、State 与 Kanban 已统一 | Redis 8.8.1 stability foundation 文档基线 | |
85 | | -| `M0R-002` | Redis 8.8.1 兼容、系统边界、许可证与未来 ABI 设计已冻结 | 专题设计和稳定性门禁 | |
86 | | -| `M0R-003` | 系统稳定门禁已建立,热层实现卡已冻结 | `docs/quality/system-stability-gate.md` | |
87 | | -| `M0R-004` | Cache OFF 稳定基础总计划已写入 | `docs/superpowers/plans/2026-07-26-redis-8.8.1-stability-foundation.md` | |
88 | | -| `M0R-005` | Trusted Oracle independent-rebuild 设计和实施计划已冻结 | `D011`;`REQ-COMPAT-008` 至 `REQ-COMPAT-010`;2026-07-28 spec/plan | |
89 | | -| `M0R-006` | 规划 task 与实施 task 分离规则已冻结 | `D012`;`REQ-WORK-005`;`CLAUDE.md` recovery rules | |
90 | | - |
91 | | -## WIP 与授权规则 |
92 | | - |
93 | | -- 同一时间只允许一个 implementation card 处于 In Progress;当前为 `RESP-LIMITS-001`,planning/docs task 不得隐式持有 implementation card。 |
94 | | -- 规划批准不授权修改 source、tests、build scripts 或 CI,也不授权 stage/commit/push 实现文件。 |
95 | | -- 从 planning 转 implementation 必须创建新 Codex task、TaskId、worktree、dirty allowlist 和 recovery checkpoint;不能只把 recovery mode 从 `planning` 改成 `implementation`。 |
96 | | -- 冻结草稿不得覆盖、续写、清理或回退;后续实施只读参考并重新审计。 |
97 | | -- `M1-001-T2` 必须先通过真实双 checkout reproducibility;不能把方案 A 降级为 metadata self-attestation。 |
98 | | -- 系统稳定门禁通过后,M7 仍需用户明确批准一个单独 implementation task,不能因 Gate PASS、PR 合并或 Ready 状态自动启动。 |
| 5 | +本文件仅为兼容历史链接保留,不再维护独立看板。工作包不得通过修改本文件改变状态。 |
0 commit comments