Ingestion & Caching
A secured cron (Vercel Cron or Cloud Scheduler → /api/ingest) runs every five minutes during Purdue games, hourly for six hours after the final horn, and once daily at 12:00 a.m. ET otherwise. Each run refreshes the game log, season splits, standings, and persists a snapshot in managed storage (Firebase Firestore in production, JSON fallback locally).
Every request logs the data source in the UI badge. If ESPN returns stale or incomplete data the site automatically serves the last known good snapshot until a fresh ingest succeeds.
Fair Use & Compliance
The project honors ESPN and NCAA terms by limiting calls to documented public endpoints, applying sensible TTLs, and offering proper attribution. If you plan to fork or extend the tracker, keep the polite rate limiting and badges intact.