Files
Jyotisha/docs/tasks/PROGRESS-rectification-nadi-seconds-research-20261005.md
T
Jesse_ChenandClaude Opus 5.5 e3f3a1fcde
Independent Staging Quality Gate / validate (push) Successful in 26m35s
Independent Staging Quality Gate / publish (push) Successful in 4m3s
docs(research): accept nadi second-level falsification study (BUG-1240)
Normalize results JSON to LF (content identical to the Windows run),
add close-ayanamsa N4 supplement, record acceptance.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-05 23:26:20 +08:00

67 lines
4.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# PROGRESS · 生时校正「纳迪秒级」证伪(2026-10-05,BUG-1240)
任务书:`TASK-rectification-nadi-seconds-research-20261005.md`。分支 `codex/rectification-nadi-seconds-research-20261005`,基线 `origin/staging` @ `4c64733f`。只 commit,不 push。未部署。
## 一句话
第 4 层、第 5 层和等分 D150 没有胜过预先登记的安慰剂,也没有在六题后的区间里把记录分钟找得更准。换岁差时细记号大面积变化。BUG-1240 `closed_by_design`。不立实现单。
## 提交
| 提交 | 内容 |
| --- | --- |
| `217cd4a7` | N0 库、跑数脚本、对账测试、BUG-1240 先记为 investigating、状态板改为执行中 |
| `6d51c2de` | 库自己把 `scripts/` 放进导入路径。直接跑脚本时否则找不到星历模块。没有改统计量 |
| `57480db3` | 预登记 JSON,单独提交,在第一次 v5 计分之前 |
| 本提交 | 结果 JSON、研究报告、ACTIVE_FRONTS、BUG 终态、状态板改为待验收、本进度 |
预登记全文 SHA-256:`dc012dd2b287b28ac2eefb75d5b9050e7788cb09d0064639878a37753ee8c2d3`。
## 硬红线
| 要求 | 结果 |
| --- | --- |
| 规则先登记再跑 | 预登记 `57480db3` 早于结果。看过数字之后没有改规则、阈值或种子。事后列为空 |
| 排序程序不读 `true_minute` | 测试扫描拟合函数源码,并用会拒绝这个键的字典做了运行检查 |
| 每个「对上了」都有安慰剂 | N1 六项、N2、N5 四项都写了安慰剂。N3 的对照是同一次六题回放的生产头名 |
| 负结果照写 | 六项里只有第 4 层对日期平移达到 p < 0.05。没有改成只保留这一项 |
| 取整组和非取整组分开 | 写在研究报告 §3–§5。过门用合并样本 |
| 生产代码零改动 | 改动在 `scripts/research/`、`tests/test_nadi_seconds_research.py` 和 `docs/` |
| 不重调 BUG-1091 的权重 | 没有改 `DOMAIN_CONFIG`、计分权重或宫位映射 |
| 不抄纳迪原文 | N5 的文字比对写 blocked |
| 两次复跑逐字节一致 | 见下方「复跑」 |
| 隐私 | 文档和 BUG 不写出生时间。案例编号只留在结果 JSON,与既有公开评价集相同 |
## 复跑
两次全量都用 `PYTHONHASHSEED=0`,半径 ±10 / ±30 / ±60。第一次写出 `docs/research/nadi_seconds_results_2026_10_05.json`(356,824 字节)。第二次写到临时文件。SHA-256 都是 `4f1569c3e8794e0d2c35d244d32b3896e47cf8a1f7d03d16ce01d3f07b51ec69`,逐字节一致。
## 测试
`tests/test_nadi_seconds_research.py` 与开工时那五个文件一起再跑,退出码 0。新测试 10 项通过,前三层对账 0 差,覆盖 77 例 964 件事件。新测试没有加进快速门的固定名单。
Python 快速门用 `--profile quick --skip-frontend-runtime`。这个工作树没有 `frontend/node_modules`,本单也不改前端,所以没有跑 npm,也没有安装依赖。编译、JSON、能力清单和片段审计都通过。pytest 是 1056 passed、1 skipped、1 failed,约 604 秒。失败的是 `tests/test_consultation_native_layers.py::test_the_new_layer_leaves_every_existing_output_unchanged`。同一条单独再跑通过。它不在本单改过的文件里,快速门的固定名单也不包含新的纳迪测试。不把它算成本研究的回归。
## 让步
N0、N1、N2、N3、N4、N5 都做了。N3 的 ±30 / ±60 只报告。N6 没有另做图。
## Claude 验收(2026-10-05)
**结论:通过,合入 staging。** BUG-1240 维持 `closed_by_design`,不立实现单。
| 项 | 结果 |
| --- | --- |
| 预登记先于结果 | `57480db3` 只含预登记 JSON。它之后 `scripts/` 与 `tests/` 没有改动,最后一次提交只有文档和结果 |
| 预登记与报告一致 | 过门条件(N1 六项全过、N2 下界 > 0、N3 ±10 下界 > 0 且真值 ≥ 76/77、N5 四项全过)和种子,与 §1–§7 逐条对上 |
| 复跑 | Linux 复跑,内容差异 0;字节差异只来自 Windows 换行,已换成 LF 入库(见研究报告 §10) |
| 定向测试 | 新测试加开工那五个文件,131 passed |
| 快速门 `--profile quick --skip-frontend-runtime` | 通过(pytest ✓)。本单没有前端改动 |
| N3 基线 0.325 与已发表 0.64 的差异 | 已核实是口径不同:已发表的是 `probe_supply_after_six.top1_hit`,看的是真值所在簇的代表分钟是否唯一领先;本单看的是全部并列都在记录时间 1 分钟内。比较的是同一次回放,结论成立 |
| 补充 | Lahiri / KP / True Chitra 两两互换的 N4 表,写在报告 §10,结论不变 |
两处不阻断的意见:
1. 跑数脚本写结果时没有固定换行符,以后在 Windows 上复跑会得到 CRLF。下次动这个脚本时,写文件改用 `newline="\n"`。这次没改,因为一改脚本哈希就和预登记记录对不上。
2. N3a 的并列数中位是 8 个,有 23 例超过 25 个。第 5 层是二值规则,挑不出唯一的一秒,这本身就是「秒级」在方法上做不到的一个直接证据。