732642856
d611d51abe
docs(oracle): add first tajika packet operator card
2026-06-26 18:22:41 +08:00
732642856
7be262df6e
docs(oracle): add first dasha packet operator card
2026-06-26 18:17:50 +08:00
732642856
82e8d7252a
docs(skill): add guarded interpretation template registry
2026-06-26 17:36:39 +08:00
732642856
3e606e5fe8
feat(benchmark): add tajika annual oracle dashboard
2026-06-26 17:29:47 +08:00
732642856
e6710e1e2a
feat(oracle): prepare first capture packets
2026-06-26 17:07:03 +08:00
732642856
a523dac871
feat(oracle): export and apply evidence packets
2026-06-26 16:59:38 +08:00
732642856
75ccede1cf
docs(skill): freeze advanced jyotish interpretation templates
2026-06-26 16:47:24 +08:00
732642856
d11cebacf8
fix: harden accuracy and api guardrails
2026-06-26 00:44:09 +08:00
732642856
96caaeae2c
feat: add oracle evidence safeguards
2026-06-25 23:23:56 +08:00
732642856
5d35731f8b
Add jyotish oracle evidence calibration gate
2026-06-25 18:33:26 +08:00
732642856
494e387018
Productize jyotish app release surface
2026-06-24 13:37:33 +08:00
732642856
23b8b6e5cf
chore: harden release checks and sync capability docs
2026-06-21 16:50:46 +08:00
732642856
33fd7e07fa
Complete v6.9.14 precision modules
2026-06-13 16:18:37 +08:00
732642856
3f355de1db
Enhance Jyotish precision techniques and tests
2026-06-13 15:06:11 +08:00
732642856
0880fd6405
v6.9.9: 解盘精准度增强 — 事件回归测试 + MEVG 自动化 + 精度仪表盘
...
feat(test): smoke_test_runner.py — 名人事件应期回归测试框架 (12案例/42事件)
feat(precision): mevg_automation.py — MEVG 外部验证门控自动化 (check/audit/report)
docs: precision-benchmark-dashboard.md — 精度基准仪表盘 (8维度+改善路线)
docs: chara-dasha-calibration-roadmap.md — Chara Dasha 24%→80%校准路线图
精度基准:
- 基础排盘: 100% (48/48) ✅
- Vimshottari 反推: ~69% ⚠️
- Chara Dasha: 24.17% 🔴
- Double Transit: 20-40% 🔴
2026-06-13 10:56:41 +08:00
732642856
a816825126
v6.9.3: 文档同步 — SKILL.md/registry v6.1.12→v6.9.3
...
## 文档更新
- SKILL.md: 版本号+能力表+独有能力列表
- technique_registry.json: 31 covered→55 covered (+24)
- 7个partial升级 + 17个新covered
- CHANGELOG_v6.2_to_v6.9.md: 完整变更日志
2026-06-12 07:14:54 +08:00
732642856
e5c79907e6
v6.8.0: 误区纠正+案例验证 — 每条结论都有据可查
...
## 新增模块
- misconceptions.py: 6大类10条常见误区+纠正规则
- 单一配置/术语映射/文化差异/大运/过境/时间精度
- 基于20个名人案例,97.8%吻合度验证
- check_for_fallacies() 自动扫描解读输出
- case_validator.py: 三层验证器
- 配置→案例映射(9种配置有案例支撑)
- 大运→事件映射(6种MD有案例)
- 过境→事件映射(4种过境组合)
- validate_interpretation() 全链路验证
## 碎片回收
- 从回收站恢复误区反思报告(20个案例+6类误区)
2026-06-11 21:52:26 +08:00
732642856
d1c937c2ab
v6.6.0: 碎片归档 + Web应用新Tab + 真实案例研究
...
## 文件碎片归档
- references/real_case_studies/: 从Desktop/Workspace回收4份关键文件
- 印度占星修正版研究结论v3(8项误判纠正)
- 一楠完整解盘报告v2(607行HTML)
- vedicka/indastro验证案例
## Web应用升级 (jyotish-app)
- 新增 Remedies补救 tab (🪷 )
- 新增 KP系统 tab
- index.html: 12→14个功能页面
- 构建成功 (22.65KB HTML + 323KB JS)
## 真实案例精度改进
- Ketu 10宫→非常规入口非事业毁灭
- Mercury Neecha Bhanga→先压后反转
- Venus 8宫→复杂流程承接
- Saturn Sasa Yoga→结构性总控而非拖延
2026-06-11 20:18:20 +08:00
732642856
a4f8620a71
v6.2.0: 全面技法宝库升级 — 16个新模块 + 12个文件优化
...
## 新增模块 (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项目
2026-06-11 19:03:21 +08:00
732642856
c4c0eff67a
v6.1.12: Chara Dasha KN Rao Benchmark正式通过(95.83%)
...
PyJHora oracle benchmark 10案例×120字段:
- Sign Sequence: 120/120 = 100.00%
- Duration: 110/120 = 91.67%
- Overall: 230/240 = 95.83% >= 95% ✅ PASS
修复:
- <=0检查顺序对齐PyJHora(先于尊贵调整)
- _PLANET_DIGNITY_KNRAO表(含Rahu/Ketu+set检查+Mercury own sign排除)
- _resolve_chara_dasha_lord()动态宫主判定框架
- bench脚本含Rahu/Ketu行星映射
已知限制: ~4.2%差异来自Aquarius/Scorpio共主动态判定(未来优化)
2026-06-11 13:40:50 +08:00
732642856
066c59bee3
v6.1.11: Solar/Lunar Yogas恢复 + 全量碎片审计
...
从Git dangling commit f19369c恢复遗失代码:
- scripts/yoga_engine.py: 新增_detect_solar_lunar_yogas()
- Solar Yogas: Veshi/Voshi/Ubhayachari (太阳第2/12宫判断)
- Lunar Yogas: Sunapha/Anapha/Durudhura (月亮第2/12宫判断)
- technique_registry: 新增solar_lunar_yogas条目 (covered)
全量碎片审计完成(28个文件 + Git + Desktop + Downloads + auto-generated)
- Brain: 5份P0文件提取待整合
- Git: 7个dangling commits确认 - f19369c代码已恢复,其余自然吸收
- New open-source: 12个项目发现 (vedic-calc/vedic-astro-skills/VedicAstro等)
2026-06-11 11:28:31 +08:00
732642856
55853336b5
v6.1.11 Chara Dasha重写为KN Rao Method
...
完成P0核心差距修复:彻底重写calc_chara_dasha()和calc_chara_dasha_with_antardasha()
- 旧算法:简化版12-planets_in_sign,仅24.17%匹配PyJHora
- 新算法:完整KN Rao Method
- 序列:从上升起,第9宫为偶数脚→逆向(对齐PyJHora _dhasa_progression_knrao_method)
- 时长:基于宫主所在宫位,奇数脚顺数/偶数脚倒数,Exalted+1/Debilitated-1
- Antardasha:等分12份,序列偏移1位(PyJHora method=2)
- 状态:partial → covered
- 参考PyJHora AGPL算法翻译为MIT独立实现
- 参考jaimini-tropical MIT架构设计
2026-06-10 21:54:52 +08:00
732642856
f83db2fac1
Enhance Jyotish validation and Jaimini modules
...
- add external validation reports and open-source comparison references
- integrate Jaimini arudha/graha pada, enhanced argala, and additional synastry kutas
- update skill docs and capability matrices
- add smoke tests for open-source integrations
2026-06-10 20:50:52 +08:00
732642856
fb6546f58b
v6.1.10: Bhava Chalit+Sudarshana Chakra完整实现, Shadbala升级covered, matrix更新
2026-06-10 15:31:30 +08:00
732642856
068a8e2818
v6.1.10: Wire DK and RTN into theme reports
2026-06-08 14:06:13 +08:00
732642856
d2cd5a369f
v6.1.9: Add public benchmarks and research roadmap
...
- Add sanitized Jyotish benchmark suite with fictional/public smoke samples
- Include benchmark scripts and markdown reports while excluding raw JSON/CSV outputs
- Add open-source Jyotish project comparison research
- Add complete technique coverage roadmap
- Add privacy-safe PDF chart validation methodology
- Update SKILL.md and CHANGELOG with v6.1.9 scope and privacy boundaries
Validation:
- py_compile benchmarks/jyotish/scripts/*.py passed
- quality gate passed with 35 pytest tests and golden case
2026-06-08 13:16:42 +08:00
732642856
3b167e28c3
v6.1.8: Improve Nishkapata yoga recall
2026-06-08 10:57:42 +08:00
732642856
ae959f362b
docs: align v6.1.7 skill entry and validation report
...
- Update SKILL.md to reflect five-system Dasa Convergence wording
- Clarify v6.1.7 as D9/D60 YogaContext integration plus Sankha tightening
- Refresh validation_logic_report.json after verification run (F1=95.02, FP=36, FN=67)
2026-06-08 10:30:02 +08:00
732642856
3c64e4576f
v6.1.7: Push Yoga validation F1 above 95 percent
...
- Inject D9/D60/Panchanga context into yoga and full-reading flows
- Add --context-json support for explicit YogaContext payloads
- Tighten Sankha Yoga movable-sign branch to require distinct L1/L10 lords
- Regenerate validation_logic_report: FP 36, FN 67, F1 95.02%
2026-06-08 10:27:57 +08:00
732642856
57e426515d
v6.1.6: Add five-system dasha convergence
2026-06-07 20:16:47 +08:00
732642856
067b400625
v6.1.5: Integrate Ashtottari/Yogini/Kalachakra Dasha into report pipeline
...
- Register 3 dasha systems in technique_registry.json
- Extend orchestrator_bridge.py with inject_dasha_results()
- Add add_timing() to ThematicReportOrchestrator
- Dashas auto-convert to TimingAnchor and inject into all 5 themes
- Verified: Yogini + Kalachakra timing anchors flow into ThemeReport
2026-06-07 15:17:09 +08:00
732642856
0406723b7e
v6.1.3: D9/D60 engine upgrade + 5 bottleneck rules tuned
...
Engine (yoga_engine.py):
- Added D60/Shashtiamsa context injection (d60_house_of, d60_sign_of, etc.)
- Added D9 dignity queries (is_exalted_in_d9, is_own_sign_in_d9, etc.)
- Added functional_malefics() / functional_benefics()
- Added is_shashtiamsa_evil/good() and vaiseshikamsa_score()
- Exposed all new methods to rule expression sandbox
Data (_compute_one_chart.py):
- Generate D60 positions alongside D1/D9
- Inject D60 into context for all computed charts
Rules (yoga_rules.json):
- thrikaala_gnana: D1 strong = exalted/own/moola only (kendra/trikona removed)
+ D9 strong check (at least 1 of 3 in D9 exalted/own/moola)
FP: 12→0, FN: stable
- dharidhra: restored method1 (L2/L11 in dusthana + unfriendly navamsa + malefic aspect)
FN reduced
- bandhubhisthyaktha: added is_shashtiamsa_evil(lord_4)
- nishkapata: added vaiseshikamsa_score(lord(1)) >= 15
- kapata: reverted functional_malefics (caused 22 FN), back to MALEFICS
Validation:
- FP: 45→39 (-6)
- FN: 72→67 (-5)
- F1: 94.35%→94.88% (+0.53%)
- Precision: 95.60%→96.18% (+0.58%)
New scripts:
- scripts/add_d60_to_test_charts.py: batch D60 augmentation
- scripts/ashtottari_dasha.py, yogini_dasha.py, kalachakra_dasha.py
- scripts/report_orchestrator.py
D60 data added to all 60 standard test charts.
2026-06-07 14:44:53 +08:00
732642856
4905c44911
chore: Rename validation_report.json to clarify purpose
...
- validation_report.json → references/celebrity_case_validation_5charts.json
- Distinguishes from references/validation_logic_report.json (60 charts, 82 rules systematic comparison)
2026-06-07 14:26:58 +08:00
732642856
2a3359ea0f
v6.1.1-update: Refresh validation_logic_report.json with real metrics
...
Actual metrics after v6.1.1 aspect direction fixes:
- FP: 45 (was incorrectly reported as 9)
- FN: 72 (was incorrectly reported as 22)
- F1: 94.35% (confirmed accurate)
- Precision: 95.60% (confirmed accurate)
- Recall: 93.14%
2026-06-07 14:26:05 +08:00
732642856
96a5d50667
v6.1.1: Fix aspect directions and tighten yoga rules
...
- annadana_yoga: Fix aspect direction (L2 aspects Jupiter/Mercury, not vice versa)
- parannabhojana_yoga: Fix aspect direction (L2 aspects debilitated planets)
- bandhubhisthyaktha: Tweak weak_or_bad to match PyJHora (house_strength <= 1)
- dharidhra: Remove unmapped method1/v145/v146, keep only v144/v147-v152
Results: Precision 94.42% -> 95.60%, F1 94.02% -> 94.35%
2026-06-07 13:09:08 +08:00
732642856
ed93a6959c
docs: add INDEX.md for translated reference articles
2026-06-07 09:30:02 +08:00
732642856
82db444388
docs: add 7 translated Chinese astrology reference articles\n\nAdded from /Users/wuyongnaren/文件仓库/占星资料/印度占星文章/:\n1. 1-4印度占星: Tithi rulers, Pancha Pakshi, Rashi Tulya Navamsa, Bhrigu Pada Dasha\n2. 高地位配偶: High-status spouse yoga rules (D1/D9 comparison)\n3. Darakaraka: Jaimini Darakaraka explanation\n4. Tajika: Yearly chart system overview
2026-06-07 09:29:47 +08:00
732642856
62686edfa6
Release v6.0.51: fix mathibhramana 8 FNs - same_house(self) bug in expr global\n\n- Root cause: engine's same_house(a,b) has 'if a==b: return False' check.\n When L6 resolves to Mars (same planet), same_house(l6,'Mars') evaluates\n same_house('Mars','Mars') and returns False.\n- Fix: replace same_house(l6,'Mars') with direct house_of(l6)==house_of('Mars')\n in variation_2, so self-comparison still yields True.\n- Impact: mathibhramana 8 FN -> 0. Recall 91.71%->92.47% (+0.76%).\n F1 93.13%->93.54% (+0.41%). FN 87->79 (-8).\n- This is a systemic bug that may affect other rules using same_house() with\n lord-of-X patterns where the lord resolves to the compared planet.
2026-06-07 01:12:48 +08:00
732642856
ae9e00a305
Release v6.0.50: mathibhramana 294 conjunction fix (ongoing improvement)
2026-06-07 00:58:39 +08:00
732642856
d3cc37b45c
Release v6.0.49: fix D9 context injection + theevrabuddhi (BVR-232); Precision 92.95%→94.69%\n\n1. D9 context injection fix (validate_logic_v2.py):\n - Bug: context was read from planet_positions_60.json (no D9 data)\n - Fix: read context from standard_test_charts.json (has full D9/Navamsa/Upagraha)\n - Impact: all D9-dependent rules can now query D9 positions\n\n2. theevrabuddhi_yoga (BVR-232):\n - Old: checked Mercury's D1 strength (completely wrong logic)\n - New: L5 benefic in D1 AND in Navamsa Lagna; D9 L1 lord benefic/aspected\n - FP: 19 → 0 (clean fix via D9 engine)\n\n3. Metrics: Precision 92.95%→94.69%, FP 73→54, F1 92.32%→93.17%
2026-06-06 23:49:03 +08:00
732642856
ab620bf130
Release v6.0.48: fix vihaga_nabhasa from wrong Sringaataka-like pattern to correct BVR-83\n\n- Fixed: old expr checked 3+ planets in 1/5/9 (Sringaataka pattern, BVR-86)\n- Correct: ALL classical planets (Sun-Saturn) occupy ONLY 4th and 10th houses (BVR-83)\n- Vihaga FPs: 5 -> 0. Precision: 92.50% -> 92.95% (78->73 FP)
2026-06-06 23:44:34 +08:00
732642856
e00f15599d
Release v6.0.47: fix dharidhra FP by replacing bidirectional associated() with one-way aspect() checks
...
- Root cause: rel_to_any() used associated(p,o) with bidirectional aspects (aspect(p,o) OR aspect(o,p)), but PyJHora only checks one-way (trik lord -> L1, malefic -> L1, maraka -> target)
- Fixed v144/v147/v148/v149/v152 to use one-way aspect() checks matching PyJHora source
- v144: L7 aspects L1/L12 (one-way)
- v147/v148: maraka aspects L1 (one-way)
- v149: trik lord aspects L1, malefic aspects L1 (one-way, both were already correct for second part)
- v152: maraka aspects malefic in lagna (one-way)
- v145/v150/v151 were already correct (used aspect() directly)
- Corrected test expectation for chart that genuinely has dharidhra via v149
- Added proper False-no-variant-triggers test case (Cancer asc)
- Hardcoded tests: 10/10 passed
2026-06-06 22:26:55 +08:00
732642856
fffdbda22c
Release v6.0.46: fix 5 completely wrong yoga rules, Precision 83.3%→92.5%, F1 87.2%→92.2%
...
- Fix kaalanirdesat_puthra_yoga (36→0 FPs): PyJHora 227/228 logic
- Fix sapthasankhya_sahodara_yoga (27→0 FPs): PyJHora L12+Mars+Moon+Jupiter+no Venus
- Fix sarpasaapa_yoga (25→0 FPs): PyJHora 212-215 variants
- Fix pushkala_yoga (9→0 FPs): PyJHora BVR-26 L1+Moon+dispositor
- Fix koorma_yoga (9→0 FPs): PyJHora BVR-54 method1
- Fix bhratrumooladdhanaprapti_yoga (9→0 FPs): PyJHora BVR-136
- Update hardcoded tests to match correct PyJHora logic
2026-06-06 21:54:59 +08:00
732642856
aa505ea9f7
Release v6.0.45: fix satkalatra expr (for-loop bug), add durmukha yoga, F1 0.299→0.316
...
- Fix bvr_satkalatra_precise: replace broken for-loop+trailing False pattern
with any() expression. Satkalatra now detected in 4/5 benchmark charts
(was 0/5).
- Add bvr_durmukha_yoga: PyJHora Method 1 (rasi-only), malefics in 2nd
house + 2nd lord debilitated/conjunct malefics. Detected in 1/3 target
charts (remaining 2 require looser PyJHora matching).
- Rules: 475→476, enabled: 404→405
- Validation: F1 0.2990→0.3160 (+5.7%), matched 74→79 (+5)
2026-06-06 21:33:32 +08:00
732642856
0003d0be88
Release v6.0.44 fix JD timezone bug in reference data
...
- Fix: _compute_one_chart.py JD calculation used PyJHora's
gregorian_to_jd() which ALWAYS returns noon JD regardless of time.
Changed to swe.julday() with correct UTC hour.
- Impact: All 60 test charts with non-noon birth times had wrong
ascendants and house assignments (e.g. Einstein went from
Scorpio Asc -> Gemini Asc, matching Swiss Ephemeris)
- Cross-validated: Swiss Ephemeris (industry gold standard) and
xalen-ephemeris (Rust, 5M chart oracle test)
- New baseline: F1=93.50% (Precision=93.82%, Recall=93.18%)
- Regenerated: standard_test_charts.json, planet_positions_60.json,
validation_logic_report.json
- Quality gate: compile/json/audit/BPHS/pytest/golden all passed
2026-06-06 14:43:11 +08:00
732642856
26835f80b8
Release v6.0.43 Yoga F1 93.76%
...
- Fix 3 PyJHora source bugs (kalaanidhi Yoga JUPITER_ID->VENUS_ID x2,
krisanga Yoga missing return)
- Implement planet_in_house_with_aspect_or_conjunction semantic condition
- Fix lagna_lord_in_dry_sign: dry_signs set correction (Capricorn->Taurus),
add ll_owner_dry check using dynamic co-lord resolution
- Regenerate reference data against fixed PyJHora
- F1 93.28% -> 93.76% (FN 96->86, FP 44 unchanged)
2026-06-06 09:58:28 +08:00
732642856
0d582dbaa3
Release v6.0.42 Yoga source parity
2026-06-06 00:28:17 +08:00
732642856
86e7d03c4a
Release v6.0.41 Yoga source parity
2026-06-05 23:20:53 +08:00
732642856
ede8b96d2c
Release v6.0.40 Yoga source parity
2026-06-05 22:37:25 +08:00
732642856
94be318d56
Release v6.0.39 Yoga source parity
2026-06-05 22:03:06 +08:00