# 上游计算能力映射(2026-10-28) 对照上游 `732642856/yinduzhanxing` main `5fb8379c4f3e649cb4804065c9a3059e4bf633fe`。状态沿用 issue #141: - A. 有本地计算实现,并且命令行或接口能调到。 - B. 有实现,但要额外参数,或还没进默认流程。 - C. 只有外部适配器,还要额外环境。 - D. 只有规则、资料、注册项或展示。注册了、有按钮、有历史报告,都不算已经计算。 本轮只移植甲批计算修正,不改这八类的入口形状,也不做统一结果外层。 | 类目 | 上游文件与函数 | 我方文件与函数 | 我方入口 | 状态 | 最近记下的上游提交 | 未跟 | | --- | --- | --- | --- | --- | --- | --- | | 行星(位置、星座、度数、速度、逆行、宫位) | `scripts/jyotish_engine.py` `_calc_sidereal_planets_for_jd` | 同名函数 | 命令 `cmd_chart`;接口 `/api/chart` | A | 本轮没改行星计算,最近我方提交没有写上游提交号 | 本轮任务书没有点名要跟的行星修正 | | 宫位(宫头、宫界、宫主、Bhava Chalit) | `scripts/bhava_chalit.py` `BhavaChalitCalculator` | 同名类,`get_bhava_chalit_chart`、`cmd_bhava_chalit` | 命令 `cmd_bhava_chalit`;接口 `/api/bhava_chalit` | A | `0337b77fce353252f7d115025c8703c3aec4204a`(BUG-1319 记录的宫头口径) | 本轮没有新的宫位修正 | | 分盘 D1 / D9 / D10(其他分盘入口仍在) | `scripts/varga.py` `calc_all_vargas` | 同名函数 | 命令 `cmd_varga`、`cmd_varga_full`;接口 `/api/varga_full` | A | `f32472b5`(BUG-1260,D5/D6/D8/D11) | `50847e57` 的 22 号 Drekkana 与 Sarpa。文件在生时校正冻结清单里,本轮不改,等 #137 之后另开 | | 大运 Vimshottari | `scripts/jyotish_engine.py` `cmd_dasha`;星宿起点 `scripts/nakshatra_advanced.py` `calc_vimshottari_start` | 同名 | 命令 `cmd_dasha`;接口 `/api/dasha` | A | 边界修正在第八轮,本轮只把上游测试 `07fc5be3` 收进来,不改 `dasha_analyzer.py` | 无新的 Vimshottari 代码 | | 大运 Narayana | `scripts/narayana_dasha.py` `calc_narayana_mahadasha` | 同名函数;完整结果走 `narayana_dasha_full_report` | 命令 `cmd_narayana_dasha` 与 `cmd_full_reading`。星盘数据包在有行星和上升时也会调用它。`/api/dasha/chara` 算的是 Chara,不是 Narayana | A | 本轮没改这个冻结文件 | `6859b263` 的小运强度口径。同样等 #137 之后 | | 行运 | `scripts/jyotish_engine.py` `cmd_transit`、`cmd_double_transit_pac`、`cmd_transit_ll7l` | 同名命令 | 接口 `/api/transit` | A | 本轮没改行运 | 本轮任务书没有点名要跟的行运修正 | | Shadbala | `scripts/shadbala.py` `calc_shadbala` | 同名函数 | 命令 `cmd_shadbala`;接口 `/api/shadbala` | A | 本轮没改这个冻结文件 | 无本轮点名的 Shadbala 修正 | | Bhava Bala | `scripts/bhava_bala.py` `calc_bhava_bala`、`bhava_bala_from_chart` | 同名;完整解读调用 `bhava_bala_from_chart` | 命令 `cmd_full_reading`;接口 `/api/bhava_bala` | A | 本轮没改 | 无 | | Vimsopaka | `scripts/vimsopaka_calculator.py` `VimsopakaBalaCalculator.calculate_vimsopaka_bala` | 同名 | 命令 `cmd_full_reading` 里会算。没有单独的 `/api/vimsopaka`。报告 HTML 注入只展示已有摘要,本身不是计算 | A | `f32472b5`(BUG-1261) | 无本轮点名的新修正 | | 相位 | `scripts/aspects.py` `calc_all_aspects`、`calc_house_aspects` | 同名 | 命令 `cmd_aspects`;完整解读;接口 `/api/aspects` | A | 本轮跟上 `e628118d` 的 `aspects.py`(计都、速度、入相/离相) | 同期 `2f52cfca` 的 `karaka_calculator.py` 不搬。`95ea9e02` 的瑜伽节点测试不搬:我方 `YogaContext` 没有 `parashari_aspect` | | 瑜伽 | `scripts/yoga_engine.py` `detect_yogas` | 同名函数 | 命令 `cmd_yoga`;接口 `/api/yogas` | A | 本轮没改瑜伽规则 | 上游那条依赖 `parashari_aspect` 的节点策略没有对应接口 | 调用 `calc_all_aspects` 的生产位置都传速度:有数字速度就传入,没有就显式传 `planet_speeds=None`(入相记为未知)。三处是 `cmd_aspects`、`cmd_full_reading`、接口 `_compute_aspects`。`calc_house_aspects` 不算速度。测试里不传速度,是在核对「没有速度时不得猜入相」。 ## 上游有、我方入口到不了的计算模块 下面这些文件在上游 main 的 `scripts/` 根目录,我方没有同名文件。筛选只保留大运、轮或敏感点计算本身,去掉回放、审计、台账、外部抓取和报告包装。共 33 个。任务书写的 43 是另一口径;这里不把 901 个上游独有脚本都算进来,也不为了凑 43 把研究脚本算成已计算。一律标「未接入,第二批另评估」。 - `amsayu.py` - `annual_pravesha.py` - `beeja_kshetra_sphuta.py` - `brahma_dasha.py` - `conditional_dashas.py` - `dasha_pravesha.py` - `drig_dasha.py` - `extended_dashas.py` - `kaala_dasha.py` - `kalanala_chakra.py` - `karaka_dasha.py` - `karana_annual_dasha.py` - `kota_chakra.py` - `lagna_kendradi_dasha.py` - `lagnamsaka_dasha.py` - `mandooka_dasha.py` - `naisargika_dasha.py` - `nakshatra_annual_dasha.py` - `navamsa_dasha.py` - `navamsha_dasha.py` - `paryaaya_dasha.py` - `sarvatobhadra_chakra.py` - `shattrimsa_sama_dasha.py` - `shoola_chakra.py` - `shoola_dasha.py` - `sthira_dasha.py` - `sudarsana_dasha.py` - `sudasa.py` - `tara_dasha.py` - `tara_lagna_dasha.py` - `varnada_dasha.py` - `yoga_annual_dasha.py` - `yogardha_dasha.py` 另外,`tithi_ashtottari.py` 上游有,本轮不新增。Tithi 主星已在 `scripts/tithi_lord.py`,顺序用 `scripts/research_timing/cycles.py` 的 `tithi_seed`。这个文件也标「未接入,第二批另评估」。