lhl
69aec7716c
feat(provenance): URI 统一 + resolver + 强验证(T12 架构审查整改)
- T12 (OV3, P1): 新建 src/genesis/parsers/resolver.py
- parse_source_uri: 解析 file.xlsx#Sheet!CellRef → SourceRef(格式非法 raise URIError)
- provenance_to_uri: Provenance 还原 URI(与 build_source_uri 互逆)
- resolve_source_uri: StructuredSource 内定位真实 CellValue
- validate_source_uris: 批量强验证 → ValidationResult(resolved/unresolved)
格式错误或源中不存在一律 unresolved(防 QA#8 编造 URI 作弊)
- URI 唯一生成入口 build_source_uri(provenance.py),无散落不一致
- 新增 test_resolver.py(13 用例);同步 design.md §9.2 + §6.8 第五步
- TDD: RED(模块缺失)→ GREEN(聚焦 10 passed)→ 全量 231 passed / 100.00%(1191 stmts/298 br)
2026-08-12 22:35:56 +08:00
..
2026-08-12 11:32:28 +08:00
2026-08-08 15:28:52 +08:00
2026-08-10 09:21:55 +08:00
2026-08-08 16:50:24 +08:00
2026-08-12 09:50:37 +08:00
2026-08-09 17:11:38 +08:00
2026-08-12 11:32:28 +08:00
2026-08-08 15:30:04 +08:00
2026-08-12 15:43:10 +08:00
2026-08-09 04:49:29 +08:00
2026-08-08 16:50:24 +08:00
2026-08-09 04:49:29 +08:00
2026-08-09 04:18:39 +08:00
2026-08-12 09:50:37 +08:00
2026-08-12 09:50:37 +08:00
2026-08-09 13:38:59 +08:00
2026-08-09 08:03:17 +08:00
2026-08-12 09:54:20 +08:00
2026-08-09 13:44:19 +08:00
2026-08-09 03:59:24 +08:00
2026-08-12 11:32:28 +08:00
2026-08-10 23:39:53 +08:00
2026-08-12 22:35:56 +08:00
2026-08-10 10:14:15 +08:00
2026-08-08 16:59:17 +08:00
2026-08-09 04:49:29 +08:00
2026-08-08 15:28:52 +08:00
2026-08-10 23:39:53 +08:00
2026-08-12 09:39:34 +08:00
2026-08-09 04:49:29 +08:00
2026-08-12 15:43:10 +08:00
2026-08-10 09:38:37 +08:00