docs: remove retired schedule generation design

This commit is contained in:
windyboy
2026-09-09 20:22:10 +08:00
parent f6f9d6c6cb
commit d53a0a1c2f
8 changed files with 106 additions and 481 deletions
+6 -6
View File
@@ -10,7 +10,7 @@
- 所有内部迁移只落自有 PG;共享 MySQL 不建表、不增列、不写历史表。本文用 `DATE_PROCESSED / STATUS` 表示逻辑字段,实际列名以库方契约为准。
- 验收条目可按 `US-xx/条目号` 引用。故事较大时按下文子范围拆成小 PR,不把一个故事等同于一个提交。
**存储基线**[单库权威决策](decision-flight-state.md) 已采纳:当前 PG 主表与明细表是状态权威,Redis 不参与动态写路径。Oracle 11g 是尚待完整适配的部署目标。航班状态设计和当前缺口见 [flight-state.md](flight-state.md)。
**存储基线**:当前 PG 主表与明细表是状态权威,Redis 不参与动态写路径。Oracle 11g 是尚待完整适配的部署目标。航班状态设计和当前缺口见 [flight-state.md](flight-state.md)。
## 2. 建议实施顺序
@@ -126,18 +126,18 @@
| 报文 | 路由 | 请求状态 | 无匹配时 |
|---|---|---|---|
| `SCHD-DNLD` | SnapshotFlow | 不更新请求 | 不要求开放请求 |
| `SCHD-RESP` | 匹配守卫后进入 SnapshotFlow | 成功提交时匹配 RQFD → DONE | SKIPPED、审计,禁止更新快照 |
| `SCHD-DNLD` | ScheduleProcessor | 不更新请求 | 不要求开放请求 |
| `SCHD-RESP` | 匹配守卫后进入 ScheduleProcessor | 成功提交时匹配 RQFD → DONE | SKIPPED、审计,禁止更新快照 |
| `SCHD-ADFT` | US-05 增量 Handler | 不更新请求 | 不适用 |
**验收标准**
1. RESP/DNLD 共用流式解析、整包校验和规范化;校验失败不发布半包,旧快照保持可用。
2. RESP 仅匹配未过期、已发送的开放 RQFD;`DTTM < SENT_AT`、已过期、已被替代或无匹配时,不写业务状态,记录跳过原因。
3. 在自有 PG 单事务内,批处理写入新代 `FLIGHT_SCHD`、按代域化差删旧代航班并执行 SQL CAS 推进 `SCHD_GEN` 版本;删除集只来自上一代成员,不误删集合外的 ADFT 航班
3. 在自有 PG 单事务内,批处理写入已校验的 `FLIGHT_SCHD` 航班状态与资源明细;本次日计划中未出现的航班不因此被删除
4. 在同一 PG 事务中提交 `FLIGHT_SCHD` 变更、`MSG_EVENT` 待发通知与 `PROC_STATE(SUCCEEDED)`;匹配 RESP 同事务完成请求并置 `DONE`;事务提交后执行信箱回填。
5. 相同报文重放不二次增代或删数据;单事务崩溃整体回滚,重放幂等FS6 门槛 1/2/3 验证通过)
**当前基础与落点**`processing/SnapshotFlow.kt` 的 staging 为占位,主处理只分流 DNLD,gen 走进程内过渡仓储。需补 RESP 路由、版本协议及 `REQ_TRACK` 应答关联字段和事务测试。
5. 相同报文重放不二次写入或重复发事件;单事务崩溃整体回滚,重放幂等。
**当前基础与落点**主处理只分流 DNLD需补 RESP 路由、`REQ_TRACK` 应答关联字段和事务测试。
**前置**US-03、US-08 请求登记/匹配基础;Q1、Q5。