Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
6.8 KiB
6.8 KiB
TASK · 生时校正「角度类时间技法」研究:行运压角 / 次限推运 / 太阳弧(研究单,2026-10-01)
基线
origin/staging@209352eb(写作时 head;开工时以最新origin/staging为准)。- 分支
codex/rectification-angle-timing-research-20261001,工作树.worktrees/rectification-angle-timing-research-20261001。 - 离线研究,生产代码零改动:不动
sealed_holdout_rerun.py::PRODUCTION_FILES、事件引擎、frontend/、任何常数。新代码只进scripts/research/与tests/;可只读复用scripts/western_timing_engine.py、scripts/western_chart_engine.py、scripts/research/varga_resolution_lib.py、scripts/research/scoring_research_lib.py。 - 数据:
references/real_case_calibration/minute_rectification_holdout_v5.json(77 例公开 AA;事件 day 244 / month 143 / year 577)。 - 本机无 Docker 不影响本单(不碰数据库)。
先读
docs/research/rectification_scoring_research_2026_09_29.md(打分层三条 no_benefit:42 个「大运 + 宫位」特征在 v5 上 36~39 个是噪声)docs/research/rectification_varga_resolution_2026_09_30.md(盘型口径基线:六题后头段命中、真值段保留)docs/research/rectification_minute_resolution_closure_2026_09_14.md§1、§7(1 分钟 ≈ 大运边界平移 3.8 天)
事故实证 / 动机
产品 2026-10-01 问「生时校正到底能不能改善」。已证实:现有计分全部是「大运主星 + 宫位 / 分盘宫位」类规则,出生时间差 1 分钟大运边界只挪约 4 天,灵敏度天生不够;数据定权重也救不回来。尚未测过的一类是以度数计的角度技法:
| 技法 | 对出生时间的灵敏度 |
|---|---|
| 本命上升 / 天顶度数 | 约 4 分钟 / 1° |
| 行运土星 / 木星压本命上升或天顶度数 | 土星约 1° / 月、木星约 2.5° / 月 → 记得到月的事件约对应 4~10 分钟 |
| 次限推运上升 / 天顶、太阳弧角度 | 约 1° / 年 → 记得到年的事件约对应 ±2 分钟 |
物理上灵敏度对路;风险是一生接触很多、事件与接触的对应有歧义(多重比较),所以必须有乱序对照。
根因假设
现有规则缺少「度数级」的时间信号;若角度技法在真实事件日期上的命中显著高于乱序日期,它就能在现有六题之外提供分钟级信息。
决策记录(产品 2026-10-01)
- 批准离线测三类角度技法;有收益才另立产品单,并由产品决定是否在吠陀产品里作为「计算工具」使用(这类技法主要来自西洋占星的校正传统)。
- 不改现有六题、出卡时机、盘型交付;新信号只在研究侧与现有后验叠加评估。
- 打分层(大运 + 宫位)研究已关闭,本单不得重开其权重实验。
硬红线
- 乱序对照必做:每例把事件日期在该人的生存期内随机重排(保留精度与领域),重复 ≥ 50 次;任何技法只有在「真实日期」的指标显著优于乱序分布(报百分位,≥ 95% 才算显著)时才可称有信号。
- 留一法:所有阈值、容许度(orb)、权重在训练折上定、在留出例上量;同时报全集拟合作对照,只认留一法数字。
- 不得挤出真值:与盘型口径基线比,真值段保留(±10 / ±30 / ±60 = 76 / 76 / 75)任何一格不得下降;分钟区间口径下真值在区间不得下降。
- 稳健性:事件日期 ±7 天、±1 个月偏移;年精度事件单列;LMT 时代(1900 年前)7 例单列。
- 口径:行星与角度用同一黄道(回归或恒星任选其一并写明,相位与黄道选择无关);岁差、交点模式与现有研究一致时写明;容许度候选至少 1° / 2° / 3° 三档。
- 生产代码零改动;
PYTHONHASHSEED=0,结果 JSON 两次复跑逐字节一致;快速门 Python 部分与基线一致;隐私守卫通过;负结果完整写出。
任务分解
- A0 特征抽取(BUG-1141):
scripts/research/angle_timing_lib.py:对每例每个候选分钟(步长 1 分钟,窗口 ±60)、每件带日期事件,算:- TR:事件日行运土星 / 木星 / 罗睺(及日精度事件加火星)对本命上升、天顶的 0° / 90° / 180° 相位离度;
- SP:次限推运上升、天顶对本命行星(日、月、水、金、火、木、土)的 0° / 90° / 180° 离度;
- SA:太阳弧推进的上升、天顶对本命行星的同上离度。
- 事件精度处理:日精度用当天;月精度取该月内最小离度;年精度只用于 SP / SA。
- 验收:单测(已知名人一例手算核对一个离度;窗口内上升度数随分钟单调变化;精度处理正确)。
- A1 信号检验:对每个技法 × 容许度,计算「真实日期命中率 vs 乱序分布」(每例:真值分钟的命中数在窗口内所有分钟中的排位;全集:排位均值 vs 乱序百分位)。只把显著(≥ 95 百分位)的技法带入 A2。
- 验收:表进研究文档;不显著的写 no_signal 并停止该技法。
- A2 叠加评估:把显著技法的分钟级分数(留一法定权重)叠加到现有六题后验(复用
varga_resolution_lib的回放与minute_weights),量:真值段保留、D1 / D9 / D10 头段命中、≤2 段比例、分钟区间宽度中位(同覆盖下)、头名 ±2 分钟命中。与基线逐格比。- 验收:六格(3 档 × 有 / 无)表;红线逐格判定。
- A3 结论:
docs/research/rectification_angle_timing_2026_10_01.md:一句话结论表(每技法:信号有无、叠加收益、是否建议进产品)、复跑命令、若有收益写产品单要点(只给结论口径,不写实现);docs/research/ACTIVE_FRONTS.md索引;定论页追加一节;docs/tasks/PROGRESS-rectification-angle-timing-research-20261001.md;BUG-1141;README 行。
让步顺序
A0 > A1 > A2 > A3 的图表。A1 全部 no_signal 时 A2 不做,直接写结论。
开工前置命令
git fetch origin --prune
git worktree add -b codex/rectification-angle-timing-research-20261001 .worktrees/rectification-angle-timing-research-20261001 origin/staging
cd .worktrees/rectification-angle-timing-research-20261001
export PYTHONHASHSEED=0
python3 -m pytest -q tests/test_varga_resolution_research.py tests/test_scoring_research.py tests/test_repo_privacy_markers.py
python3 -c "import scripts.western_timing_engine as w; print([n for n in dir(w) if not n.startswith('_')])"
BUG 编号
开工时核对 docs/BUG_HISTORY.md 最大号(写作时 BUG-1140;1135~1139 已用)。本单:BUG-1141(校正缺少度数级时间信号,待研究判定)。研究结束按结果改 resolved(有产品单)或 closed_by_design(无信号,附数字)。关联 BUG-1091、BUG-1105。