{
  "activation_ready": false,
  "provider_calls_allowed": false,
  "live_publish_allowed": false,
  "check_count": 12,
  "passed_count": 5,
  "blocked_count": 7,
  "owner_counts": {
    "Codex/provider review": 3,
    "Ryan/Sacboyz decision": 4
  },
  "clearance_type_counts": {
    "provider_review": 3,
    "human_decision": 4
  },
  "codex_clearable_count": 0,
  "provider_review_count": 3,
  "human_decision_count": 4,
  "critical_path": [
    "provider_review_clear",
    "providers_approved",
    "quota_available",
    "season_window_open",
    "preflight_clear",
    "blocker_queue_clear",
    "go_review_required"
  ],
  "checks": [
    {
      "key": "release_ready",
      "label": "Fixture release bundle is ready",
      "passed": true,
      "owner": "Codex",
      "clearance_type": "codex_offline",
      "evidence": "ready=True; missing=0",
      "next_action": "Keep release bundle validation green before any activation review."
    },
    {
      "key": "dry_run_no_call",
      "label": "Provider dry run blocks all live calls",
      "passed": true,
      "owner": "Codex",
      "clearance_type": "codex_offline",
      "evidence": "all_calls_blocked=True; would_call_count=0",
      "next_action": "Keep live_no_call as the default provider dry-run mode."
    },
    {
      "key": "switches_default_off",
      "label": "Live switches are declared and default-off",
      "passed": true,
      "owner": "Codex",
      "clearance_type": "codex_offline",
      "evidence": "declared=True; default_false=True; provider_calls_allowed=False; live_publish_allowed=False",
      "next_action": "Do not change runtime switches until human activation approval."
    },
    {
      "key": "environment_ready",
      "label": "Live environment contract is ready and secret-safe",
      "passed": true,
      "owner": "Codex",
      "clearance_type": "codex_offline",
      "evidence": "ready_for_review=True; secret_values_captured=False; provider_calls_enabled=False",
      "next_action": "Confirm required secrets in GitHub only after provider approval."
    },
    {
      "key": "provider_samples_reviewed",
      "label": "Provider samples are reviewed and clean",
      "passed": true,
      "owner": "Codex/provider review",
      "clearance_type": "provider_review",
      "evidence": "missing=0; invalid=0; redaction_findings=0",
      "next_action": "Finish sanitized sample review before live adapter activation."
    },
    {
      "key": "provider_review_clear",
      "label": "Live provider review is cleared",
      "passed": false,
      "owner": "Codex/provider review",
      "clearance_type": "provider_review",
      "evidence": "decision=PROVIDER_REVIEW_HOLD; review_items=1; source_health=SOURCE_HEALTH_REVIEW; all_calls_blocked=True",
      "next_action": "Clear provider-review hold after source-health, sample, dry-run, quota, and approval evidence is reviewed."
    },
    {
      "key": "providers_approved",
      "label": "Live provider calls are explicitly approved",
      "passed": false,
      "owner": "Ryan/Sacboyz decision",
      "clearance_type": "human_decision",
      "evidence": "approval_state=adapter_planning_only; live_approval_required=7",
      "next_action": "Approve V1 provider choices for live calls, not just adapter planning."
    },
    {
      "key": "quota_available",
      "label": "Odds API quota is confirmed available",
      "passed": false,
      "owner": "Ryan/Sacboyz decision",
      "clearance_type": "human_decision",
      "evidence": "quota_state={'odds': 'unknown'}",
      "next_action": "Confirm quota outside the no-call build before enabling calls."
    },
    {
      "key": "season_window_open",
      "label": "Season/window allows live picks",
      "passed": false,
      "owner": "Ryan/Sacboyz decision",
      "clearance_type": "human_decision",
      "evidence": "season_phase=OFFSEASON; live_picks_available=False",
      "next_action": "Wait for an eligible NFL window before live publishing."
    },
    {
      "key": "preflight_clear",
      "label": "Live preflight gates are clear",
      "passed": false,
      "owner": "Codex/provider review",
      "clearance_type": "provider_review",
      "evidence": "live_enablement_ready=False; failed=5",
      "next_action": "Clear failed preflight gates and re-run the no-call quality gate."
    },
    {
      "key": "blocker_queue_clear",
      "label": "Live blocker queue is empty",
      "passed": false,
      "owner": "Codex/provider review",
      "clearance_type": "provider_review",
      "evidence": "queue_count=5; p0=0; p1=5",
      "next_action": "Clear ranked blocker queue items before activation review."
    },
    {
      "key": "go_review_required",
      "label": "Go/no-go has reached human review state",
      "passed": false,
      "owner": "Ryan/Sacboyz decision",
      "clearance_type": "human_decision",
      "evidence": "decision=NO_GO_LIVE_BLOCKED; human_approval_required=False",
      "next_action": "Human review must approve any runtime mode change after all checks pass."
    }
  ],
  "blocked_checks": [
    {
      "key": "provider_review_clear",
      "label": "Live provider review is cleared",
      "passed": false,
      "owner": "Codex/provider review",
      "clearance_type": "provider_review",
      "evidence": "decision=PROVIDER_REVIEW_HOLD; review_items=1; source_health=SOURCE_HEALTH_REVIEW; all_calls_blocked=True",
      "next_action": "Clear provider-review hold after source-health, sample, dry-run, quota, and approval evidence is reviewed."
    },
    {
      "key": "providers_approved",
      "label": "Live provider calls are explicitly approved",
      "passed": false,
      "owner": "Ryan/Sacboyz decision",
      "clearance_type": "human_decision",
      "evidence": "approval_state=adapter_planning_only; live_approval_required=7",
      "next_action": "Approve V1 provider choices for live calls, not just adapter planning."
    },
    {
      "key": "quota_available",
      "label": "Odds API quota is confirmed available",
      "passed": false,
      "owner": "Ryan/Sacboyz decision",
      "clearance_type": "human_decision",
      "evidence": "quota_state={'odds': 'unknown'}",
      "next_action": "Confirm quota outside the no-call build before enabling calls."
    },
    {
      "key": "season_window_open",
      "label": "Season/window allows live picks",
      "passed": false,
      "owner": "Ryan/Sacboyz decision",
      "clearance_type": "human_decision",
      "evidence": "season_phase=OFFSEASON; live_picks_available=False",
      "next_action": "Wait for an eligible NFL window before live publishing."
    },
    {
      "key": "preflight_clear",
      "label": "Live preflight gates are clear",
      "passed": false,
      "owner": "Codex/provider review",
      "clearance_type": "provider_review",
      "evidence": "live_enablement_ready=False; failed=5",
      "next_action": "Clear failed preflight gates and re-run the no-call quality gate."
    },
    {
      "key": "blocker_queue_clear",
      "label": "Live blocker queue is empty",
      "passed": false,
      "owner": "Codex/provider review",
      "clearance_type": "provider_review",
      "evidence": "queue_count=5; p0=0; p1=5",
      "next_action": "Clear ranked blocker queue items before activation review."
    },
    {
      "key": "go_review_required",
      "label": "Go/no-go has reached human review state",
      "passed": false,
      "owner": "Ryan/Sacboyz decision",
      "clearance_type": "human_decision",
      "evidence": "decision=NO_GO_LIVE_BLOCKED; human_approval_required=False",
      "next_action": "Human review must approve any runtime mode change after all checks pass."
    }
  ],
  "next_action": "Stay in live_no_call. Activation requires every check to pass, then an explicit human approval before provider calls or live publishing are enabled."
}