a4f8620a71
## 新增模块 (16个) ### P0 精度修复 - ashtakavarga: calc_prastara_av() + calc_sodhita_av() - kakshya.py: Kakshya评分系统 (8区间×3.75°) - shadbala.py: Sputa Drishti + Yuddha Bala ### P1 核心升级 - bhava_bala.py: 宫位三元力量 (jyotishganit MIT) - pancha_mahapurusha.py: PMC完整检测含4层失效条件 - sade_sati.py: Sade Sati+Kantaka Shani - sudarshana_chakra.py: 三参考点盘+收敛分析 - tajika.py: Sahams 7→36 + Tajika Yogas 10种 - birth_time_rectifier.py: 生时矫正 ### P2 覆盖扩展 - kp_system.py: KP Sublord+ABCD Significator (diliprk/VedicAstro MIT) - synastry.py: 16因子合盘36分制 (dashaflow MIT) - muhurtha_election.py: 6活动选举 (dashaflow MIT) - career_analysis.py: 结构化事业引擎 - relationship_analysis.py: 结构化感情引擎 - conditional_dashas.py: Dwisaptati+Shattrimsa+Dwadashottari - divisional_charts_extended: D81/D108/D144 - remedies.py: 5类补救系统 ## 修改文件 jaimini/dasha_calculator/shadbala/SKILL.md/COVERAGE_AUDIT等12个 ## 开源复用: 4个MIT项目
Jyotish Benchmark Suite
This directory contains the public benchmark material recovered and sanitized in v6.1.9.
Scope
- Samples: 10 fictional/public smoke cases in
data/benchmark_samples.json. - Scripts: reproducible comparison scripts under
scripts/. - Reports: markdown summary reports under
reports/.
Raw JSON/CSV outputs are intentionally not committed. Re-run the scripts locally to regenerate them under benchmarks/jyotish/outputs/.
Privacy rule
All committed samples are marked fictional_or_public_test. Do not add real user birth data, private chart output, personal life events, PDF extraction text, or private full-reading JSON to this directory.
Running
From the repository root:
python3 benchmarks/jyotish/scripts/run_skill_baseline.py
python3 benchmarks/jyotish/scripts/run_swiss_direct_compare.py
python3 benchmarks/jyotish/scripts/run_transit_true_compare.py
python3 benchmarks/jyotish/scripts/run_shadbala_invariants.py
Some scripts require optional local dependencies such as PyJHora or pyswisseph. If PyJHora is installed outside the default environment, set PYJHORA_SITE or PYJHORA_PATH as needed.
Historical benchmark rounds
The recovered reports document the benchmark sequence used to harden the engine:
- Local full-reading baseline
- Swiss direct planetary comparison
- Swiss extended comparison
- PyJHora comparison
- Mean/True node arbitration
- Arudha/A10 comparison
- Ashtakavarga comparison and book-example arbitration
- Chara Dasha comparison
- True transit comparison
- Shadbala internal invariants
- Explanation regression notes