# 可运行示例矩阵

## 1. 基线命令

| 范围 | 命令 | 目标 | 当前状态 |
| --- | --- | --- | --- |
| DSM 全部模块 | `cd submodule/dsm && mvn clean test` | 验证固定源码基线 | 通过：364，失败 0，错误 0，跳过 0 |
| DSM 集成测试 | 包含在 `mvn clean test` 的 reactor 中 | 验证三类集合与 repair | 通过：24，失败 0，错误 0，跳过 0 |
| Basic Usage | `cd submodule/dsm-examples/basic-usage-examples && ./mvnw clean verify` | 验证 Runtime、Spring Boot 与 REPL | 通过：4，失败 0，错误 0，跳过 0 |
| Redis lab | `cd submodule/dsm-examples/dsm-redis-server && ./mvnw clean verify` | 验证 RESP、双节点与网络行为 | 通过：48，失败 0，错误 0，跳过 0 |

## 2. 逐章资产目标

| 章 | 资产或上游入口 | 运行方式 | 预期观察 | 当前状态 |
| --- | --- | --- | --- | --- |
| 1 | `classification-cases.json` | `npm test -- --test-name-pattern="chapter 01 classification"` | 8 个候选状态完整且参考分类受校验 | 已实现；E1 静态证据 |
| 2 | `DsmReplTest` + lifecycle card | `./mvnw -q -Dtest=DsmReplTest test` | Runtime 读写与 peer 路径运行 | 通过：3，失败/错误/跳过 0 |
| 3 | identity card + schema mismatch | 书籍测试 + `TwoNodeIntegrationTest` | locator/schema 完整；不兼容指纹被拒绝 | 通过：E3 受控双节点 |
| 4 | `TwoNodeIntegrationTest` | 聚焦 Maven 测试 | B 最终读取 A 更新，remove 和反向 put 可见 | 通过：7-test suite 中覆盖 |
| 5 | Register 增删改查 | 同上 | 可见值和 remove 按本地/远端契约变化 | 通过；查询不宣称全局强一致 |
| 6 | 并发候选值 | resolver 集成测试 + 资产测试 | 自定义合并两端同值；错误策略可识别 | 通过；非形式化证明 |
| 7 | Lease fencing | `RuntimeIntegrationTest` | transfer 后旧 token 被拒绝 | 通过：3-test suite 中覆盖 |
| 8 | PN Counter | `RuntimeIntegrationTest` + 资产测试 | Runtime facade 合并；三条代数性质样例完整 | 通过；双节点传播未在本章证明 |
| 9 | collection decision exercise | 书籍资产测试 | 7 个状态覆盖三类采用和拒绝 | 通过：E1 设计评审 |
| 10 | membership observations + stability gate | 聚焦 Maven + 资产测试 | join、suspect、recover；稳定轮次；quorum fail closed | 通过：19 test，失败/错误/跳过 0 |
| 11 | five-stage delta trace | `TwoNodeIntegrationTest` + chaos | local put 后远端 apply；漏失后 repair | 通过：7 + 相关 chaos 场景 |
| 12 | repair scenarios | planner + chaos | replay/snapshot 选择且不向后覆盖 | 通过：5 planner + 8 chaos test |
| 13 | overflow policy | runtime 聚焦测试 | 四种策略与回调超时行为符合配置 | 通过：17 test；JMH 留待第 22 章 |
| 14 | partition contract | `ChaosIntegrationTest` | 局部双成功、dual holder、quorum 拒绝和恢复 | 通过：8 test；Redis 外部协议留待第 23 章 |
| 15 | `examples/order-fulfillment-control-plane` | `mvn clean test` | 业务层不暴露 DSM 类型；三类 handles 在适配器内运行 | 通过：2 test，失败/错误/跳过 0 |
| 16 | Spring Boot auto-config + Basic example | 上游聚焦 context tests | Runtime、三类集合、别名 bean 与生命周期可验证 | 通过：29 test，另 Basic 1 test |
| 17 | locator/service isolation | Runtime + Multicast tests | 不同 locator 不互相可见；serviceId 隔离成员 | 通过：Runtime 3 + nested membership 16 test |
| 18 | evidence suite | 书籍 E1/E2 + 上游 E2/E3 | 结果按执行面分层且写明未证明事项 | 通过；E4 明确保留至第 23 章 |
| 19 | `diagnostic-runbook.json` + observability tests | 聚焦 Maven + 资产测试 | snapshot、metric、trace 形成可证伪假设且指标维度受限 | 通过：41 test，失败/错误/跳过 0 |
| 20 | `security-gates.json` + security integration | 聚焦 Maven + 资产测试 | 五道门分别给出拒绝、指标、审计且无 secret | 通过：39 test，失败/错误/跳过 0 |
| 21 | `lifecycle-drill.json` + Runtime/Spring tests | 聚焦 Maven + 资产测试 | 仅 RUNNING ready；late registration 与失败启动可观察 | 通过：44 test，失败/错误/跳过 0 |
| 22 | `benchmark-run-card.json` + JMH harness | `BenchmarkHarnessTest` + RegisterGetLatency smoke | 结果带 mode/unit/参数并输出 JSON；短测不形成容量结论 | 通过：2 harness test；3 组非 fork smoke 参数完成 |
| 23 | Redis smoke + boundary | `./mvnw -q clean verify` | RESP 操作、复制、repair 和限制可观察 | 通过：48 test，失败/错误/跳过 0 |
| 24 | Federation integration | bridge + integration 聚焦测试 | Register 收敛/repair、Lease 观察、CRDT 合并 | 通过：15 + 1 test，失败/错误/跳过 0 |
| 25 | selection review | 书籍资产测试 | 8 类状态给出采用/拒绝理由与反事实 | 通过：E1 设计评审资产 |
| 26 | capstone | `node scripts/verify-capstone.mjs` | 书籍、领域示例、观测、安全、生命周期、federation、真实 socket、图和出版串行通过 | 通过：19 book checks + 10-stage capstone；2 example + 16 federation + 48 Redis，并生成 39 页在线书与 85 页 PDF |

最终完整复跑另包含 DSM 364、Basic 4、本书示例 2 项测试，失败/错误/跳过均为 0；详见 [最终发布候选验证](reviews/final-release-validation.md)。
