Files
msgexchange-v2/docs/spec-boundary-closure.md
T

4.2 KiB
Raw Blame History

需求边界闭合方案

1. 目标

阶段 A 闭合 US-01US-14OPS-1OPS-4US-15 保留为阶段 B 边界。

  • 需求与验收以 US-xxOPS-x 为唯一依据,本文件只做实施覆盖映射。
  • 实现必须遵守 D1D4PRE-1PRE-8INV-1INV-22CLM-3CLM-10C-1C-29
  • 参数、指标和错误分类只引用 PARAM:<key>reference.md,不重复取值。
  • Q2Q16 未定案时只阻断对应验收,不补写猜测。

2. 边界

  • 航班当前态只存自有 PG;不引入 Redis、阶段 A 的 ES、新业务库、并行主泵或分布式锁。
  • 共享 MySQL 只做契约内读写与回填;不建表、不增列、不迁移、不写共享历史表(C-14)。
  • 生产保持单活动实例;不承诺端到端恰好一次、跨 FLID 顺序或未经验证的 Oracle 11g 支持。
  • US-15 未启用前遵守 D1:历史写入未确认成功时航班清场删除 0 条。
  • 进度与排期只记 Plane,本文件不记录完成状态。

3. 需求覆盖

需求 必须闭合的能力 约束 / 缺口锚点
US-01 按 ID 有限采集、持久水位、幂等入队、空洞与中断恢复 INV-2INV-5Q2
US-02 安全兼容注入,落信确认与业务完成分离 C-28Q3[G-COMPAT-HTTP]
US-03 严格 FIFO、安全解码、身份去重、事务提交与持久重试 INV-3INV-6INV-10INV-17Q6Q11Q15
US-04 忽略报文在身份绑定后无业务副作用终结并回填 INV-8INV-9[G-IGNORE]
US-05 ADFT、FDEL、29 类 FLOP、完整航班态及主/共享关系 INV-11INV-22Q8Q13Q14Q16[G-FLOP-IDEMPOTENT][G-MAFL][G-SRVT-VIPF]
US-06 DNLD/RESP 整包快照、请求守卫、迟到应答隔离 INV-12INV-15INV-19Q5Q13[G-RESP-GUARD]
US-07 Kafka 至少一次投递、同 FLID 保序、schd 聚合、失败与清理 D3INV-10C-29Q4[G-KAFKA-D3][G-EVENT-RETENTION]
US-08 14 类 RQRD、1 类 RQFD、出站落信、开放请求唯一、匹配与超时 C-23C-24Q3Q5Q8Q10Q14[G-REQ-TRACK][G-REQ-OPEN-UNIQUE][G-REQ-TRACK-RETENTION]
US-09 终态回填意图、后台补偿、四结果、放弃与人工恢复 INV-7INV-8C-5C-8Q7Q9[G-BACKFILL-BACKOFF]C-6 不成立时闭合 [G-REPLAY-CHANNEL]
US-10 可查询、可预览、白名单重放、风险预检、授权与审计 CLM-3Q6
US-11 已了结终态归档、去重影子、竞态复查及独立保留期 D4C-14C-16[G-PROC-HST][G-HST-RETENTION]
US-12 从 PG 权威态查询实时主航班,固定契约且依赖失败不伪装为空 INV-11Q3
US-13 21 类参考主数据完整校验、原子发布、失败保旧 Q8
US-14 机位/登机桥映射原子发布,PSDT 只读计算 Q8
US-15 阶段 B 历史归档成功后清场及删除事件恢复 D1INV-18Q9[G-FLIGHT-HIST-RETENTION]
OPS-1 真实适配器、配置与单写者拒启,失权停写,安全停机 D2PRE-5
OPS-2 真实健康、积压/失败指标、告警、受控处置与敏感信息保护 reference.md
OPS-3 影子数据库、topic、服务身份隔离并禁生产写 PRE-1
OPS-4 对拍、切流观察、恢复演练及完整回退规程 C-1C-29

4. 统一验收

  • 每个 PR 标明 US-xx/验收条目、相关 Q、迁移、配置、恢复影响和未包含范围。
  • 排序、重试、幂等、投递必须覆盖 invariants.md 的验证映射;业务类型必须有 golden 样例。
  • 时间测试使用 TestClocks.kt;领域与适配器测试使用内存实现,事务与迁移使用既有 PG 测试设施。
  • 自动化测试禁止 Thread.sleep 和真实外部基础设施;Kafka/MySQL 现场验收单独留证。
  • 使用锁定的 JDK 25、Micronaut 5.1.3 及现有 KSP/Jackson 编译参数,不升级或重构无关模块。
  • 真实适配器、契约、测试及对应 OPS-x 未闭合时,不得宣称需求或生产切流完成。