{
  "generated_at_utc": "2026-07-02T22:28:43.360530Z",
  "book": "betmgm",
  "target": "github_actions",
  "definition": "PASS means each active sport has a GitHub Actions manifest row with source_mode=github_actions_direct_betmgm, HTTP 200, parseable JSON, and raw_bytes>16.",
  "source_runs": {
    "all_sports_context": "28625404562",
    "baseball_direct": "28625175172",
    "basketball_direct": "28625513576",
    "lacrosse_direct": "28625537140"
  },
  "active_sports": [
    "football",
    "basketball",
    "hockey",
    "baseball",
    "nascar",
    "mma",
    "lacrosse"
  ],
  "summary": {
    "active_sports_total": 7,
    "direct_sports_total": 7,
    "all_active_sports_direct": true,
    "total_raw_bytes_selected": 16675757
  },
  "direct_sports": [
    "baseball",
    "basketball",
    "football",
    "hockey",
    "lacrosse",
    "mma",
    "nascar"
  ],
  "selected_results": [
    {
      "sport": "football",
      "source_mode": "github_actions_direct_betmgm",
      "source_url": "https://www.az.betmgm.com/cds-api/bettingoffer/fixtures?sportIds=11&take=500&offerMapping=Filtered&fixtureTypes=Standard&state=Latest&x-bwin-accessid=REDACTED&lang=en-us&country=US",
      "http_status": 200,
      "http_ok": true,
      "transport_ok": true,
      "content_type": "application/json; charset=utf-8",
      "raw_bytes": 3892097,
      "raw_sha256": "0e1baf0c0558708db677e914527c68a7dcb501419919414306f55fc48cca999d",
      "json_parse_ok": true,
      "shape": {
        "json_parse_ok": true,
        "counts": {
          "fixtures": 101,
          "games": 906,
          "option_markets": 0,
          "game_results": 4210,
          "option_results": 0
        }
      },
      "started_at_utc": "2026-07-02T22:24:54.426256Z",
      "ended_at_utc": "2026-07-02T22:25:00.721753Z",
      "latency_ms": 6296,
      "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222453_betmgm__ON_DEMAND_FREEFORM_RUN_28625404562/raw/betmgm/football/betmgm-football-20260702_222500.upstream.raw.json",
      "egress_proxy_configured": false,
      "egress_proxy_redacted": "",
      "request_profile": "full_browser_no_region",
      "run_label": "all_sports_context",
      "run_id": "28625404562",
      "run_html_url": "https://github.com/misterplusev/abet-scraper-scripts/actions/runs/28625404562",
      "captured": true
    },
    {
      "sport": "basketball",
      "source_mode": "github_actions_direct_betmgm",
      "source_url": "https://www.az.betmgm.com/cds-api/bettingoffer/fixtures?sportIds=7&take=500&offerMapping=Filtered&fixtureTypes=Standard&state=Latest&x-bwin-accessid=REDACTED&lang=en-us&country=US",
      "http_status": 200,
      "http_ok": true,
      "transport_ok": true,
      "content_type": "application/json; charset=utf-8",
      "raw_bytes": 3930477,
      "raw_sha256": "11924f534b191b02af6a0a215d630bdb4c2e45433194688f110a82dbd11ed472",
      "json_parse_ok": true,
      "shape": {
        "json_parse_ok": true,
        "counts": {
          "fixtures": 39,
          "games": 2016,
          "option_markets": 0,
          "game_results": 7007,
          "option_results": 0
        }
      },
      "started_at_utc": "2026-07-02T22:27:17.360662Z",
      "ended_at_utc": "2026-07-02T22:27:19.071453Z",
      "latency_ms": 1711,
      "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222716_betmgm__ON_DEMAND_FREEFORM_RUN_28625513576/raw/betmgm/basketball/betmgm-basketball-20260702_222719.upstream.raw.json",
      "egress_proxy_configured": false,
      "egress_proxy_redacted": "",
      "request_profile": "minimal_old_no_region",
      "run_label": "basketball_direct",
      "run_id": "28625513576",
      "run_html_url": "https://github.com/misterplusev/abet-scraper-scripts/actions/runs/28625513576",
      "captured": true
    },
    {
      "sport": "hockey",
      "source_mode": "github_actions_direct_betmgm",
      "source_url": "https://www.az.betmgm.com/cds-api/bettingoffer/fixtures?sportIds=12&take=500&offerMapping=Filtered&fixtureTypes=Standard&state=Latest&x-bwin-accessid=REDACTED&lang=en-us&country=US",
      "http_status": 200,
      "http_ok": true,
      "transport_ok": true,
      "content_type": "application/json; charset=utf-8",
      "raw_bytes": 239020,
      "raw_sha256": "edbe2e63325970c0a38acb336befadf8584e913bc1c870fe0f16611b07b22d51",
      "json_parse_ok": true,
      "shape": {
        "json_parse_ok": true,
        "counts": {
          "fixtures": 13,
          "games": 48,
          "option_markets": 0,
          "game_results": 1108,
          "option_results": 0
        }
      },
      "started_at_utc": "2026-07-02T22:25:14.581177Z",
      "ended_at_utc": "2026-07-02T22:25:28.758127Z",
      "latency_ms": 14177,
      "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222453_betmgm__ON_DEMAND_FREEFORM_RUN_28625404562/raw/betmgm/hockey/betmgm-hockey-20260702_222528.upstream.raw.json",
      "egress_proxy_configured": false,
      "egress_proxy_redacted": "",
      "request_profile": "minimal_old_no_region",
      "run_label": "all_sports_context",
      "run_id": "28625404562",
      "run_html_url": "https://github.com/misterplusev/abet-scraper-scripts/actions/runs/28625404562",
      "captured": true
    },
    {
      "sport": "baseball",
      "source_mode": "github_actions_direct_betmgm",
      "source_url": "https://www.az.betmgm.com/cds-api/bettingoffer/fixtures?sportIds=23&take=500&offerMapping=Filtered&fixtureTypes=Standard&state=Latest&x-bwin-accessid=REDACTED&lang=en-us&country=US",
      "http_status": 200,
      "http_ok": true,
      "transport_ok": true,
      "content_type": "application/json; charset=utf-8",
      "raw_bytes": 8340125,
      "raw_sha256": "ab5ba444e8d064f6b7aa9bbb47aed08d9f5a446fd00bec433bb91a9b1e07d348",
      "json_parse_ok": true,
      "shape": {
        "json_parse_ok": true,
        "counts": {
          "fixtures": 30,
          "games": 118,
          "option_markets": 4566,
          "game_results": 1209,
          "option_results": 7155
        }
      },
      "started_at_utc": "2026-07-02T22:19:39.263316Z",
      "ended_at_utc": "2026-07-02T22:19:43.038296Z",
      "latency_ms": 3775,
      "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_221938_betmgm__ON_DEMAND_FREEFORM_RUN_28625175172/raw/betmgm/baseball/betmgm-baseball-20260702_221943.upstream.raw.json",
      "egress_proxy_configured": false,
      "egress_proxy_redacted": "",
      "request_profile": "full_browser_no_region",
      "run_label": "baseball_direct",
      "run_id": "28625175172",
      "run_html_url": "https://github.com/misterplusev/abet-scraper-scripts/actions/runs/28625175172",
      "captured": true
    },
    {
      "sport": "nascar",
      "source_mode": "github_actions_direct_betmgm",
      "source_url": "https://www.az.betmgm.com/cds-api/bettingoffer/fixtures?sportIds=39&regionIds=9&take=500&offerMapping=Filtered&fixtureTypes=Standard&state=Latest&x-bwin-accessid=REDACTED&lang=en-us&country=US",
      "http_status": 200,
      "http_ok": true,
      "transport_ok": true,
      "content_type": "application/json; charset=utf-8",
      "raw_bytes": 77475,
      "raw_sha256": "3e8a90d5a8357ee99e86eba018286c87e97c366ab061216d9adf0f68b6890d03",
      "json_parse_ok": true,
      "shape": {
        "json_parse_ok": true,
        "counts": {
          "fixtures": 6,
          "games": 22,
          "option_markets": 0,
          "game_results": 315,
          "option_results": 0
        }
      },
      "started_at_utc": "2026-07-02T22:25:47.411612Z",
      "ended_at_utc": "2026-07-02T22:25:47.800314Z",
      "latency_ms": 389,
      "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222453_betmgm__ON_DEMAND_FREEFORM_RUN_28625404562/raw/betmgm/nascar/betmgm-nascar-20260702_222547.upstream.raw.json",
      "egress_proxy_configured": false,
      "egress_proxy_redacted": "",
      "request_profile": "full_browser_baseline",
      "run_label": "all_sports_context",
      "run_id": "28625404562",
      "run_html_url": "https://github.com/misterplusev/abet-scraper-scripts/actions/runs/28625404562",
      "captured": true
    },
    {
      "sport": "mma",
      "source_mode": "github_actions_direct_betmgm",
      "source_url": "https://www.az.betmgm.com/cds-api/bettingoffer/fixtures?sportIds=45&regionIds=9&take=500&offerMapping=Filtered&fixtureTypes=Standard&state=Latest&x-bwin-accessid=REDACTED&lang=en-us&country=US",
      "http_status": 200,
      "http_ok": true,
      "transport_ok": true,
      "content_type": "application/json; charset=utf-8",
      "raw_bytes": 107629,
      "raw_sha256": "3486f3e5c4f882fa9ba59234c5240ed15bc0c42c09eb4a6fb610eee47ab2c79b",
      "json_parse_ok": true,
      "shape": {
        "json_parse_ok": true,
        "counts": {
          "fixtures": 25,
          "games": 54,
          "option_markets": 0,
          "game_results": 194,
          "option_results": 0
        }
      },
      "started_at_utc": "2026-07-02T22:25:47.801878Z",
      "ended_at_utc": "2026-07-02T22:25:48.044964Z",
      "latency_ms": 243,
      "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222453_betmgm__ON_DEMAND_FREEFORM_RUN_28625404562/raw/betmgm/mma/betmgm-mma-20260702_222548.upstream.raw.json",
      "egress_proxy_configured": false,
      "egress_proxy_redacted": "",
      "request_profile": "full_browser_baseline",
      "run_label": "all_sports_context",
      "run_id": "28625404562",
      "run_html_url": "https://github.com/misterplusev/abet-scraper-scripts/actions/runs/28625404562",
      "captured": true
    },
    {
      "sport": "lacrosse",
      "source_mode": "github_actions_direct_betmgm",
      "source_url": "https://www.az.betmgm.com/cds-api/bettingoffer/fixtures?sportIds=88&take=500&offerMapping=Filtered&fixtureTypes=Standard&state=Latest&x-bwin-accessid=REDACTED&lang=en-us&country=US",
      "http_status": 200,
      "http_ok": true,
      "transport_ok": true,
      "content_type": "application/json; charset=utf-8",
      "raw_bytes": 88934,
      "raw_sha256": "470e70038176d8e722b23c02fb95ec0c1cd26f903f9a0c0ee8bb91addd3521be",
      "json_parse_ok": true,
      "shape": {
        "json_parse_ok": true,
        "counts": {
          "fixtures": 6,
          "games": 21,
          "option_markets": 0,
          "game_results": 125,
          "option_results": 0
        }
      },
      "started_at_utc": "2026-07-02T22:27:50.275965Z",
      "ended_at_utc": "2026-07-02T22:28:04.377980Z",
      "latency_ms": 14102,
      "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222749_betmgm__ON_DEMAND_FREEFORM_RUN_28625537140/raw/betmgm/lacrosse/betmgm-lacrosse-20260702_222804.upstream.raw.json",
      "egress_proxy_configured": false,
      "egress_proxy_redacted": "",
      "request_profile": "minimal_old_no_region",
      "run_label": "lacrosse_direct",
      "run_id": "28625537140",
      "run_html_url": "https://github.com/misterplusev/abet-scraper-scripts/actions/runs/28625537140",
      "captured": true
    }
  ],
  "manifests": {
    "all_sports_context": {
      "ok": true,
      "source": "github_actions_run_logs",
      "run_id": "28625404562",
      "run_status": "completed",
      "run_conclusion": "success",
      "run_html_url": "https://github.com/misterplusev/abet-scraper-scripts/actions/runs/28625404562",
      "book": "betmgm",
      "scraper_executed": true,
      "captured": true,
      "manifest": {
        "book": "betmgm",
        "display": "BetMGM",
        "runner": "20260624_085500_BETMGM_CURL_CFFI_GITHUB_ACTIONS_PROBE_RUNNER_v1_0_0.py",
        "version": "20260624_085500_v1_0_0_betmgm_curl_cffi_github_probe",
        "manifest_status": "captured",
        "capture_id": "20260702_222453_betmgm__ON_DEMAND_FREEFORM_RUN_28625404562",
        "captured": true,
        "file_count": 7,
        "total_bytes": 13445033,
        "started_at_utc": "2026-07-02T22:24:54.426256Z",
        "ended_at_utc": "2026-07-02T22:26:06.685768Z",
        "sports_requested": [
          "football",
          "basketball",
          "hockey",
          "baseball",
          "nascar",
          "mma",
          "lacrosse"
        ],
        "egress_proxy_configured": false,
        "egress_proxy_env_var": "BETMGM_GITHUB_EGRESS_PROXY",
        "egress_proxy_redacted": "",
        "files": [
          {
            "sport": "football",
            "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222453_betmgm__ON_DEMAND_FREEFORM_RUN_28625404562/raw/betmgm/football/betmgm-football-20260702_222500.upstream.raw.json",
            "raw_bytes": 3892097,
            "raw_sha256": "0e1baf0c0558708db677e914527c68a7dcb501419919414306f55fc48cca999d",
            "http_status": 200,
            "shape": {
              "json_parse_ok": true,
              "counts": {
                "fixtures": 101,
                "games": 906,
                "option_markets": 0,
                "game_results": 4210,
                "option_results": 0
              }
            }
          },
          {
            "sport": "basketball",
            "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222453_betmgm__ON_DEMAND_FREEFORM_RUN_28625404562/raw/betmgm/basketball/betmgm-basketball-20260702_222514.upstream.raw.json",
            "raw_bytes": 826183,
            "raw_sha256": "8747dfd86b756dad7dc2f1f332d432d0745ffd5ba1144f2377b26f6f05b9f66e",
            "http_status": 200,
            "shape": {
              "json_parse_ok": true,
              "counts": {
                "fixtures": 14,
                "games": 367,
                "option_markets": 0,
                "game_results": 2265,
                "option_results": 0
              }
            }
          },
          {
            "sport": "hockey",
            "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222453_betmgm__ON_DEMAND_FREEFORM_RUN_28625404562/raw/betmgm/hockey/betmgm-hockey-20260702_222528.upstream.raw.json",
            "raw_bytes": 239020,
            "raw_sha256": "edbe2e63325970c0a38acb336befadf8584e913bc1c870fe0f16611b07b22d51",
            "http_status": 200,
            "shape": {
              "json_parse_ok": true,
              "counts": {
                "fixtures": 13,
                "games": 48,
                "option_markets": 0,
                "game_results": 1108,
                "option_results": 0
              }
            }
          },
          {
            "sport": "baseball",
            "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222453_betmgm__ON_DEMAND_FREEFORM_RUN_28625404562/raw/betmgm/baseball/betmgm-baseball-20260702_222547.upstream.raw.json",
            "raw_bytes": 8213695,
            "raw_sha256": "34fa07026057716cb909199e9605daec85bea4ab6f6456800d67dec6e60d9024",
            "http_status": 200,
            "shape": {
              "json_parse_ok": true,
              "counts": {
                "fixtures": 10,
                "games": 58,
                "option_markets": 4566,
                "game_results": 1089,
                "option_results": 7155
              }
            }
          },
          {
            "sport": "nascar",
            "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222453_betmgm__ON_DEMAND_FREEFORM_RUN_28625404562/raw/betmgm/nascar/betmgm-nascar-20260702_222547.upstream.raw.json",
            "raw_bytes": 77475,
            "raw_sha256": "3e8a90d5a8357ee99e86eba018286c87e97c366ab061216d9adf0f68b6890d03",
            "http_status": 200,
            "shape": {
              "json_parse_ok": true,
              "counts": {
                "fixtures": 6,
                "games": 22,
                "option_markets": 0,
                "game_results": 315,
                "option_results": 0
              }
            }
          },
          {
            "sport": "mma",
            "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222453_betmgm__ON_DEMAND_FREEFORM_RUN_28625404562/raw/betmgm/mma/betmgm-mma-20260702_222548.upstream.raw.json",
            "raw_bytes": 107629,
            "raw_sha256": "3486f3e5c4f882fa9ba59234c5240ed15bc0c42c09eb4a6fb610eee47ab2c79b",
            "http_status": 200,
            "shape": {
              "json_parse_ok": true,
              "counts": {
                "fixtures": 25,
                "games": 54,
                "option_markets": 0,
                "game_results": 194,
                "option_results": 0
              }
            }
          },
          {
            "sport": "lacrosse",
            "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222453_betmgm__ON_DEMAND_FREEFORM_RUN_28625404562/raw/betmgm/lacrosse/betmgm-lacrosse-20260702_222606.upstream.raw.json",
            "raw_bytes": 88934,
            "raw_sha256": "470e70038176d8e722b23c02fb95ec0c1cd26f903f9a0c0ee8bb91addd3521be",
            "http_status": 200,
            "shape": {
              "json_parse_ok": true,
              "counts": {
                "fixtures": 6,
                "games": 21,
                "option_markets": 0,
                "game_results": 125,
                "option_results": 0
              }
            }
          }
        ],
        "results": [
          {
            "sport": "football",
            "source_mode": "github_actions_direct_betmgm",
            "source_url": "https://www.az.betmgm.com/cds-api/bettingoffer/fixtures?sportIds=11&take=500&offerMapping=Filtered&fixtureTypes=Standard&state=Latest&x-bwin-accessid=REDACTED&lang=en-us&country=US",
            "http_status": 200,
            "http_ok": true,
            "transport_ok": true,
            "content_type": "application/json; charset=utf-8",
            "raw_bytes": 3892097,
            "raw_sha256": "0e1baf0c0558708db677e914527c68a7dcb501419919414306f55fc48cca999d",
            "json_parse_ok": true,
            "shape": {
              "json_parse_ok": true,
              "counts": {
                "fixtures": 101,
                "games": 906,
                "option_markets": 0,
                "game_results": 4210,
                "option_results": 0
              }
            },
            "started_at_utc": "2026-07-02T22:24:54.426256Z",
            "ended_at_utc": "2026-07-02T22:25:00.721753Z",
            "latency_ms": 6296,
            "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222453_betmgm__ON_DEMAND_FREEFORM_RUN_28625404562/raw/betmgm/football/betmgm-football-20260702_222500.upstream.raw.json",
            "egress_proxy_configured": false,
            "egress_proxy_redacted": "",
            "request_profile": "full_browser_no_region"
          },
          {
            "sport": "basketball",
            "source_mode": "github_actions_cf_raw_fallback_after_direct_failure",
            "source_url": "https://abet-betmgm-cloudflare-proof.abetco.workers.dev/raw/basketball",
            "http_status": 200,
            "http_ok": true,
            "transport_ok": true,
            "content_type": "application/json; charset=utf-8",
            "raw_bytes": 826183,
            "raw_sha256": "8747dfd86b756dad7dc2f1f332d432d0745ffd5ba1144f2377b26f6f05b9f66e",
            "json_parse_ok": true,
            "shape": {
              "json_parse_ok": true,
              "counts": {
                "fixtures": 14,
                "games": 367,
                "option_markets": 0,
                "game_results": 2265,
                "option_results": 0
              }
            },
            "started_at_utc": "2026-07-02T22:25:00.736125Z",
            "ended_at_utc": "2026-07-02T22:25:14.578155Z",
            "latency_ms": 13842,
            "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222453_betmgm__ON_DEMAND_FREEFORM_RUN_28625404562/raw/betmgm/basketball/betmgm-basketball-20260702_222514.upstream.raw.json",
            "egress_proxy_configured": false,
            "egress_proxy_redacted": "",
            "direct_failure_before_fallback": {
              "source_mode": "github_actions_direct_betmgm",
              "request_profile": "minimal_old_all_mapping",
              "attempt": 3,
              "http_status": 403,
              "http_ok": false,
              "transport_ok": true,
              "content_type": "text/html; charset=UTF-8",
              "raw_bytes": 9885,
              "raw_sha256": "2ca21b25a71f15d6f470877a85ddac262ffdfbe26921c673980c0669866dac8d",
              "json_parse_ok": false,
              "parse_error": "JSONDecodeError('Expecting value: line 1 column 1 (char 0)')",
              "body_preview": "<!DOCTYPE html>\r\n<html lang=\"en\">\r\n<head>\r\n    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\r\n<meta content=\"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=3.0, user-scalable=yes\" name=\"viewport\">\r\n<meta name=\"robots\" content=\"noindex,nofollow\">\r\n  \r\n<title>betmgm.com</title>\r\n<style>\r\n\r\nbody, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {margin:0; padding:0;box-sizing:border-box;}\r",
              "attempt_latency_ms": 9,
              "egress_proxy_configured": false,
              "egress_proxy_redacted": ""
            }
          },
          {
            "sport": "hockey",
            "source_mode": "github_actions_direct_betmgm",
            "source_url": "https://www.az.betmgm.com/cds-api/bettingoffer/fixtures?sportIds=12&take=500&offerMapping=Filtered&fixtureTypes=Standard&state=Latest&x-bwin-accessid=REDACTED&lang=en-us&country=US",
            "http_status": 200,
            "http_ok": true,
            "transport_ok": true,
            "content_type": "application/json; charset=utf-8",
            "raw_bytes": 239020,
            "raw_sha256": "edbe2e63325970c0a38acb336befadf8584e913bc1c870fe0f16611b07b22d51",
            "json_parse_ok": true,
            "shape": {
              "json_parse_ok": true,
              "counts": {
                "fixtures": 13,
                "games": 48,
                "option_markets": 0,
                "game_results": 1108,
                "option_results": 0
              }
            },
            "started_at_utc": "2026-07-02T22:25:14.581177Z",
            "ended_at_utc": "2026-07-02T22:25:28.758127Z",
            "latency_ms": 14177,
            "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222453_betmgm__ON_DEMAND_FREEFORM_RUN_28625404562/raw/betmgm/hockey/betmgm-hockey-20260702_222528.upstream.raw.json",
            "egress_proxy_configured": false,
            "egress_proxy_redacted": "",
            "request_profile": "minimal_old_no_region"
          },
          {
            "sport": "baseball",
            "source_mode": "github_actions_cf_raw_fallback_after_direct_failure",
            "source_url": "https://abet-betmgm-cloudflare-proof.abetco.workers.dev/raw/baseball",
            "http_status": 200,
            "http_ok": true,
            "transport_ok": true,
            "content_type": "application/json; charset=utf-8",
            "raw_bytes": 8213695,
            "raw_sha256": "34fa07026057716cb909199e9605daec85bea4ab6f6456800d67dec6e60d9024",
            "json_parse_ok": true,
            "shape": {
              "json_parse_ok": true,
              "counts": {
                "fixtures": 10,
                "games": 58,
                "option_markets": 4566,
                "game_results": 1089,
                "option_results": 7155
              }
            },
            "started_at_utc": "2026-07-02T22:25:28.759786Z",
            "ended_at_utc": "2026-07-02T22:25:47.381607Z",
            "latency_ms": 18622,
            "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222453_betmgm__ON_DEMAND_FREEFORM_RUN_28625404562/raw/betmgm/baseball/betmgm-baseball-20260702_222547.upstream.raw.json",
            "egress_proxy_configured": false,
            "egress_proxy_redacted": "",
            "direct_failure_before_fallback": {
              "source_mode": "github_actions_direct_betmgm",
              "request_profile": "minimal_old_no_fixture_type",
              "attempt": 3,
              "http_status": 403,
              "http_ok": false,
              "transport_ok": true,
              "content_type": "text/html; charset=UTF-8",
              "raw_bytes": 9885,
              "raw_sha256": "6ca3515d704ffccb1342b12f9c51400f107bd2cfcf3e0b5eff88625b9c19ed43",
              "json_parse_ok": false,
              "parse_error": "JSONDecodeError('Expecting value: line 1 column 1 (char 0)')",
              "body_preview": "<!DOCTYPE html>\r\n<html lang=\"en\">\r\n<head>\r\n    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\r\n<meta content=\"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=3.0, user-scalable=yes\" name=\"viewport\">\r\n<meta name=\"robots\" content=\"noindex,nofollow\">\r\n  \r\n<title>betmgm.com</title>\r\n<style>\r\n\r\nbody, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {margin:0; padding:0;box-sizing:border-box;}\r",
              "attempt_latency_ms": 10,
              "egress_proxy_configured": false,
              "egress_proxy_redacted": ""
            }
          },
          {
            "sport": "nascar",
            "source_mode": "github_actions_direct_betmgm",
            "source_url": "https://www.az.betmgm.com/cds-api/bettingoffer/fixtures?sportIds=39&regionIds=9&take=500&offerMapping=Filtered&fixtureTypes=Standard&state=Latest&x-bwin-accessid=REDACTED&lang=en-us&country=US",
            "http_status": 200,
            "http_ok": true,
            "transport_ok": true,
            "content_type": "application/json; charset=utf-8",
            "raw_bytes": 77475,
            "raw_sha256": "3e8a90d5a8357ee99e86eba018286c87e97c366ab061216d9adf0f68b6890d03",
            "json_parse_ok": true,
            "shape": {
              "json_parse_ok": true,
              "counts": {
                "fixtures": 6,
                "games": 22,
                "option_markets": 0,
                "game_results": 315,
                "option_results": 0
              }
            },
            "started_at_utc": "2026-07-02T22:25:47.411612Z",
            "ended_at_utc": "2026-07-02T22:25:47.800314Z",
            "latency_ms": 389,
            "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222453_betmgm__ON_DEMAND_FREEFORM_RUN_28625404562/raw/betmgm/nascar/betmgm-nascar-20260702_222547.upstream.raw.json",
            "egress_proxy_configured": false,
            "egress_proxy_redacted": "",
            "request_profile": "full_browser_baseline"
          },
          {
            "sport": "mma",
            "source_mode": "github_actions_direct_betmgm",
            "source_url": "https://www.az.betmgm.com/cds-api/bettingoffer/fixtures?sportIds=45&regionIds=9&take=500&offerMapping=Filtered&fixtureTypes=Standard&state=Latest&x-bwin-accessid=REDACTED&lang=en-us&country=US",
            "http_status": 200,
            "http_ok": true,
            "transport_ok": true,
            "content_type": "application/json; charset=utf-8",
            "raw_bytes": 107629,
            "raw_sha256": "3486f3e5c4f882fa9ba59234c5240ed15bc0c42c09eb4a6fb610eee47ab2c79b",
            "json_parse_ok": true,
            "shape": {
              "json_parse_ok": true,
              "counts": {
                "fixtures": 25,
                "games": 54,
                "option_markets": 0,
                "game_results": 194,
                "option_results": 0
              }
            },
            "started_at_utc": "2026-07-02T22:25:47.801878Z",
            "ended_at_utc": "2026-07-02T22:25:48.044964Z",
            "latency_ms": 243,
            "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222453_betmgm__ON_DEMAND_FREEFORM_RUN_28625404562/raw/betmgm/mma/betmgm-mma-20260702_222548.upstream.raw.json",
            "egress_proxy_configured": false,
            "egress_proxy_redacted": "",
            "request_profile": "full_browser_baseline"
          },
          {
            "sport": "lacrosse",
            "source_mode": "github_actions_cf_raw_fallback_after_direct_failure",
            "source_url": "https://abet-betmgm-cloudflare-proof.abetco.workers.dev/raw/lacrosse",
            "http_status": 200,
            "http_ok": true,
            "transport_ok": true,
            "content_type": "application/json; charset=utf-8",
            "raw_bytes": 88934,
            "raw_sha256": "470e70038176d8e722b23c02fb95ec0c1cd26f903f9a0c0ee8bb91addd3521be",
            "json_parse_ok": true,
            "shape": {
              "json_parse_ok": true,
              "counts": {
                "fixtures": 6,
                "games": 21,
                "option_markets": 0,
                "game_results": 125,
                "option_results": 0
              }
            },
            "started_at_utc": "2026-07-02T22:25:48.046652Z",
            "ended_at_utc": "2026-07-02T22:26:06.685768Z",
            "latency_ms": 18639,
            "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222453_betmgm__ON_DEMAND_FREEFORM_RUN_28625404562/raw/betmgm/lacrosse/betmgm-lacrosse-20260702_222606.upstream.raw.json",
            "egress_proxy_configured": false,
            "egress_proxy_redacted": "",
            "direct_failure_before_fallback": {
              "source_mode": "github_actions_direct_betmgm",
              "request_profile": "minimal_old_no_region",
              "attempt": 3,
              "http_status": 403,
              "http_ok": false,
              "transport_ok": true,
              "content_type": "text/html; charset=UTF-8",
              "raw_bytes": 9885,
              "raw_sha256": "9d3c04a9f8a225668e5901e52eb41a9f6f93d475b0ebee80bb33ff041b75b8cf",
              "json_parse_ok": false,
              "parse_error": "JSONDecodeError('Expecting value: line 1 column 1 (char 0)')",
              "body_preview": "<!DOCTYPE html>\r\n<html lang=\"en\">\r\n<head>\r\n    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\r\n<meta content=\"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=3.0, user-scalable=yes\" name=\"viewport\">\r\n<meta name=\"robots\" content=\"noindex,nofollow\">\r\n  \r\n<title>betmgm.com</title>\r\n<style>\r\n\r\nbody, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {margin:0; padding:0;box-sizing:border-box;}\r",
              "attempt_latency_ms": 8,
              "egress_proxy_configured": false,
              "egress_proxy_redacted": ""
            }
          }
        ],
        "limitations": [
          "GitHub proof uses curl_cffi Chrome impersonation against BetMGM's direct fixture API.",
          "If BETMGM_GITHUB_EGRESS_PROXY (or --proxy-env-var) is set, BetMGM requests use that trusted egress proxy and source_mode is labeled github_actions_trusted_egress_proxy_betmgm.",
          "When --cf-fallback is enabled, blocked direct sports are retried through the proven Cloudflare /raw/<sport> route and marked with source_mode=github_actions_cf_raw_fallback_after_direct_failure.",
          "The x-bwin access id is read from BETMGM_X_BWIN_ACCESSID when set; otherwise the existing repository proof constant is used.",
          "PASS requires HTTP 200, parseable JSON, and non-empty raw bytes for at least one sport."
        ],
        "per_sport": [
          {
            "sport": "football",
            "http_status": 200,
            "raw_bytes": 3892097,
            "raw_sha256": "0e1baf0c0558708db677e914527c68a7dcb501419919414306f55fc48cca999d",
            "latency_ms": 6296
          },
          {
            "sport": "basketball",
            "http_status": 200,
            "raw_bytes": 826183,
            "raw_sha256": "8747dfd86b756dad7dc2f1f332d432d0745ffd5ba1144f2377b26f6f05b9f66e",
            "latency_ms": 13842
          },
          {
            "sport": "hockey",
            "http_status": 200,
            "raw_bytes": 239020,
            "raw_sha256": "edbe2e63325970c0a38acb336befadf8584e913bc1c870fe0f16611b07b22d51",
            "latency_ms": 14177
          },
          {
            "sport": "baseball",
            "http_status": 200,
            "raw_bytes": 8213695,
            "raw_sha256": "34fa07026057716cb909199e9605daec85bea4ab6f6456800d67dec6e60d9024",
            "latency_ms": 18622
          },
          {
            "sport": "nascar",
            "http_status": 200,
            "raw_bytes": 77475,
            "raw_sha256": "3e8a90d5a8357ee99e86eba018286c87e97c366ab061216d9adf0f68b6890d03",
            "latency_ms": 389
          },
          {
            "sport": "mma",
            "http_status": 200,
            "raw_bytes": 107629,
            "raw_sha256": "3486f3e5c4f882fa9ba59234c5240ed15bc0c42c09eb4a6fb610eee47ab2c79b",
            "latency_ms": 243
          },
          {
            "sport": "lacrosse",
            "http_status": 200,
            "raw_bytes": 88934,
            "raw_sha256": "470e70038176d8e722b23c02fb95ec0c1cd26f903f9a0c0ee8bb91addd3521be",
            "latency_ms": 18639
          }
        ]
      },
      "note": "GitHub Actions runner executed the scraper and captured raw bytes; proof read from run logs (artifact-quota-independent)."
    },
    "baseball_direct": {
      "ok": true,
      "source": "github_actions_run_logs",
      "run_id": "28625175172",
      "run_status": "completed",
      "run_conclusion": "success",
      "run_html_url": "https://github.com/misterplusev/abet-scraper-scripts/actions/runs/28625175172",
      "book": "betmgm",
      "scraper_executed": true,
      "captured": true,
      "manifest": {
        "book": "betmgm",
        "display": "BetMGM",
        "runner": "20260624_085500_BETMGM_CURL_CFFI_GITHUB_ACTIONS_PROBE_RUNNER_v1_0_0.py",
        "version": "20260624_085500_v1_0_0_betmgm_curl_cffi_github_probe",
        "manifest_status": "captured",
        "capture_id": "20260702_221938_betmgm__ON_DEMAND_FREEFORM_RUN_28625175172",
        "captured": true,
        "file_count": 1,
        "total_bytes": 8340125,
        "started_at_utc": "2026-07-02T22:19:39.263316Z",
        "ended_at_utc": "2026-07-02T22:19:43.038296Z",
        "sports_requested": [
          "baseball"
        ],
        "egress_proxy_configured": false,
        "egress_proxy_env_var": "BETMGM_GITHUB_EGRESS_PROXY",
        "egress_proxy_redacted": "",
        "files": [
          {
            "sport": "baseball",
            "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_221938_betmgm__ON_DEMAND_FREEFORM_RUN_28625175172/raw/betmgm/baseball/betmgm-baseball-20260702_221943.upstream.raw.json",
            "raw_bytes": 8340125,
            "raw_sha256": "ab5ba444e8d064f6b7aa9bbb47aed08d9f5a446fd00bec433bb91a9b1e07d348",
            "http_status": 200,
            "shape": {
              "json_parse_ok": true,
              "counts": {
                "fixtures": 30,
                "games": 118,
                "option_markets": 4566,
                "game_results": 1209,
                "option_results": 7155
              }
            }
          }
        ],
        "results": [
          {
            "sport": "baseball",
            "source_mode": "github_actions_direct_betmgm",
            "source_url": "https://www.az.betmgm.com/cds-api/bettingoffer/fixtures?sportIds=23&take=500&offerMapping=Filtered&fixtureTypes=Standard&state=Latest&x-bwin-accessid=REDACTED&lang=en-us&country=US",
            "http_status": 200,
            "http_ok": true,
            "transport_ok": true,
            "content_type": "application/json; charset=utf-8",
            "raw_bytes": 8340125,
            "raw_sha256": "ab5ba444e8d064f6b7aa9bbb47aed08d9f5a446fd00bec433bb91a9b1e07d348",
            "json_parse_ok": true,
            "shape": {
              "json_parse_ok": true,
              "counts": {
                "fixtures": 30,
                "games": 118,
                "option_markets": 4566,
                "game_results": 1209,
                "option_results": 7155
              }
            },
            "started_at_utc": "2026-07-02T22:19:39.263316Z",
            "ended_at_utc": "2026-07-02T22:19:43.038296Z",
            "latency_ms": 3775,
            "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_221938_betmgm__ON_DEMAND_FREEFORM_RUN_28625175172/raw/betmgm/baseball/betmgm-baseball-20260702_221943.upstream.raw.json",
            "egress_proxy_configured": false,
            "egress_proxy_redacted": "",
            "request_profile": "full_browser_no_region"
          }
        ],
        "limitations": [
          "GitHub proof uses curl_cffi Chrome impersonation against BetMGM's direct fixture API.",
          "If BETMGM_GITHUB_EGRESS_PROXY (or --proxy-env-var) is set, BetMGM requests use that trusted egress proxy and source_mode is labeled github_actions_trusted_egress_proxy_betmgm.",
          "When --cf-fallback is enabled, blocked direct sports are retried through the proven Cloudflare /raw/<sport> route and marked with source_mode=github_actions_cf_raw_fallback_after_direct_failure.",
          "The x-bwin access id is read from BETMGM_X_BWIN_ACCESSID when set; otherwise the existing repository proof constant is used.",
          "PASS requires HTTP 200, parseable JSON, and non-empty raw bytes for at least one sport."
        ],
        "per_sport": [
          {
            "sport": "baseball",
            "http_status": 200,
            "raw_bytes": 8340125,
            "raw_sha256": "ab5ba444e8d064f6b7aa9bbb47aed08d9f5a446fd00bec433bb91a9b1e07d348",
            "latency_ms": 3775
          }
        ]
      },
      "note": "GitHub Actions runner executed the scraper and captured raw bytes; proof read from run logs (artifact-quota-independent)."
    },
    "basketball_direct": {
      "ok": true,
      "source": "github_actions_run_logs",
      "run_id": "28625513576",
      "run_status": "completed",
      "run_conclusion": "success",
      "run_html_url": "https://github.com/misterplusev/abet-scraper-scripts/actions/runs/28625513576",
      "book": "betmgm",
      "scraper_executed": true,
      "captured": true,
      "manifest": {
        "book": "betmgm",
        "display": "BetMGM",
        "runner": "20260624_085500_BETMGM_CURL_CFFI_GITHUB_ACTIONS_PROBE_RUNNER_v1_0_0.py",
        "version": "20260624_085500_v1_0_0_betmgm_curl_cffi_github_probe",
        "manifest_status": "captured",
        "capture_id": "20260702_222716_betmgm__ON_DEMAND_FREEFORM_RUN_28625513576",
        "captured": true,
        "file_count": 1,
        "total_bytes": 3930477,
        "started_at_utc": "2026-07-02T22:27:17.360662Z",
        "ended_at_utc": "2026-07-02T22:27:19.071453Z",
        "sports_requested": [
          "basketball"
        ],
        "egress_proxy_configured": false,
        "egress_proxy_env_var": "BETMGM_GITHUB_EGRESS_PROXY",
        "egress_proxy_redacted": "",
        "files": [
          {
            "sport": "basketball",
            "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222716_betmgm__ON_DEMAND_FREEFORM_RUN_28625513576/raw/betmgm/basketball/betmgm-basketball-20260702_222719.upstream.raw.json",
            "raw_bytes": 3930477,
            "raw_sha256": "11924f534b191b02af6a0a215d630bdb4c2e45433194688f110a82dbd11ed472",
            "http_status": 200,
            "shape": {
              "json_parse_ok": true,
              "counts": {
                "fixtures": 39,
                "games": 2016,
                "option_markets": 0,
                "game_results": 7007,
                "option_results": 0
              }
            }
          }
        ],
        "results": [
          {
            "sport": "basketball",
            "source_mode": "github_actions_direct_betmgm",
            "source_url": "https://www.az.betmgm.com/cds-api/bettingoffer/fixtures?sportIds=7&take=500&offerMapping=Filtered&fixtureTypes=Standard&state=Latest&x-bwin-accessid=REDACTED&lang=en-us&country=US",
            "http_status": 200,
            "http_ok": true,
            "transport_ok": true,
            "content_type": "application/json; charset=utf-8",
            "raw_bytes": 3930477,
            "raw_sha256": "11924f534b191b02af6a0a215d630bdb4c2e45433194688f110a82dbd11ed472",
            "json_parse_ok": true,
            "shape": {
              "json_parse_ok": true,
              "counts": {
                "fixtures": 39,
                "games": 2016,
                "option_markets": 0,
                "game_results": 7007,
                "option_results": 0
              }
            },
            "started_at_utc": "2026-07-02T22:27:17.360662Z",
            "ended_at_utc": "2026-07-02T22:27:19.071453Z",
            "latency_ms": 1711,
            "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222716_betmgm__ON_DEMAND_FREEFORM_RUN_28625513576/raw/betmgm/basketball/betmgm-basketball-20260702_222719.upstream.raw.json",
            "egress_proxy_configured": false,
            "egress_proxy_redacted": "",
            "request_profile": "minimal_old_no_region"
          }
        ],
        "limitations": [
          "GitHub proof uses curl_cffi Chrome impersonation against BetMGM's direct fixture API.",
          "If BETMGM_GITHUB_EGRESS_PROXY (or --proxy-env-var) is set, BetMGM requests use that trusted egress proxy and source_mode is labeled github_actions_trusted_egress_proxy_betmgm.",
          "When --cf-fallback is enabled, blocked direct sports are retried through the proven Cloudflare /raw/<sport> route and marked with source_mode=github_actions_cf_raw_fallback_after_direct_failure.",
          "The x-bwin access id is read from BETMGM_X_BWIN_ACCESSID when set; otherwise the existing repository proof constant is used.",
          "PASS requires HTTP 200, parseable JSON, and non-empty raw bytes for at least one sport."
        ],
        "per_sport": [
          {
            "sport": "basketball",
            "http_status": 200,
            "raw_bytes": 3930477,
            "raw_sha256": "11924f534b191b02af6a0a215d630bdb4c2e45433194688f110a82dbd11ed472",
            "latency_ms": 1711
          }
        ]
      },
      "note": "GitHub Actions runner executed the scraper and captured raw bytes; proof read from run logs (artifact-quota-independent)."
    },
    "lacrosse_direct": {
      "ok": true,
      "source": "github_actions_run_logs",
      "run_id": "28625537140",
      "run_status": "completed",
      "run_conclusion": "success",
      "run_html_url": "https://github.com/misterplusev/abet-scraper-scripts/actions/runs/28625537140",
      "book": "betmgm",
      "scraper_executed": true,
      "captured": true,
      "manifest": {
        "book": "betmgm",
        "display": "BetMGM",
        "runner": "20260624_085500_BETMGM_CURL_CFFI_GITHUB_ACTIONS_PROBE_RUNNER_v1_0_0.py",
        "version": "20260624_085500_v1_0_0_betmgm_curl_cffi_github_probe",
        "manifest_status": "captured",
        "capture_id": "20260702_222749_betmgm__ON_DEMAND_FREEFORM_RUN_28625537140",
        "captured": true,
        "file_count": 1,
        "total_bytes": 88934,
        "started_at_utc": "2026-07-02T22:27:50.275965Z",
        "ended_at_utc": "2026-07-02T22:28:04.377980Z",
        "sports_requested": [
          "lacrosse"
        ],
        "egress_proxy_configured": false,
        "egress_proxy_env_var": "BETMGM_GITHUB_EGRESS_PROXY",
        "egress_proxy_redacted": "",
        "files": [
          {
            "sport": "lacrosse",
            "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222749_betmgm__ON_DEMAND_FREEFORM_RUN_28625537140/raw/betmgm/lacrosse/betmgm-lacrosse-20260702_222804.upstream.raw.json",
            "raw_bytes": 88934,
            "raw_sha256": "470e70038176d8e722b23c02fb95ec0c1cd26f903f9a0c0ee8bb91addd3521be",
            "http_status": 200,
            "shape": {
              "json_parse_ok": true,
              "counts": {
                "fixtures": 6,
                "games": 21,
                "option_markets": 0,
                "game_results": 125,
                "option_results": 0
              }
            }
          }
        ],
        "results": [
          {
            "sport": "lacrosse",
            "source_mode": "github_actions_direct_betmgm",
            "source_url": "https://www.az.betmgm.com/cds-api/bettingoffer/fixtures?sportIds=88&take=500&offerMapping=Filtered&fixtureTypes=Standard&state=Latest&x-bwin-accessid=REDACTED&lang=en-us&country=US",
            "http_status": 200,
            "http_ok": true,
            "transport_ok": true,
            "content_type": "application/json; charset=utf-8",
            "raw_bytes": 88934,
            "raw_sha256": "470e70038176d8e722b23c02fb95ec0c1cd26f903f9a0c0ee8bb91addd3521be",
            "json_parse_ok": true,
            "shape": {
              "json_parse_ok": true,
              "counts": {
                "fixtures": 6,
                "games": 21,
                "option_markets": 0,
                "game_results": 125,
                "option_results": 0
              }
            },
            "started_at_utc": "2026-07-02T22:27:50.275965Z",
            "ended_at_utc": "2026-07-02T22:28:04.377980Z",
            "latency_ms": 14102,
            "path": "/home/runner/work/abet-scraper-scripts/abet-scraper-scripts/cloud-proof-output/20260702_222749_betmgm__ON_DEMAND_FREEFORM_RUN_28625537140/raw/betmgm/lacrosse/betmgm-lacrosse-20260702_222804.upstream.raw.json",
            "egress_proxy_configured": false,
            "egress_proxy_redacted": "",
            "request_profile": "minimal_old_no_region"
          }
        ],
        "limitations": [
          "GitHub proof uses curl_cffi Chrome impersonation against BetMGM's direct fixture API.",
          "If BETMGM_GITHUB_EGRESS_PROXY (or --proxy-env-var) is set, BetMGM requests use that trusted egress proxy and source_mode is labeled github_actions_trusted_egress_proxy_betmgm.",
          "When --cf-fallback is enabled, blocked direct sports are retried through the proven Cloudflare /raw/<sport> route and marked with source_mode=github_actions_cf_raw_fallback_after_direct_failure.",
          "The x-bwin access id is read from BETMGM_X_BWIN_ACCESSID when set; otherwise the existing repository proof constant is used.",
          "PASS requires HTTP 200, parseable JSON, and non-empty raw bytes for at least one sport."
        ],
        "per_sport": [
          {
            "sport": "lacrosse",
            "http_status": 200,
            "raw_bytes": 88934,
            "raw_sha256": "470e70038176d8e722b23c02fb95ec0c1cd26f903f9a0c0ee8bb91addd3521be",
            "latency_ms": 14102
          }
        ]
      },
      "note": "GitHub Actions runner executed the scraper and captured raw bytes; proof read from run logs (artifact-quota-independent)."
    }
  }
}