test(report): reader annual-conflict case follows the corrected return instant (BUG-1220)
The fictional chart's 2026 return moves 08:48:04 -> 08:41:55 (PyJHora within 0.09 min); the annual Lagna crosses from Taurus 1.3 to Aries 29.6 and the current-year lord becomes Jupiter. Not in the quick gate, so the BUG-1220 acceptance missed it. Full Python suite: 62 failures before and after, identical lists. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
3333aa66bf
commit
153c6e99eb
+2
-1
@@ -16463,7 +16463,8 @@
|
||||
- 根因:① 目标经度取 `compute_chart_data` 的出生太阳 `degree_raw`,求解器 `_find_solar_return_swe` 用 `_get_sun_lon_jd`(`swe.calc_ut` + `sidereal_flags`)逐步逼近,两套参考系对出生太阳差 15.1″(标准盘)。② 起年盘时用整点分钟调用 `compute_chart_data`,丢了秒。上游 9 月 7–8 日已修,本站引擎同步停在 `f2241463`(9 月 3 日),之后 `solar_return.py` 只按 BUG-1095 补过本地化,漏了这两处(ERR-109 同类)。
|
||||
- 修复:`calc_solar_return_chart` 中目标经度改为 `_get_sun_lon_jd(birth_jd_ut)`,拿不到才退回出生盘值;返回 `solar_return.target_sun_frame`(`swe_sidereal_flags` / `birth_chart_degree_raw`)。起年盘传 `second=sr_dt_ut.second`。上游同期加的 `position_mode` 等研究回放参数未搬;本地化保留本站实现。
|
||||
- 验证:`tests/test_solar_return_frame.py`:三例返照 JD 与 PyJHora `drik.next_solar_date` 参照值(只存数字)差 ≤ 0.5 分钟,实测 0.0 / 0.021 / 0.006 分钟;目标经度等于求解器参考系出生太阳(< 1″);年盘时刻与返照差 < 1 秒。换回旧代码这 5 条全部失败。243 张年盘前后对比、v5(三段与基线逐项相同)、快速门、前端失败名单比对见进度记录。咨询两份 golden 用真实引擎重采后逐字节不变(三张盘 2026 年的年盘上升与年主恰好不变,日期只存到天)。
|
||||
- 防复发:上述测试;同步上游太阳返照时,核对目标经度与求解器同一参考系(已补进 ERR-109)。
|
||||
- 补修(2026-10-04):`tests/test_report_reader_main.py::test_reader_annual_conflict_keeps_both_real_producer_values` 在 `01929bae` 转红(他会话二分发现)。该测试不在快速门里,本单验收只跑了快速门和定向测试,没跑 Python 全量,漏了。虚构盘 2026 年返照从 08:48:04 变 08:41:55(PyJHora 差 0.09 分钟),年盘上升从金牛 1.3° 落到白羊 29.6°,年主由火星变木星;断言按三栏改为木星。补跑 Python 全量:修前 `3c27c38e` 与修后各 62 个失败,名单逐条相同(均为既有环境失败)。
|
||||
- 防复发:上述测试;同步上游太阳返照时,核对目标经度与求解器同一参考系(已补进 ERR-109)。改引擎计算值的轮次,验收要跑 Python 全量并与基线比对失败名单,不能只跑快速门。
|
||||
- 相关记录:BUG-1095、BUG-1026~1028、ERR-109。
|
||||
- 复发自:无(ERR-109 同类漏同步)
|
||||
- 修复版本:staging `01929bae`(生产待提升)
|
||||
|
||||
@@ -76,3 +76,9 @@
|
||||
|
||||
- 名人生平回测:本机无模型凭据,未跑(本单不改提示词)。
|
||||
- 真机:部署后在 staging 打开一张年运数据卡或参考版报告,看年运段能出;数值变化只影响约 5% 的年份,不另立真机清单。
|
||||
|
||||
## 补修(2026-10-04)
|
||||
|
||||
- 他会话报告 `tests/test_report_reader_main.py::test_reader_annual_conflict_keeps_both_real_producer_values` 自 `01929bae` 起失败(不在快速门里,我验收时没跑 Python 全量)。
|
||||
- 核实:虚构盘 2026 年返照 08:48:04 → 08:41:55,PyJHora 2461137.529169,修后差 0.09 分钟、修前差 6.1 分钟;年盘上升金牛 1.3° → 白羊 29.6°,只有木星吉照上升,年主火星 → 木星;次年月亮不变。断言按三栏改为(木星,月亮)。
|
||||
- 补跑 Python 全量(`pytest tests`):修前 `3c27c38e` 62 失败,修后(含第四批)62 失败,名单逐条相同。
|
||||
|
||||
Reference in New Issue
Block a user