Add oracle evidence validation intake
This commit is contained in:
@@ -387,6 +387,83 @@ def test_report_artifact_rejects_active_html(html: str) -> None:
|
||||
handler._compute_report_artifact({'format': 'html', 'html': html})
|
||||
|
||||
|
||||
def test_oracle_evidence_api_validates_uploaded_packets() -> None:
|
||||
handler = _handler()
|
||||
draft_packet = {
|
||||
'case_id': 'template_user_REDACTED_YEAR_moon_longitude_lahiri',
|
||||
'status': 'draft',
|
||||
'evidence_packet': {
|
||||
'status': 'draft',
|
||||
'metadata': {
|
||||
'tool_name': '',
|
||||
'tool_version_or_url': '',
|
||||
'capture_date': '',
|
||||
'source_artifact': '',
|
||||
'ayanamsa': '',
|
||||
'node_mode': '',
|
||||
'timezone': '',
|
||||
'operator_note': '',
|
||||
},
|
||||
},
|
||||
'target': {
|
||||
'moon_sidereal_longitude_deg': None,
|
||||
'vimshottari_start_date': None,
|
||||
'shadbala_components': {},
|
||||
},
|
||||
}
|
||||
|
||||
draft_result = handler._compute_oracle_evidence({'packet': draft_packet})
|
||||
|
||||
assert draft_result['success'] is True
|
||||
assert draft_result['endpoint'] == 'oracle_evidence'
|
||||
assert draft_result['report']['summary']['valid_packets'] == 0
|
||||
assert draft_result['report']['summary']['ready_for_calibration'] == 0
|
||||
assert draft_result['report']['summary']['production_tuning_allowed'] is False
|
||||
first = draft_result['report']['packets'][0]
|
||||
assert first['valid'] is False
|
||||
assert 'missing_metadata:tool_name' in first['problems']
|
||||
assert 'missing_external_artifact' in first['problems']
|
||||
assert 'status_not_external_verified:draft' in first['problems']
|
||||
|
||||
filled_packet = {
|
||||
**draft_packet,
|
||||
'status': 'external_verified',
|
||||
'evidence_packet': {
|
||||
'status': 'external_verified',
|
||||
'metadata': {
|
||||
'tool_name': 'Local Engine',
|
||||
'tool_version_or_url': 'this-repo',
|
||||
'capture_date': '2026-06-25',
|
||||
'source_artifact': 'scripts/jyotish_engine.py output',
|
||||
'ayanamsa': 'lahiri',
|
||||
'node_mode': 'mean',
|
||||
'timezone': 'UTC+08:00',
|
||||
'operator_note': 'Local run',
|
||||
},
|
||||
},
|
||||
'target': {
|
||||
'moon_sidereal_longitude_deg': 311.7897,
|
||||
'vimshottari_start_date': '1986-05-18',
|
||||
'shadbala_components': {
|
||||
'Sun': {
|
||||
'sthana': 100.0,
|
||||
'dig': 50.0,
|
||||
'kala': 100.0,
|
||||
'chesta': 40.0,
|
||||
'naisargika': 60.0,
|
||||
'drik': 30.0,
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
local_result = handler._compute_oracle_evidence({'packet': filled_packet})
|
||||
|
||||
local_first = local_result['report']['packets'][0]
|
||||
assert local_first['valid'] is False
|
||||
assert 'local_engine_artifact_rejected' in local_first['problems']
|
||||
|
||||
|
||||
def test_capability_audit_scans_registry_and_local_sources() -> None:
|
||||
handler = _handler()
|
||||
audit = handler._capability_audit()
|
||||
|
||||
@@ -582,6 +582,65 @@ def test_trust_center_and_ai_expose_dasha_shadbala_calibration_status() -> None:
|
||||
assert token in text
|
||||
|
||||
|
||||
def test_trust_center_exposes_oracle_evidence_intake_cards() -> None:
|
||||
main = read("main.js")
|
||||
style = read("style.css")
|
||||
api_bridge = read("api-bridge.js")
|
||||
api_server = (ROOT / "scripts" / "jyotish_api_server.py").read_text(encoding="utf-8")
|
||||
|
||||
for token in [
|
||||
"ORACLE_EVIDENCE_INTAKE_TASKS",
|
||||
"ORACLE_EVIDENCE_PACKET_REQUIRED_METADATA",
|
||||
"renderOracleEvidenceIntakePanel",
|
||||
"renderOracleEvidenceValidationResult",
|
||||
"downloadOracleEvidencePacket",
|
||||
"importOracleEvidencePacket",
|
||||
"validateOracleEvidencePacket",
|
||||
"Oracle Evidence Intake",
|
||||
"data-action=\"oracle-download-packet\"",
|
||||
"oracle-evidence-upload",
|
||||
"导入 Evidence Packet 判卷",
|
||||
"/api/oracle_evidence",
|
||||
"external_verified",
|
||||
"must_not_come_from_local_engine",
|
||||
"requires_external_artifact",
|
||||
"reject_global_shadbala_scaling",
|
||||
"status_not_external_verified",
|
||||
"local_engine_artifact_rejected",
|
||||
"template_user_REDACTED_YEAR_moon_longitude_lahiri",
|
||||
"template_steve_jobs_dasha_lahiri",
|
||||
"template_redacted_place_shadbala_raman",
|
||||
"template_extreme_latitude_kp",
|
||||
"template_historical_epoch_lahiri",
|
||||
"moon_sidereal_longitude_deg",
|
||||
"ascendant_longitude_deg",
|
||||
"sun_sidereal_longitude_deg",
|
||||
"vimshottari_start_date",
|
||||
"shadbala_components",
|
||||
"tool_name",
|
||||
"tool_version_or_url",
|
||||
"capture_date",
|
||||
"source_artifact",
|
||||
"operator_note",
|
||||
]:
|
||||
assert token in main
|
||||
|
||||
assert "validateOracleEvidence" in api_bridge
|
||||
assert "postJson('/api/oracle_evidence'" in api_bridge
|
||||
assert "'/api/oracle_evidence'" in api_server
|
||||
assert "_compute_oracle_evidence" in api_server
|
||||
|
||||
for token in [
|
||||
".oracle-evidence-intake-panel",
|
||||
".oracle-evidence-intake-grid",
|
||||
".oracle-evidence-card",
|
||||
".oracle-evidence-fields",
|
||||
".oracle-evidence-validation-result",
|
||||
".oracle-evidence-card button",
|
||||
]:
|
||||
assert token in style
|
||||
|
||||
|
||||
def test_trust_center_exposes_real_case_revalidation_to_users() -> None:
|
||||
main = read("main.js")
|
||||
style = read("style.css")
|
||||
|
||||
Reference in New Issue
Block a user