59 lines
3.5 KiB
Markdown
59 lines
3.5 KiB
Markdown
# PROGRESS · 长报告对齐二轮 gaps2(2026-09-06)
|
||
|
||
工作树:`.worktrees/report-md-page-20260906`(与 MD 详情页串行)
|
||
分支:`codex/report-md-page-20260906`(已 push `origin`,HEAD `809bdf13`;实现主体 `cfcd369d`)
|
||
任务书:`TASK-report-longform-gaps2-20260906.md`
|
||
|
||
## 任务 0 根因
|
||
|
||
专业参考路径可以把 `cmd_kp` 收成 `{status: blocked, reason: ...}` 且没有 `planets` / `houses`。渲染层 `_kp_lord_sub_section` 与专题 KP 表遇到该信封曾直接 `return []`,计划段无声消失。三年 KP 月表不走同一信封,所以仍在。
|
||
|
||
触发变量是 **API 候选窗 / blocked KP 信封**,不是 Raman 本身。真实用户盘未入库。
|
||
|
||
同构虚构盘 pl9-export(1990-01-01 12:00 UTC+8,39.9042/116.4074,raman,full pack;只写 `/tmp`):约 3107 行,KP Lord/Sub、审计表约 71 数据行、力量章六子块均在;约 11s。
|
||
|
||
## 任务状态
|
||
|
||
| 任务 | 状态 | 说明 |
|
||
| --- | --- | --- |
|
||
| 0 根因 | 完成 | 见上;BUG-561 |
|
||
| 1 KP + 静默跳过禁令 | 完成 | blocked 标题;最终 heading-ensure |
|
||
| 2 审计表零行 | 完成 | `_iter_audit_modules` 在 raw 剥离前抽出;BUG-562 |
|
||
| 3 力量章六子块 | 完成 | Bhava Bala 规范化;Yogini/Narayana/Kala periods 从本地模块补装 |
|
||
| 4 年度回放按年展开 | 完成 | `_annual_series_surface` 保留 replay 键;缺年 blocked |
|
||
| 4b 时间精度合同 | 完成 | 四粒度:day blocked;week/month parameter_sensitive;year 有年度系列则 partial_verified |
|
||
| 4c 出生 provenance | 完成 | `birthplace_label` / `coordinate_source=user_reported` / `time_source` / `uncertainty_minutes` |
|
||
| 5 C 组小段 | 完成(blocked-or-present) | 原始模块索引、Technique Audit、Vargas I 等走显式 heading |
|
||
| 6 质量门 | 完成 | 见下 |
|
||
|
||
## 质量门
|
||
|
||
```bash
|
||
/Users/jesse/Downloads/Copse/astrology/yinduzhanxing/.venv/bin/python -m pytest \
|
||
tests/test_report_longform_gaps2.py \
|
||
tests/test_timing_precision_contract.py \
|
||
tests/test_report_longform_parity.py -q
|
||
# 22 passed
|
||
```
|
||
|
||
本 worktree 无独立 `.venv`,实测用父仓解释器。实现已随 `809bdf13` 快进到 `origin/staging`;门禁因 MD 页 lint(BUG-563)未部署,与 gaps2 装配无关。
|
||
|
||
未改 `.gitea/workflows/**`,不提升 main。
|
||
|
||
## 补洞(相对 `cfcd369d` / `5aa05bf0`)
|
||
|
||
并行 worktree 在旧基线上多做的实现没有整棵 rebase(`jyotish_engine.py` 与 MD 页提交重叠太大)。在当前 staging HEAD 上只移植仍缺的洞:
|
||
|
||
| 洞 | 处理 |
|
||
| --- | --- |
|
||
| 有月份时逐月 MD/AD 标题仍缺 | `_kp_monthly_theme_brief` 始终写 `#### KP {事业\|财务\|关系}逐月 MD/AD 支持`;空数据 blocked |
|
||
| sanitize 抹掉 `source_path` | parity_gates 改 `source_label` |
|
||
| 快速门未跑 gaps2 | `CORE_PYTEST_TARGETS` 列入 gaps2 / parity / timing / flexible |
|
||
| 校时附录无分钟排行 | `flexible_birth_time_report_section` 列出 `candidate_times`,禁止 winner/approved |
|
||
| CLI provenance 只认显式分钟 | 从 `candidate_range` / `declared_window_*` 回填 11:50–12:10 → 20 |
|
||
| Vargas I / KP 三年节 None.get | `d1_d60_ledger` 与 `support_topics.kp` 做 dict 守卫 |
|
||
|
||
Muntha `conflict`、`pyjhora_behavior_only`、事件回放 `user_history_not_supplied` 保持原样。未 vendor `professional_parity_closure`。
|
||
|
||
定向测试:`test_report_longform_gaps2.py` + parity + timing + flexible + api growth = 38 passed。补洞提交 `e4d16b75`。未改 `.gitea/workflows/**`,不提升 main。产品要求本轮只快进 `staging`,不核对部署。
|