Add domain invocation governance contracts
This commit is contained in:
@@ -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,
|
||||
|
||||
@@ -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,
|
||||
|
||||
Reference in New Issue
Block a user