Files
Jyotisha/tests/test_external_source_use_tier_registry.py
2026-07-20 00:18:18 +08:00

40 lines
1.6 KiB
Python

import json
import subprocess
from pathlib import Path
ROOT = Path(__file__).resolve().parents[1]
ARTIFACT = ROOT / "references/oracle/external_source_use_tier_registry_2026_07_20.json"
INDEX = ROOT / "references/oracle/evidence_packet_index_2026_07_19.json"
def test_external_source_use_tier_registry_blocks_truth_upgrade():
data = json.loads(
subprocess.check_output(
["python3", "scripts/external_source_use_tier_registry.py", "--date", "2026-07-20"],
cwd=ROOT,
text=True,
)
)
assert data["scope"] == "external_source_use_tier_registry"
assert data["claim_status"] == "ready_contract"
assert data["production_tuning_allowed"] is False
assert data["truth_matrix_allowed"] is False
assert data["summary"]["oracle_truth_ready_count"] == 0
def test_external_source_use_tier_registry_has_required_tiers():
data = json.loads(ARTIFACT.read_text(encoding="utf-8"))
tiers = {row["allowed_use_tier"] for row in data["sources"]}
assert "permissive_adapter_or_formula_observation" in tiers
assert "manual_oracle_candidate_queue" in tiers
assert "case_reference_for_user_explanation" in tiers
assert all(row["can_be_oracle_truth"] is False for row in data["sources"])
def test_evidence_index_registers_external_source_use_tier_registry():
packets = {row["packet_id"]: row for row in json.loads(INDEX.read_text(encoding="utf-8"))["packets"]}
packet = packets["external_source_use_tier_registry_2026_07_20"]
assert packet["claim_status"] == "ready_contract"
assert packet["consumer_policy"] == "research_to_commercial_contract_only"