{
  "python_min": "3.11",
  "runtime": "python_stdlib_only",
  "external_network_forbidden": true,
  "external_service_forbidden": true,
  "fixture_scope": "DISPOSABLE_IN_MEMORY_ONLY",
  "runtime_claim_boundary": "BOUNDED_LOCAL_FIXTURE_ONLY",
  "postgresql_runtime_claimed": false,
  "runner_contract_version": "DAT010-RUNNER-CONTRACT-v2",
  "expected_case_ids": [
    "baseline_append_correction",
    "mutate_original_history",
    "duplicate_posting_identity",
    "missing_correction_link",
    "evidence_field_removed"
  ],
  "required_prediction_ids": [
    "baseline_append_correction",
    "mutate_original_history",
    "duplicate_posting_identity",
    "missing_correction_link",
    "evidence_field_removed"
  ],
  "required_decision_fields": [
    "correction_rule",
    "projection_order_rule",
    "posting_identity_rule",
    "bounded_decision",
    "residual_domain_rule",
    "transfer_decision"
  ],
  "runtime_input_files_required": [
    "fixture/baseline-ledger.json",
    "fixture/probe-cases.json",
    "fixture/golden-policy.json",
    "src/ledger_fixture.py",
    "requirements.json",
    "toolchain-policy.json",
    "src/static_preflight.py",
    "submission/decision.json"
  ],
  "runtime_input_hashes_required": [
    "fixture_baseline-ledger_json_sha256",
    "fixture_probe-cases_json_sha256",
    "fixture_golden-policy_json_sha256",
    "src_ledger_fixture_py_sha256",
    "requirements_json_sha256",
    "toolchain-policy_json_sha256",
    "src_static_preflight_py_sha256",
    "submission_decision_json_sha256"
  ],
  "evidence_scope": "BOUNDED_LOCAL_FIXTURE_ONLY"
}
