{
  "runDate": "2026-02-02T02:19:27.527Z",
  "healthScore": 63.8,
  "summary": {
    "passed": 127,
    "warnings": 64,
    "failed": 8,
    "info": 61,
    "total": 260
  },
  "results": [
    {
      "category": "Coverage",
      "check": "NCAAB Games",
      "status": "PASS",
      "details": "21232 games (88.8% completed, 8.2% with odds) | Sun Jan 19 2014 00:00:00 GMT+0000 (Coordinated Universal Time) to Sat Mar 07 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 21232
    },
    {
      "category": "Coverage",
      "check": "NCAAF Games",
      "status": "PASS",
      "details": "17230 games (64.9% completed, 3.3% with odds) | Thu Oct 05 2006 00:00:00 GMT+0000 (Coordinated Universal Time) to Sat Sep 12 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 17230
    },
    {
      "category": "Coverage",
      "check": "WNBA Games",
      "status": "PASS",
      "details": "11103 games (48.0% completed, 1.7% with odds) | Sat Jun 21 1997 00:00:00 GMT+0000 (Coordinated Universal Time) to Sat Oct 11 2025 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 11103
    },
    {
      "category": "Coverage",
      "check": "MMA Games",
      "status": "PASS",
      "details": "10189 games (80.8% completed, 80.6% with odds) | Fri Mar 11 1994 00:00:00 GMT+0000 (Coordinated Universal Time) to Fri Jul 02 2027 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 10189
    },
    {
      "category": "Coverage",
      "check": "NBA Games",
      "status": "PASS",
      "details": "7945 games (78.1% completed, 92.2% with odds) | Tue Oct 30 2007 00:00:00 GMT+0000 (Coordinated Universal Time) to Mon Apr 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 7945
    },
    {
      "category": "Coverage",
      "check": "EPL Games",
      "status": "PASS",
      "details": "7360 games (78.5% completed, 28.0% with odds) | Sat Aug 15 1992 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun May 24 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 7360
    },
    {
      "category": "Coverage",
      "check": "NFL Games",
      "status": "PASS",
      "details": "4580 games (97.5% completed, 76.3% with odds) | Fri Sep 02 1966 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun Feb 08 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 4580
    },
    {
      "category": "Coverage",
      "check": "MLB Games",
      "status": "PASS",
      "details": "3274 games (87.7% completed, 87.7% with odds) | Mon Apr 01 2002 00:00:00 GMT+0000 (Coordinated Universal Time) to Tue Aug 25 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 3274
    },
    {
      "category": "Coverage",
      "check": "NHL Games",
      "status": "PASS",
      "details": "2224 games (73.7% completed, 81.4% with odds) | Thu Jan 01 2004 00:00:00 GMT+0000 (Coordinated Universal Time) to Fri Apr 17 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 2224
    },
    {
      "category": "Coverage",
      "check": "SERIEA Games",
      "status": "PASS",
      "details": "2221 games (86.6% completed, 92.1% with odds) | Sat Aug 24 2019 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun May 24 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 2221
    },
    {
      "category": "Coverage",
      "check": "LALIGA Games",
      "status": "PASS",
      "details": "2214 games (86.7% completed, 92.0% with odds) | Fri Aug 16 2019 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun May 24 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 2214
    },
    {
      "category": "Coverage",
      "check": "LIGUE1 Games",
      "status": "PASS",
      "details": "2013 games (86.7% completed, 93.6% with odds) | Fri Aug 09 2019 00:00:00 GMT+0000 (Coordinated Universal Time) to Sat May 16 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 2013
    },
    {
      "category": "Coverage",
      "check": "BUNDESLIGA Games",
      "status": "PASS",
      "details": "1825 games (85.4% completed, 91.1% with odds) | Fri Aug 16 2019 00:00:00 GMT+0000 (Coordinated Universal Time) to Sat May 16 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 1825
    },
    {
      "category": "Coverage",
      "check": "MLS Games",
      "status": "PASS",
      "details": "616 games (3.2% completed, 12.0% with odds) | Thu Feb 22 2024 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun Nov 08 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 616
    },
    {
      "category": "Coverage",
      "check": "UCL Games",
      "status": "PASS",
      "details": "140 games (14.3% completed, 70.0% with odds) | Tue Feb 13 2024 00:00:00 GMT+0000 (Coordinated Universal Time) to Wed Jan 28 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 140
    },
    {
      "category": "Coverage",
      "check": "AHL Games",
      "status": "WARN",
      "details": "100 games (0.0% completed, 100.0% with odds) | Fri Oct 24 2025 00:00:00 GMT+0000 (Coordinated Universal Time) to Sat Nov 08 2025 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 100
    },
    {
      "category": "Coverage",
      "check": "KBO Games",
      "status": "WARN",
      "details": "100 games (0.0% completed, 36.0% with odds) | Sat Mar 09 2024 00:00:00 GMT+0000 (Coordinated Universal Time) to Thu Apr 04 2024 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 100
    },
    {
      "category": "Coverage",
      "check": "KHL Games",
      "status": "WARN",
      "details": "97 games (0.0% completed, 4.1% with odds) | Thu Feb 08 2024 00:00:00 GMT+0000 (Coordinated Universal Time) to Fri Mar 01 2024 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 97
    },
    {
      "category": "Coverage",
      "check": "LIGAMX Games",
      "status": "WARN",
      "details": "93 games (0.0% completed, 24.7% with odds) | Thu Feb 22 2024 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun May 19 2024 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 93
    },
    {
      "category": "Coverage",
      "check": "WTA Games",
      "status": "WARN",
      "details": "93 games (0.0% completed, 83.9% with odds) | Mon Feb 28 2022 00:00:00 GMT+0000 (Coordinated Universal Time) to Thu Mar 21 2024 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 93
    },
    {
      "category": "Coverage",
      "check": "UEL Games",
      "status": "WARN",
      "details": "92 games (0.0% completed, 28.3% with odds) | Thu Feb 22 2024 00:00:00 GMT+0000 (Coordinated Universal Time) to Thu Aug 28 2025 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 92
    },
    {
      "category": "Coverage",
      "check": "ATP Games",
      "status": "WARN",
      "details": "90 games (0.0% completed, 87.8% with odds) | Wed Nov 17 2021 00:00:00 GMT+0000 (Coordinated Universal Time) to Mon Mar 18 2024 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 90
    },
    {
      "category": "Coverage",
      "check": "NPB Games",
      "status": "WARN",
      "details": "88 games (0.0% completed, 33.0% with odds) | Fri Feb 23 2024 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun Apr 07 2024 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 88
    },
    {
      "category": "Coverage",
      "check": "NBA_G_LEAGUE Games",
      "status": "WARN",
      "details": "86 games (0.0% completed, 0.0% with odds) | Sat Nov 09 2024 00:00:00 GMT+0000 (Coordinated Universal Time) to Thu Dec 05 2024 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 86
    },
    {
      "category": "Coverage",
      "check": "CFL Games",
      "status": "WARN",
      "details": "86 games (0.0% completed, 100.0% with odds) | Fri Jun 06 2025 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun Nov 16 2025 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 86
    },
    {
      "category": "Coverage",
      "check": "SOCCER_MLS Games",
      "status": "WARN",
      "details": "85 games (0.0% completed, 0.0% with odds) | Thu Jun 12 2025 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun Nov 08 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 85
    },
    {
      "category": "Coverage",
      "check": "SOCCER_BR_SERIE_A Games",
      "status": "WARN",
      "details": "62 games (0.0% completed, 3.2% with odds) | Sat Apr 13 2024 00:00:00 GMT+0000 (Coordinated Universal Time) to Wed Dec 02 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 62
    },
    {
      "category": "Coverage",
      "check": "UFC Games",
      "status": "WARN",
      "details": "30 games (0.0% completed, 0.0% with odds) | Sat Sep 06 2025 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun Jun 14 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 30
    },
    {
      "category": "Coverage",
      "check": "BASEBALL_KBO Games",
      "status": "WARN",
      "details": "26 games (0.0% completed, 15.4% with odds) | Tue Jun 11 2024 00:00:00 GMT+0000 (Coordinated Universal Time) to Sat Sep 05 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 26
    },
    {
      "category": "Coverage",
      "check": "BASEBALL_NPB Games",
      "status": "WARN",
      "details": "17 games (0.0% completed, 5.9% with odds) | Sat Mar 09 2024 00:00:00 GMT+0000 (Coordinated Universal Time) to Tue Sep 22 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 17
    },
    {
      "category": "Coverage",
      "check": "TENNIS_WTA Games",
      "status": "WARN",
      "details": "14 games (0.0% completed, 85.7% with odds) | Mon Sep 23 2024 00:00:00 GMT+0000 (Coordinated Universal Time) to Wed Jan 14 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 14
    },
    {
      "category": "Coverage",
      "check": "TENNIS_ATP Games",
      "status": "WARN",
      "details": "12 games (0.0% completed, 91.7% with odds) | Mon Jun 24 2024 00:00:00 GMT+0000 (Coordinated Universal Time) to Mon Jan 12 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 12
    },
    {
      "category": "Coverage",
      "check": "SOCCER_EPL Games",
      "status": "WARN",
      "details": "8 games (0.0% completed, 37.5% with odds) | Sun May 19 2024 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun May 24 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 8
    },
    {
      "category": "Coverage",
      "check": "SOCCER_BUNDESLIGA Games",
      "status": "WARN",
      "details": "7 games (0.0% completed, 28.6% with odds) | Sat Apr 20 2024 00:00:00 GMT+0000 (Coordinated Universal Time) to Sat May 16 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 7
    },
    {
      "category": "Coverage",
      "check": "HOCKEY_KHL Games",
      "status": "WARN",
      "details": "7 games (0.0% completed, 14.3% with odds) | Sun Mar 03 2024 00:00:00 GMT+0000 (Coordinated Universal Time) to Mon Jan 12 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 7
    },
    {
      "category": "Coverage",
      "check": "SOCCER_LA_LIGA Games",
      "status": "WARN",
      "details": "6 games (0.0% completed, 16.7% with odds) | Fri Apr 12 2024 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun May 03 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 6
    },
    {
      "category": "Coverage",
      "check": "SOCCER_INTERNATIONAL_SOCCER Games",
      "status": "WARN",
      "details": "6 games (0.0% completed, 0.0% with odds) | Thu Jun 05 2025 00:00:00 GMT+0000 (Coordinated Universal Time) to Wed Jun 24 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 6
    },
    {
      "category": "Coverage",
      "check": "HOCKEY_AHL Games",
      "status": "WARN",
      "details": "5 games (0.0% completed, 60.0% with odds) | Sat Nov 22 2025 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun Apr 12 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 5
    },
    {
      "category": "Coverage",
      "check": "BASKETBALL_NBA_G_LEAGUE Games",
      "status": "WARN",
      "details": "5 games (0.0% completed, 0.0% with odds) | Sat Dec 20 2025 00:00:00 GMT+0000 (Coordinated Universal Time) to Sat Mar 07 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 5
    },
    {
      "category": "Coverage",
      "check": "SOCCER_FR_LIGUE_1 Games",
      "status": "WARN",
      "details": "5 games (0.0% completed, 20.0% with odds) | Sun Aug 25 2024 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun May 03 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 5
    },
    {
      "category": "Coverage",
      "check": "HOCKEY_SHL Games",
      "status": "WARN",
      "details": "4 games (0.0% completed, 100.0% with odds) | Sat Jan 18 2025 00:00:00 GMT+0000 (Coordinated Universal Time) to Sat Dec 20 2025 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 4
    },
    {
      "category": "Coverage",
      "check": "SOCCER_IT_SERIE_A Games",
      "status": "WARN",
      "details": "4 games (0.0% completed, 0.0% with odds) | Sat Jan 10 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun May 10 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 4
    },
    {
      "category": "Coverage",
      "check": "SOCCER_LIGA_MX Games",
      "status": "WARN",
      "details": "4 games (0.0% completed, 0.0% with odds) | Sun Sep 15 2024 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun Feb 22 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 4
    },
    {
      "category": "Coverage",
      "check": "HANDBALL_ASOBAL Games",
      "status": "WARN",
      "details": "3 games (0.0% completed, 0.0% with odds) | Sun Nov 30 2025 00:00:00 GMT+0000 (Coordinated Universal Time) to Thu Dec 18 2025 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 3
    },
    {
      "category": "Coverage",
      "check": "SOCCER_UEFA_CHAMPIONS_LEAGUE Games",
      "status": "WARN",
      "details": "2 games (0.0% completed, 0.0% with odds) | Tue Nov 25 2025 00:00:00 GMT+0000 (Coordinated Universal Time) to Tue Jan 20 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 2
    },
    {
      "category": "Coverage",
      "check": "HANDBALL_EHF_EURO Games",
      "status": "WARN",
      "details": "2 games (0.0% completed, 0.0% with odds) | Tue Mar 26 2024 00:00:00 GMT+0000 (Coordinated Universal Time) to Tue Feb 17 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 2
    },
    {
      "category": "Coverage",
      "check": "BASEBALL_LMP Games",
      "status": "WARN",
      "details": "2 games (0.0% completed, 0.0% with odds) | Mon Nov 18 2024 00:00:00 GMT+0000 (Coordinated Universal Time) to Mon Dec 22 2025 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 2
    },
    {
      "category": "Coverage",
      "check": "BASEBALL_LIDOM Games",
      "status": "WARN",
      "details": "1 games (0.0% completed, 100.0% with odds) | Sun Nov 30 2025 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun Nov 30 2025 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 1
    },
    {
      "category": "Coverage",
      "check": "BASEBALL_LBPRC Games",
      "status": "WARN",
      "details": "1 games (0.0% completed, 0.0% with odds) | Fri Nov 07 2025 00:00:00 GMT+0000 (Coordinated Universal Time) to Fri Nov 07 2025 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 1
    },
    {
      "category": "Coverage",
      "check": "BASEBALL_CPBL Games",
      "status": "WARN",
      "details": "1 games (0.0% completed, 0.0% with odds) | Thu Apr 24 2025 00:00:00 GMT+0000 (Coordinated Universal Time) to Thu Apr 24 2025 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 1
    },
    {
      "category": "Coverage",
      "check": "MLB Player Stats",
      "status": "PASS",
      "details": "2382 players, 857633 metrics across 214 game dates",
      "count": 857633
    },
    {
      "category": "Coverage",
      "check": "NCAAB Player Stats",
      "status": "PASS",
      "details": "4478 players, 495596 metrics across 32 game dates",
      "count": 495596
    },
    {
      "category": "Coverage",
      "check": "NBA Player Stats",
      "status": "PASS",
      "details": "563 players, 149683 metrics across 52 game dates",
      "count": 149683
    },
    {
      "category": "Coverage",
      "check": "NHL Player Stats",
      "status": "PASS",
      "details": "963 players, 129043 metrics across 165 game dates",
      "count": 129043
    },
    {
      "category": "Coverage",
      "check": "WNBA Player Stats",
      "status": "PASS",
      "details": "183 players, 36978 metrics across 115 game dates",
      "count": 36978
    },
    {
      "category": "Coverage",
      "check": "NFL Player Stats",
      "status": "PASS",
      "details": "1286 players, 17858 metrics across 16 game dates",
      "count": 17858
    },
    {
      "category": "Coverage",
      "check": "NBA Player Props",
      "status": "PASS",
      "details": "977262 props for 782 players, 37 markets | Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Mon Feb 02 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 977262
    },
    {
      "category": "Coverage",
      "check": "NHL Player Props",
      "status": "PASS",
      "details": "714870 props for 1853 players, 26 markets | Mon Jan 12 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Mon Feb 02 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 714870
    },
    {
      "category": "Coverage",
      "check": "MLB Player Props",
      "status": "PASS",
      "details": "387877 props for 1054 players, 4 markets | Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun Feb 01 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 387877
    },
    {
      "category": "Coverage",
      "check": "NFL Player Props",
      "status": "PASS",
      "details": "236948 props for 1875 players, 52 markets | Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Mon Feb 02 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 236948
    },
    {
      "category": "Coverage",
      "check": "BUNDESLIGA Player Props",
      "status": "PASS",
      "details": "10885 props for 412 players, 4 markets | Wed Jan 21 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Wed Jan 21 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 10885
    },
    {
      "category": "Coverage",
      "check": "LIGUE1 Player Props",
      "status": "PASS",
      "details": "10325 props for 424 players, 4 markets | Wed Jan 21 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Wed Jan 21 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 10325
    },
    {
      "category": "Coverage",
      "check": "LALIGA Player Props",
      "status": "PASS",
      "details": "10275 props for 449 players, 4 markets | Wed Jan 21 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Wed Jan 21 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 10275
    },
    {
      "category": "Coverage",
      "check": "SERIEA Player Props",
      "status": "PASS",
      "details": "8634 props for 460 players, 4 markets | Wed Jan 21 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Wed Jan 21 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 8634
    },
    {
      "category": "Coverage",
      "check": "SOCCER_BUNDESLIGA Player Props",
      "status": "PASS",
      "details": "1570 props for 113 players, 4 markets | Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 1570
    },
    {
      "category": "Coverage",
      "check": "SOCCER_MLS Player Props",
      "status": "PASS",
      "details": "1234 props for 96 players, 4 markets | Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 1234
    },
    {
      "category": "Coverage",
      "check": "SOCCER_IT_SERIE_A Player Props",
      "status": "WARN",
      "details": "919 props for 54 players, 4 markets | Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 919
    },
    {
      "category": "Coverage",
      "check": "SOCCER_UEFA_CHAMPIONS_LEAGUE Player Props",
      "status": "WARN",
      "details": "860 props for 87 players, 4 markets | Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 860
    },
    {
      "category": "Coverage",
      "check": "SOCCER_BR_SERIE_A Player Props",
      "status": "WARN",
      "details": "691 props for 52 players, 4 markets | Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 691
    },
    {
      "category": "Coverage",
      "check": "SOCCER_EPL Player Props",
      "status": "WARN",
      "details": "643 props for 52 players, 4 markets | Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 643
    },
    {
      "category": "Coverage",
      "check": "NCAAB Player Props",
      "status": "WARN",
      "details": "632 props for 57 players, 7 markets | Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Wed Jan 28 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 632
    },
    {
      "category": "Coverage",
      "check": "WNBA Player Props",
      "status": "WARN",
      "details": "194 props for 13 players, 8 markets | Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 194
    },
    {
      "category": "Coverage",
      "check": "SOCCER_FR_LIGUE_1 Player Props",
      "status": "WARN",
      "details": "184 props for 28 players, 4 markets | Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 184
    },
    {
      "category": "Coverage",
      "check": "NCAAF Player Props",
      "status": "FAIL",
      "details": "82 props for 17 players, 4 markets | Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time)",
      "count": 82
    },
    {
      "category": "Gaps",
      "check": "NCAAB Missing Scores",
      "status": "FAIL",
      "details": "915 games missing scores (Sat Jan 03 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun Feb 01 2026 00:00:00 GMT+0000 (Coordinated Universal Time))",
      "count": 915,
      "recommendation": "Run score backfill script"
    },
    {
      "category": "Gaps",
      "check": "EPL Missing Scores",
      "status": "FAIL",
      "details": "60 games missing scores (Wed Jan 07 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun Feb 01 2026 00:00:00 GMT+0000 (Coordinated Universal Time))",
      "count": 60,
      "recommendation": "Run score backfill script"
    },
    {
      "category": "Gaps",
      "check": "MMA Missing Scores",
      "status": "WARN",
      "details": "49 games missing scores (Thu Jan 22 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun Feb 01 2026 00:00:00 GMT+0000 (Coordinated Universal Time))",
      "count": 49,
      "recommendation": "Run score backfill script"
    },
    {
      "category": "Gaps",
      "check": "BUNDESLIGA Missing Scores",
      "status": "WARN",
      "details": "48 games missing scores (Fri Jan 23 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun Feb 01 2026 00:00:00 GMT+0000 (Coordinated Universal Time))",
      "count": 48,
      "recommendation": "Run score backfill script"
    },
    {
      "category": "Gaps",
      "check": "LALIGA Missing Scores",
      "status": "WARN",
      "details": "47 games missing scores (Fri Jan 23 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun Feb 01 2026 00:00:00 GMT+0000 (Coordinated Universal Time))",
      "count": 47,
      "recommendation": "Run score backfill script"
    },
    {
      "category": "Gaps",
      "check": "LIGUE1 Missing Scores",
      "status": "WARN",
      "details": "45 games missing scores (Fri Jan 23 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun Feb 01 2026 00:00:00 GMT+0000 (Coordinated Universal Time))",
      "count": 45,
      "recommendation": "Run score backfill script"
    },
    {
      "category": "Gaps",
      "check": "SERIEA Missing Scores",
      "status": "WARN",
      "details": "44 games missing scores (Fri Jan 23 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun Feb 01 2026 00:00:00 GMT+0000 (Coordinated Universal Time))",
      "count": 44,
      "recommendation": "Run score backfill script"
    },
    {
      "category": "Gaps",
      "check": "UCL Missing Scores",
      "status": "WARN",
      "details": "36 games missing scores (Tue Jan 20 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Wed Jan 28 2026 00:00:00 GMT+0000 (Coordinated Universal Time))",
      "count": 36,
      "recommendation": "Run score backfill script"
    },
    {
      "category": "Gaps",
      "check": "NHL Missing Scores",
      "status": "WARN",
      "details": "27 games missing scores (Wed Jan 07 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun Feb 01 2026 00:00:00 GMT+0000 (Coordinated Universal Time))",
      "count": 27,
      "recommendation": "Run score backfill script"
    },
    {
      "category": "Gaps",
      "check": "TENNIS_WTA Missing Scores",
      "status": "PASS",
      "details": "3 games missing scores (Sun Jan 11 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Wed Jan 14 2026 00:00:00 GMT+0000 (Coordinated Universal Time))",
      "count": 3
    },
    {
      "category": "Gaps",
      "check": "BASKETBALL_NBA_G_LEAGUE Missing Scores",
      "status": "PASS",
      "details": "2 games missing scores (Sun Jan 04 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun Jan 11 2026 00:00:00 GMT+0000 (Coordinated Universal Time))",
      "count": 2
    },
    {
      "category": "Gaps",
      "check": "HOCKEY_KHL Missing Scores",
      "status": "PASS",
      "details": "2 games missing scores (Sun Jan 04 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Mon Jan 12 2026 00:00:00 GMT+0000 (Coordinated Universal Time))",
      "count": 2
    },
    {
      "category": "Gaps",
      "check": "NFL Missing Scores",
      "status": "PASS",
      "details": "2 games missing scores (Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun Jan 25 2026 00:00:00 GMT+0000 (Coordinated Universal Time))",
      "count": 2
    },
    {
      "category": "Gaps",
      "check": "SOCCER_BUNDESLIGA Missing Scores",
      "status": "PASS",
      "details": "2 games missing scores (Fri Jan 16 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Sat Jan 31 2026 00:00:00 GMT+0000 (Coordinated Universal Time))",
      "count": 2
    },
    {
      "category": "Gaps",
      "check": "TENNIS_ATP Missing Scores",
      "status": "PASS",
      "details": "2 games missing scores (Sat Jan 10 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Mon Jan 12 2026 00:00:00 GMT+0000 (Coordinated Universal Time))",
      "count": 2
    },
    {
      "category": "Gaps",
      "check": "UFC Missing Scores",
      "status": "PASS",
      "details": "2 games missing scores (Sat Jan 24 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Sat Jan 31 2026 00:00:00 GMT+0000 (Coordinated Universal Time))",
      "count": 2
    },
    {
      "category": "Gaps",
      "check": "SOCCER_UEFA_CHAMPIONS_LEAGUE Missing Scores",
      "status": "PASS",
      "details": "1 games missing scores (Tue Jan 20 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Tue Jan 20 2026 00:00:00 GMT+0000 (Coordinated Universal Time))",
      "count": 1
    },
    {
      "category": "Gaps",
      "check": "HOCKEY_AHL Missing Scores",
      "status": "PASS",
      "details": "1 games missing scores (Tue Jan 06 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Tue Jan 06 2026 00:00:00 GMT+0000 (Coordinated Universal Time))",
      "count": 1
    },
    {
      "category": "Gaps",
      "check": "NCAAF Missing Scores",
      "status": "PASS",
      "details": "1 games missing scores (Tue Jan 20 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Tue Jan 20 2026 00:00:00 GMT+0000 (Coordinated Universal Time))",
      "count": 1
    },
    {
      "category": "Gaps",
      "check": "NBA Missing Scores",
      "status": "PASS",
      "details": "1 games missing scores (Mon Feb 02 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Mon Feb 02 2026 00:00:00 GMT+0000 (Coordinated Universal Time))",
      "count": 1
    },
    {
      "category": "Gaps",
      "check": "SOCCER_IT_SERIE_A Missing Scores",
      "status": "PASS",
      "details": "1 games missing scores (Sat Jan 10 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Sat Jan 10 2026 00:00:00 GMT+0000 (Coordinated Universal Time))",
      "count": 1
    },
    {
      "category": "Gaps",
      "check": "NCAAB Missing Odds (Next 7 Days)",
      "status": "FAIL",
      "details": "58 upcoming games without odds",
      "count": 58,
      "recommendation": "Fetch odds from SportsGameOdds API"
    },
    {
      "category": "Gaps",
      "check": "NBA Missing Odds (Next 7 Days)",
      "status": "FAIL",
      "details": "47 upcoming games without odds",
      "count": 47,
      "recommendation": "Fetch odds from SportsGameOdds API"
    },
    {
      "category": "Gaps",
      "check": "NHL Missing Odds (Next 7 Days)",
      "status": "FAIL",
      "details": "23 upcoming games without odds",
      "count": 23,
      "recommendation": "Fetch odds from SportsGameOdds API"
    },
    {
      "category": "Gaps",
      "check": "EPL Missing Odds (Next 7 Days)",
      "status": "WARN",
      "details": "13 upcoming games without odds",
      "count": 13,
      "recommendation": "Fetch odds from SportsGameOdds API"
    },
    {
      "category": "Gaps",
      "check": "BUNDESLIGA Missing Odds (Next 7 Days)",
      "status": "WARN",
      "details": "10 upcoming games without odds",
      "count": 10,
      "recommendation": "Fetch odds from SportsGameOdds API"
    },
    {
      "category": "Gaps",
      "check": "MMA Missing Odds (Next 7 Days)",
      "status": "WARN",
      "details": "10 upcoming games without odds",
      "count": 10,
      "recommendation": "Fetch odds from SportsGameOdds API"
    },
    {
      "category": "Gaps",
      "check": "LALIGA Missing Odds (Next 7 Days)",
      "status": "WARN",
      "details": "8 upcoming games without odds",
      "count": 8,
      "recommendation": "Fetch odds from SportsGameOdds API"
    },
    {
      "category": "Gaps",
      "check": "SERIEA Missing Odds (Next 7 Days)",
      "status": "WARN",
      "details": "6 upcoming games without odds",
      "count": 6,
      "recommendation": "Fetch odds from SportsGameOdds API"
    },
    {
      "category": "Gaps",
      "check": "LIGUE1 Missing Odds (Next 7 Days)",
      "status": "WARN",
      "details": "6 upcoming games without odds",
      "count": 6,
      "recommendation": "Fetch odds from SportsGameOdds API"
    },
    {
      "category": "Gaps",
      "check": "SOCCER_EPL Missing Odds (Next 7 Days)",
      "status": "PASS",
      "details": "2 upcoming games without odds",
      "count": 2
    },
    {
      "category": "Gaps",
      "check": "UFC Missing Odds (Next 7 Days)",
      "status": "PASS",
      "details": "1 upcoming games without odds",
      "count": 1
    },
    {
      "category": "Gaps",
      "check": "SOCCER_LA_LIGA Missing Odds (Next 7 Days)",
      "status": "PASS",
      "details": "1 upcoming games without odds",
      "count": 1
    },
    {
      "category": "Gaps",
      "check": "BASKETBALL_NBA_G_LEAGUE Missing Odds (Next 7 Days)",
      "status": "PASS",
      "details": "1 upcoming games without odds",
      "count": 1
    },
    {
      "category": "Gaps",
      "check": "NBA Daily Continuity",
      "status": "PASS",
      "details": "30 days with games in last 30 days, avg 9.1 games/day",
      "count": 30
    },
    {
      "category": "Gaps",
      "check": "NFL Daily Continuity",
      "status": "INFO",
      "details": "9 days with games in last 30 days, avg 2.6 games/day",
      "count": 9
    },
    {
      "category": "Gaps",
      "check": "NHL Daily Continuity",
      "status": "PASS",
      "details": "26 days with games in last 30 days, avg 4.8 games/day",
      "count": 26
    },
    {
      "category": "Gaps",
      "check": "MLB Daily Continuity",
      "status": "INFO",
      "details": "0 days with games in last 30 days, avg 0.0 games/day",
      "count": 0
    },
    {
      "category": "Gaps",
      "check": "MLB Recent Player Stats",
      "status": "FAIL",
      "details": "0/4477 players have stats in last 7 days (0.0%)",
      "count": 0
    },
    {
      "category": "Gaps",
      "check": "NBA Recent Player Stats",
      "status": "PASS",
      "details": "394/718 players have stats in last 7 days (54.9%)",
      "count": 394
    },
    {
      "category": "Gaps",
      "check": "NFL Recent Player Stats",
      "status": "FAIL",
      "details": "0/2806 players have stats in last 7 days (0.0%)",
      "count": 0
    },
    {
      "category": "Gaps",
      "check": "NHL Recent Player Stats",
      "status": "PASS",
      "details": "308/1147 players have stats in last 7 days (26.9%)",
      "count": 308
    },
    {
      "category": "Accuracy",
      "check": "ESPN API Connectivity",
      "status": "PASS",
      "details": "Connected - 10 games fetched (5 final)",
      "count": 10
    },
    {
      "category": "Accuracy",
      "check": "Score Verification: MIL@BOS",
      "status": "WARN",
      "details": "MISMATCH - DB: 106-111, ESPN: 79-107"
    },
    {
      "category": "Accuracy",
      "check": "Score Verification: BKN@DET",
      "status": "WARN",
      "details": "MISMATCH - DB: 79-107, ESPN: 77-130"
    },
    {
      "category": "Accuracy",
      "check": "Score Verification: CHI@MIA",
      "status": "WARN",
      "details": "MISMATCH - DB: 79-107, ESPN: 91-134"
    },
    {
      "category": "Accuracy",
      "check": "BUNDESLIGA Odds Validity",
      "status": "WARN",
      "details": "16.9% both positive (should be rare), 13.6% extreme odds (< -500)",
      "count": 59
    },
    {
      "category": "Accuracy",
      "check": "EPL Odds Validity",
      "status": "WARN",
      "details": "34.7% both positive (should be rare), 4.2% extreme odds (< -500)",
      "count": 95
    },
    {
      "category": "Accuracy",
      "check": "HOCKEY_AHL Odds Validity",
      "status": "PASS",
      "details": "0.0% both positive (should be rare), 100.0% extreme odds (< -500)",
      "count": 1
    },
    {
      "category": "Accuracy",
      "check": "HOCKEY_KHL Odds Validity",
      "status": "PASS",
      "details": "0.0% both positive (should be rare), 0.0% extreme odds (< -500)",
      "count": 1
    },
    {
      "category": "Accuracy",
      "check": "LALIGA Odds Validity",
      "status": "WARN",
      "details": "38.9% both positive (should be rare), 15.3% extreme odds (< -500)",
      "count": 72
    },
    {
      "category": "Accuracy",
      "check": "LIGUE1 Odds Validity",
      "status": "WARN",
      "details": "23.0% both positive (should be rare), 8.1% extreme odds (< -500)",
      "count": 74
    },
    {
      "category": "Accuracy",
      "check": "MMA Odds Validity",
      "status": "PASS",
      "details": "0.0% both positive (should be rare), 3.8% extreme odds (< -500)",
      "count": 52
    },
    {
      "category": "Accuracy",
      "check": "NBA Odds Validity",
      "status": "PASS",
      "details": "0.0% both positive (should be rare), 39.6% extreme odds (< -500)",
      "count": 225
    },
    {
      "category": "Accuracy",
      "check": "NCAAB Odds Validity",
      "status": "PASS",
      "details": "0.0% both positive (should be rare), 30.3% extreme odds (< -500)",
      "count": 859
    },
    {
      "category": "Accuracy",
      "check": "NCAAF Odds Validity",
      "status": "PASS",
      "details": "0.0% both positive (should be rare), 12.5% extreme odds (< -500)",
      "count": 8
    },
    {
      "category": "Accuracy",
      "check": "NFL Odds Validity",
      "status": "PASS",
      "details": "0.0% both positive (should be rare), 36.0% extreme odds (< -500)",
      "count": 25
    },
    {
      "category": "Accuracy",
      "check": "NHL Odds Validity",
      "status": "PASS",
      "details": "0.0% both positive (should be rare), 29.0% extreme odds (< -500)",
      "count": 138
    },
    {
      "category": "Accuracy",
      "check": "SERIEA Odds Validity",
      "status": "WARN",
      "details": "41.1% both positive (should be rare), 8.2% extreme odds (< -500)",
      "count": 73
    },
    {
      "category": "Accuracy",
      "check": "TENNIS_ATP Odds Validity",
      "status": "PASS",
      "details": "0.0% both positive (should be rare), 100.0% extreme odds (< -500)",
      "count": 2
    },
    {
      "category": "Accuracy",
      "check": "TENNIS_WTA Odds Validity",
      "status": "PASS",
      "details": "0.0% both positive (should be rare), 50.0% extreme odds (< -500)",
      "count": 2
    },
    {
      "category": "Accuracy",
      "check": "UCL Odds Validity",
      "status": "WARN",
      "details": "28.6% both positive (should be rare), 12.2% extreme odds (< -500)",
      "count": 49
    },
    {
      "category": "Accuracy",
      "check": "NBA Backtest Count",
      "status": "PASS",
      "details": "Backtest (133) = DB Query (133)",
      "count": 133
    },
    {
      "category": "Accuracy",
      "check": "NFL Backtest Count",
      "status": "PASS",
      "details": "Backtest (100) = DB Query (100)",
      "count": 100
    },
    {
      "category": "API Health",
      "check": "SportsGameOdds",
      "status": "PASS",
      "details": "configured - Primary odds source - 80+ bookmakers, live lines | Leagues: nba, nfl, mlb, nhl, ncaab, ncaaf, epl, ufc"
    },
    {
      "category": "API Health",
      "check": "ESPN",
      "status": "PASS",
      "details": "available - Live scores, box scores, schedules (free, no key) | Leagues: nba, nfl, mlb, nhl, ncaab, ncaaf"
    },
    {
      "category": "API Health",
      "check": "BallDontLie",
      "status": "PASS",
      "details": "configured - Player stats, rosters, game logs | Leagues: nba, nfl, mlb, nhl"
    },
    {
      "category": "API Health",
      "check": "The Odds API",
      "status": "PASS",
      "details": "configured - Alternative odds source for cross-validation | Leagues: nba, nfl, mlb, nhl, epl"
    },
    {
      "category": "API Health",
      "check": "OpenWeatherMap",
      "status": "PASS",
      "details": "configured - Weather data for outdoor games betting impact | Leagues: nfl, mlb, ncaaf"
    },
    {
      "category": "API Health",
      "check": "WeatherAPI",
      "status": "PASS",
      "details": "configured - Backup weather source | Leagues: nfl, mlb, ncaaf"
    },
    {
      "category": "API Health",
      "check": "Football Data",
      "status": "PASS",
      "details": "configured - European soccer stats and fixtures | Leagues: epl, laliga, bundesliga, seriea, ligue1"
    },
    {
      "category": "API Health",
      "check": "CFBD",
      "status": "PASS",
      "details": "configured - College football detailed stats | Leagues: ncaaf"
    },
    {
      "category": "API Health",
      "check": "Grok (xAI)",
      "status": "PASS",
      "details": "configured - AI analysis and research assistance | Leagues: all"
    },
    {
      "category": "API Health",
      "check": "Overall System Health",
      "status": "PASS",
      "details": "HEALTHY - 3/3 checks passed, 100% query success"
    },
    {
      "category": "Freshness",
      "check": "Odds Data",
      "status": "PASS",
      "details": "Last update: 2026-02-02T02:15:12.507Z (0.1 hours ago)"
    },
    {
      "category": "Freshness",
      "check": "Scores Data",
      "status": "PASS",
      "details": "Last update: 2026-02-02T02:15:12.967Z (0.1 hours ago)"
    },
    {
      "category": "Freshness",
      "check": "Player Props Data",
      "status": "PASS",
      "details": "Last update: 2026-02-02T02:01:10.244Z (0.3 hours ago)"
    },
    {
      "category": "Freshness",
      "check": "Games with Odds Today",
      "status": "PASS",
      "details": "21 games have odds for today",
      "count": 21
    },
    {
      "category": "Seasons",
      "check": "AHL 2025",
      "status": "PASS",
      "details": "100 games (0% complete, 100% odds) | Avg spread: 2.4, Avg total: 5.7",
      "count": 100
    },
    {
      "category": "Seasons",
      "check": "ATP 2024",
      "status": "PASS",
      "details": "89 games (0% complete, 89% odds) | Avg spread: 4.8, Avg total: 23.6",
      "count": 89
    },
    {
      "category": "Seasons",
      "check": "BASEBALL_CPBL 2025",
      "status": "INFO",
      "details": "1 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 1
    },
    {
      "category": "Seasons",
      "check": "BASEBALL_KBO 2026",
      "status": "INFO",
      "details": "20 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 20
    },
    {
      "category": "Seasons",
      "check": "BASEBALL_KBO 2025",
      "status": "INFO",
      "details": "3 games (0% complete, 33% odds) | Avg spread: 4.5, Avg total: 17.5",
      "count": 3
    },
    {
      "category": "Seasons",
      "check": "BASEBALL_KBO 2024",
      "status": "INFO",
      "details": "3 games (0% complete, 100% odds) | Avg spread: 1.2, Avg total: 10.7",
      "count": 3
    },
    {
      "category": "Seasons",
      "check": "BASEBALL_LBPRC 2025",
      "status": "INFO",
      "details": "1 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 1
    },
    {
      "category": "Seasons",
      "check": "BASEBALL_LIDOM 2025",
      "status": "INFO",
      "details": "1 games (0% complete, 100% odds) | Avg spread: 1.5, Avg total: 8.5",
      "count": 1
    },
    {
      "category": "Seasons",
      "check": "BASEBALL_LMP 2025",
      "status": "INFO",
      "details": "1 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 1
    },
    {
      "category": "Seasons",
      "check": "BASEBALL_LMP 2024",
      "status": "INFO",
      "details": "1 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 1
    },
    {
      "category": "Seasons",
      "check": "BASEBALL_NPB 2026",
      "status": "INFO",
      "details": "12 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 12
    },
    {
      "category": "Seasons",
      "check": "BASEBALL_NPB 2025",
      "status": "INFO",
      "details": "2 games (0% complete, 50% odds) | Avg spread: 1.5, Avg total: 6.5",
      "count": 2
    },
    {
      "category": "Seasons",
      "check": "BASEBALL_NPB 2024",
      "status": "INFO",
      "details": "3 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 3
    },
    {
      "category": "Seasons",
      "check": "BASKETBALL_NBA_G_LEAGUE 2026",
      "status": "INFO",
      "details": "4 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 4
    },
    {
      "category": "Seasons",
      "check": "BASKETBALL_NBA_G_LEAGUE 2025",
      "status": "INFO",
      "details": "1 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 1
    },
    {
      "category": "Seasons",
      "check": "BUNDESLIGA 2026",
      "status": "PASS",
      "details": "59 games (37% complete, 73% odds) | Avg spread: 0.9, Avg total: 1.9",
      "count": 59
    },
    {
      "category": "Seasons",
      "check": "BUNDESLIGA 2025",
      "status": "PASS",
      "details": "153 games (4% complete, 10% odds) | Avg spread: 0.6, Avg total: 2.8",
      "count": 153
    },
    {
      "category": "Seasons",
      "check": "BUNDESLIGA 2024",
      "status": "PASS",
      "details": "83 games (0% complete, 89% odds) | Avg spread: 0.3, Avg total: 3.4",
      "count": 83
    },
    {
      "category": "Seasons",
      "check": "CFL 2025",
      "status": "PASS",
      "details": "86 games (0% complete, 100% odds) | Avg spread: 11.0, Avg total: 52.5",
      "count": 86
    },
    {
      "category": "Seasons",
      "check": "EPL 2026",
      "status": "INFO",
      "details": "40 games (50% complete, 78% odds) | Avg spread: 0.6, Avg total: 2.6",
      "count": 40
    },
    {
      "category": "Seasons",
      "check": "EPL 2025",
      "status": "PASS",
      "details": "541 games (30% complete, 12% odds) | Avg spread: 0.6, Avg total: 2.6",
      "count": 541
    },
    {
      "category": "Seasons",
      "check": "EPL 2024",
      "status": "PASS",
      "details": "67 games (0% complete, 97% odds) | Avg spread: 0.2, Avg total: 3.7",
      "count": 67
    },
    {
      "category": "Seasons",
      "check": "HANDBALL_ASOBAL 2025",
      "status": "INFO",
      "details": "3 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 3
    },
    {
      "category": "Seasons",
      "check": "HANDBALL_EHF_EURO 2026",
      "status": "INFO",
      "details": "1 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 1
    },
    {
      "category": "Seasons",
      "check": "HANDBALL_EHF_EURO 2024",
      "status": "INFO",
      "details": "1 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 1
    },
    {
      "category": "Seasons",
      "check": "HOCKEY_AHL 2026",
      "status": "INFO",
      "details": "3 games (0% complete, 33% odds) | Avg spread: 1.5, Avg total: 4.5",
      "count": 3
    },
    {
      "category": "Seasons",
      "check": "HOCKEY_AHL 2025",
      "status": "INFO",
      "details": "2 games (0% complete, 100% odds) | Avg spread: 1.5, Avg total: 5.5",
      "count": 2
    },
    {
      "category": "Seasons",
      "check": "HOCKEY_KHL 2026",
      "status": "INFO",
      "details": "2 games (0% complete, 50% odds) | Avg spread: 1.5, Avg total: 3.5",
      "count": 2
    },
    {
      "category": "Seasons",
      "check": "HOCKEY_KHL 2025",
      "status": "INFO",
      "details": "3 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 3
    },
    {
      "category": "Seasons",
      "check": "HOCKEY_KHL 2024",
      "status": "INFO",
      "details": "2 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 2
    },
    {
      "category": "Seasons",
      "check": "HOCKEY_SHL 2025",
      "status": "INFO",
      "details": "4 games (0% complete, 100% odds) | Avg spread: 2.5, Avg total: 4.8",
      "count": 4
    },
    {
      "category": "Seasons",
      "check": "KBO 2024",
      "status": "PASS",
      "details": "100 games (0% complete, 36% odds) | Avg spread: 0.8, Avg total: 9.5",
      "count": 100
    },
    {
      "category": "Seasons",
      "check": "KHL 2024",
      "status": "PASS",
      "details": "97 games (0% complete, 4% odds) | Avg spread: 2.2, Avg total: 3.5",
      "count": 97
    },
    {
      "category": "Seasons",
      "check": "LALIGA 2026",
      "status": "PASS",
      "details": "60 games (33% complete, 85% odds) | Avg spread: 0.8, Avg total: 1.9",
      "count": 60
    },
    {
      "category": "Seasons",
      "check": "LALIGA 2025",
      "status": "PASS",
      "details": "181 games (0% complete, 12% odds) | Avg spread: 0.7, Avg total: 2.3",
      "count": 181
    },
    {
      "category": "Seasons",
      "check": "LALIGA 2024",
      "status": "PASS",
      "details": "73 games (0% complete, 88% odds) | Avg spread: 0.2, Avg total: 2.6",
      "count": 73
    },
    {
      "category": "Seasons",
      "check": "LIGAMX 2024",
      "status": "PASS",
      "details": "93 games (0% complete, 25% odds) | Avg spread: 0.6, Avg total: 2.5",
      "count": 93
    },
    {
      "category": "Seasons",
      "check": "LIGUE1 2026",
      "status": "PASS",
      "details": "58 games (34% complete, 79% odds) | Avg spread: 0.7, Avg total: 2.0",
      "count": 58
    },
    {
      "category": "Seasons",
      "check": "LIGUE1 2025",
      "status": "PASS",
      "details": "142 games (0% complete, 20% odds) | Avg spread: 0.6, Avg total: 2.7",
      "count": 142
    },
    {
      "category": "Seasons",
      "check": "LIGUE1 2024",
      "status": "PASS",
      "details": "88 games (0% complete, 97% odds) | Avg spread: 0.3, Avg total: 2.8",
      "count": 88
    },
    {
      "category": "Seasons",
      "check": "MLB 2026",
      "status": "INFO",
      "details": "30 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 30
    },
    {
      "category": "Seasons",
      "check": "MLB 2025",
      "status": "PASS",
      "details": "2220 games (88% complete, 99% odds) | Avg spread: 0.1, Avg total: 0.9",
      "count": 2220
    },
    {
      "category": "Seasons",
      "check": "MLB 2024",
      "status": "PASS",
      "details": "677 games (98% complete, 100% odds) | Avg spread: 0.9, Avg total: 1.6",
      "count": 677
    },
    {
      "category": "Seasons",
      "check": "MLS 2026",
      "status": "PASS",
      "details": "510 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 510
    },
    {
      "category": "Seasons",
      "check": "MLS 2025",
      "status": "INFO",
      "details": "20 games (100% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 20
    },
    {
      "category": "Seasons",
      "check": "MLS 2024",
      "status": "PASS",
      "details": "86 games (0% complete, 86% odds) | Avg spread: 0.1, Avg total: 2.9",
      "count": 86
    },
    {
      "category": "Seasons",
      "check": "MMA 2026",
      "status": "INFO",
      "details": "11 games (0% complete, 91% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 11
    },
    {
      "category": "Seasons",
      "check": "MMA 2025",
      "status": "PASS",
      "details": "727 games (55% complete, 72% odds) | Avg spread: 5.1, Avg total: 10.3",
      "count": 727
    },
    {
      "category": "Seasons",
      "check": "MMA 2024",
      "status": "PASS",
      "details": "871 games (59% complete, 83% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 871
    },
    {
      "category": "Seasons",
      "check": "NBA 2026",
      "status": "PASS",
      "details": "118 games (86% complete, 100% odds) | Avg spread: 6.8, Avg total: 68.6",
      "count": 118
    },
    {
      "category": "Seasons",
      "check": "NBA 2025",
      "status": "PASS",
      "details": "1766 games (33% complete, 66% odds) | Avg spread: 7.3, Avg total: 82.0",
      "count": 1766
    },
    {
      "category": "Seasons",
      "check": "NBA 2024",
      "status": "PASS",
      "details": "1208 games (63% complete, 100% odds) | Avg spread: 7.9, Avg total: 204.4",
      "count": 1208
    },
    {
      "category": "Seasons",
      "check": "NBA_G_LEAGUE 2024",
      "status": "PASS",
      "details": "86 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 86
    },
    {
      "category": "Seasons",
      "check": "NCAAB 2026",
      "status": "PASS",
      "details": "228 games (43% complete, 91% odds) | Avg spread: 6.5, Avg total: 148.1",
      "count": 228
    },
    {
      "category": "Seasons",
      "check": "NCAAB 2025",
      "status": "PASS",
      "details": "4969 games (56% complete, 31% odds) | Avg spread: 9.7, Avg total: 148.0",
      "count": 4969
    },
    {
      "category": "Seasons",
      "check": "NCAAB 2024",
      "status": "PASS",
      "details": "8245 games (99% complete, 0% odds) | Avg spread: 12.0, Avg total: 119.5",
      "count": 8245
    },
    {
      "category": "Seasons",
      "check": "NCAAF 2026",
      "status": "INFO",
      "details": "24 games (50% complete, 29% odds) | Avg spread: 7.9, Avg total: 50.9",
      "count": 24
    },
    {
      "category": "Seasons",
      "check": "NCAAF 2025",
      "status": "PASS",
      "details": "777 games (99% complete, 1% odds) | Avg spread: 6.5, Avg total: 45.9",
      "count": 777
    },
    {
      "category": "Seasons",
      "check": "NCAAF 2024",
      "status": "PASS",
      "details": "4905 games (99% complete, 4% odds) | Avg spread: 27.9, Avg total: 51.8",
      "count": 4905
    },
    {
      "category": "Seasons",
      "check": "NFL 2026",
      "status": "INFO",
      "details": "11 games (91% complete, 100% odds) | Avg spread: 14.1, Avg total: 44.5",
      "count": 11
    },
    {
      "category": "Seasons",
      "check": "NFL 2025",
      "status": "PASS",
      "details": "255 games (87% complete, 100% odds) | Avg spread: 4.0, Avg total: 21.2",
      "count": 255
    },
    {
      "category": "Seasons",
      "check": "NFL 2024",
      "status": "PASS",
      "details": "196 games (82% complete, 100% odds) | Avg spread: 4.3, Avg total: 43.0",
      "count": 196
    },
    {
      "category": "Seasons",
      "check": "NHL 2026",
      "status": "PASS",
      "details": "56 games (59% complete, 100% odds) | Avg spread: 1.7, Avg total: 4.2",
      "count": 56
    },
    {
      "category": "Seasons",
      "check": "NHL 2025",
      "status": "PASS",
      "details": "670 games (25% complete, 38% odds) | Avg spread: 1.5, Avg total: 4.6",
      "count": 670
    },
    {
      "category": "Seasons",
      "check": "NHL 2024",
      "status": "PASS",
      "details": "540 games (91% complete, 100% odds) | Avg spread: 1.5, Avg total: 5.9",
      "count": 540
    },
    {
      "category": "Seasons",
      "check": "NPB 2024",
      "status": "PASS",
      "details": "88 games (0% complete, 33% odds) | Avg spread: 1.8, Avg total: 4.7",
      "count": 88
    },
    {
      "category": "Seasons",
      "check": "SERIEA 2026",
      "status": "PASS",
      "details": "59 games (34% complete, 83% odds) | Avg spread: 0.8, Avg total: 1.7",
      "count": 59
    },
    {
      "category": "Seasons",
      "check": "SERIEA 2025",
      "status": "PASS",
      "details": "174 games (2% complete, 14% odds) | Avg spread: 0.4, Avg total: 2.4",
      "count": 174
    },
    {
      "category": "Seasons",
      "check": "SERIEA 2024",
      "status": "PASS",
      "details": "88 games (0% complete, 83% odds) | Avg spread: 0.3, Avg total: 2.6",
      "count": 88
    },
    {
      "category": "Seasons",
      "check": "SOCCER_BR_SERIE_A 2026",
      "status": "PASS",
      "details": "58 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 58
    },
    {
      "category": "Seasons",
      "check": "SOCCER_BR_SERIE_A 2025",
      "status": "INFO",
      "details": "1 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: 6.5",
      "count": 1
    },
    {
      "category": "Seasons",
      "check": "SOCCER_BR_SERIE_A 2024",
      "status": "INFO",
      "details": "3 games (0% complete, 67% odds) | Avg spread: 0.8, Avg total: 1.5",
      "count": 3
    },
    {
      "category": "Seasons",
      "check": "SOCCER_BUNDESLIGA 2026",
      "status": "INFO",
      "details": "4 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: 2.5",
      "count": 4
    },
    {
      "category": "Seasons",
      "check": "SOCCER_BUNDESLIGA 2025",
      "status": "INFO",
      "details": "1 games (0% complete, 0% odds) | Avg spread: 2.0, Avg total: 4.5",
      "count": 1
    },
    {
      "category": "Seasons",
      "check": "SOCCER_BUNDESLIGA 2024",
      "status": "INFO",
      "details": "2 games (0% complete, 100% odds) | Avg spread: 0.3, Avg total: 3.0",
      "count": 2
    },
    {
      "category": "Seasons",
      "check": "SOCCER_EPL 2026",
      "status": "INFO",
      "details": "5 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 5
    },
    {
      "category": "Seasons",
      "check": "SOCCER_EPL 2025",
      "status": "INFO",
      "details": "2 games (0% complete, 100% odds) | Avg spread: 1.0, Avg total: 2.5",
      "count": 2
    },
    {
      "category": "Seasons",
      "check": "SOCCER_EPL 2024",
      "status": "INFO",
      "details": "1 games (0% complete, 100% odds) | Avg spread: 0.5, Avg total: 5.5",
      "count": 1
    },
    {
      "category": "Seasons",
      "check": "SOCCER_FR_LIGUE_1 2026",
      "status": "INFO",
      "details": "4 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 4
    },
    {
      "category": "Seasons",
      "check": "SOCCER_FR_LIGUE_1 2024",
      "status": "INFO",
      "details": "1 games (0% complete, 100% odds) | Avg spread: 2.0, Avg total: 4.5",
      "count": 1
    },
    {
      "category": "Seasons",
      "check": "SOCCER_INTERNATIONAL_SOCCER 2026",
      "status": "INFO",
      "details": "2 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 2
    },
    {
      "category": "Seasons",
      "check": "SOCCER_INTERNATIONAL_SOCCER 2025",
      "status": "INFO",
      "details": "4 games (0% complete, 0% odds) | Avg spread: 0.3, Avg total: 3.2",
      "count": 4
    },
    {
      "category": "Seasons",
      "check": "SOCCER_IT_SERIE_A 2026",
      "status": "INFO",
      "details": "4 games (0% complete, 0% odds) | Avg spread: 0.5, Avg total: 1.5",
      "count": 4
    },
    {
      "category": "Seasons",
      "check": "SOCCER_LA_LIGA 2026",
      "status": "INFO",
      "details": "5 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 5
    },
    {
      "category": "Seasons",
      "check": "SOCCER_LA_LIGA 2024",
      "status": "INFO",
      "details": "1 games (0% complete, 100% odds) | Avg spread: N/A, Avg total: 3.5",
      "count": 1
    },
    {
      "category": "Seasons",
      "check": "SOCCER_LIGA_MX 2026",
      "status": "INFO",
      "details": "2 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 2
    },
    {
      "category": "Seasons",
      "check": "SOCCER_LIGA_MX 2025",
      "status": "INFO",
      "details": "1 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 1
    },
    {
      "category": "Seasons",
      "check": "SOCCER_LIGA_MX 2024",
      "status": "INFO",
      "details": "1 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 1
    },
    {
      "category": "Seasons",
      "check": "SOCCER_MLS 2026",
      "status": "PASS",
      "details": "83 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 83
    },
    {
      "category": "Seasons",
      "check": "SOCCER_MLS 2025",
      "status": "INFO",
      "details": "2 games (0% complete, 0% odds) | Avg spread: 0.8, Avg total: 5.0",
      "count": 2
    },
    {
      "category": "Seasons",
      "check": "SOCCER_UEFA_CHAMPIONS_LEAGUE 2026",
      "status": "INFO",
      "details": "1 games (0% complete, 0% odds) | Avg spread: 1.0, Avg total: 3.5",
      "count": 1
    },
    {
      "category": "Seasons",
      "check": "SOCCER_UEFA_CHAMPIONS_LEAGUE 2025",
      "status": "INFO",
      "details": "1 games (0% complete, 0% odds) | Avg spread: 0.5, Avg total: 2.5",
      "count": 1
    },
    {
      "category": "Seasons",
      "check": "TENNIS_ATP 2026",
      "status": "INFO",
      "details": "2 games (0% complete, 100% odds) | Avg spread: 3.0, Avg total: 22.0",
      "count": 2
    },
    {
      "category": "Seasons",
      "check": "TENNIS_ATP 2025",
      "status": "INFO",
      "details": "7 games (0% complete, 100% odds) | Avg spread: 5.2, Avg total: 20.9",
      "count": 7
    },
    {
      "category": "Seasons",
      "check": "TENNIS_ATP 2024",
      "status": "INFO",
      "details": "3 games (0% complete, 67% odds) | Avg spread: 5.5, Avg total: 18.5",
      "count": 3
    },
    {
      "category": "Seasons",
      "check": "TENNIS_WTA 2026",
      "status": "INFO",
      "details": "4 games (0% complete, 75% odds) | Avg spread: 2.8, Avg total: 21.4",
      "count": 4
    },
    {
      "category": "Seasons",
      "check": "TENNIS_WTA 2025",
      "status": "INFO",
      "details": "8 games (0% complete, 88% odds) | Avg spread: 5.5, Avg total: 21.1",
      "count": 8
    },
    {
      "category": "Seasons",
      "check": "TENNIS_WTA 2024",
      "status": "INFO",
      "details": "2 games (0% complete, 100% odds) | Avg spread: 5.0, Avg total: 19.0",
      "count": 2
    },
    {
      "category": "Seasons",
      "check": "UCL 2026",
      "status": "PASS",
      "details": "54 games (33% complete, 91% odds) | Avg spread: 1.0, Avg total: 3.1",
      "count": 54
    },
    {
      "category": "Seasons",
      "check": "UCL 2025",
      "status": "INFO",
      "details": "2 games (100% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 2
    },
    {
      "category": "Seasons",
      "check": "UCL 2024",
      "status": "PASS",
      "details": "84 games (0% complete, 58% odds) | Avg spread: 0.4, Avg total: 3.2",
      "count": 84
    },
    {
      "category": "Seasons",
      "check": "UEL 2025",
      "status": "INFO",
      "details": "30 games (0% complete, 10% odds) | Avg spread: N/A, Avg total: 2.5",
      "count": 30
    },
    {
      "category": "Seasons",
      "check": "UEL 2024",
      "status": "PASS",
      "details": "62 games (0% complete, 37% odds) | Avg spread: 0.3, Avg total: 3.3",
      "count": 62
    },
    {
      "category": "Seasons",
      "check": "UFC 2026",
      "status": "INFO",
      "details": "11 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 11
    },
    {
      "category": "Seasons",
      "check": "UFC 2025",
      "status": "INFO",
      "details": "19 games (0% complete, 0% odds) | Avg spread: N/A, Avg total: N/A",
      "count": 19
    },
    {
      "category": "Seasons",
      "check": "WNBA 2025",
      "status": "PASS",
      "details": "589 games (45% complete, 7% odds) | Avg spread: 5.6, Avg total: 159.8",
      "count": 589
    },
    {
      "category": "Seasons",
      "check": "WNBA 2024",
      "status": "PASS",
      "details": "511 games (40% complete, 30% odds) | Avg spread: 10.5, Avg total: 161.6",
      "count": 511
    },
    {
      "category": "Seasons",
      "check": "WTA 2024",
      "status": "PASS",
      "details": "92 games (0% complete, 85% odds) | Avg spread: 5.9, Avg total: 22.1",
      "count": 92
    }
  ],
  "recommendations": [
    {
      "check": "NCAAB Missing Scores",
      "recommendation": "Run score backfill script"
    },
    {
      "check": "EPL Missing Scores",
      "recommendation": "Run score backfill script"
    },
    {
      "check": "MMA Missing Scores",
      "recommendation": "Run score backfill script"
    },
    {
      "check": "BUNDESLIGA Missing Scores",
      "recommendation": "Run score backfill script"
    },
    {
      "check": "LALIGA Missing Scores",
      "recommendation": "Run score backfill script"
    },
    {
      "check": "LIGUE1 Missing Scores",
      "recommendation": "Run score backfill script"
    },
    {
      "check": "SERIEA Missing Scores",
      "recommendation": "Run score backfill script"
    },
    {
      "check": "UCL Missing Scores",
      "recommendation": "Run score backfill script"
    },
    {
      "check": "NHL Missing Scores",
      "recommendation": "Run score backfill script"
    },
    {
      "check": "NCAAB Missing Odds (Next 7 Days)",
      "recommendation": "Fetch odds from SportsGameOdds API"
    },
    {
      "check": "NBA Missing Odds (Next 7 Days)",
      "recommendation": "Fetch odds from SportsGameOdds API"
    },
    {
      "check": "NHL Missing Odds (Next 7 Days)",
      "recommendation": "Fetch odds from SportsGameOdds API"
    },
    {
      "check": "EPL Missing Odds (Next 7 Days)",
      "recommendation": "Fetch odds from SportsGameOdds API"
    },
    {
      "check": "BUNDESLIGA Missing Odds (Next 7 Days)",
      "recommendation": "Fetch odds from SportsGameOdds API"
    },
    {
      "check": "MMA Missing Odds (Next 7 Days)",
      "recommendation": "Fetch odds from SportsGameOdds API"
    },
    {
      "check": "LALIGA Missing Odds (Next 7 Days)",
      "recommendation": "Fetch odds from SportsGameOdds API"
    },
    {
      "check": "SERIEA Missing Odds (Next 7 Days)",
      "recommendation": "Fetch odds from SportsGameOdds API"
    },
    {
      "check": "LIGUE1 Missing Odds (Next 7 Days)",
      "recommendation": "Fetch odds from SportsGameOdds API"
    }
  ],
  "criticalIssues": [
    {
      "category": "Coverage",
      "check": "NCAAF Player Props",
      "details": "82 props for 17 players, 4 markets | Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Tue Jan 13 2026 00:00:00 GMT+0000 (Coordinated Universal Time)"
    },
    {
      "category": "Gaps",
      "check": "NCAAB Missing Scores",
      "details": "915 games missing scores (Sat Jan 03 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun Feb 01 2026 00:00:00 GMT+0000 (Coordinated Universal Time))"
    },
    {
      "category": "Gaps",
      "check": "EPL Missing Scores",
      "details": "60 games missing scores (Wed Jan 07 2026 00:00:00 GMT+0000 (Coordinated Universal Time) to Sun Feb 01 2026 00:00:00 GMT+0000 (Coordinated Universal Time))"
    },
    {
      "category": "Gaps",
      "check": "NCAAB Missing Odds (Next 7 Days)",
      "details": "58 upcoming games without odds"
    },
    {
      "category": "Gaps",
      "check": "NBA Missing Odds (Next 7 Days)",
      "details": "47 upcoming games without odds"
    },
    {
      "category": "Gaps",
      "check": "NHL Missing Odds (Next 7 Days)",
      "details": "23 upcoming games without odds"
    },
    {
      "category": "Gaps",
      "check": "MLB Recent Player Stats",
      "details": "0/4477 players have stats in last 7 days (0.0%)"
    },
    {
      "category": "Gaps",
      "check": "NFL Recent Player Stats",
      "details": "0/2806 players have stats in last 7 days (0.0%)"
    }
  ]
}