feat: sync skill truth overlay evidence
This commit is contained in:
@@ -175,6 +175,7 @@ When reference_transparency is present:
|
||||
- When method_variants applies, present parallel methods and their source paths rather than silently picking one result as the only truth.
|
||||
- Treat Shadbala/Ashtakavarga component differences under production_tuning_allowed=false as method boundaries, not absolute calculation errors. Use no_majority_vote and method_variant_not_majority_vote: do not decide truth by engine count, and do not say one school is wrong unless a pinned authoritative worked example is present.
|
||||
- If gender or sex is present in future profile context, use it only for relationship/spouse interpretation language and weighting: gender-specific spouse significators are supplements, not chart-calculation switches. For relationship questions, keep the core stack gender-neutral (7th house, 7th lord, D9, UL, Darakaraka); male charts may supplement Venus, female charts may supplement Jupiter/Mars, and unknown/nonbinary/prefer-not-to-say uses the gender-neutral stack.
|
||||
- When consulting references/oracle/effective_skill_capability_view_2026_07_19.json or any derived skill map, use effective_status, not registry_status. Do not promote reference_only or blocked techniques into mastered/covered claims.
|
||||
- If should_lead_with_limitations is false, do not lead with limitations. If a limitation is relevant, put it in one short sentence at the end.
|
||||
- Only say the chart calculation failed when hard_blockers is non-empty.
|
||||
- Never claim D2, D11, D9, D10, A10, UL, or Narayana Dasha is missing when it appears in available_layers, chart, or local_layers.
|
||||
|
||||
@@ -0,0 +1,763 @@
|
||||
{
|
||||
"overlay_count": 8,
|
||||
"scope": "effective_skill_capability_view",
|
||||
"technique_count": 94,
|
||||
"techniques": [
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "A10 / Karma Pada / Rajya Pada",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "a10_karma_pada"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Argala",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "argala"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Arudha Lagna (AL) / 镜像上升",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "arudha_lagna"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Ashtakavarga",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "ashtakavarga"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "ashtakavarga.py calc_prastara_av()",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "ashtakavarga_pav"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "ashtakavarga.py calc_sodhita_av()",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "ashtakavarga_sodhita"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "ashtakavarga.py calc_yoga_pinda()",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "ashtakavarga_yoga_pinda"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Ashtottari Dasha / 108年周期",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "ashtottari_dasha"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Avastha",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "avastha"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Badhaka / Obstacle House-Lord",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "badhaka"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "bhava_bala.py",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "bhava_bala"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Bhava Chalit",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "bhava_chalit"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Bhrigu Bindu",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "bhrigu_bindu"
|
||||
},
|
||||
{
|
||||
"effective_status": "complete",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Bhrigu Pada Dasha / 足步推进法",
|
||||
"registry_status": "complete",
|
||||
"technique_id": "bhrigu_pada_dasha"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "birth_time_rectifier.py",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "birth_time_rectifier"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "career_analysis.py",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "career_engine"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "case_validator.py",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "case_validator"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Chandra Bala / 月亮力",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "chandra_bala"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Combustion / Asta",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "combustion"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "D10 / Dasamsa",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "d10_dasamsa"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "D1 / Rashi",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "d1_rashi"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "D9 / Navamsa",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "d9_navamsa"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Darakaraka (DK) / 配偶星",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "darakaraka"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Dasha Sandhi",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "dasha_sandhi"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Deep Varga Avastha / Sayanadi-Shayanadi + D24/D30/D60",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "deep_varga_avastha"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Deha / Jeeva Framework",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "deha_jeeva"
|
||||
},
|
||||
{
|
||||
"effective_status": "complete",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Dhana Yoga / 财富瑜伽",
|
||||
"registry_status": "complete",
|
||||
"technique_id": "dhana_yoga"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Dispositor Chain / 定位星链",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "dispositor_chain"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "divisional_yoga.py",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "divisional_yoga"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "22nd Drekkana",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "drekkana_22nd"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Gandanta",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "gandanta"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Graha Yuddha / Planetary War",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "graha_yuddha"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Inter-chart Linkage / 分盘间飞星",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "inter_chart_linkage"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Jaimini / Chara Dasha",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "jaimini_chara_dasha"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Kaal Sarp Dosha / 时间蛇煞",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "kaal_sarp_dosha"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "kakshya.py",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "kakshya"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Kalachakra Dasha / 时轮大运",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "kalachakra_dasha"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Karakamsha / AK / AmK",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "karakamsha_ak_amk"
|
||||
},
|
||||
{
|
||||
"effective_status": "reference_only",
|
||||
"overlay_evidence": "references/oracle/technique_promotion_audit_kp_gochara_muhurta_2026_07_19.json",
|
||||
"overlay_reason": "KP reference exists in backup/docs; no main runtime oracle/contract.",
|
||||
"public_label": "kp_system.py",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "kp_system"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Mangal Dosha / 火星煞",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "mangal_dosha"
|
||||
},
|
||||
{
|
||||
"effective_status": "complete",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Marriage Counting Method / 婚姻计数法",
|
||||
"registry_status": "complete",
|
||||
"technique_id": "marriage_counting"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "misconceptions.py",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "misconceptions"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Moolatrikona / 原始三方",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "moolatrikona"
|
||||
},
|
||||
{
|
||||
"effective_status": "reference_only",
|
||||
"overlay_evidence": "references/oracle/technique_promotion_audit_kp_gochara_muhurta_2026_07_19.json",
|
||||
"overlay_reason": "Panchanga runtime exists, but Muhurta/dashaflow is OSS/reference candidate requiring license/source/oracle audit.",
|
||||
"public_label": "Muhurta (Panchanga / Auspicious Timing)",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "muhurta"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "muhurtha_election.py",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "muhurtha"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Muntha / 年运之主 (Tajika)",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "muntha"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Nakshatra Advanced / 星宿进阶(Tara Bala + Chandra Bala + Sub-Lord)",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "nakshatra_advanced"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Nakshatra Dasha / 星宿大运推演(Ashtottari + Nakshatra-level Vimshottari)",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "nakshatra_dasha"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Narayana Dasha (Rishi Dasha / Padakrama Dasha)",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "narayana_dasha"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "64th Navamsa / Chatushashti Navamsa",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "navamsa_64th"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Navatara / 九星链",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "navatara"
|
||||
},
|
||||
{
|
||||
"effective_status": "complete",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Neechabhanga / 落陷取消(别名入口)",
|
||||
"registry_status": "complete",
|
||||
"technique_id": "neechabhanga"
|
||||
},
|
||||
{
|
||||
"effective_status": "complete",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Neecha Bhanga Raj Yoga / 落陷解除王者瑜伽",
|
||||
"registry_status": "complete",
|
||||
"technique_id": "nicha_bhanga_raj"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Pancha Mahapurusha Yoga / 五王瑜伽",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "pancha_mahapurusha"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Pancha Pakshi / 五鸟系统",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "pancha_pakshi"
|
||||
},
|
||||
{
|
||||
"effective_status": "guarded",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Panchavargiya Bala / 五分盘力量",
|
||||
"registry_status": "guarded",
|
||||
"technique_id": "panchavargiya_bala"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Pitra Dosha / 父辈煞",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "pitra_dosha"
|
||||
},
|
||||
{
|
||||
"effective_status": "guarded",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "prashna.py",
|
||||
"registry_status": "guarded",
|
||||
"technique_id": "prashna"
|
||||
},
|
||||
{
|
||||
"effective_status": "guarded",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Prashna Integration / 问事占星接入",
|
||||
"registry_status": "guarded",
|
||||
"technique_id": "prashna_integration"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Pushkara Navamsa / Pushkara Bhaga",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "pushkara"
|
||||
},
|
||||
{
|
||||
"effective_status": "complete",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Raj Yoga / 王者瑜伽",
|
||||
"registry_status": "complete",
|
||||
"technique_id": "raj_yoga"
|
||||
},
|
||||
{
|
||||
"effective_status": "comparison-only",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Rangacharya / Iranganti Jaimini Variant",
|
||||
"registry_status": "comparison-only",
|
||||
"technique_id": "rangacharya_jaimini_variant"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Rashi Tulya Navamsa / 本命对分盘分析",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "rashi_tulya_navamsa"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "relationship_analysis.py",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "relationship_engine"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "remedies.py",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "remedies"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Sade Sati / 土星七年",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "sade_sati"
|
||||
},
|
||||
{
|
||||
"effective_status": "blocked",
|
||||
"overlay_evidence": "references/oracle/prashna_tajika_saham_gulika_sphuta_oracle_packet_2026_07_19.json",
|
||||
"overlay_reason": "Saham rules exist, but external numeric oracle worked examples are missing.",
|
||||
"public_label": "Sahams / 特殊点",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "sahams"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Sarpa Drekkana",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "sarpa_drekkana"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Shadbala",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "shadbala"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Shodasavarga / 十六分盘体系",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "shodasavarga"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Solar/Lunar Yogas (Veshi/Voshi/Ubhayachari/Sunapha/Anapha/Durudhura)",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "solar_lunar_yogas"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Solar Return / Varshaphala (Tajika)",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "solar_return"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Special Lagnas / 特殊上升点(别名入口)",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "special_lagnas"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Special Lagnas / HL GL VL PP ViL",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "special_lagnas_extended"
|
||||
},
|
||||
{
|
||||
"effective_status": "blocked",
|
||||
"overlay_evidence": "references/oracle/prashna_tajika_saham_gulika_sphuta_oracle_packet_2026_07_19.json",
|
||||
"overlay_reason": "Sphuta sensitive points lack public worked examples and field-level oracle comparison.",
|
||||
"public_label": "Sphuta / Trisphuta / Catusphuta / Pancasphuta / Prana-Deha-Mrityu",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "sphuta_trisphuta_family"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Sudarshana Chakra",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "sudarshana_chakra"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "synastry.py",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "synastry_16factor"
|
||||
},
|
||||
{
|
||||
"effective_status": "partial",
|
||||
"overlay_evidence": "references/oracle/prashna_tajika_saham_gulika_sphuta_oracle_packet_2026_07_19.json",
|
||||
"overlay_reason": "Tajika/Varshaphala artifacts exist, but complete worked-example closure is partial.",
|
||||
"public_label": "Tajika Yogas / 年运盘格局",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "tajika_yogas"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Tara Bala / Tarabala / 星宿力",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "tara_bala"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Thematic Report Orchestrator / 主题化报告编排",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "thematic_report_orchestrator"
|
||||
},
|
||||
{
|
||||
"effective_status": "complete",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Tithi Lord / 月日守护星",
|
||||
"registry_status": "complete",
|
||||
"technique_id": "tithi_lord"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "transit_trigger.py",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "transit_trigger"
|
||||
},
|
||||
{
|
||||
"effective_status": "complete",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Trimshamsa D30 / 三十分盘",
|
||||
"registry_status": "complete",
|
||||
"technique_id": "trimshamsa_d30"
|
||||
},
|
||||
{
|
||||
"effective_status": "guarded",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Upagraha / Gulika / Maandi",
|
||||
"registry_status": "guarded",
|
||||
"technique_id": "upagraha_gulika_maandi"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Upapada Lagna (UL) / 配偶镜像上升",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "upapada_lagna"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Varga Dignity / 分盘尊严等级",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "varga_dignity"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Vargottama",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "vargottama"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "varshaphala.py",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "varshaphala"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Vimshottari Dasha",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "vimshottari_dasha"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Vimsopaka Bala / 分盘综合力量",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "vimsopaka_bala"
|
||||
},
|
||||
{
|
||||
"effective_status": "covered",
|
||||
"overlay_evidence": "",
|
||||
"overlay_reason": "",
|
||||
"public_label": "Yogini Dasha / 36年周期",
|
||||
"registry_status": "covered",
|
||||
"technique_id": "yogini_dasha"
|
||||
},
|
||||
{
|
||||
"effective_status": "research_only_blocked",
|
||||
"overlay_evidence": "references/oracle/conception_chart_adhana_niseka_registry_2026_07_19.json",
|
||||
"overlay_reason": "Adhana/Niseka screenshot family and partial scaffold exist; safety/source/oracle gates block runtime claims.",
|
||||
"public_label": "conception_chart",
|
||||
"registry_status": "missing",
|
||||
"technique_id": "conception_chart"
|
||||
},
|
||||
{
|
||||
"effective_status": "reference_only",
|
||||
"overlay_evidence": "references/oracle/technique_promotion_audit_kp_gochara_muhurta_2026_07_19.json",
|
||||
"overlay_reason": "Gochara event timing template exists in /tmp; not calibrated runtime.",
|
||||
"public_label": "gochara_event_timing",
|
||||
"registry_status": "implicit_or_fragment",
|
||||
"technique_id": "gochara_event_timing"
|
||||
},
|
||||
{
|
||||
"effective_status": "partial_registry_only",
|
||||
"overlay_evidence": "references/oracle/relationship_combinations_rule_family_registry_2026_07_19.json",
|
||||
"overlay_reason": "Screenshot rule families are indexed but not tested/source-closed runtime.",
|
||||
"public_label": "relationship_combinations",
|
||||
"registry_status": "missing",
|
||||
"technique_id": "relationship_combinations"
|
||||
}
|
||||
],
|
||||
"truth_source_order": [
|
||||
"references/oracle/skill_truth_overlay_2026_07_19.json",
|
||||
"references/technique_registry.json"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,182 @@
|
||||
{
|
||||
"scope": "evidence_packet_index",
|
||||
"created_at": "2026-07-19",
|
||||
"status": "active_index_v1",
|
||||
"production_tuning_allowed": false,
|
||||
"boundary": "Index of current governance packets only. Raw oracle artifacts remain in references/oracle/artifacts and are not all duplicated here.",
|
||||
"summary": {
|
||||
"packet_count": 21,
|
||||
"blocked_or_partial_count": 13,
|
||||
"human_review_required_count": 1
|
||||
},
|
||||
"packets": [
|
||||
{
|
||||
"packet_id": "formula_source_kb",
|
||||
"path": "references/oracle/formula_source_knowledge_base_2026_07_19.json",
|
||||
"domain": "formula_sources",
|
||||
"claim_status": "partial",
|
||||
"consumer_policy": "research_to_commercial_contract_only",
|
||||
"claim_boundary": "Source/formula/unit registry exists; absolute numeric parity still requires worked examples and oracle comparison."
|
||||
},
|
||||
{
|
||||
"packet_id": "profile_schema_contract",
|
||||
"path": "references/oracle/profile_schema_contract_2026_07_19.json",
|
||||
"domain": "profile_schema",
|
||||
"claim_status": "ready_contract",
|
||||
"consumer_policy": "research_to_commercial_contract_only",
|
||||
"claim_boundary": "Profile schema contract is ready; UI/API adoption must prove gender optional fields do not affect core chart math."
|
||||
},
|
||||
{
|
||||
"packet_id": "gender_interpretation_contract",
|
||||
"path": "references/oracle/gender_interpretation_contract_2026_07_19.json",
|
||||
"domain": "relationship_interpretation",
|
||||
"claim_status": "ready_contract",
|
||||
"consumer_policy": "research_to_commercial_contract_only",
|
||||
"claim_boundary": "Gender affects only optional relationship/birth-context interpretation, not chart calculation."
|
||||
},
|
||||
{
|
||||
"packet_id": "relationship_gender_role_registry",
|
||||
"path": "references/relationship_gender_role_technique_registry_2026_07_19.json",
|
||||
"domain": "relationship_interpretation",
|
||||
"claim_status": "ready_contract",
|
||||
"consumer_policy": "research_to_commercial_contract_only",
|
||||
"claim_boundary": "Technique registry only; no predictive truth upgrade."
|
||||
},
|
||||
{
|
||||
"packet_id": "day_level_human_annotation_packet",
|
||||
"path": "references/real_case_calibration/day_level_holdout_v3_human_annotation_packet_2026_07_19.json",
|
||||
"domain": "timing_holdout",
|
||||
"claim_status": "blocked",
|
||||
"consumer_policy": "human_review_required",
|
||||
"claim_boundary": "Final labels are blank; blind evaluation must not run until independent human review and freeze."
|
||||
},
|
||||
{
|
||||
"packet_id": "prashna_tajika_oracle_packet",
|
||||
"path": "references/oracle/prashna_tajika_saham_gulika_sphuta_oracle_packet_2026_07_19.json",
|
||||
"domain": "horary_annual_sensitive_points",
|
||||
"claim_status": "blocked",
|
||||
"consumer_policy": "research_only",
|
||||
"claim_boundary": "Registry exists; public worked examples and field-level numeric oracle comparison still missing."
|
||||
},
|
||||
{
|
||||
"packet_id": "vedastro_identity_evidence_audit",
|
||||
"path": "references/oracle/vedastro_identity_evidence_audit_2026_07_19.json",
|
||||
"domain": "external_oracle_identity",
|
||||
"claim_status": "blocked",
|
||||
"consumer_policy": "research_only",
|
||||
"claim_boundary": "Local NuGet candidate is pinned; hosted API identity/source commit remains blocked."
|
||||
},
|
||||
{
|
||||
"packet_id": "xalen_shadbala_av_delta_report",
|
||||
"path": "references/oracle/xalen_shadbala_av_component_delta_report_2026_07_19.json",
|
||||
"domain": "shadbala_ashtakavarga",
|
||||
"claim_status": "partial",
|
||||
"consumer_policy": "research_only",
|
||||
"claim_boundary": "Deltas grouped by component; formulas/units/school variants remain open."
|
||||
},
|
||||
{
|
||||
"packet_id": "three_engine_mismatch_closure_queue",
|
||||
"path": "references/oracle/three_engine_mismatch_closure_queue_2026_07_19.json",
|
||||
"domain": "three_engine_parity",
|
||||
"claim_status": "open_queue",
|
||||
"consumer_policy": "research_only",
|
||||
"claim_boundary": "60 tickets remain open; no majority-vote truth."
|
||||
},
|
||||
{
|
||||
"packet_id": "technique_fragment_inventory",
|
||||
"path": "references/oracle/technique_fragment_inventory_2026_07_19.json",
|
||||
"domain": "technique_fragments",
|
||||
"claim_status": "partial",
|
||||
"consumer_policy": "research_only",
|
||||
"claim_boundary": "Inventory prevents missed fragments; files are not capability closure by themselves."
|
||||
},
|
||||
{
|
||||
"packet_id": "varga_karaka_promotion_audit",
|
||||
"path": "references/oracle/technique_promotion_audit_varga_karaka_2026_07_19.json",
|
||||
"domain": "varga_jaimini",
|
||||
"claim_status": "partial",
|
||||
"consumer_policy": "research_only",
|
||||
"claim_boundary": "Runtime coverage exists; entry/display/source/oracle contracts remain."
|
||||
},
|
||||
{
|
||||
"packet_id": "vimsopaka_avastha_promotion_audit",
|
||||
"path": "references/oracle/technique_promotion_audit_vimsopaka_avastha_2026_07_19.json",
|
||||
"domain": "strength_state_layers",
|
||||
"claim_status": "partial",
|
||||
"consumer_policy": "research_only",
|
||||
"claim_boundary": "Runtime usage exists; formula source/oracle/display contracts remain."
|
||||
},
|
||||
{
|
||||
"packet_id": "kp_gochara_muhurta_promotion_audit",
|
||||
"path": "references/oracle/technique_promotion_audit_kp_gochara_muhurta_2026_07_19.json",
|
||||
"domain": "kp_gochara_muhurta_panchanga",
|
||||
"claim_status": "partial",
|
||||
"consumer_policy": "research_only",
|
||||
"claim_boundary": "Panchanga runtime exists; KP/Muhurta/Gochara remain reference-only or need license/source/oracle closure."
|
||||
},
|
||||
{
|
||||
"packet_id": "claim_audit_runtime_gate",
|
||||
"path": "scripts/claim_audit_runtime_gate.py",
|
||||
"domain": "claim_governance",
|
||||
"claim_status": "ready_contract",
|
||||
"consumer_policy": "research_to_commercial_contract_only",
|
||||
"claim_boundary": "Runtime gate can block or degrade high claims from blocked/partial/open evidence packets; production tuning remains false."
|
||||
},
|
||||
{
|
||||
"packet_id": "screenshot_technique_gap_audit",
|
||||
"path": "references/oracle/screenshot_technique_gap_audit_2026_07_19.json",
|
||||
"domain": "source_ingestion",
|
||||
"claim_status": "partial",
|
||||
"consumer_policy": "research_only",
|
||||
"claim_boundary": "Screenshot labels identify missing conception-chart and relationship-combination families, but unreadable images and source packets remain unresolved."
|
||||
},
|
||||
{
|
||||
"packet_id": "conception_chart_adhana_niseka_registry",
|
||||
"path": "references/oracle/conception_chart_adhana_niseka_registry_2026_07_19.json",
|
||||
"domain": "conception_chart",
|
||||
"claim_status": "blocked",
|
||||
"consumer_policy": "research_only",
|
||||
"claim_boundary": "Research-only Adhana/Niseka registry; no medical/fertility/user-facing claim until source, worked example, privacy, and safety gates close."
|
||||
},
|
||||
{
|
||||
"packet_id": "relationship_combinations_rule_family_registry",
|
||||
"path": "references/oracle/relationship_combinations_rule_family_registry_2026_07_19.json",
|
||||
"domain": "relationship_rule_families",
|
||||
"claim_status": "partial",
|
||||
"consumer_policy": "research_only",
|
||||
"claim_boundary": "Relationship/children/hostility combination families are indexed but require source packets, deduplication, tests, and claim gates before runtime use."
|
||||
},
|
||||
{
|
||||
"packet_id": "skill_truth_overlay",
|
||||
"path": "references/oracle/skill_truth_overlay_2026_07_19.json",
|
||||
"domain": "skill_capability_truth",
|
||||
"claim_status": "partial",
|
||||
"consumer_policy": "research_to_commercial_contract_only",
|
||||
"claim_boundary": "Corrects optimistic technique_registry statuses before any skill completeness claim."
|
||||
},
|
||||
{
|
||||
"packet_id": "rectification_technique_usage_audit",
|
||||
"path": "references/oracle/rectification_technique_usage_audit_2026_07_19.json",
|
||||
"domain": "birth_time_rectification",
|
||||
"claim_status": "partial",
|
||||
"consumer_policy": "research_only",
|
||||
"claim_boundary": "Rectification uses candidate sweep, Vimshottari event scoring and varga sensitivity; Narayana/Jaimini/Shadbala/AV/Vimsopaka/Avastha/Gochara layers are not yet integrated."
|
||||
},
|
||||
{
|
||||
"packet_id": "effective_skill_capability_view",
|
||||
"path": "references/oracle/effective_skill_capability_view_2026_07_19.json",
|
||||
"domain": "skill_capability_truth",
|
||||
"claim_status": "ready_contract",
|
||||
"consumer_policy": "research_to_commercial_contract_only",
|
||||
"claim_boundary": "Effective skill view applies the truth overlay before capability claims; raw technique_registry status is not sufficient."
|
||||
},
|
||||
{
|
||||
"packet_id": "rectification_missing_layer_integration_plan",
|
||||
"path": "references/oracle/rectification_missing_layer_integration_plan_2026_07_19.json",
|
||||
"domain": "birth_time_rectification",
|
||||
"claim_status": "partial",
|
||||
"consumer_policy": "research_only",
|
||||
"claim_boundary": "Narayana/Jaimini/Vimsopaka-Avastha/Shadbala-AV/Gochara layers are planned but not yet integrated into rectification scoring."
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,180 @@
|
||||
{
|
||||
"scope": "formula_source_knowledge_base",
|
||||
"created_at": "2026-07-19",
|
||||
"status": "formula_source_registry_v1",
|
||||
"truth_policy": "source_registry_not_absolute_truth",
|
||||
"production_tuning_allowed": false,
|
||||
"boundary": "This registry attaches source/formula/unit/oracle boundaries. It does not by itself prove absolute parity or prediction accuracy.",
|
||||
"source_stack": [
|
||||
{
|
||||
"name": "Brihat Parashara Hora Shastra / classical Shadbala tradition",
|
||||
"role": "classical_formula_family",
|
||||
"license_boundary": "public-domain/classical text status depends on edition; use as conceptual formula source, not copied modern translation prose."
|
||||
},
|
||||
{
|
||||
"name": "Jagannatha Hora / PyJHora",
|
||||
"url": "https://github.com/naturalstupid/PyJHora",
|
||||
"role": "oracle/reference implementation",
|
||||
"license_boundary": "AGPL-3.0; do not copy implementation into commercial runtime."
|
||||
},
|
||||
{
|
||||
"name": "jyotishganit",
|
||||
"url": "https://github.com/northtara/jyotishganit",
|
||||
"role": "permissive external oracle candidate",
|
||||
"license_boundary": "MIT; may be adapted after field-level contract audit."
|
||||
},
|
||||
{
|
||||
"name": "VedAstro",
|
||||
"url": "https://github.com/VedAstro/VedAstro",
|
||||
"role": "MIT oracle/API candidate",
|
||||
"license_boundary": "MIT local/NuGet candidate; hosted identity blocked until build/method metadata is pinned."
|
||||
},
|
||||
{
|
||||
"name": "Xalen",
|
||||
"role": "Apache-2.0 independent observation oracle",
|
||||
"license_boundary": "Apache-2.0; currently observation-only, not majority-vote truth."
|
||||
}
|
||||
],
|
||||
"formulas": [
|
||||
{
|
||||
"formula_id": "shadbala_sthana_bala",
|
||||
"system": "vedic",
|
||||
"family": "Shadbala",
|
||||
"component": "sthana",
|
||||
"source_evidence": ["classical Shadbala six-force tradition", "PyJHora/JHora VP Jain fixture", "Xalen Shadbala component delta report"],
|
||||
"formula_summary": "Positional strength: combines dignity/exaltation, divisional dignity, odd/even sign rules, kendra/drekkana and related school-specific subcomponents.",
|
||||
"unit_contract": "Virupa component; conversion to Rupa must be explicit, usually 60 Virupa = 1 Rupa.",
|
||||
"known_variants": ["moolatrikona_degree_range_vs_whole_sign", "varga dignity table variant", "subcomponent inclusion variant"],
|
||||
"implementation_status": "implemented_partial",
|
||||
"oracle_status": "partial",
|
||||
"license_boundary": "PyJHora/JHora AGPL evidence is oracle-only; do not copy implementation. VedAstro hosted identity blocked.",
|
||||
"claim_boundary": "component method variant allowed; absolute Virupa truth blocked until worked example/unit source closes."
|
||||
},
|
||||
{
|
||||
"formula_id": "shadbala_dig_bala",
|
||||
"system": "vedic",
|
||||
"family": "Shadbala",
|
||||
"component": "dig",
|
||||
"source_evidence": ["classical directional strength rule", "PyJHora/JHora VP Jain fixture", "Xalen delta report"],
|
||||
"formula_summary": "Directional strength by angular distance from planet-specific strongest direction/house.",
|
||||
"unit_contract": "Virupa component; cap/floor and interpolation must be explicit.",
|
||||
"known_variants": ["house-cusp vs whole-house angular distance", "rounding precision"],
|
||||
"implementation_status": "implemented_partial",
|
||||
"oracle_status": "partial",
|
||||
"license_boundary": "AGPL sources oracle-only; local implementation must remain independently written.",
|
||||
"claim_boundary": "directional component can be compared only after house/cusp semantics are declared."
|
||||
},
|
||||
{
|
||||
"formula_id": "shadbala_kala_bala",
|
||||
"system": "vedic",
|
||||
"family": "Shadbala",
|
||||
"component": "kala",
|
||||
"source_evidence": ["classical temporal strength rules", "sunrise/day-night/hora/month/year lord formulas", "Xalen delta report"],
|
||||
"formula_summary": "Temporal strength aggregation: day/night, paksha, tribhaga, year/month/day/hora lord and ayana-related subcomponents depending on lineage.",
|
||||
"unit_contract": "Virupa component; each subcomponent must name local time, sunrise/sunset, ayana and cap rules.",
|
||||
"known_variants": ["sunrise engine", "local apparent time", "included subcomponents", "hemisphere/ayana convention"],
|
||||
"implementation_status": "implemented_partial",
|
||||
"oracle_status": "partial",
|
||||
"license_boundary": "Use local astronomy implementation; external packages oracle-only unless permissive and audited.",
|
||||
"claim_boundary": "blocked for absolute parity until each Kala subcomponent has source and worked example."
|
||||
},
|
||||
{
|
||||
"formula_id": "shadbala_chesta_bala",
|
||||
"system": "vedic",
|
||||
"family": "Shadbala",
|
||||
"component": "chesta",
|
||||
"source_evidence": ["classical motional strength rules", "mean-motion/Seeghrochcha requirement", "VP Jain fixture variants"],
|
||||
"formula_summary": "Motional strength from apparent speed/retrogression state; luminary and inner/outer planet policies vary by lineage.",
|
||||
"unit_contract": "Virupa component; speed basis and retrograde/mean-motion normalization must be explicit.",
|
||||
"known_variants": ["luminary_chesta_policy", "mean-motion vs apparent-speed", "Seeghrochcha model"],
|
||||
"implementation_status": "implemented_partial",
|
||||
"oracle_status": "partial",
|
||||
"license_boundary": "Cannot copy AGPL PyJHora Chesta implementation; independent local formula required.",
|
||||
"claim_boundary": "absolute Chesta parity blocked until mean-motion/Seeghrochcha source closes."
|
||||
},
|
||||
{
|
||||
"formula_id": "shadbala_naisargika_bala",
|
||||
"system": "vedic",
|
||||
"family": "Shadbala",
|
||||
"component": "naisargika",
|
||||
"source_evidence": ["classical natural strength ordering", "VP Jain fixture", "Xalen delta report"],
|
||||
"formula_summary": "Natural strength assigned by fixed planetary order/brightness tradition.",
|
||||
"unit_contract": "Fixed Virupa table for seven visible planets; table source must be named.",
|
||||
"known_variants": ["fixed table rounding", "planet inclusion set"],
|
||||
"implementation_status": "implemented_partial",
|
||||
"oracle_status": "partial",
|
||||
"license_boundary": "Formula table can be independently sourced; AGPL oracle output not copied as implementation.",
|
||||
"claim_boundary": "lowest risk component, still requires explicit table source for absolute claim."
|
||||
},
|
||||
{
|
||||
"formula_id": "shadbala_drik_bala",
|
||||
"system": "vedic",
|
||||
"family": "Shadbala",
|
||||
"component": "drik",
|
||||
"source_evidence": ["classical aspectual strength rules", "planet aspect model", "Xalen delta report"],
|
||||
"formula_summary": "Aspectual strength from benefic/malefic aspects on planet; depends on aspect model, orb/interpolation and natural/functional treatment policy.",
|
||||
"unit_contract": "Virupa component; positive/negative sign and aspect-strength scale must be explicit.",
|
||||
"known_variants": ["graha drishti model", "orb/interpolation", "benefic/malefic classification"],
|
||||
"implementation_status": "implemented_partial",
|
||||
"oracle_status": "partial",
|
||||
"license_boundary": "Use source-cited formula; AGPL and hosted outputs remain oracle/reference only.",
|
||||
"claim_boundary": "blocked for absolute parity until aspect strength table/model is pinned."
|
||||
},
|
||||
{
|
||||
"formula_id": "shadbala_total_rupa_virupa",
|
||||
"system": "vedic",
|
||||
"family": "Shadbala",
|
||||
"component": "total",
|
||||
"source_evidence": ["component registry", "Xalen delta report"],
|
||||
"formula_summary": "Total strength derived from six component sums; may expose Virupa and/or Rupa.",
|
||||
"unit_contract": "Must state whether values are raw Virupa, Rupa, normalized ratio, or required-strength ratio.",
|
||||
"known_variants": ["absolute total vs required-ratio", "Rupa/Virupa conversion", "component caps"],
|
||||
"implementation_status": "implemented_partial",
|
||||
"oracle_status": "partial",
|
||||
"license_boundary": "Do not normalize to a single truth by majority vote.",
|
||||
"claim_boundary": "total is blocked until six components close."
|
||||
},
|
||||
{
|
||||
"formula_id": "ashtakavarga_bav",
|
||||
"system": "vedic",
|
||||
"family": "Ashtakavarga",
|
||||
"component": "BAV",
|
||||
"source_evidence": ["Ashtakavarga bindu tradition", "Xalen AV table delta report", "local Ashtakoot/AV tests"],
|
||||
"formula_summary": "Bhinna Ashtakavarga: per-planet 12-sign bindu table from contributor rules.",
|
||||
"unit_contract": "Integer bindu counts by sign; contributor set, Lagna inclusion, and row/column order required.",
|
||||
"known_variants": ["contributor table", "Lagna inclusion", "sign indexing", "pre/post shodhana"],
|
||||
"implementation_status": "implemented_partial",
|
||||
"oracle_status": "partial",
|
||||
"license_boundary": "Permissive references may be adapted only after formula audit; AGPL oracle-only.",
|
||||
"claim_boundary": "table variant allowed; exact truth blocked until worked BAV table source matches."
|
||||
},
|
||||
{
|
||||
"formula_id": "ashtakavarga_sav",
|
||||
"system": "vedic",
|
||||
"family": "Ashtakavarga",
|
||||
"component": "SAV",
|
||||
"source_evidence": ["BAV source table", "Xalen SAV delta report"],
|
||||
"formula_summary": "Sarvashtakavarga: summed bindu table across BAV contributors.",
|
||||
"unit_contract": "12 integer sign scores; whether reduced/shodhita or raw SAV must be explicit.",
|
||||
"known_variants": ["raw vs reduced SAV", "included contributors", "rounding not applicable but indexing critical"],
|
||||
"implementation_status": "implemented_partial",
|
||||
"oracle_status": "partial",
|
||||
"license_boundary": "Do not treat web calculator output as formula source.",
|
||||
"claim_boundary": "SAV mismatch cannot close until BAV contributor and shodhana state close."
|
||||
},
|
||||
{
|
||||
"formula_id": "ashtakavarga_shodhana_pinda",
|
||||
"system": "vedic",
|
||||
"family": "Ashtakavarga",
|
||||
"component": "shodhana_pinda",
|
||||
"source_evidence": ["Ashtakavarga shodhana/pinda tradition", "external articles mention reductions and Shodhya Pinda"],
|
||||
"formula_summary": "Optional reductions and Pinda weighting after raw BAV/SAV depending on school.",
|
||||
"unit_contract": "Must label raw, reduced, trikona/ekadhipatya shodhana, and shodhya pinda separately.",
|
||||
"known_variants": ["trikona shodhana", "ekadhipatya shodhana", "planet/sign pinda factors"],
|
||||
"implementation_status": "blocked",
|
||||
"oracle_status": "blocked",
|
||||
"license_boundary": "Needs formula source and worked example before implementation.",
|
||||
"claim_boundary": "not production claimable."
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
{
|
||||
"scope": "skill_truth_overlay",
|
||||
"created_at": "2026-07-19",
|
||||
"status": "truth_overlay_v1",
|
||||
"source_registry": "references/technique_registry.json",
|
||||
"production_tuning_allowed": false,
|
||||
"boundary": "Overlay corrects optimistic technique_registry labels using current runtime audits. It must be applied before claiming skill completeness.",
|
||||
"overrides": [
|
||||
{
|
||||
"technique_id": "kp_system",
|
||||
"registry_status": "covered",
|
||||
"corrected_status": "reference_only",
|
||||
"evidence": "references/oracle/technique_promotion_audit_kp_gochara_muhurta_2026_07_19.json",
|
||||
"reason": "KP reference exists in backup/docs; no main runtime oracle/contract."
|
||||
},
|
||||
{
|
||||
"technique_id": "muhurta",
|
||||
"registry_status": "covered",
|
||||
"corrected_status": "reference_only",
|
||||
"evidence": "references/oracle/technique_promotion_audit_kp_gochara_muhurta_2026_07_19.json",
|
||||
"reason": "Panchanga runtime exists, but Muhurta/dashaflow is OSS/reference candidate requiring license/source/oracle audit."
|
||||
},
|
||||
{
|
||||
"technique_id": "gochara_event_timing",
|
||||
"registry_status": "implicit_or_fragment",
|
||||
"corrected_status": "reference_only",
|
||||
"evidence": "references/oracle/technique_promotion_audit_kp_gochara_muhurta_2026_07_19.json",
|
||||
"reason": "Gochara event timing template exists in /tmp; not calibrated runtime."
|
||||
},
|
||||
{
|
||||
"technique_id": "sahams",
|
||||
"registry_status": "covered",
|
||||
"corrected_status": "blocked",
|
||||
"evidence": "references/oracle/prashna_tajika_saham_gulika_sphuta_oracle_packet_2026_07_19.json",
|
||||
"reason": "Saham rules exist, but external numeric oracle worked examples are missing."
|
||||
},
|
||||
{
|
||||
"technique_id": "sphuta_trisphuta_family",
|
||||
"registry_status": "covered",
|
||||
"corrected_status": "blocked",
|
||||
"evidence": "references/oracle/prashna_tajika_saham_gulika_sphuta_oracle_packet_2026_07_19.json",
|
||||
"reason": "Sphuta sensitive points lack public worked examples and field-level oracle comparison."
|
||||
},
|
||||
{
|
||||
"technique_id": "tajika_yogas",
|
||||
"registry_status": "covered",
|
||||
"corrected_status": "partial",
|
||||
"evidence": "references/oracle/prashna_tajika_saham_gulika_sphuta_oracle_packet_2026_07_19.json",
|
||||
"reason": "Tajika/Varshaphala artifacts exist, but complete worked-example closure is partial."
|
||||
},
|
||||
{
|
||||
"technique_id": "conception_chart",
|
||||
"registry_status": "missing",
|
||||
"corrected_status": "research_only_blocked",
|
||||
"evidence": "references/oracle/conception_chart_adhana_niseka_registry_2026_07_19.json",
|
||||
"reason": "Adhana/Niseka screenshot family and partial scaffold exist; safety/source/oracle gates block runtime claims."
|
||||
},
|
||||
{
|
||||
"technique_id": "relationship_combinations",
|
||||
"registry_status": "missing",
|
||||
"corrected_status": "partial_registry_only",
|
||||
"evidence": "references/oracle/relationship_combinations_rule_family_registry_2026_07_19.json",
|
||||
"reason": "Screenshot rule families are indexed but not tested/source-closed runtime."
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,65 @@
|
||||
#!/usr/bin/env python3
|
||||
"""Build effective skill capability view by applying skill_truth_overlay."""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import argparse
|
||||
import json
|
||||
from pathlib import Path
|
||||
|
||||
|
||||
def build_effective_registry(registry_path: Path, overlay_path: Path) -> dict:
|
||||
registry = json.loads(registry_path.read_text(encoding="utf-8"))
|
||||
overlay = json.loads(overlay_path.read_text(encoding="utf-8"))
|
||||
overrides = {row["technique_id"]: row for row in overlay["overrides"]}
|
||||
rows = []
|
||||
for technique_id, raw in sorted(registry["techniques"].items()):
|
||||
override = overrides.get(technique_id)
|
||||
rows.append(
|
||||
{
|
||||
"technique_id": technique_id,
|
||||
"registry_status": raw.get("status"),
|
||||
"effective_status": override["corrected_status"] if override else raw.get("status"),
|
||||
"overlay_evidence": override.get("evidence") if override else "",
|
||||
"overlay_reason": override.get("reason") if override else "",
|
||||
"public_label": raw.get("public_label") or raw.get("name") or technique_id,
|
||||
}
|
||||
)
|
||||
for technique_id, override in sorted(overrides.items()):
|
||||
if technique_id not in registry["techniques"]:
|
||||
rows.append(
|
||||
{
|
||||
"technique_id": technique_id,
|
||||
"registry_status": override["registry_status"],
|
||||
"effective_status": override["corrected_status"],
|
||||
"overlay_evidence": override["evidence"],
|
||||
"overlay_reason": override["reason"],
|
||||
"public_label": technique_id,
|
||||
}
|
||||
)
|
||||
return {
|
||||
"scope": "effective_skill_capability_view",
|
||||
"truth_source_order": [str(overlay_path), str(registry_path)],
|
||||
"technique_count": len(rows),
|
||||
"overlay_count": len(overrides),
|
||||
"techniques": rows,
|
||||
}
|
||||
|
||||
|
||||
def main() -> int:
|
||||
parser = argparse.ArgumentParser(description=__doc__)
|
||||
parser.add_argument("--registry", type=Path, default=Path("references/technique_registry.json"))
|
||||
parser.add_argument("--overlay", type=Path, default=Path("references/oracle/skill_truth_overlay_2026_07_19.json"))
|
||||
parser.add_argument("--output", type=Path)
|
||||
args = parser.parse_args()
|
||||
view = build_effective_registry(args.registry, args.overlay)
|
||||
text = json.dumps(view, ensure_ascii=False, indent=2, sort_keys=True) + "\n"
|
||||
if args.output:
|
||||
args.output.parent.mkdir(parents=True, exist_ok=True)
|
||||
args.output.write_text(text, encoding="utf-8")
|
||||
print(text, end="")
|
||||
return 0
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
raise SystemExit(main())
|
||||
@@ -0,0 +1,41 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from pathlib import Path
|
||||
|
||||
from scripts.skill_truth_overlay_view import build_effective_registry
|
||||
|
||||
ROOT = Path(__file__).resolve().parents[1]
|
||||
|
||||
|
||||
def test_skill_truth_overlay_view_applies_corrected_statuses() -> None:
|
||||
view = build_effective_registry(
|
||||
ROOT / "references/technique_registry.json",
|
||||
ROOT / "references/oracle/skill_truth_overlay_2026_07_19.json",
|
||||
)
|
||||
effective = {row["technique_id"]: row["effective_status"] for row in view["techniques"]}
|
||||
assert effective["kp_system"] == "reference_only"
|
||||
assert effective["muhurta"] == "reference_only"
|
||||
assert effective["sahams"] == "blocked"
|
||||
assert effective["sphuta_trisphuta_family"] == "blocked"
|
||||
assert effective["tajika_yogas"] == "partial"
|
||||
|
||||
|
||||
def test_skill_truth_overlay_view_preserves_registry_status_as_raw_field() -> None:
|
||||
view = build_effective_registry(
|
||||
ROOT / "references/technique_registry.json",
|
||||
ROOT / "references/oracle/skill_truth_overlay_2026_07_19.json",
|
||||
)
|
||||
kp = next(row for row in view["techniques"] if row["technique_id"] == "kp_system")
|
||||
assert kp["registry_status"] == "covered"
|
||||
assert kp["effective_status"] == "reference_only"
|
||||
assert kp["overlay_evidence"] == "references/oracle/technique_promotion_audit_kp_gochara_muhurta_2026_07_19.json"
|
||||
assert view["truth_source_order"][0].endswith("references/oracle/skill_truth_overlay_2026_07_19.json")
|
||||
assert view["truth_source_order"][1].endswith("references/technique_registry.json")
|
||||
|
||||
|
||||
def test_commercial_agent_must_not_promote_reference_only_or_blocked_techniques() -> None:
|
||||
source = (ROOT / "frontend" / "src" / "mastra" / "index.ts").read_text(encoding="utf-8")
|
||||
|
||||
assert "effective_skill_capability_view" in source
|
||||
assert "effective_status, not registry_status" in source
|
||||
assert "reference_only or blocked techniques" in source
|
||||
Reference in New Issue
Block a user