{
  "ticket": "U78 (issue #115)",
  "generatedAt": "2026-10-25T18:51:00+08:00",
  "purpose": "内容中心与综合设计算例的可计算推演：发布指针守卫、乱序/重复/墓碑投影消费、容量与恢复算术自洽",
  "environment": {
    "os": "macOS-27.0.1-arm64-arm-64bit",
    "python": "3.9.6",
    "script": "labs/system-design/model_check.py"
  },
  "input": "python3 labs/system-design/model_check.py（无网络、无数据库、无外部依赖）",
  "exitCode": 0,
  "stdout": [
    "PASS: 6 histories preserve balance and idempotency",
    "PASS: retry before/after commit has one logical effect",
    "PASS: same idempotency key with changed amount is rejected",
    "COUNTEREXAMPLE: stale prechecks permit balance=-60",
    "PASS: old version/round and repeated finalization rejected",
    "PASS: stale lease holder rejected by resource token check",
    "PASS: monotonic projection tombstone prevents resurrection",
    "PASS: publish pointer guard admits one writer and keeps drafts off the pointer",
    "PASS: reordered/duplicate events converge with idempotent audit; tombstone blocks revival",
    "PASS: capacity/backlog/recovery/cache arithmetic matches the article"
  ],
  "stderr": [],
  "interpretation": [
    "发布指针守卫：仅持最新(current_version,row_version)快照的一个写入者可移动指针；草稿保存不移动指针",
    "投影消费：乱序+重复事件按aggregate_version收敛到v3，审计动作按event_id幂等；墓碑版本拒绝迟到发布复活",
    "容量算术：L=λW=3000、30核秒/秒→13实例、失区后19.2核<30、积压36万/清理180s、恢复87.4分钟>30分钟RTO、回源2500→5000，与正文数值一致"
  ],
  "limits": "确定性教学模型：不证明MySQL行锁范围、Kafka投递、ES refresh或真实恢复吞吐；正文数值为教学假设，模型只验证推导自洽"
}
