The product owner asked to push this branch after two v5 cells dropped by more than one percentage point. Scoring was not tuned.
16 KiB
PROGRESS · 上游同步第六轮(2026-10-07)
工作树:G:\Ferti\Jyotisha\.worktrees\upstream-sync6-20261007,分支 codex/upstream-sync6-20261007,基线 5cc8e504(任务书写的是 0ed45a4b,本工作树实际从 5cc8e504 开工)。跟踪 origin/staging 未改。未推送。
基线
全量 pytest、npm、v5 评测在兄弟工作树 upstream-sync6-baseline-20261007 上跑。本单不另起第二轮全量 v5。
- 全量 pytest 已结束。日志
D:\Users\74082\AppData\Local\Temp\sync6-pytest-baseline.txt没有汇总行,失败名单 130 条。本记录不把基线写成通过。 - npm:4899 项,通过 4752,失败 147,取消 0,跳过 0。失败名单在
D:\Users\74082\AppData\Local\Temp\sync6-npm-baseline-fails.txt。 - v5 改前九格:先验头名 0.1818 / 0.0909 / 0.0779;六题回放 0.6364 / 0.4935 / 0.3117;线上区间回放 0.6623 / 0.5584 / 0.4026。改后同一口径:先验头名 0.2078 / 0.1169 / 0.0909;六题回放 0.6104 / 0.5325 / 0.3117;线上区间回放 0.6623 / 0.5844 / 0.3896。六题回放 ±10 下降 2.6 个百分点,线上区间 ±60 下降 1.3 个百分点。打分没有改。产品负责人要求按本分支推送。
原书核对
- D5 / D6 / D8 / D11 按 PVR《Integrated Approach》6.2.5、6.2.6、6.2.8、6.2.11 的起算规则改。只引用节号,不抄正文。
- 6.2.8 例 15:按计数,双子 10° 是双宫的第 3 段,从狮子数第 3 段是天秤。书末那句把水星写成狮子,和它自己的计数矛盾。本轮按计数,水星在天秤,与上游
f32472b5一致。 - Yogini 对照 V.P. Goel 古典章 Table I。顺序与书一致:Mangala 月 1、Pingala 日 2、Dhanya 木 3、Bhramari 火 4、Bhadrika 水 5、Ulka 土 6、Siddha 金 7、Sankata 罗 8。种子是(月亮宿零基序号 + 3)mod 8。第一段是出生时剩余余额。Table II 是后出的研究改订,不用。U3 没有 blocked。
岁差 import 引导(U10 动手前实测)
有。进程里先 ayanamsa_utils.apply_ayanamsa('lahiri'),ACTIVE_AYANAMSA_NAME 为 lahiri;随后 import jyotish_engine,同一模块全局变成 raman。原因是 scripts/jyotish_engine.py 导入时无条件调用 apply_ayanamsa(DEFAULT_AYANAMSA_NAME)。产品默认仍是 raman。已加进程闩 AYANAMSA_APPLIED_IN_PROCESS。行运、Bhava Chalit、星宿命令改用请求的岁差和出生秒。六种模式(lahiri、raman、krishnamurti、fagan_bradley、true_citra、true_pushya)本命、行运、Bhava Chalit、星宿命令都是 requested == applied。
逐项
| 项 | 提交 | 改了什么 |
|---|---|---|
| U1 BUG-1260 | db68e908 |
D5 奇宫 (0,10,8,2,6)、偶宫 (1,5,11,9,7)。D6 奇宫从白羊、偶宫从天秤。D8 起点 (0, 8, 4)[si % 3]。D11 (-si + pi) % 12。divisional_charts_extended 的 5/6/8/11 走同一函数 |
| U2 BUG-1261 | ab9e3056 |
Shodasavarga D9 权重 3.5 → 3.0(合计 20)。Dasavarga D9 3.0 → 1.5(合计 20)。尊严分只保留星主关系;Debilitated / Neecha Bhanga 抛 ValueError。final_score = total_weighted_score / 20。档位 High / Moderate / Limited / Low,缺省 Unclassified。全入庙 Shodasavarga 得分等于 20。解释不把分数说成功能性吉凶 |
| U3 BUG-1262 | 3adb2460 |
报告用的 Yogini 改 Goel Table I,第一段用出生余额,必须有月亮经度。jyotish_engine._calc_yogini_dasha 与 extended_dashas.calc_yogini_dasha 未改,API 服务器没有加处理函数 |
| U4 BUG-1263 | 778cb638 |
planet_house 是相对年升的 1–12。星座另存 planet_sign_idx。相位和年主星座用星座序号。增加 year_lord_house。BUG-1214 只加了相关记录,没有改写旧史 |
| U5 BUG-1264 | 5eb11e7c |
展示层并列历史序列和来源对照。score_candidates 仍用原 Narayana。解释句写实际选中的起运规则。本仓没有 Ketu 第 12 表时返回 blocked,不编序列 |
| U6 BUG-1265 | 4b9c0198 |
有经纬度时用 PyJHora、出生时刻、传入岁差。没有对应函数或岁差对不上时 status=blocked。Hora 与 Ghati 不再相同。Varnada、Pranapada 出现在全盘报告的 Standard Lagnas 表和明细行(Varnada_Lagna / Pranapada_Lagna)。校正打分仍用原 Hora / Ghati 公式。Arudha / Upapada 没有加回来 |
| U7 BUG-1266 | eb739d4e |
jupiter_upachaya_from_moon 改为月亮 3/6/10/11 宫的配置,中文名「木星位于月亮增长宫」,类别 configuration。不是名为 Shakata 的格局。generate_yoga_rules.py 里的车格局未动 |
| U8 BUG-1267 | f02d27a7 |
birth_second 传入太阳返照计算、完整报告和命令。虚构盘返照时刻与上游 23be1807 同为 2010-06-15 19:25:43。没有打开视位置、-5 秒或交点拟合。Shadbala 方法声明函数只在未移植的 evidence_labeled_reporting.py,本仓没有对应函数,措辞未改。API 年运那一行把 birth_second 加在原有参数上,行数不增 |
| U9 BUG-1268 | edeec413 |
Neecha Bhanga 的 conditions_checked 加上月方四正、上升四正,尊严上下文传入宫位。不把取消落陷标成 Raja Yoga。第一段大运的小运、更小运从完整母段起点排,显示时裁到出生日,保留 unclipped_start_datetime。Bhava 表用编号宫过滤,汇总行不当成第 13 宫。Karaka 表加 Ranking degree 列 |
| U10 BUG-1269 | 4e134b9b |
见上。产品默认仍是 raman |
| T9 BUG-1270 | 未改代码 | 见下。状态 investigating |
三栏改过的断言
tests/test_varga_bphs.py:D11 例varga_map与 35° 的落座。原值 Aquarius / 新值 Aries / 原因 PVR 6.2.11。tests/test_dasha.py、tests/test_cli_smoke.py:Vimsopaka 不再接受 Neecha Bhanga 尊严分。tests/test_yogini_seed_profile.py:不再从上升兼容表起运。tests/test_rectification_engine_memoization.py:当前身份 scoring-11;v3 golden 逐字节保留;新 golden 是 v4。tests/test_dasha_transition_proximity_cross_midnight.py、tests/test_rectification_relative_support.py:算法字面量 scoring-10 → scoring-11。策略仍是 policy-v4。frontend/tests/rectification-dated-algorithm-generation-20261002.test.ts:回执默认 scoring-11。另有一条:scoring-10 历史记录在 scoring-11 下只读打开并提供再比(BUG-621)。frontend/tests/rectification-engine-version-cross-midnight.test.ts:LIVE_CURRENT改为 scoring-11。复用缓存还要带上当前 golden 的policyVersion(scoring-11 回执是 policy-v4,旧跨午夜 fixture 不是这一版)。frontend/tests/rectification-midnight-date-anchor.test.ts:fixture 循环加上 scoring-11。tests/test_sealed_holdout_contract_freshness.py:身份排除名单加上upstream_sync6_2026_10_07两份冻结路径。frontend/tests/rectification-confirmation-gate.test.ts:当前冻结重跑路径从 batch1 改到 sync6(与合同一起提交)。
公开盘对照(Lahiri,mean node,与上游 23be1807)
太阳 / 月亮星座。出生时刻已在仓库公开夹具里,这里不重复。
| 盘 | D5 | D6 | D8 | D11 | Yogini 第一段 |
|---|---|---|---|---|---|
| Steve Jobs | Sagittarius / Pisces | Gemini / Sagittarius | Pisces / Scorpio | Libra / Libra | Mercury,Bhadrika,余额 0.8063 年,起点即出生时刻 |
| Barack Obama | Capricorn / Virgo | Capricorn / Sagittarius | Virgo / Aquarius | Leo / Gemini | Venus,Siddha,余额 6.9806 年 |
| Elizabeth Taylor | Sagittarius / Gemini | Gemini / Leo | Pisces / Libra | Scorpio / Gemini | Jupiter,Dhanya,余额 2.3624 年 |
特殊上升(Jobs,Lahiri):Bhava Leo 17.1198,Hora Aquarius 22.5752,Ghati Virgo 8.9414,Sree Cancer 0.871,Indu Aquarius 14.5117。Hora ≠ Ghati。三盘的 Bhava / Hora / Ghati / Sree / Indu 与上游一致,status 都是 computed。
Jobs 木星 Dig:本仓 80.59,上游 39.41。另外两盘 Dig 一致(54.27、20.64)。见 BUG-1270。
咨询卡(Raman,与上面的 Lahiri 表不是同一套岁差)
consult-evidence-card-golden.json 用采集脚本重跑。本机把 VedAstro 记成 foreground_optional_evidence_timeout,上一份 golden 里是已经采到的 official_verified。提交文件保留上一份官方云字段和经度的 1e-13 抖动,只换入引擎算出的 D5/D6/D8/D11,以及奥巴马木星状态由「落陷(Debilitated)」变为「落陷取消(Neecha Bhanga)」。没有手写星座。
家庭路由太阳 / 月亮,原值 → 新值:
| 盘 | D5 学业 | D6 健康 | D8 健康 | D11 财富 |
|---|---|---|---|---|
| Steve Jobs | Aries/Capricorn → Sagittarius/Pisces | Aries/Sagittarius → Gemini/Capricorn | Taurus/Pisces → Pisces/Sagittarius | Cancer/Aries → Scorpio/Libra |
| Barack Obama | Gemini/Aquarius → Capricorn/Virgo | Taurus/Capricorn → Aquarius/Sagittarius | Leo/Aries → Virgo/Pisces | Libra/Taurus → Leo/Cancer |
| Elizabeth Taylor | Aries/Aquarius → Sagittarius/Libra | Taurus/Aquarius → Cancer/Leo | Gemini/Aries → Aries/Libra | Cancer/Gemini → Scorpio/Gemini |
上升星座也变了(Raman):Jobs D6 Pisces→Libra、D8 Taurus→Leo、D11 Taurus→Scorpio;Obama D5 Capricorn→Scorpio、D6 Sagittarius→Pisces、D8 Pisces→Libra、D11 Gemini→Aries;Taylor D5 Libra→Capricorn、D6 Virgo→Aquarius、D8 Sagittarius→Taurus、D11 Aquarius→Aries。D5 上升 Jobs 仍是 Taurus。
打分身份
升到 rectification-v5-matrix-scoring-11(d46f9675)。同一输入的单案探测(Lahiri,mean node,公开事件,年份精度):
| 探测 | 基线 scoring-10 | 本分支 scoring-11 |
|---|---|---|
| Jobs 真实事件 | 7.25 | 7.25(D5/D11 星座已不同) |
| Jobs 学业+财务年 | 4.7374 | 5.2687 |
| Obama 真实事件 | 14.4917 | 14.6792 |
| Obama 学业+财务年 | 2.7688 | 2.7688(内部构成不同) |
| Taylor 真实事件 | 13.9708 | 13.9708 |
| Taylor 学业+财务年 | 5.0813 | 4.9875 |
记忆化 golden 新增 v4,v3 逐字节保留(sha256 7064f30bea3a7bcd8058fdcb6b52484a96a09767c0c289e0d71f3e2368fc8d45)。代数判断已接受 generation ≥ 9,没有新增 === "scoring-10"。历史 scoring-10 记录只读打开。
Shadbala 第 3 列
读者表第 3 列是 Dig。差距来自 calc_dig_bala_precise 没有把大于 180° 的弧折回。上游的短弧函数在 f32472b5 的父提交里已经存在,f32472b5^..23be1807 的 scripts/shadbala.py 无差异。这五个提交不解释成「本轮要改公式」。未改公式。校正打分的 calc_shadbala 不传 context,不走这条精确路径。
ERR-110
冻结身份里字节变了的文件:scripts/varga.py、scripts/divisional_charts_extended.py、scripts/narayana_dasha.py、scripts/rectification/scoring_service.py。旧的 batch1 冻结与报告原文件保留。冻结提交 3b84a3b0。咨询卡 golden 7b837d3b。新路径:
docs/research/sealed_holdout_rerun_upstream_sync6_2026_10_07.freeze.jsondocs/research/sealed_holdout_rerun_upstream_sync6_2026_10_07.jsondocs/research/reported_offset_upstream_sync6_2026_10_07.freeze.jsondocs/research/reported_offset_upstream_sync6_2026_10_07.json
影子 20 例重放:evaluated_on 2026-10-07。top_1_rate 0.45,top_3_rate 0.5,mean_absolute_minute_error 6.45,false_confirmation_rate 0.0,confirmation_coverage_rate 0.0,metric_gates_passed false。相对 2026-09-20 历史报告 changed_trial_count 0。这不是独立盲测,不能当发布指标。
reported-offset:900 例,exit 0,约 804 秒。相对 2026-09-20 历史报告 changed_trial_count 235(batch1 那次是 230)。相对 batch1 重放,900 例里 5 例不同:4 例 delivery_width_minutes,1 例 top_1_minute_error。名次和是否命中没有变。
身份测试:tests/test_sealed_holdout_contract_freshness.py、tests/test_reported_offset_research.py、tests/test_rectification_validation_integrity_gate.py 共 45 passed,exit 0。前端 rectification-confirmation-gate.test.ts 8 pass,0 fail。确认门阈值没有放宽。
定向测试(本工作树,不是全量)
命令形如 C:\Users\74082\anaconda3\python.exe -m pytest <files> -q --tb=line --override-ini="console_output_style=classic" -rA --no-header。
- U1
tests/test_varga_bphs.py及相关:75 passed。 - U2 Vimsopaka:16 passed。
- U4 Tajika:20 passed。
- U6 特殊上升:4 passed。
- U10 岁差:10 passed。
- 太阳返照 + Upachaya:4 passed,exit 0。
- U9 尊严证据、Neecha 条件、Bhava、Karaka 与
tests/test_dasha.py:43 passed,exit 0,174.82s。 - Narayana 对照:3 passed,exit 0。
- scoring-11:
tests/test_rectification_engine_memoization.py、tests/test_rectification_relative_support.py、tests/test_dasha_transition_proximity_cross_midnight.py:37 passed,0 failed,exit 0,33.61s。 - 前端跨午夜三文件第一次 44 pass、1 fail(复用缓存还要 policyVersion)。补上
policyVersion后,rectification-engine-version-cross-midnight.test.ts22 passed,exit 0。 - 更早一轮混合未提交树:164 passed,0 failed,exit 0,252.32s。当时太阳返照测试尚未按正确参数重跑;修正后 2 passed,已含在 U8 提交里。
- 没有改
scripts/jyotish_api_server.py的行数,未跑增长合同。ruff 对改过的脚本有大量既有风格问题,没有为凑绿去改。
本机门禁
tsc --noEmit:0 错,exit 0。npm run lint:0 error,125 warnings,exit 0。警告在既有测试文件里,本轮没有为清警告改业务代码。npm test:4901 项,通过 4756,失败 145,取消 0。基线是 4899 项、失败 147。按测试名比对,基线多失败 3 条(两条数据库、一条「D3 发送后首行」),本分支多失败 1 条:corrective migration clears untrusted clocks...,错误是EPERM,建不了jyotisha-postgres-slots\slot-0。这是本机数据库目录权限,不是这次改的计算。next build --webpack:编译过(2.9 分钟),TypeScript 过(2.6 分钟)。收集页面数据时死在既有SkillPackageRegistryError:本机不允许给SKILL.md建符号链接(/api/birth-time-guide)。与PROGRESS-chart-page-blocking-open-20260915相同。源码没有改这条路由。构建表没有打出来,所以本机不能确认/仍是 Static。- 全量 pytest 已结束。失败 135,开工基线 130。旧的 130 条都还在,多出 5 条:
test_consultation_native_layers整包输出变了;test_rectification_dated_transitions的扫描金样变了;test_skill_release_clean_trial验收脚本失败;test_user_invocation_acceptance_contract里土星大运边界差一天(2023-07-12 与 2023-07-13),以及因此连带的验收失败。失败名单不是基线的子集。产品负责人仍要求按本分支推送。 - 名人生平回测改前 72 份已跑完(deepseek-flash,失败 0,约 12 分钟)。密钥只在当次进程环境,没有写入仓库或本记录。这轮读的是改前卡片。逐份阅读后:通过 39,通过(弱)5,读反 7,严重冲突 16,对照组误报 4,误报(轻)1,漏读 0。16 份严重冲突全部在事业。健康是读反 6、通过(弱)5、通过 7。对照组误报 5 份都在父母或缺一段稳定婚姻的轻描。改后要先用本分支引擎重抓这份 golden,再跑同一模型。健康卡含 D6、D8;父母、婚姻、事业卡不含 D5、D11。改后若严重冲突高于 16,或对照组误报高于 5,先停下来报告。
未做
- 产品负责人 2026-10-07 要求按本分支推送。打分未改。状态板保持待验收。
- 未改
.gitea/workflows。未把书里的段落抄进仓库。 - 未把产品默认岁差改成别的系统。
- 未打开视位置或交点拟合。
- Shadbala Dig 短弧未改(BUG-1270 investigating)。
- 全量 pytest 与改后 v5 的数字已写入上面。快速门没有单独跑过,不写成通过。
- 名人生平回测改后那轮还没跑:要先用本分支引擎重抓卡片。