enforce parity visibility in high rigor workflow

This commit is contained in:
732642856
2026-07-14 20:29:11 +08:00
parent bd6a9e84d6
commit 15f3404b97
3 changed files with 37 additions and 0 deletions
+1
View File
@@ -93,6 +93,7 @@ For large architecture or release work, also read:
| ERR-060 | Legacy Sphuta functions combined approximate Gulika with interpretive signals, while the exact formula could not be inspected in the production question context. | mitigated 2026-07-14 | `prashna_sphuta.py` exposes formula-only Trisphuta/Catusphuta/Pancasphuta from the partial Gulika evidence. It is supporting-only; Kunda, life-sensitive Sphutas and Prashna verdicts remain blocked pending external numeric parity. |
| ERR-061 | Full-reading passed longitude-only data to the Tajika layer, permanently blocking its speed-dependent seven-planet interaction evidence. | mitigated 2026-07-14 | Pass actual Swiss longitude/speed pairs. The output may expose only partial Ithasala/Easarapha candidates; named chains and event verdicts stay blocked pending golden cases. |
| ERR-062 | A release gate could validate a parity manifest's shape without requiring all external engines to actually match, allowing “contract valid” to be mistaken for “oracle verified.” | mitigated 2026-07-14 | `three_engine_parity_replay_validator.py --require-pass` fails unless parity status is pass; `run_quality_gate.py --require-external-parity` exposes this as an explicit high-standard release requirement. |
| ERR-063 | High-rigor API output could omit the three-engine parity state, especially on plan-only responses, allowing downstream UI or MCP callers to overstate verification. | mitigated 2026-07-14 | Every high-rigor execution and plan response carries `high_rigor_external_parity`; `require_external_parity=true` sets `success=false` unless parity is pass. |
## Fragment Sweep Command Set
+27
View File
@@ -184,6 +184,13 @@ def execute_consultation_workflow(
question = body.get('question') or ''
entry_mode = body.get('entry_mode', 'direct_chart')
high_rigor = bool(body.get('return_high_rigor_shape'))
try:
from scripts.three_engine_parity_replay_validator import validate_manifest
except ModuleNotFoundError: # pragma: no cover - direct script execution
from three_engine_parity_replay_validator import validate_manifest
external_parity_gate = validate_manifest(
Path(__file__).resolve().parents[1] / 'references/oracle/three_engine_parity_replay_manifest.json'
)
route_packet = _UNIFIED_CONSULTATION_ORCHESTRATOR.resolve_route(question, themes)
western_evidence_packet = _western_evidence_packet_from_body(body, route_packet)
unified_contract = _UNIFIED_CONSULTATION_ORCHESTRATOR.shared_contract(
@@ -235,6 +242,15 @@ def execute_consultation_workflow(
result['western_evidence_packet'] = western_evidence_packet
if body.get('return_high_rigor_shape'):
result['endpoint'] = 'high_rigor_workflow'
result['high_rigor_external_parity'] = {
'status': 'pass' if external_parity_gate.get('status') == 'pass' else 'blocked',
'parity_status': external_parity_gate.get('status'),
'reason': external_parity_gate.get('blocked_reason') or 'three_engine_parity_not_passed',
'require_external_parity': bool(body.get('require_external_parity')),
}
if body.get('require_external_parity') and external_parity_gate.get('status') != 'pass':
result['success'] = False
result['blocked_reason'] = 'external_parity_not_passed'
return result
chart = dict(chart_override) if isinstance(chart_override, dict) else {}
@@ -386,6 +402,7 @@ def execute_consultation_workflow(
'audited_remedies': audited_remedies,
'vedastro_official': vedastro_official,
'runtime_truth': runtime_truth,
'external_parity_gate': external_parity_gate,
'interpretation_source_runtime_coverage': interpretation_source_runtime_coverage,
'machine_evidence_packet': machine_evidence_packet,
'western_evidence_packet': western_evidence_packet or {},
@@ -398,6 +415,16 @@ def execute_consultation_workflow(
'domain-relevant routes execute according to the configured sample/network limits.'
),
}
if high_rigor:
result['high_rigor_external_parity'] = {
'status': 'pass' if external_parity_gate.get('status') == 'pass' else 'blocked',
'parity_status': external_parity_gate.get('status'),
'reason': external_parity_gate.get('blocked_reason') or 'three_engine_parity_not_passed',
'require_external_parity': bool(body.get('require_external_parity')),
}
if body.get('require_external_parity') and external_parity_gate.get('status') != 'pass':
result['success'] = False
result['blocked_reason'] = 'external_parity_not_passed'
if body.get('return_high_rigor_shape'):
result['endpoint'] = 'high_rigor_workflow'
return result
@@ -0,0 +1,9 @@
from pathlib import Path
def test_high_rigor_workflow_exposes_external_parity_for_plan_and_execution() -> None:
source = (Path(__file__).resolve().parents[1] / "scripts" / "jyotish_api_server.py").read_text(encoding="utf-8")
assert source.count("'high_rigor_external_parity'") >= 2
assert source.count("'external_parity_not_passed'") >= 2
assert "'external_parity_gate': external_parity_gate" in source