feat(t224): add incremental freight sync

This commit is contained in:
QiuSW
2026-07-29 00:26:05 +08:00
parent 433db45100
commit c69879650e
35 changed files with 2085 additions and 156 deletions
+19 -6
View File
@@ -4,7 +4,7 @@ title: ERP 日期增量同步
phase: 2
deps:
- T-223
status: TODO
status: DONE
created: 2026-07-28
context_ref: 78dc595
work_branch: null
@@ -49,11 +49,11 @@ write_paths:
## 验收要点
- [ ] 日期 query 与脱敏 HAR 合约一致,时区和闭区间规则有测试。
- [ ] 重叠窗口、重复页、来源更新、空窗口和中途失败不丢单/不重复。
- [ ] 失败不推进 watermark,成功重放得到相同货运与采购需求集合。
- [ ] Admin 可查看范围、状态、计数和匿名错误,不显示 PII/秘密。
- [ ] Python、Go 全量测试、race/vet、根验证和响应式 SSR 验收通过。
- [x] 日期 query 与脱敏 HAR 合约一致,时区和闭区间规则有测试。
- [x] 重叠窗口、重复页、来源更新、空窗口和中途失败不丢单/不重复。
- [x] 失败不推进 watermark,成功重放得到相同货运与采购需求集合。
- [x] Admin 可查看范围、状态、计数和匿名错误,不显示 PII/秘密。
- [x] Python、Go 全量测试、race/vet、根验证和响应式 SSR 验收通过。
## 边界
@@ -64,3 +64,16 @@ write_paths:
## 执行记录
- 2026-07-28:任务合约已冻结,等待 T-223。
- 2026-07-28:Connector 增加 `CREATED_RANGE`,严格复现
`t_stock.created/op=0/type=3/optType=0` 和最多 7 个自然日闭区间;分页按 stock id
去重,空范围不请求详情,输出继续使用 allowlist schema。
- 2026-07-28:v14 将同步运行扩展为 `ORDER_NUMBER/CREATED_RANGE` 并新增 creator
级成功水位。后端“同步至现在”从水位前 10 分钟所在自然日回看,超过 7 天自动切窗;
货运 upsert、同步成功和水位推进处于同一 SQLite 事务,失败和较旧成功任务不推进。
- 2026-07-28:Admin JSON/SSR 支持手动日期范围、“同步至现在”、范围/计数/稳定错误码
和水位查看。SSR 实测发现并修复预填日期与 `sync_to_now` 同时提交的 422,API 仍严格
拒绝混合语义。
- 2026-07-28:Python 22 项伪响应测试、Go 全量测试、race、vet 和根 `init.ps1`
通过。隔离 Gin/SQLite + 本地伪 Connector 验证成功/失败水位;Playwright 在
1440×900、390×844、360×800 无横向溢出、页头遮挡、过小命令控件或 PII 文本。
未访问真实 ERP。