Add domain invocation governance contracts

This commit is contained in:
732642856
2026-07-02 15:40:34 +08:00
parent a3d2e0acf9
commit 0e3adb5a13
8 changed files with 515 additions and 0 deletions
+63
View File
@@ -3987,6 +3987,69 @@ class JyotishAPIHandler(BaseHTTPRequestHandler):
'unverified_claim_policy': 'downgrade_or_block',
},
},
'domain_invocation_layers': {
'dasha_timing': {
'status': 'fallback_prompt_pack_only',
'source_refs': [
'references/vimshottari_dasha_guide.md',
'references/pratyantar-calculation-guide.md',
'references/condition-dasha-complete.md',
],
},
'varga_strength': {
'status': 'fallback_prompt_pack_only',
'source_refs': [
'references/divisional-chart-deep-reading.md',
'references/shadbala-complete-methodology.md',
'references/ashtakavarga-complete-system.md',
],
},
'annual_special': {
'status': 'fallback_prompt_pack_only',
'source_refs': [
'references/tajika-yoga-complete-guide.md',
'references/jaimini-complete-system.md',
'references/kp-astrology-complete-system.md',
],
},
'modifier_obstacle': {
'status': 'fallback_prompt_pack_only',
'source_refs': [
'references/argala-complete-guide.md',
'references/badhaka-obstacle-planet-guide.md',
],
},
},
'output_template_contract': {
'status': 'fallback_prompt_pack_only',
'language': 'zh',
'required_sections': ['promise', 'activation', 'manifestation', 'label', 'confidence_boundary'],
'golden_test_status': 'required',
},
'mevg_collection_queue': {
'status': 'queued',
'trigger': 'fortune_question_strict_workflow',
'required_jobs': ['global_web_evidence', 'source_grading', 'conflict_arbitration'],
},
'real_case_calibration_layer': {
'status': 'queued',
'domain_buckets': ['career', 'finance', 'relationship', 'health', 'rectification', 'timing'],
'source_roots': ['references/real_case_studies', 'docs/benchmark'],
},
'technical_debt_contract': {
'status': 'tracked',
'narayana': {'status': 'partial', 'open_items': ['antardasha_pratyantar_oracle_parity']},
'tajika': {'status': 'partial', 'open_items': ['solar_return_precision', 'muntha_placeholder_audit']},
},
'remaining_priority1_batch_queue': {
'status': 'queued',
'next_batches': [
'real_case_studies_batch1',
'rishi_ai_mcp_batch1',
'vedic_astro_skills_batch1',
'references_batch2',
],
},
'vedastro_official_full_snapshot': vedastro_official_full_snapshot,
'vedastro_overview': vedastro_overview,
'guided_topics': guided_topics,
+42
View File
@@ -1433,6 +1433,12 @@ def _compact_strict_workflow_contract(strict):
'technique_audit_summary': strict.get('technique_audit_summary') or {},
'adjudication_stages': strict.get('adjudication_stages') or {},
'prediction_boundary_contract': strict.get('prediction_boundary_contract') or {},
'domain_invocation_contract': strict.get('domain_invocation_contract') or {},
'output_template_contract': strict.get('output_template_contract') or {},
'mevg_collection_queue': strict.get('mevg_collection_queue') or {},
'real_case_calibration_layer': strict.get('real_case_calibration_layer') or {},
'technical_debt_contract': strict.get('technical_debt_contract') or {},
'remaining_priority1_batch_queue': strict.get('remaining_priority1_batch_queue') or {},
'multi_reference_reading_summary': strict.get('multi_reference_reading_summary') or {},
'monthly_adjudication_summary': strict.get('monthly_adjudication_summary') or {},
'official_day_signal_summary': strict.get('official_day_signal_summary') or {},
@@ -1564,6 +1570,36 @@ def _build_ai_prompt_pack(report):
if isinstance(primary_strict_contract, dict)
else {}
)
primary_domain_invocation_layers = (
primary_strict_contract.get('domain_invocation_contract')
if isinstance(primary_strict_contract, dict)
else {}
)
primary_output_template_contract = (
primary_strict_contract.get('output_template_contract')
if isinstance(primary_strict_contract, dict)
else {}
)
primary_mevg_collection_queue = (
primary_strict_contract.get('mevg_collection_queue')
if isinstance(primary_strict_contract, dict)
else {}
)
primary_real_case_calibration_layer = (
primary_strict_contract.get('real_case_calibration_layer')
if isinstance(primary_strict_contract, dict)
else {}
)
primary_technical_debt_contract = (
primary_strict_contract.get('technical_debt_contract')
if isinstance(primary_strict_contract, dict)
else {}
)
primary_remaining_priority1_batch_queue = (
primary_strict_contract.get('remaining_priority1_batch_queue')
if isinstance(primary_strict_contract, dict)
else {}
)
primary_audit = (
primary_strict_contract.get('technique_audit_summary')
if isinstance(primary_strict_contract, dict)
@@ -1655,6 +1691,12 @@ def _build_ai_prompt_pack(report):
'missing_refs': interpretation_source_audit.get('missing_refs') or [],
},
'prediction_boundary_contract': primary_prediction_boundary_contract or {},
'domain_invocation_layers': primary_domain_invocation_layers or {},
'output_template_contract': primary_output_template_contract or {},
'mevg_collection_queue': primary_mevg_collection_queue or {},
'real_case_calibration_layer': primary_real_case_calibration_layer or {},
'technical_debt_contract': primary_technical_debt_contract or {},
'remaining_priority1_batch_queue': primary_remaining_priority1_batch_queue or {},
'strict_workflow_primary_route': strict_workflow_primary_route,
'strict_workflow_routes_available': list(strict_workflow_contracts.keys()),
'strict_workflow_contracts': strict_workflow_contracts,