{
 "as_of": "2026-08-08",
 "source": "Reconciled against the Data Dawgs site, Worker source and inspected upstream projects on 2026-08-08. College Football roadmap ideas added from the 2026-08-08 CFB roadmap.",
 "tier": "pound",
 "graded": false,
 "note": "Two kinds of entry share this inventory. kind \"tool\" (NFL) carries delivery status. kind \"roadmap-idea\" (College Football) carries recommendation plus evidence-backed lifecycle and implementation state. A CFB artifact may be implemented without any MCP tool; candidate_mcp_tools are reservations and remain non-callable unless the independent Worker registry proves otherwise.",
 "cfb_roadmap": {
  "as_of": "2026-08-08",
  "domain": "College Football",
  "note": "The 12-step ordering is directional, not an irreversible commitment; dependencies ultimately determine the actual build sequence. Recommendations are recommendations, not permanent truths.",
  "steps": [
   {
    "step": 1,
    "title": "Foundation / canonical CFB data",
    "idea_ids": [
     "cfb-sportsdataverse",
     "cfb-cfbd",
     "cfb-games",
     "cfb-plays",
     "cfb-team-game",
     "cfb-player-game",
     "cfb-rosters",
     "cfb-market",
     "cfb-talent-dataset",
     "cfb-team-week",
     "cfb-public-outputs"
    ]
   },
   {
    "step": 2,
    "title": "Ratings registry",
    "idea_ids": [
     "cfb-ratings-registry",
     "cfb-elo"
    ]
   },
   {
    "step": 3,
    "title": "Model disagreement + receipts",
    "idea_ids": [
     "cfb-disagreement-lab",
     "cfb-model-receipts"
    ]
   },
   {
    "step": 4,
    "title": "Model diversity / consensus",
    "idea_ids": [
     "cfb-consensus-engine"
    ]
   },
   {
    "step": 5,
    "title": "Fourth-down engine",
    "idea_ids": [
     "cfb-fourth-down"
    ]
   },
   {
    "step": 6,
    "title": "Talent / recruiting / portal",
    "idea_ids": [
     "cfb-portal-flow",
     "cfb-acquisition-network",
     "cfb-returning-production",
     "cfb-talent-composite"
    ]
   },
   {
    "step": 7,
    "title": "Fraud Detector",
    "idea_ids": [
     "cfb-fraud-detector"
    ]
   },
   {
    "step": 8,
    "title": "Opponent-adjusted unit ratings + matchup engine",
    "idea_ids": [
     "cfb-unit-ratings",
     "cfb-matchup-fingerprints"
    ]
   },
   {
    "step": 9,
    "title": "Season / playoff path simulator",
    "idea_ids": [
     "cfb-season-sim"
    ]
   },
   {
    "step": 10,
    "title": "Coaching decision scorecards",
    "idea_ids": [
     "cfb-coaching-scorecards"
    ]
   },
   {
    "step": 11,
    "title": "Data Dawgs predictive model",
    "idea_ids": [
     "cfb-dd-power-rating"
    ]
   },
   {
    "step": 12,
    "title": "Experimental challenger models",
    "idea_ids": [
     "cfb-challenger-lab"
    ]
   }
  ],
  "recommendation_classes": {
   "build": "Strong recommendation: fits the DATA → MODELS/DETERMINISTIC TOOLS → API/MCP → AI → HUMAN DECISION architecture with a plausible path to useful production functionality. Modifiers distinguish foundation, high-priority and decision-engine work.",
   "lab": "Promising hypothesis worth testing. It must demonstrate incremental predictive or decision value before promotion, and it is explicitly allowed to fail.",
   "defer": "Interesting, but expected signal, data quality or maintenance economics do not justify building it now. The idea is kept.",
   "avoid-initially": "Possible eventual value, but current dependency, scraping, legal, reliability, maintenance or architectural concerns make it undesirable right now.",
   "not-needed": "Redundant with the architecture Data Dawgs is already building."
  },
  "lifecycle": {
   "statuses": [
    "idea",
    "evaluating",
    "planned",
    "building",
    "live",
    "deferred",
    "graveyard",
    "revived"
   ],
   "happy_path": "idea → evaluating → planned → building → live",
   "alternate_exits": [
    "idea/evaluating/live → deferred",
    "any → graveyard",
    "graveyard → revived"
   ],
   "policy": "Ideas are never silently deleted. Moving to the Graveyard means \"tested or evaluated, and currently not worth active resources\" — the record, its history and its lessons are retained so the Graveyard works as institutional memory, not a trash can.",
   "graveyard_postmortem_fields": [
    "original_hypothesis",
    "intended_outcome",
    "recommendation_when_proposed",
    "why_attempted",
    "implementation_version",
    "data_used",
    "validation_design",
    "expected_benefit",
    "actual_result",
    "performance_vs_baseline",
    "cost_complexity_maintenance",
    "known_failure_modes",
    "reason_retired",
    "date_retired",
    "receipts",
    "lessons_learned",
    "revival_conditions",
    "links",
    "lifecycle_history"
   ],
   "revival_question": "What would have to become true for us to dig this Dawg back up?"
  },
  "governance": [
   {
    "id": "cfb-gov-source-provenance",
    "name": "Source Provenance",
    "source_heading": "Source Provenance",
    "principle": "Every important derived CFB artifact should eventually be traceable to its source datasets and processing versions, the way the NFL backbone pins commits and snapshot hashes.",
    "applies_to": "every CFB idea",
    "related_ideas": [
     "cfb-sportsdataverse",
     "cfb-cfbd",
     "cfb-public-outputs"
    ]
   },
   {
    "id": "cfb-gov-snapshotting",
    "name": "Snapshotting / Receipts",
    "source_heading": "Snapshotting / Receipts",
    "principle": "Forecasts and model outputs used for grading must be frozen before outcomes occur. This is the same receipts discipline already live for NFL models.",
    "applies_to": "every CFB forecast or model output",
    "related_ideas": [
     "cfb-model-receipts"
    ]
   },
   {
    "id": "cfb-gov-model-cards",
    "name": "Model Cards",
    "source_heading": "Model Cards",
    "principle": "Important models eventually document purpose, target, features, training window, validation design, known limitations, calibration, performance, failure modes, version and retirement status.",
    "applies_to": "every CFB model promoted past the lab",
    "related_ideas": [
     "cfb-dd-power-rating",
     "cfb-xrepa",
     "cfb-challenger-lab"
    ]
   },
   {
    "id": "cfb-gov-baseline",
    "name": "Baseline Requirement",
    "source_heading": "Baseline Requirement",
    "principle": "No sophisticated model is promoted merely because it is sophisticated. Everything is benchmarked against the market and simple interpretable baselines.",
    "applies_to": "every CFB model",
    "related_ideas": [
     "cfb-elo",
     "cfb-challenger-lab",
     "cfb-dd-power-rating"
    ]
   },
   {
    "id": "cfb-gov-incremental",
    "name": "Incremental Information Test",
    "source_heading": "Incremental Information Test",
    "principle": "New models and features must demonstrate value relative to what Data Dawgs already knows before they earn production resources.",
    "applies_to": "every CFB model and feature family",
    "related_ideas": [
     "cfb-context-lab",
     "cfb-availability-lab",
     "cfb-challenger-lab"
    ]
   },
   {
    "id": "cfb-gov-correlation",
    "name": "Correlation Awareness",
    "source_heading": "Correlation Awareness",
    "principle": "Multiple correlated models are not multiple independent pieces of evidence. Consensus construction must measure error correlation before treating agreement as confirmation.",
    "applies_to": "every multi-model CFB surface",
    "related_ideas": [
     "cfb-consensus-engine",
     "cfb-disagreement-lab"
    ]
   },
   {
    "id": "cfb-gov-uncertainty",
    "name": "Uncertainty",
    "source_heading": "Uncertainty",
    "principle": "Avoid false precision, especially for weak or incomplete datasets such as NIL information. Outputs carry uncertainty and their date.",
    "applies_to": "every CFB output",
    "related_ideas": [
     "cfb-nil",
     "cfb-counterfactual",
     "cfb-fraud-detector"
    ]
   }
  ],
  "source_headings": [
   "SportsDataverse bulk-data ingestion",
   "CFBD enrichment/model ingestion",
   "Canonical CFB Games",
   "Canonical CFB Play-by-Play",
   "CFB Team-Game Dataset",
   "CFB Player-Game Dataset",
   "CFB Rosters / Identity Resolution",
   "CFB Market Dataset",
   "CFB Ratings Registry",
   "CFB Talent Dataset",
   "CFB Team-Week Analytical Layer",
   "Compact public CFB outputs",
   "Full offline-reprocessable upstream/raw pipeline",
   "Static SQLite / browser-queryable exploratory database",
   "CFB Model Disagreement Lab",
   "Model Receipts / Historical Grading",
   "Model Diversity / Consensus Engine",
   "Continuous Elo / Glicko Rating",
   "Opponent-Adjusted Unit Ratings",
   "Data Dawgs Predictive Power Rating",
   "Deep/Trajectory Model",
   "XGBoost / Other ML Challenger Models",
   "CFBD Model Training Pack / educational modeling resources",
   "Transfer Portal Flow Network",
   "Recruiting Acquisition Network",
   "Player Acquisition Graph",
   "Returning Production",
   "Portal Net Flow",
   "Recruiting Composite / Talent Composite",
   "Raw 247 / On3 / Rivals Scraping",
   "NIL Deal Tracking / NIL Valuation",
   "Fourth-Down Decision Engine",
   "Fourth-Down Yards-Gained Distribution Model",
   "CPOE",
   "xREPA",
   "Matchup Fingerprints",
   "Counterfactual Simulator",
   "Schedule Path Simulator",
   "Game Leverage Index",
   "Prediction-Market Integration",
   "Overrated / Underrated Team Detector",
   "Coaching Trees",
   "Coaching Movement / Performance Delta",
   "Coaching Decision Scorecards",
   "Weather Effects",
   "Altitude",
   "Travel Distance / Time Zones",
   "Indoor / Outdoor Effects",
   "Injury / Availability Data",
   "Practice Participation / Beat-Writer Proxies",
   "Media / Reddit / Social Sentiment",
   "ESPN Total QBR Historical Layer",
   "Deterministic CFB MCP/API Tool Layer",
   "Local LLM Generated Reports",
   "Source Provenance",
   "Snapshotting / Receipts",
   "Model Cards",
   "Baseline Requirement",
   "Incremental Information Test",
   "Correlation Awareness",
   "Uncertainty"
  ]
 },
 "data": [
  {
   "id": "model-scoreboard",
   "name": "Model Scoreboard / Mean & Conflict",
   "intended_user_value": "Compare dated nfelo and 538 Classic beliefs game by game.",
   "existing_website_implementation": "/dawghouse.html#scoreboard",
   "existing_worker_mcp_implementation": "dd_model_scoreboard",
   "staged_worker_mcp_implementation": null,
   "required_data": "Uses the normalized prospective nfelo and 538 Classic receipts published by Data Dawgs.",
   "human_facing_ui_requirement": "Interactive game table with metric/source states.",
   "ai_language_requirement": "Explain the equal-weight mean, range, dissent and missing models without claiming a validated consensus blend.",
   "mcp_api_requirement": "Keep dd_model_scoreboard read-only and align its contract with the public JSON.",
   "machine_readable_requirement": "/data/model-receipts.json + /data/538-classic.json",
   "status": "complete",
   "exact_blocker": null,
   "minimum_path_to_completion": "No known blocker for the deployed scope.",
   "kind": "tool",
   "domain": "NFL"
  },
  {
   "id": "disagreement",
   "name": "Transparent Disagreement Engine",
   "intended_user_value": "Show mean, median, range, standard deviation and decision-boundary splits.",
   "existing_website_implementation": "/receipts.html#models + /calculators.html",
   "existing_worker_mcp_implementation": "dd_summarize_beliefs",
   "staged_worker_mcp_implementation": null,
   "required_data": "Any list of probabilities, plus the current scoreboard.",
   "human_facing_ui_requirement": "Belief-summary lab and per-game descriptive statistics.",
   "ai_language_requirement": "Descriptive uncertainty only; never call disagreement a predictive edge.",
   "mcp_api_requirement": "Keep dd_summarize_beliefs read-only and align its contract with the public JSON.",
   "machine_readable_requirement": "/data/model-contracts.json",
   "status": "complete",
   "exact_blocker": null,
   "minimum_path_to_completion": "No known blocker for the deployed scope.",
   "kind": "tool",
   "domain": "NFL"
  },
  {
   "id": "538-classic",
   "name": "538 Classic Elo",
   "intended_user_value": "Provide a permanent simple benchmark/control.",
   "existing_website_implementation": "/calculators.html",
   "existing_worker_mcp_implementation": "dd_elo_game",
   "staged_worker_mcp_implementation": null,
   "required_data": "Pinned official reference, completed canonical game history and the 2026 schedule snapshot.",
   "human_facing_ui_requirement": "Prospective scoreboard column plus one-game probability calculator.",
   "ai_language_requirement": "Permanent simple benchmark; reproduced historically and still ungraded prospectively.",
   "mcp_api_requirement": "Keep dd_elo_game read-only and align its contract with the public JSON.",
   "machine_readable_requirement": "/data/538-classic.json + /data/model-receipts.json + /data/538-classic-methodology.md",
   "status": "complete",
   "exact_blocker": null,
   "minimum_path_to_completion": "No known blocker for the deployed scope.",
   "kind": "tool",
   "domain": "NFL"
  },
  {
   "id": "nfelo",
   "name": "nfelo Power Ratings",
   "intended_user_value": "Use a dated public model output with Data Dawgs validation.",
   "existing_website_implementation": "/nfelo.html + /dawghouse.html#scoreboard",
   "existing_worker_mcp_implementation": "dd_analyze_matchup",
   "staged_worker_mcp_implementation": null,
   "required_data": "2026-08-06 nfelo snapshot and existing historical backtest.",
   "human_facing_ui_requirement": "Existing nfelo page plus Pound scoreboard.",
   "ai_language_requirement": "State that the backtest overlaps optimization and has not established out-of-sample skill.",
   "mcp_api_requirement": "Keep dd_analyze_matchup read-only and align its contract with the public JSON.",
   "machine_readable_requirement": "/data/nfelo.json + /data/models.json",
   "status": "complete",
   "exact_blocker": null,
   "minimum_path_to_completion": "No known blocker for the deployed scope.",
   "kind": "tool",
   "domain": "NFL"
  },
  {
   "id": "nfeloml",
   "name": "nfeloml EP / EPA / WP",
   "intended_user_value": "Offer deterministic play-level inference primitives.",
   "existing_website_implementation": "/dawghouse.html#inventory",
   "existing_worker_mcp_implementation": null,
   "staged_worker_mcp_implementation": null,
   "required_data": "MIT package and canonical play inputs.",
   "human_facing_ui_requirement": "Contract and provenance only.",
   "ai_language_requirement": "Do not present upstream calibration as Data Dawgs-verified.",
   "mcp_api_requirement": "Add a read-only Worker tool only after the required deterministic data or runtime is validated.",
   "machine_readable_requirement": "/data/upstream-models.json",
   "status": "backend-blocked",
   "exact_blocker": "Static GitHub Pages cannot run the Python/XGBoost package; a precompute job or Worker-compatible port is required.",
   "minimum_path_to_completion": "Run the MIT package in a scheduled precompute job with schema checks and publish static output, or build and validate a Worker-compatible inference port.",
   "kind": "tool",
   "domain": "NFL"
  },
  {
   "id": "nfeloqb",
   "name": "QB Context",
   "intended_user_value": "Measure starter/replacement and passing-context deltas.",
   "existing_website_implementation": "/dawghouse.html#inventory",
   "existing_worker_mcp_implementation": null,
   "staged_worker_mcp_implementation": null,
   "required_data": "Lawful dated output plus starter mapping.",
   "human_facing_ui_requirement": "Inventory card; no invented QB adjustment.",
   "ai_language_requirement": "Context is optional and unvalidated for DFS or game forecasting.",
   "mcp_api_requirement": "Add a read-only Worker tool only after the required deterministic data or runtime is validated.",
   "machine_readable_requirement": "/data/upstream-models.json",
   "status": "data-blocked",
   "exact_blocker": "No verified reusable license and no canonical Data Dawgs adapter.",
   "minimum_path_to_completion": "Obtain a reusable license, permission, or lawful dated output; then build the starter mapping, adapter, and prospective validation.",
   "kind": "tool",
   "domain": "NFL"
  },
  {
   "id": "wepa",
   "name": "Weighted EPA",
   "intended_user_value": "Compare context-weighted EPA with ordinary EPA.",
   "existing_website_implementation": "/dawghouse.html#inventory",
   "existing_worker_mcp_implementation": null,
   "staged_worker_mcp_implementation": null,
   "required_data": "Lawful methodology or output plus canonical play data.",
   "human_facing_ui_requirement": "Inventory card and explicit ordinary-EPA baseline.",
   "ai_language_requirement": "Any improvement claim waits on fixed out-of-sample tests.",
   "mcp_api_requirement": "Add a read-only Worker tool only after the required deterministic data or runtime is validated.",
   "machine_readable_requirement": "/data/upstream-models.json",
   "status": "data-blocked",
   "exact_blocker": "No verified reusable license and no Data Dawgs implementation.",
   "minimum_path_to_completion": "Obtain a reusable methodology or licensed output, implement the weighting against canonical play data, and test it against ordinary EPA out of sample.",
   "kind": "tool",
   "domain": "NFL"
  },
  {
   "id": "srs",
   "name": "SRS / Win-Total Ratings",
   "intended_user_value": "Estimate team strength, priors and schedule difficulty.",
   "existing_website_implementation": "/dawghouse.html#inventory",
   "existing_worker_mcp_implementation": null,
   "staged_worker_mcp_implementation": null,
   "required_data": "Timestamped lawful win-total market inputs and schedule.",
   "human_facing_ui_requirement": "Inventory card.",
   "ai_language_requirement": "Market inputs must carry source, time and vig handling.",
   "mcp_api_requirement": "Add a read-only Worker tool only after the required deterministic data or runtime is validated.",
   "machine_readable_requirement": "/data/upstream-models.json",
   "status": "data-blocked",
   "exact_blocker": "No verified reusable license or licensed market feed.",
   "minimum_path_to_completion": "Secure a lawful win-total feed and reusable methodology, then publish versioned preseason and weekly ratings from canonical schedules.",
   "kind": "tool",
   "domain": "NFL"
  },
  {
   "id": "hfa",
   "name": "Home-Field Adjustment Tracker",
   "intended_user_value": "Inspect the effect of a transparent HFA assumption.",
   "existing_website_implementation": "/calculators.html",
   "existing_worker_mcp_implementation": "dd_elo_game",
   "staged_worker_mcp_implementation": null,
   "required_data": "User-supplied ratings and HFA; site defaults are dated.",
   "human_facing_ui_requirement": "Interactive Elo/margin calculator.",
   "ai_language_requirement": "Labels inputs modelled and does not claim the default is current truth.",
   "mcp_api_requirement": "Keep dd_elo_game read-only and align its contract with the public JSON.",
   "machine_readable_requirement": "/data/models.json",
   "status": "frontend-only",
   "exact_blocker": "Historical HFA tracking feed is not built.",
   "minimum_path_to_completion": "Build a canonical historical-game input, estimate HFA by declared period/context, and publish a dated series with uncertainty.",
   "kind": "tool",
   "domain": "NFL"
  },
  {
   "id": "units",
   "name": "Unit Ratings",
   "intended_user_value": "Separate pass, rush and special-teams strengths.",
   "existing_website_implementation": "/dawghouse.html#inventory",
   "existing_worker_mcp_implementation": null,
   "staged_worker_mcp_implementation": null,
   "required_data": "Lawful unit outputs and canonical play data.",
   "human_facing_ui_requirement": "Inventory card.",
   "ai_language_requirement": "Upstream performance numbers remain upstream claims.",
   "mcp_api_requirement": "Add a read-only Worker tool only after the required deterministic data or runtime is validated.",
   "machine_readable_requirement": "/data/upstream-models.json",
   "status": "data-blocked",
   "exact_blocker": "Research/educational language is not a reusable software license.",
   "minimum_path_to_completion": "Obtain a reusable license, permission, or lawful output; normalize unit ratings to canonical teams and replicate performance claims independently.",
   "kind": "tool",
   "domain": "NFL"
  },
  {
   "id": "translation",
   "name": "Probability / Spread Translation",
   "intended_user_value": "Translate win probability into expected margin and cover estimates.",
   "existing_website_implementation": "/calculators.html",
   "existing_worker_mcp_implementation": "dd_translate_probability",
   "staged_worker_mcp_implementation": null,
   "required_data": "User probability and dated Data Dawgs normal residual SD.",
   "human_facing_ui_requirement": "Interactive calculator.",
   "ai_language_requirement": "Calls the result MODELLED and names the normal, independent, no-key-number assumption.",
   "mcp_api_requirement": "Keep dd_translate_probability read-only and align its contract with the public JSON.",
   "machine_readable_requirement": "/data/models.json + /data/model-contracts.json",
   "status": "complete",
   "exact_blocker": null,
   "minimum_path_to_completion": "No known blocker for the deployed scope.",
   "kind": "tool",
   "domain": "NFL"
  },
  {
   "id": "market",
   "name": "Market Normalizer",
   "intended_user_value": "Normalize American odds, implied probability, hold and devig probabilities.",
   "existing_website_implementation": "/calculators.html",
   "existing_worker_mcp_implementation": "dd_devig_market",
   "staged_worker_mcp_implementation": null,
   "required_data": "User-entered prices.",
   "human_facing_ui_requirement": "Odds and hold/vig calculators.",
   "ai_language_requirement": "No sportsbook feed, closing-line claim or vendor attribution.",
   "mcp_api_requirement": "Keep dd_devig_market read-only and align its contract with the public JSON.",
   "machine_readable_requirement": "/data/model-contracts.json",
   "status": "complete",
   "exact_blocker": null,
   "minimum_path_to_completion": "No known blocker for the deployed scope.",
   "kind": "tool",
   "domain": "NFL"
  },
  {
   "id": "cover-ev",
   "name": "Cover Probability / EV",
   "intended_user_value": "Turn a declared probability and price into break-even and expected value.",
   "existing_website_implementation": "/calculators.html",
   "existing_worker_mcp_implementation": "dd_calculate_bet_ev",
   "staged_worker_mcp_implementation": null,
   "required_data": "User probability and price, or the modelled normal translator.",
   "human_facing_ui_requirement": "Interactive calculator.",
   "ai_language_requirement": "Distinguishes the user/model probability from the price-implied probability.",
   "mcp_api_requirement": "Keep dd_calculate_bet_ev read-only and align its contract with the public JSON.",
   "machine_readable_requirement": "/data/model-contracts.json",
   "status": "complete",
   "exact_blocker": null,
   "minimum_path_to_completion": "No known blocker for the deployed scope.",
   "kind": "tool",
   "domain": "NFL"
  },
  {
   "id": "odds",
   "name": "Odds Converter",
   "intended_user_value": "Convert American odds to decimal odds and implied probability.",
   "existing_website_implementation": "/calculators.html",
   "existing_worker_mcp_implementation": "dd_convert_odds",
   "staged_worker_mcp_implementation": null,
   "required_data": "User-entered odds.",
   "human_facing_ui_requirement": "Interactive calculator.",
   "ai_language_requirement": "Deterministic conversion; no predictive claim.",
   "mcp_api_requirement": "Keep dd_convert_odds read-only and align its contract with the public JSON.",
   "machine_readable_requirement": "/data/model-contracts.json",
   "status": "complete",
   "exact_blocker": null,
   "minimum_path_to_completion": "No known blocker for the deployed scope.",
   "kind": "tool",
   "domain": "NFL"
  },
  {
   "id": "parlay",
   "name": "Parlay Calculator",
   "intended_user_value": "Compound declared leg prices.",
   "existing_website_implementation": "/calculators.html",
   "existing_worker_mcp_implementation": "dd_price_parlay",
   "staged_worker_mcp_implementation": null,
   "required_data": "User-entered American odds.",
   "human_facing_ui_requirement": "Interactive calculator.",
   "ai_language_requirement": "Multiplies declared prices; does not claim a correlation-aware joint probability.",
   "mcp_api_requirement": "Keep dd_price_parlay read-only and align its contract with the public JSON.",
   "machine_readable_requirement": "/data/model-contracts.json",
   "status": "complete",
   "exact_blocker": null,
   "minimum_path_to_completion": "No known blocker for the deployed scope.",
   "kind": "tool",
   "domain": "NFL"
  },
  {
   "id": "hedge",
   "name": "Hedge Calculator",
   "intended_user_value": "Size the opposite side for equal net outcome.",
   "existing_website_implementation": "/calculators.html",
   "existing_worker_mcp_implementation": "dd_calculate_hedge",
   "staged_worker_mcp_implementation": null,
   "required_data": "Original stake/price and hedge price.",
   "human_facing_ui_requirement": "Interactive calculator.",
   "ai_language_requirement": "Arithmetic, not advice; ignores limits, tax and execution risk.",
   "mcp_api_requirement": "Keep dd_calculate_hedge read-only and align its contract with the public JSON.",
   "machine_readable_requirement": "/data/model-contracts.json",
   "status": "complete",
   "exact_blocker": null,
   "minimum_path_to_completion": "No known blocker for the deployed scope.",
   "kind": "tool",
   "domain": "NFL"
  },
  {
   "id": "passer",
   "name": "NFL Passer Rating",
   "intended_user_value": "Reproduce the public deterministic NFL passer-rating formula.",
   "existing_website_implementation": "/calculators.html",
   "existing_worker_mcp_implementation": "dd_nfl_passer_rating",
   "staged_worker_mcp_implementation": null,
   "required_data": "Attempts, completions, yards, touchdowns and interceptions.",
   "human_facing_ui_requirement": "Interactive calculator.",
   "ai_language_requirement": "Descriptive statistic, not a forecast or QBR substitute.",
   "mcp_api_requirement": "Keep dd_nfl_passer_rating read-only and align its contract with the public JSON.",
   "machine_readable_requirement": "/data/model-contracts.json",
   "status": "complete",
   "exact_blocker": null,
   "minimum_path_to_completion": "No known blocker for the deployed scope.",
   "kind": "tool",
   "domain": "NFL"
  },
  {
   "id": "grader",
   "name": "Forecast Grader",
   "intended_user_value": "Compute Brier score and log loss for one declared forecast.",
   "existing_website_implementation": "/calculators.html",
   "existing_worker_mcp_implementation": "dd_score_forecast",
   "staged_worker_mcp_implementation": null,
   "required_data": "Probability and binary outcome.",
   "human_facing_ui_requirement": "Interactive calculator.",
   "ai_language_requirement": "One observation is not model validation; sample size stays visible.",
   "mcp_api_requirement": "Keep dd_score_forecast read-only and align its contract with the public JSON.",
   "machine_readable_requirement": "/data/model-contracts.json",
   "status": "complete",
   "exact_blocker": null,
   "minimum_path_to_completion": "No known blocker for the deployed scope.",
   "kind": "tool",
   "domain": "NFL"
  },
  {
   "id": "receipts",
   "name": "Immutable Multi-Model Receipts",
   "intended_user_value": "Make prospective forecasts auditable after outcomes are known.",
   "existing_website_implementation": "/dawghouse.html#inventory",
   "existing_worker_mcp_implementation": null,
   "staged_worker_mcp_implementation": null,
   "required_data": "Normalized forecasts, input snapshots and market state before kickoff.",
   "human_facing_ui_requirement": "Contract and link to the existing 2026 receipt ledger.",
   "ai_language_requirement": "Never mix backtests and prospective forecasts.",
   "mcp_api_requirement": "Add a read-only Worker tool only after the required deterministic data or runtime is validated.",
   "machine_readable_requirement": "/data/model-receipts.json + /data/model-contracts.json",
   "status": "complete",
   "exact_blocker": null,
   "minimum_path_to_completion": "No known blocker for the deployed scope.",
   "kind": "tool",
   "domain": "NFL"
  },
  {
   "id": "regimes",
   "name": "Regime Analysis",
   "intended_user_value": "Evaluate performance by declared football conditions.",
   "existing_website_implementation": "/dawghouse.html#inventory",
   "existing_worker_mcp_implementation": null,
   "staged_worker_mcp_implementation": null,
   "required_data": "Adequate prospective comparable samples and predeclared slices.",
   "human_facing_ui_requirement": "Inventory card only.",
   "ai_language_requirement": "Post-hoc slices are exploratory; sample sizes and multiple-comparison risk must be shown.",
   "mcp_api_requirement": "Add a read-only Worker tool only after the required deterministic data or runtime is validated.",
   "machine_readable_requirement": "/data/model-contracts.json",
   "status": "data-blocked",
   "exact_blocker": "Two-model prospective receipts exist, but no 2026 outcomes have occurred or been graded yet.",
   "minimum_path_to_completion": "Accumulate adequate prospective samples, preregister slices and minimum counts, and mark post-hoc analysis exploratory.",
   "kind": "tool",
   "domain": "NFL"
  },
  {
   "id": "ensembles",
   "name": "Ensemble Lab",
   "intended_user_value": "Compare mean, median and later weighted blends.",
   "existing_website_implementation": "/calculators.html",
   "existing_worker_mcp_implementation": null,
   "staged_worker_mcp_implementation": null,
   "required_data": "User-entered probabilities or future normalized forecasts.",
   "human_facing_ui_requirement": "Belief-summary calculator; equal-weight only.",
   "ai_language_requirement": "Complex methods wait until they beat equal weight on held-out data.",
   "mcp_api_requirement": "Expose the staged deterministic browser function through a read-only Worker tool using the published calculator contract.",
   "machine_readable_requirement": "/data/model-contracts.json",
   "status": "frontend-only",
   "exact_blocker": "Weighted ensembles need prospective error history.",
   "minimum_path_to_completion": "Accumulate prospective model errors, then benchmark mean, median and candidate weighting methods against the market and best individual model.",
   "kind": "tool",
   "domain": "NFL"
  },
  {
   "id": "nfl-data",
   "name": "NFL Data Backbone",
   "intended_user_value": "Create validated, reproducible canonical snapshots for every model.",
   "existing_website_implementation": "/dawghouse.html#inventory",
   "existing_worker_mcp_implementation": null,
   "staged_worker_mcp_implementation": null,
   "required_data": "nfelodcm, GitHub Actions, schema/freshness gates and snapshot retention.",
   "human_facing_ui_requirement": "Inventory and provenance contract.",
   "ai_language_requirement": "Fail closed on schema drift and suspicious row-count changes.",
   "mcp_api_requirement": "Static public schedule; no MCP calculation is required.",
   "machine_readable_requirement": "/data/nfl-schedule.json + /data/model-receipts.json + /data/upstream-models.json",
   "status": "complete",
   "exact_blocker": null,
   "minimum_path_to_completion": "No known blocker for the deployed scope.",
   "kind": "tool",
   "domain": "NFL"
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "live",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    },
    {
     "status": "building",
     "on": "2026-08-08",
     "note": "Built pinned, fail-closed schedule and market ingestion."
    },
    {
     "status": "live",
     "on": "2026-08-08",
     "note": "Canonical schedule and book-market snapshots published with source-byte hashes."
    }
   ],
   "implemented": true,
   "delivery_evidence": [
    "/scripts/cfb_data_backbone.py",
    "/scripts/cfb_market.py",
    "/data/cfb-schedule.json",
    "/data/cfb-market.json"
   ],
   "delivery_note": "Live for the schedule and book-market source families. Play-by-play remains a separate cfb-plays dependency.",
   "graveyard_ready": true,
   "priority": "high",
   "roadmap_step": 1,
   "recommendation_modifiers": [
    "foundation",
    "high-priority"
   ],
   "dependencies": [],
   "candidate_mcp_tools": [],
   "components": [],
   "related_ideas": [
    "cfb-cfbd",
    "cfb-games",
    "cfb-plays"
   ],
   "governance": [
    "cfb-gov-source-provenance"
   ],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-sportsdataverse",
   "name": "SportsDataverse Bulk-Data Ingestion",
   "category": "foundation",
   "recommendation": "build",
   "source_headings": [
    "SportsDataverse bulk-data ingestion"
   ],
   "rationale": "SportsDataverse already publishes analysis-ready CFB data. Reproducing the ESPN ingestion and enrichment ecosystem would be undifferentiated maintenance work.",
   "expected_value": "Primary bulk-data substrate: SportsDataverse → Data Dawgs canonical CFB layer feeding every downstream dataset.",
   "data_source_requirements": "Pinned SportsDataverse CFB releases with schema, freshness and row-count gates at ingest, mirroring the NFL backbone.",
   "deterministic_tool_potential": "Indirect — this is infrastructure every deterministic CFB tool sits on.",
   "validation_requirement": "Ingest gates fail closed on schema drift or suspicious row counts; retained snapshots make every load reproducible.",
   "risks_limitations": "Upstream schema drift and inherited coverage gaps; the layer must never silently pass upstream errors downstream.",
   "tags": [
    "CFB",
    "DATA-PIPE",
    "FOUNDATION",
    "HIGH-PRIORITY"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "high",
   "roadmap_step": 1,
   "recommendation_modifiers": [
    "foundation",
    "high-priority"
   ],
   "dependencies": [],
   "candidate_mcp_tools": [],
   "components": [],
   "related_ideas": [
    "cfb-sportsdataverse",
    "cfb-ratings-registry",
    "cfb-talent-dataset"
   ],
   "governance": [
    "cfb-gov-source-provenance"
   ],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-cfbd",
   "name": "CFBD Enrichment / Model Ingestion",
   "category": "foundation",
   "recommendation": "build",
   "source_headings": [
    "CFBD enrichment/model ingestion"
   ],
   "rationale": "CollegeFootballData.com is an enrichment and model feed — SP+, FPI, SRS, recruiting, talent, returning production, schedules — not the sole center of the architecture.",
   "expected_value": "CFBD → Data Dawgs canonical CFB layer: ratings and talent enrichments the bulk substrate does not carry.",
   "data_source_requirements": "CFBD API access with keys held outside the public repo; dated pulls; per-feed schema checks.",
   "deterministic_tool_potential": "Indirect — feeds the ratings registry and talent datasets.",
   "validation_requirement": "Every pull dated and snapshotted; feed-level gates; upstream numbers stay labelled as upstream claims until independently validated.",
   "risks_limitations": "API dependency, rate limits and upstream revisions; enrichment fields can change definitions between seasons.",
   "tags": [
    "CFB",
    "DATA-PIPE",
    "FOUNDATION",
    "HIGH-PRIORITY"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "live",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    },
    {
     "status": "building",
     "on": "2026-08-08",
     "note": "Canonicalized 2025 FBS-involved schedule and result facts."
    },
    {
     "status": "live",
     "on": "2026-08-08",
     "note": "Published 934 validated games with unique IDs and a reproducible snapshot hash."
    }
   ],
   "implemented": true,
   "delivery_evidence": [
    "/data/cfb-schedule.json",
    "/scripts/cfb_data_backbone.py",
    "/tests/test_cfb_data_backbone.py",
    "/work/mcp-block.js",
    "/work/test-mcp.mjs"
   ],
   "delivery_note": "Live for the completed 2025 season with a bounded production MCP game finder. The upstream 2026 schedule has not been published yet.",
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": 1,
   "recommendation_modifiers": [
    "foundation"
   ],
   "dependencies": [
    "cfb-sportsdataverse"
   ],
   "candidate_mcp_tools": [
    "dd_find_cfb_games"
   ],
   "components": [],
   "related_ideas": [
    "cfb-plays",
    "cfb-market"
   ],
   "governance": [
    "cfb-gov-source-provenance"
   ],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-games",
   "name": "Canonical CFB Games",
   "category": "foundation",
   "recommendation": "build",
   "source_headings": [
    "Canonical CFB Games"
   ],
   "rationale": "A canonical cfb_games dataset is the spine every schedule, rating, receipt and simulator joins against.",
   "expected_value": "Durable game IDs, results and kickoff context for all downstream CFB work.",
   "data_source_requirements": "SportsDataverse schedules/results reconciled with CFBD reference data.",
   "deterministic_tool_potential": "Yes — bounded canonical game reads and downstream reference joins.",
   "validation_requirement": "Unique game IDs, season/week coverage gates and snapshot hashes, like /data/nfl-schedule.json.",
   "risks_limitations": "FBS/FCS boundary cases, cancellations and rescheduling need explicit rules.",
   "tags": [
    "CFB",
    "DATA-PIPE",
    "FOUNDATION"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": 1,
   "recommendation_modifiers": [
    "foundation"
   ],
   "dependencies": [
    "cfb-sportsdataverse",
    "cfb-games"
   ],
   "candidate_mcp_tools": [],
   "components": [],
   "related_ideas": [
    "cfb-team-week",
    "cfb-fourth-down"
   ],
   "governance": [
    "cfb-gov-source-provenance"
   ],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-plays",
   "name": "Canonical CFB Play-by-Play",
   "category": "foundation",
   "recommendation": "build",
   "source_headings": [
    "Canonical CFB Play-by-Play"
   ],
   "rationale": "A canonical cfb_plays layer carries the useful play-level fields Data Dawgs needs without forcing downstream applications to understand the entire upstream schema.",
   "expected_value": "The substrate for EPA, success rate, fourth-down modelling, CPOE, xREPA and unit ratings.",
   "data_source_requirements": "SportsDataverse play-by-play with EPA/WP fields; documented field selection and derivation notes.",
   "deterministic_tool_potential": "Indirect — every play-level deterministic tool reads it.",
   "validation_requirement": "Row-count and coverage gates per season; spot-checks against published aggregates before anything downstream ships.",
   "risks_limitations": "CFB play-by-play is messier than NFL data: garbage-time definitions, clock quirks and missing fields need explicit handling.",
   "tags": [
    "CFB",
    "DATA-PIPE",
    "FOUNDATION"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "building",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    },
    {
     "status": "building",
     "on": "2026-08-08",
     "note": "Published the results-only foundation: two mirrored rows per canonical game. Play-derived aggregates remain unavailable."
    }
   ],
   "implemented": true,
   "delivery_evidence": [
    "/data/cfb-team-game.json",
    "/data/cfb-games-latest.json",
    "/scripts/cfb_team_results.py",
    "/tests/test_cfb_team_results.py",
    "/work/mcp-block.js"
   ],
   "delivery_note": "Partially implemented with observed schedule/result facts, a compact latest-completed-game row per FBS team, and a bounded exact-team game-history reader live over MCP. EPA, success, explosiveness, havoc and garbage-time fields still require canonical play-by-play.",
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": 1,
   "recommendation_modifiers": [
    "foundation"
   ],
   "dependencies": [
    "cfb-plays",
    "cfb-games"
   ],
   "candidate_mcp_tools": [
    "dd_find_cfb_team_games"
   ],
   "components": [],
   "related_ideas": [
    "cfb-team-week",
    "cfb-player-game"
   ],
   "governance": [],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-team-game",
   "name": "Canonical CFB Team-Game Dataset",
   "category": "foundation",
   "recommendation": "build",
   "source_headings": [
    "CFB Team-Game Dataset"
   ],
   "rationale": "Canonical cfb_team_game: one row per team per game, aggregated once, consistently, instead of separately inside every tool.",
   "expected_value": "Shared team-game aggregates for ratings, the fraud detector and the team-week layer.",
   "data_source_requirements": "Derived from canonical plays and games.",
   "deterministic_tool_potential": "Yes — bounded team-perspective game history is a deterministic read over the aggregate layer.",
   "validation_requirement": "Aggregates reconcile with the play layer; derivations documented and reproducible.",
   "risks_limitations": "Aggregation choices (garbage time, overtime) must be declared, not implicit.",
   "tags": [
    "CFB",
    "DATA-PIPE",
    "FOUNDATION"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": 1,
   "recommendation_modifiers": [
    "foundation"
   ],
   "dependencies": [
    "cfb-plays",
    "cfb-rosters"
   ],
   "candidate_mcp_tools": [],
   "components": [],
   "related_ideas": [
    "cfb-cpoe",
    "cfb-xrepa",
    "cfb-qbr"
   ],
   "governance": [],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-player-game",
   "name": "Canonical CFB Player-Game Dataset",
   "category": "foundation",
   "recommendation": "build",
   "source_headings": [
    "CFB Player-Game Dataset"
   ],
   "rationale": "Canonical cfb_player_game gives player-level analysis one consistent home instead of ad-hoc extraction per question.",
   "expected_value": "Player-game rows for CPOE, xREPA, QBR comparisons and portal/talent follow-up analysis.",
   "data_source_requirements": "Derived from canonical plays plus roster identity resolution.",
   "deterministic_tool_potential": "Indirect — aggregate layer.",
   "validation_requirement": "Player IDs resolve through the roster layer; totals reconcile with team-game rows.",
   "risks_limitations": "Player attribution in CFB play-by-play is incomplete for some seasons and stat types.",
   "tags": [
    "CFB",
    "DATA-PIPE",
    "FOUNDATION"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": 1,
   "recommendation_modifiers": [
    "foundation"
   ],
   "dependencies": [
    "cfb-sportsdataverse",
    "cfb-cfbd"
   ],
   "candidate_mcp_tools": [],
   "components": [],
   "related_ideas": [
    "cfb-portal-flow",
    "cfb-acquisition-network",
    "cfb-player-game"
   ],
   "governance": [],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-rosters",
   "name": "CFB Rosters / Identity Resolution",
   "category": "foundation",
   "recommendation": "build",
   "source_headings": [
    "CFB Rosters / Identity Resolution"
   ],
   "rationale": "Canonical cfb_rosters with durable IDs and cross-source identity handling. Portal, recruiting and player analysis all die without it.",
   "expected_value": "Durable player identity across SportsDataverse, CFBD, recruiting classes and portal moves.",
   "data_source_requirements": "SportsDataverse and CFBD rosters; documented matching rules; manual override table for hard cases.",
   "deterministic_tool_potential": "Indirect — identity layer.",
   "validation_requirement": "Match-rate reporting per source pair; ambiguous matches flagged rather than silently merged.",
   "risks_limitations": "Name collisions, transfers and roster churn make identity the highest-touch dataset in the foundation.",
   "tags": [
    "CFB",
    "DATA-PIPE",
    "FOUNDATION"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "building",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    },
    {
     "status": "building",
     "on": "2026-08-08",
     "note": "Published book-identified historical prices; observation time remains unknown."
    },
    {
     "status": "building",
     "on": "2026-08-08",
     "note": "Activated the immutable 24-hour pregame capture cron and public receipt export; first observations depend on eligible 2026 events entering the window."
    }
   ],
   "implemented": true,
   "delivery_evidence": [
    "/data/cfb-market.json",
    "/scripts/cfb_market.py",
    "/tests/test_cfb_market.py",
    "/work/mcp-block.js",
    "/work/test-mcp.mjs"
   ],
   "delivery_note": "Partially implemented. Historical book prices are live with explicit unknown timing and a no-CLV MCP reader. The timestamped 24-hour prospective collector and public export are active on the production Worker; first observations depend on eligible 2026 events entering the capture window.",
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": 1,
   "recommendation_modifiers": [
    "foundation"
   ],
   "dependencies": [
    "cfb-games"
   ],
   "candidate_mcp_tools": [
    "dd_find_cfb_historical_market"
   ],
   "components": [],
   "related_ideas": [
    "cfb-ratings-registry",
    "cfb-model-receipts",
    "cfb-prediction-markets"
   ],
   "governance": [
    "cfb-gov-source-provenance"
   ],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-market",
   "name": "CFB Market Dataset",
   "category": "foundation",
   "recommendation": "build",
   "source_headings": [
    "CFB Market Dataset"
   ],
   "rationale": "Canonical spreads, totals and relevant market observations. The market is the permanent benchmark every model must beat.",
   "expected_value": "Market baselines for grading; closing lines retained wherever possible for model evaluation.",
   "data_source_requirements": "A lawful, dated market feed with book and timestamp provenance — the same gate the NFL side already enforces.",
   "deterministic_tool_potential": "Yes — bounded historical market reads, with timing limitations enforced in the response.",
   "validation_requirement": "Every observation carries book, timestamp and line; closing-line retention is checked, not assumed.",
   "risks_limitations": "Historical closing lines with provenance are the hardest part; unprovenanced market numbers stay out, as on the NFL side.",
   "tags": [
    "CFB",
    "DATA-PIPE",
    "FOUNDATION",
    "MARKET"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "live",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    },
    {
     "status": "building",
     "on": "2026-08-08",
     "note": "Defined a source-locked normalization contract over the shipped Elo baseline."
    },
    {
     "status": "live",
     "on": "2026-08-08",
     "note": "Published 136 teams in one dated registry; unsupported outputs remain null and consensus remains explicitly unbuilt."
    }
   ],
   "implemented": true,
   "delivery_evidence": [
    "/data/cfb-ratings.json",
    "/scripts/cfb_ratings_registry.py",
    "/tests/test_cfb_ratings_registry.py",
    "/work/mcp-block.js"
   ],
   "delivery_note": "The registry contract is live with one independent, retrodictive Elo system. Bounded registry metadata and ranking/conference readers are live over MCP. CFBD systems and market context remain future additions; one system is not a consensus.",
   "graveyard_ready": true,
   "priority": "high",
   "roadmap_step": 2,
   "recommendation_modifiers": [
    "foundation",
    "high-priority"
   ],
   "dependencies": [
    "cfb-games",
    "cfb-elo"
   ],
   "candidate_mcp_tools": [
    "dd_get_cfb_rating_system",
    "dd_rank_cfb_teams"
   ],
   "components": [],
   "related_ideas": [
    "cfb-cfbd",
    "cfb-market",
    "cfb-disagreement-lab",
    "cfb-consensus-engine"
   ],
   "governance": [
    "cfb-gov-source-provenance"
   ],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-ratings-registry",
   "name": "CFB Ratings Registry",
   "category": "foundation",
   "recommendation": "build",
   "source_headings": [
    "CFB Ratings Registry"
   ],
   "rationale": "Canonical cfb_ratings stores independent rating and forecast systems consistently — SP+, FPI, SRS, Elo, Data Dawgs EPA ratings, the betting market and eventual Data Dawgs predictive models.",
   "expected_value": "Normalized expected margin, win probability, predicted total where applicable, and team strength — the comparable outputs everything downstream reads.",
   "data_source_requirements": "CFBD ratings feeds, the canonical market dataset and internally computed ratings, all dated per system per week.",
   "deterministic_tool_potential": "Yes — registry reads are deterministic lookups.",
   "validation_requirement": "Each system documents its normalization into comparable outputs; unconverted or unavailable fields stay null rather than being invented.",
   "risks_limitations": "Normalizing heterogeneous systems into comparable outputs is where silent errors live; the NFL model-contracts approach applies.",
   "tags": [
    "CFB",
    "FOUNDATION",
    "MODEL",
    "HIGH-PRIORITY"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": 1,
   "recommendation_modifiers": [
    "foundation"
   ],
   "dependencies": [
    "cfb-cfbd",
    "cfb-rosters"
   ],
   "candidate_mcp_tools": [],
   "components": [],
   "related_ideas": [
    "cfb-returning-production",
    "cfb-portal-flow",
    "cfb-talent-composite"
   ],
   "governance": [],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-talent-dataset",
   "name": "CFB Talent Dataset",
   "category": "foundation",
   "recommendation": "build",
   "source_headings": [
    "CFB Talent Dataset"
   ],
   "rationale": "Canonical talent, recruiting, returning-production and portal features in one dated dataset instead of scattered pulls.",
   "expected_value": "The feature substrate for the talent/portal ideas and preseason priors.",
   "data_source_requirements": "CFBD recruiting, talent, returning production and portal feeds keyed to canonical rosters.",
   "deterministic_tool_potential": "Indirect — feature layer.",
   "validation_requirement": "Feature families dated and versioned; coverage per team per season reported.",
   "risks_limitations": "Portal data is noisier than recruiting composites; coverage varies by season.",
   "tags": [
    "CFB",
    "DATA-PIPE",
    "FOUNDATION",
    "TALENT"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "building",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    },
    {
     "status": "building",
     "on": "2026-08-08",
     "note": "Published results-only team-period history and an exact compact latest row per team with opponent, venue, overall record, non-authoritative regular-season conference record and scoring facts. Advanced analytical metrics remain gated."
    }
   ],
   "implemented": true,
   "delivery_evidence": [
    "/data/cfb-team-week.json",
    "/data/cfb-team-week-latest.json",
    "/scripts/cfb_team_results.py",
    "/tests/test_cfb_team_results.py",
    "/work/mcp-block.js"
   ],
   "delivery_note": "Partially implemented. The live surfaces contain observed results, season-to-date scoring/record facts, an explicitly non-authoritative regular-season conference record and a compact exact latest-period row per team, with bounded history and latest readers live over MCP. The latest reader can compare conference records arithmetically but publishes no official rank or tiebreaker result; play, opponent-adjusted and market-performance metrics remain unavailable.",
   "graveyard_ready": true,
   "priority": "high",
   "roadmap_step": 1,
   "recommendation_modifiers": [
    "foundation",
    "high-priority"
   ],
   "dependencies": [
    "cfb-plays",
    "cfb-team-game",
    "cfb-market"
   ],
   "candidate_mcp_tools": [
    "dd_find_cfb_team_periods"
   ],
   "components": [],
   "related_ideas": [
    "cfb-unit-ratings",
    "cfb-fraud-detector",
    "cfb-ratings-registry"
   ],
   "governance": [
    "cfb-gov-uncertainty"
   ],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-team-week",
   "name": "CFB Team-Week Analytical Layer",
   "category": "foundation",
   "recommendation": "build",
   "source_headings": [
    "CFB Team-Week Analytical Layer"
   ],
   "rationale": "The canonical cfb_team_week layer is the standardized analytical substrate for downstream CFB tools.",
   "expected_value": "One dated row per team per week carrying the candidate metric set: EPA/play, offensive/defensive EPA, dropback and rush EPA, success rate, explosive rate, havoc, early-down EPA, late-down success, garbage-time-filtered metrics, rolling 3- and 5-game metrics, home/away splits, opponent-adjusted versions, strength of schedule, market performance and closing-line error.",
   "data_source_requirements": "Canonical plays, team-game aggregates and the market dataset.",
   "deterministic_tool_potential": "Yes — bounded exact-team period history is a deterministic read.",
   "validation_requirement": "Metric definitions documented once and spot-checked against published sources; opponent adjustment validated against known cases before anything downstream trusts it.",
   "risks_limitations": "Opponent adjustment and garbage-time filters are modelling choices, and must be labelled as such rather than presented as observation.",
   "tags": [
    "CFB",
    "FOUNDATION",
    "MODEL",
    "HIGH-PRIORITY"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "building",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    },
    {
     "status": "building",
     "on": "2026-08-08",
     "note": "Published compact 136-team rating profiles, 136 latest completed FBS team games and 230 results-only latest-period team rows, each locked to its exact source snapshot."
    }
   ],
   "implemented": true,
   "delivery_evidence": [
    "/data/cfb-teams.json",
    "/data/cfb-games-latest.json",
    "/data/cfb-team-week-latest.json",
    "/scripts/cfb_team_profiles.py",
    "/scripts/cfb_team_results.py",
    "/tests/test_cfb_team_profiles.py",
    "/tests/test_cfb_team_results.py"
   ],
   "delivery_note": "Partially implemented with compact rating profiles, exact latest completed FBS team games and exact latest-period team rows carrying overall and non-authoritative conference records; both latest surfaces are readable over MCP as the latest-per-team scope of the team-game and team-period readers. Richer team-week metrics and model grades remain future outputs.",
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": 1,
   "recommendation_modifiers": [
    "foundation"
   ],
   "dependencies": [
    "cfb-games",
    "cfb-team-week",
    "cfb-ratings-registry"
   ],
   "candidate_mcp_tools": [
    "dd_find_cfb_team_games",
    "dd_find_cfb_team_periods"
   ],
   "components": [],
   "related_ideas": [
    "cfb-sqlite-explorer",
    "cfb-mcp-layer"
   ],
   "governance": [
    "cfb-gov-source-provenance"
   ],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-public-outputs",
   "name": "Compact Public CFB Outputs",
   "category": "delivery",
   "recommendation": "build",
   "source_headings": [
    "Compact public CFB outputs"
   ],
   "rationale": "Publish compact derived outputs rather than dumping massive play-by-play datasets into the website repository — the same envelope-and-manifest discipline as the existing /data/ contract.",
   "expected_value": "A possible /data/cfb/ family: manifest.json, teams.json, games-latest.json, team-week-latest.json, ratings-latest.json, disagreement-latest.json, model-grades.json.",
   "data_source_requirements": "The canonical CFB layers above; every file carries as_of, source and a manifest entry.",
   "deterministic_tool_potential": "Yes — static surfaces are the cheapest deterministic reads.",
   "validation_requirement": "Same validator contract as existing /data/: envelope fields mandatory, manifest agreement enforced.",
   "risks_limitations": "Derived outputs drift from their sources unless rebuild discipline is enforced, exactly as AGENTS.md warns for the NFL data.",
   "tags": [
    "CFB",
    "DATA-PIPE",
    "FOUNDATION",
    "API"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": null,
   "recommendation_modifiers": [
    "defer-until-justified"
   ],
   "dependencies": [
    "cfb-sportsdataverse"
   ],
   "candidate_mcp_tools": [],
   "components": [],
   "related_ideas": [
    "cfb-public-outputs"
   ],
   "governance": [],
   "revisit_conditions": [
    "A real reprocessing need the canonical layer cannot answer",
    "Upstream reliability degrades",
    "Storage/maintenance cost drops materially"
   ],
   "notes": null,
   "id": "cfb-raw-pipeline",
   "name": "Full Offline-Reprocessable Raw Pipeline",
   "category": "delivery",
   "recommendation": "lab",
   "source_headings": [
    "Full offline-reprocessable upstream/raw pipeline"
   ],
   "rationale": "A raw → enriched → canonical archival pipeline with manifests and hashes is worth preserving as an option, but duplicating SportsDataverse infrastructure merely because we can is exactly the wrong instinct.",
   "expected_value": "Full reprocessability if upstream sources become unreliable or if a question needs fields the canonical layer dropped.",
   "data_source_requirements": "Bulk raw archives with storage and versioning costs accepted up front.",
   "deterministic_tool_potential": "Indirect.",
   "validation_requirement": "A concrete case where the canonical layer was insufficient — before any build starts.",
   "risks_limitations": "High storage and maintenance cost for value that SportsDataverse already provides.",
   "tags": [
    "CFB",
    "DATA-PIPE",
    "EXPERIMENTAL"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": null,
   "recommendation_modifiers": [],
   "dependencies": [
    "cfb-public-outputs"
   ],
   "candidate_mcp_tools": [],
   "components": [],
   "related_ideas": [
    "cfb-public-outputs"
   ],
   "governance": [],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-sqlite-explorer",
   "name": "Static SQLite / Browser-Queryable Explorer",
   "category": "delivery",
   "recommendation": "lab",
   "source_headings": [
    "Static SQLite / browser-queryable exploratory database"
   ],
   "rationale": "An OpenCFB-style static SQLite interface would let large datasets be queried without API credentials. Test the actual use case before committing.",
   "expected_value": "Ad-hoc exploration beyond what compact JSON surfaces answer.",
   "data_source_requirements": "Canonical CFB layers packed into a versioned static database.",
   "deterministic_tool_potential": "Yes — client-side SQL over a dated snapshot.",
   "validation_requirement": "Demonstrated real queries that the compact outputs cannot serve.",
   "risks_limitations": "Large static payloads against unknown demand; stats.html already shows the weight of heavy in-browser data.",
   "tags": [
    "CFB",
    "DATA-PIPE",
    "EXPERIMENTAL"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "evaluating",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    },
    {
     "status": "evaluating",
     "on": "2026-08-08",
     "note": "Published the 2025 Elo-vs-market probe as blocked; timestamped prospective prices are the named unblocker."
    }
   ],
   "implemented": true,
   "delivery_evidence": [
    "/data/cfb-disagreement.json",
    "/scripts/cfb_disagreement.py",
    "/tests/test_cfb_disagreement.py",
    "/work/mcp-block.js",
    "/work/test-mcp.mjs"
   ],
   "delivery_note": "The lab artifact and its aggregate read-only MCP reader are live, but the headline question remains blocked by historical prices without observation timestamps. The tool returns the blocker rather than a winner or blend.",
   "graveyard_ready": true,
   "priority": "high",
   "roadmap_step": 3,
   "recommendation_modifiers": [
    "high-priority"
   ],
   "dependencies": [
    "cfb-ratings-registry"
   ],
   "candidate_mcp_tools": [
    "dd_get_cfb_model_disagreement",
    "find_cfb_disagreements"
   ],
   "components": [],
   "related_ideas": [
    "cfb-consensus-engine",
    "cfb-model-receipts"
   ],
   "governance": [
    "cfb-gov-correlation"
   ],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-disagreement-lab",
   "name": "CFB Model Disagreement Lab",
   "category": "model-validation",
   "recommendation": "build",
   "source_headings": [
    "CFB Model Disagreement Lab"
   ],
   "rationale": "Compare independent models — SP+, FPI, SRS, Elo, DD EPA, DD predictive model, market — for individual games and teams. The purpose is not showing rankings; it is surfacing meaningful disagreement.",
   "expected_value": "The CFB counterpart of the live NFL scoreboard: where credible systems disagree is where attention belongs.",
   "data_source_requirements": "The ratings registry with normalized comparable outputs.",
   "deterministic_tool_potential": "Yes — descriptive disagreement statistics are deterministic.",
   "validation_requirement": "Descriptive only until graded: disagreement is not a predictive edge, matching the NFL Pound language.",
   "risks_limitations": "Correlated systems can agree and still be wrong; the display must not read agreement as confirmation.",
   "tags": [
    "CFB",
    "MODEL",
    "MODEL-RISK",
    "HIGH-PRIORITY"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "building",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    },
    {
     "status": "planned",
     "on": "2026-08-08",
     "note": "Prospective 24-hour market observation contract is staged; first model receipts wait on a 2026 schedule and pre-kickoff forecasts."
    },
    {
     "status": "building",
     "on": "2026-08-08",
     "note": "Published an empty append-only ledger and fail-closed append contract. No receipt is fabricated from completed 2025 games."
    }
   ],
   "implemented": true,
   "delivery_evidence": [
    "/data/cfb-model-receipts.json",
    "/scripts/cfb_model_receipts.py",
    "/tests/test_cfb_model_receipts.py",
    "/work/mcp-block.js",
    "/work/test-mcp.mjs"
   ],
   "delivery_note": "Receipt infrastructure is implemented, the public ledger is honestly empty, and a production read-only status tool reports that state without manufacturing grades. The timestamped market collector is active; the first model receipt still waits on a 2026 scheduled game and a forecast frozen before kickoff.",
   "graveyard_ready": true,
   "priority": "high",
   "roadmap_step": 3,
   "recommendation_modifiers": [
    "high-priority"
   ],
   "dependencies": [
    "cfb-ratings-registry",
    "cfb-market"
   ],
   "candidate_mcp_tools": [
    "dd_get_cfb_model_receipt_status",
    "get_cfb_model_grades"
   ],
   "components": [],
   "related_ideas": [
    "cfb-disagreement-lab",
    "cfb-consensus-engine"
   ],
   "governance": [
    "cfb-gov-snapshotting"
   ],
   "revisit_conditions": null,
   "notes": "Consolidates the receipts idea with the Snapshotting / Receipts governance principle: the principle (cfb-gov-snapshotting) states the rule; this entry is the build that implements it for CFB.",
   "id": "cfb-model-receipts",
   "name": "CFB Model Receipts / Historical Grading",
   "category": "model-validation",
   "recommendation": "build",
   "source_headings": [
    "Model Receipts / Historical Grading"
   ],
   "rationale": "Grade model forecasts historically, with forecast snapshots preserved before outcomes so evaluation is genuinely out-of-sample. Extends the snapshotting/receipts discipline already live for NFL models to CFB.",
   "expected_value": "Spread MAE and RMSE, moneyline Brier score, calibration, ATS versus closing line, total error, performance by season and week, and performance conditional on large disagreement or on market-versus-efficiency splits.",
   "data_source_requirements": "The ratings registry, the market dataset with closing lines, and append-only frozen forecast snapshots.",
   "deterministic_tool_potential": "Yes — grading a frozen ledger is deterministic.",
   "validation_requirement": "Receipts frozen before kickoff, never mixed with backtests — the exact rule the NFL ledger enforces.",
   "risks_limitations": "Grading against closing lines depends on the market dataset clearing its provenance gate.",
   "tags": [
    "CFB",
    "MODEL-RISK",
    "FORECASTING",
    "HIGH-PRIORITY"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "high",
   "roadmap_step": 4,
   "recommendation_modifiers": [
    "high-priority",
    "decision-engine"
   ],
   "dependencies": [
    "cfb-model-receipts",
    "cfb-disagreement-lab"
   ],
   "candidate_mcp_tools": [
    "get_cfb_consensus"
   ],
   "components": [],
   "related_ideas": [
    "cfb-ratings-registry"
   ],
   "governance": [
    "cfb-gov-correlation",
    "cfb-gov-incremental"
   ],
   "revisit_conditions": null,
   "notes": "Consolidates the consensus-engine idea with the Correlation Awareness governance principle: cfb-gov-correlation states the rule; this entry is the capability that operationalizes it.",
   "id": "cfb-consensus-engine",
   "name": "CFB Model Diversity / Consensus Engine",
   "category": "model-validation",
   "recommendation": "build",
   "source_headings": [
    "Model Diversity / Consensus Engine"
   ],
   "rationale": "Measure correlations among model errors; never treat agreement between highly correlated models as independent evidence. A diversity-adjusted consensus is built only from demonstrated incremental information.",
   "expected_value": "A consensus that knows how many independent opinions it actually contains — strongly aligned with model-risk management.",
   "data_source_requirements": "Graded receipts across enough games to estimate error correlations.",
   "deterministic_tool_potential": "Yes — a declared weighting over registry entries is deterministic.",
   "validation_requirement": "Any weighted blend must beat equal weight and the best single model on held-out data before it is called consensus — the standing NFL ensemble rule.",
   "risks_limitations": "Error-correlation estimates need seasons of graded receipts; until then only descriptive summaries ship.",
   "tags": [
    "CFB",
    "MODEL-RISK",
    "DECISION-ENGINE",
    "HIGH-PRIORITY"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "live",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    },
    {
     "status": "building",
     "on": "2026-08-08",
     "note": "Implemented the deterministic Elo baseline and fixed-parameter backtest."
    },
    {
     "status": "live",
     "on": "2026-08-08",
     "note": "Published ratings, calibration bins, market comparison, non-ranked retrodictive team diagnostics and generated model card."
    }
   ],
   "implemented": true,
   "delivery_evidence": [
    "/data/cfb-elo.json",
    "/data/cfb-model-cards.json",
    "/scripts/cfb_elo.py",
    "/tests/test_cfb_elo.py",
    "/work/mcp-block.js",
    "/work/test-mcp.mjs"
   ],
   "delivery_note": "The baseline is live and reproducible with a production generated model-card reader plus compact expected-versus-observed team diagnostics. Diagnostics are explicitly non-ranked, retrodictive and ungraded; no luck label or prospective 2026 claim is made.",
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": 2,
   "recommendation_modifiers": [],
   "dependencies": [
    "cfb-games"
   ],
   "candidate_mcp_tools": [
    "dd_get_cfb_model_card"
   ],
   "components": [],
   "related_ideas": [
    "cfb-ratings-registry",
    "cfb-challenger-lab"
   ],
   "governance": [
    "cfb-gov-baseline"
   ],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-elo",
   "name": "Continuous Elo / Glicko Rating",
   "category": "model-validation",
   "recommendation": "build",
   "source_headings": [
    "Continuous Elo / Glicko Rating"
   ],
   "rationale": "An independently reproducible continuous rating updated after games — an interpretable challenger and baseline, not presumed to outperform other systems.",
   "expected_value": "The permanent simple benchmark, playing the role 538 Classic Elo plays on the NFL side.",
   "data_source_requirements": "Canonical games only.",
   "deterministic_tool_potential": "Yes — pure recurrence over results.",
   "validation_requirement": "Reproducible from published parameters; graded through receipts like every other registry system.",
   "risks_limitations": "Deliberately simple: no talent, injury or market information.",
   "tags": [
    "CFB",
    "MODEL",
    "FORECASTING"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "high",
   "roadmap_step": 8,
   "recommendation_modifiers": [
    "high-priority"
   ],
   "dependencies": [
    "cfb-plays",
    "cfb-team-week"
   ],
   "candidate_mcp_tools": [],
   "components": [],
   "related_ideas": [
    "cfb-matchup-fingerprints",
    "cfb-ratings-registry"
   ],
   "governance": [
    "cfb-gov-incremental"
   ],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-unit-ratings",
   "name": "Opponent-Adjusted Unit Ratings",
   "category": "model-validation",
   "recommendation": "build",
   "source_headings": [
    "Opponent-Adjusted Unit Ratings"
   ],
   "rationale": "Ratings at the unit level — pass offense, pass defense, rush offense, rush defense, special teams, pressure, pass protection — instead of relying solely on team-level power ratings, translated where appropriate into game-level forecasts.",
   "expected_value": "The structure the matchup engine reads; team-level ratings conceal exactly the edges this exposes.",
   "data_source_requirements": "Canonical plays and the team-week layer with opponent adjustment.",
   "deterministic_tool_potential": "Yes — published unit ratings are deterministic reads.",
   "validation_requirement": "Unit ratings must demonstrate incremental game-forecast value over team-level ratings before the translation is trusted.",
   "risks_limitations": "Unit-level samples are small; opponent adjustment errors compound at this granularity.",
   "tags": [
    "CFB",
    "MODEL",
    "HIGH-PRIORITY"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "eventual",
   "roadmap_step": 11,
   "recommendation_modifiers": [
    "eventual"
   ],
   "dependencies": [
    "cfb-team-week",
    "cfb-model-receipts",
    "cfb-ratings-registry",
    "cfb-talent-dataset"
   ],
   "candidate_mcp_tools": [],
   "components": [],
   "related_ideas": [
    "cfb-challenger-lab",
    "cfb-elo"
   ],
   "governance": [
    "cfb-gov-baseline",
    "cfb-gov-incremental",
    "cfb-gov-model-cards"
   ],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-dd-power-rating",
   "name": "Data Dawgs Predictive Power Rating",
   "category": "model-validation",
   "recommendation": "build",
   "source_headings": [
    "Data Dawgs Predictive Power Rating"
   ],
   "rationale": "The house predictive model — developed only after canonical data, receipts and baseline infrastructure exist, and promoted only on demonstrated incremental out-of-sample value over simpler alternatives.",
   "expected_value": "A Data Dawgs rating in the registry graded on the same receipts as everyone else.",
   "data_source_requirements": "The team-week layer, talent features, the market benchmark and a working receipts pipeline.",
   "deterministic_tool_potential": "Yes — published ratings and projections are deterministic reads.",
   "validation_requirement": "Out-of-sample receipts against market, SP+, Elo and simple EPA regression baselines; a model card before promotion.",
   "risks_limitations": "The largest overfitting surface on this roadmap; deliberately sequenced near the end for that reason.",
   "tags": [
    "CFB",
    "MODEL",
    "FORECASTING"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": 12,
   "recommendation_modifiers": [],
   "dependencies": [
    "cfb-team-week",
    "cfb-model-receipts"
   ],
   "candidate_mcp_tools": [],
   "components": [
    {
     "name": "Deep / trajectory model",
     "source_heading": "Deep/Trajectory Model",
     "summary": "Forecast future team state/feature vectors and simulate games rather than estimating static team strength. Not promoted because it uses neural networks; it must beat reasonable baselines out-of-sample."
    },
    {
     "name": "XGBoost / other ML challengers",
     "source_heading": "XGBoost / Other ML Challenger Models",
     "summary": "Gradient-boosted and similar challengers as potential ensemble components, benchmarked against market, SP+, Elo, simple EPA regression and other simple interpretable models."
    }
   ],
   "related_ideas": [
    "cfb-dd-power-rating",
    "cfb-elo"
   ],
   "governance": [
    "cfb-gov-baseline",
    "cfb-gov-incremental",
    "cfb-gov-model-cards"
   ],
   "revisit_conditions": null,
   "notes": "Consolidation: the deep/trajectory and XGBoost headings become one challenger laboratory; each hypothesis is preserved as a named component with its own benchmark requirement.",
   "id": "cfb-challenger-lab",
   "name": "Challenger Model Laboratory",
   "category": "model-validation",
   "recommendation": "lab",
   "source_headings": [
    "Deep/Trajectory Model",
    "XGBoost / Other ML Challenger Models"
   ],
   "rationale": "One laboratory for experimental challenger models with two distinct hypotheses: trajectory simulation of future team state, and ML challengers over engineered features. Complexity earns no special treatment in either.",
   "expected_value": "Occasional genuine challengers and ensemble components; cheap, well-bounded failures otherwise.",
   "data_source_requirements": "The team-week layer, talent features and graded receipts for honest benchmarking.",
   "deterministic_tool_potential": "Only for models that survive the lab and publish frozen outputs.",
   "validation_requirement": "Every challenger is graded through receipts against the standing baselines; failing challengers go to the Graveyard with a postmortem.",
   "risks_limitations": "Experimental models are explicitly allowed to fail; the risk is letting one ship before it has beaten a baseline.",
   "tags": [
    "CFB",
    "MODEL",
    "EXPERIMENTAL"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": null,
   "recommendation_modifiers": [
    "reference"
   ],
   "dependencies": [],
   "candidate_mcp_tools": [],
   "components": [],
   "related_ideas": [
    "cfb-dd-power-rating",
    "cfb-challenger-lab"
   ],
   "governance": [],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-training-pack",
   "name": "CFBD Model Training Pack / Educational Resources",
   "category": "model-validation",
   "recommendation": "lab",
   "source_headings": [
    "CFBD Model Training Pack / educational modeling resources"
   ],
   "rationale": "Potential reference or educational resource. Do not create a dependency on paid training material if open tooling already provides the required capability.",
   "expected_value": "Methodological reference while building house models.",
   "data_source_requirements": "None beyond the material itself.",
   "deterministic_tool_potential": null,
   "validation_requirement": "A concrete capability gap that open tooling does not already cover.",
   "risks_limitations": "Paid-material dependency for capability that may be free elsewhere.",
   "tags": [
    "CFB",
    "EXPERIMENTAL"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "high",
   "roadmap_step": 6,
   "recommendation_modifiers": [
    "high-priority"
   ],
   "dependencies": [
    "cfb-rosters",
    "cfb-talent-dataset"
   ],
   "candidate_mcp_tools": [],
   "components": [
    {
     "name": "Portal flow network",
     "source_heading": "Transfer Portal Flow Network",
     "summary": "Transfers as a directed talent-flow network: net importers/exporters, where talent flows, feeder programs, who attracts high-value portal talent, ecosystem centralization, and how portal acquisition relates to subsequent performance — with graph statistics and null-model comparisons."
    },
    {
     "name": "Portal net flow",
     "source_heading": "Portal Net Flow",
     "summary": "The scalar view of the same ledger: talent gained versus lost per program, eventually integrated with team strength and counterfactual tools."
    }
   ],
   "related_ideas": [
    "cfb-acquisition-network",
    "cfb-counterfactual",
    "cfb-talent-composite"
   ],
   "governance": [
    "cfb-gov-incremental"
   ],
   "revisit_conditions": null,
   "notes": "Consolidation: Transfer Portal Flow Network and Portal Net Flow merge into one canonical entry; both underlying concepts are preserved as components.",
   "id": "cfb-portal-flow",
   "name": "Transfer Portal Flow Network & Net Flow",
   "category": "talent-portal",
   "recommendation": "build",
   "source_headings": [
    "Transfer Portal Flow Network",
    "Portal Net Flow"
   ],
   "rationale": "The flow network and net-flow metric are two views of one portal ledger: the graph explains structure, the net-flow number feeds team-strength and counterfactual work.",
   "expected_value": "Structural answers about the portal ecosystem plus a per-program net talent signal.",
   "data_source_requirements": "Portal entries and destinations keyed to canonical rosters and talent ratings.",
   "deterministic_tool_potential": "Yes — network statistics and net-flow are deterministic over the ledger.",
   "validation_requirement": "Null-model comparisons for network claims; net-flow must demonstrate incremental value before entering any forecast.",
   "risks_limitations": "Portal timing and rating coverage are uneven; per-player value weights are modelled, not observed.",
   "tags": [
    "CFB",
    "PORTAL",
    "NETWORK",
    "TALENT",
    "HIGH-PRIORITY"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": 6,
   "recommendation_modifiers": [],
   "dependencies": [
    "cfb-rosters",
    "cfb-talent-dataset"
   ],
   "candidate_mcp_tools": [],
   "components": [
    {
     "name": "Recruiting acquisition network",
     "source_heading": "Recruiting Acquisition Network",
     "summary": "School ↔ geography/hometown/state recruiting networks: structural footprints, pipelines and their changes through time."
    },
    {
     "name": "Unified player acquisition graph",
     "source_heading": "Player Acquisition Graph",
     "summary": "High-school recruiting and portal acquisition unified into one talent-acquisition view. caleb-chandler/cfb-player-acquisition-network is a methodological reference if still appropriate, not a hard production dependency."
    }
   ],
   "related_ideas": [
    "cfb-portal-flow",
    "cfb-talent-composite"
   ],
   "governance": [],
   "revisit_conditions": null,
   "notes": "Consolidation: Recruiting Acquisition Network and Player Acquisition Graph merge; the geography network and the unified graph are preserved as components.",
   "id": "cfb-acquisition-network",
   "name": "Player Acquisition Network",
   "category": "talent-portal",
   "recommendation": "build",
   "source_headings": [
    "Recruiting Acquisition Network",
    "Player Acquisition Graph"
   ],
   "rationale": "The recruiting-geography network and the unified acquisition graph are one capability at two zoom levels; building them separately would duplicate the identity and graph plumbing.",
   "expected_value": "Where programs source talent, how pipelines shift, and one graph covering both acquisition channels.",
   "data_source_requirements": "Recruiting classes with geography plus portal moves, keyed to canonical rosters.",
   "deterministic_tool_potential": "Yes — graph queries over a dated snapshot.",
   "validation_requirement": "Descriptive structure first; any predictive claim needs the incremental-information test.",
   "risks_limitations": "Hometown/geography data quality varies; graph aesthetics can outrun analytical content.",
   "tags": [
    "CFB",
    "RECRUITING",
    "NETWORK",
    "TALENT"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "high",
   "roadmap_step": 6,
   "recommendation_modifiers": [
    "high-priority"
   ],
   "dependencies": [
    "cfb-talent-dataset",
    "cfb-rosters"
   ],
   "candidate_mcp_tools": [],
   "components": [],
   "related_ideas": [
    "cfb-talent-composite",
    "cfb-counterfactual"
   ],
   "governance": [
    "cfb-gov-incremental"
   ],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-returning-production",
   "name": "Returning Production",
   "category": "talent-portal",
   "recommendation": "build",
   "source_headings": [
    "Returning Production"
   ],
   "rationale": "Returning production is a first-class preseason and early-season signal, not a footnote inside someone else’s rating.",
   "expected_value": "A dated returning-production feature per team feeding preseason priors and early-season adjustments.",
   "data_source_requirements": "CFBD returning production reconciled against canonical rosters and portal moves.",
   "deterministic_tool_potential": "Yes — published feature values are deterministic reads.",
   "validation_requirement": "Demonstrated early-season predictive value versus priors without it.",
   "risks_limitations": "Definition sensitivity: portal-era roster churn changes what \"returning\" means year to year.",
   "tags": [
    "CFB",
    "TALENT",
    "FORECASTING",
    "HIGH-PRIORITY"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": 6,
   "recommendation_modifiers": [],
   "dependencies": [
    "cfb-talent-dataset"
   ],
   "candidate_mcp_tools": [],
   "components": [],
   "related_ideas": [
    "cfb-returning-production",
    "cfb-portal-flow"
   ],
   "governance": [
    "cfb-gov-incremental"
   ],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-talent-composite",
   "name": "Recruiting / Talent Composite",
   "category": "talent-portal",
   "recommendation": "build",
   "source_headings": [
    "Recruiting Composite / Talent Composite"
   ],
   "rationale": "Maintain talent acquisition as an independent feature family instead of burying it inside a single rating.",
   "expected_value": "Composite talent features that models can include or exclude explicitly, keeping talent and performance signals separable.",
   "data_source_requirements": "CFBD recruiting and talent composites, dated per season.",
   "deterministic_tool_potential": "Yes — feature reads.",
   "validation_requirement": "Incremental value versus performance-only features before entering any forecast.",
   "risks_limitations": "Composites embed upstream rating choices Data Dawgs does not control.",
   "tags": [
    "CFB",
    "TALENT",
    "RECRUITING"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": null,
   "recommendation_modifiers": [],
   "dependencies": [],
   "candidate_mcp_tools": [],
   "components": [],
   "related_ideas": [
    "cfb-talent-composite",
    "cfb-talent-dataset"
   ],
   "governance": [],
   "revisit_conditions": [
    "A lawful structured feed or licensing route appears",
    "A demonstrated question CFBD data cannot answer",
    "Vendor terms change"
   ],
   "notes": null,
   "id": "cfb-recruiting-scrape",
   "name": "Raw 247 / On3 / Rivals Scraping",
   "category": "talent-portal",
   "recommendation": "avoid-initially",
   "source_headings": [
    "Raw 247 / On3 / Rivals Scraping"
   ],
   "rationale": "Possible incremental information exists, but CFBD already provides cleaned recruiting data. Scraping adds fragility, legal/ToS questions and permanent maintenance for undemonstrated gain.",
   "expected_value": "Marginal recruiting detail beyond the cleaned composites — currently unproven.",
   "data_source_requirements": "Would require scraping vendor sites against their terms of service.",
   "deterministic_tool_potential": null,
   "validation_requirement": "A demonstrated incremental need that CFBD data cannot satisfy, plus a lawful ingestion route.",
   "risks_limitations": "Fragile scrapers, ToS exposure and ongoing maintenance — the exact source-risk profile the NFL side declines.",
   "tags": [
    "CFB",
    "RECRUITING",
    "SOURCE-RISK"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": null,
   "recommendation_modifiers": [],
   "dependencies": [],
   "candidate_mcp_tools": [],
   "components": [],
   "related_ideas": [
    "cfb-portal-flow",
    "cfb-talent-composite"
   ],
   "governance": [
    "cfb-gov-uncertainty"
   ],
   "revisit_conditions": [
    "Verifiable NIL disclosure or reporting standards emerge",
    "A credible dataset with known coverage appears",
    "New evidence that even coarse NIL signals carry predictive lift"
   ],
   "notes": null,
   "id": "cfb-nil",
   "name": "NIL Deal Tracking / Valuation",
   "category": "talent-portal",
   "recommendation": "defer",
   "source_headings": [
    "NIL Deal Tracking / NIL Valuation"
   ],
   "rationale": "Sparse observations, opaque private deals, inconsistent definitions and self-reported numbers make any precise \"NIL value\" metric false precision today. The hypothesis stays alive; the metric does not ship.",
   "expected_value": "If defensible data ever exists: a market-structure signal for talent acquisition.",
   "data_source_requirements": "Currently unavailable at defensible quality; would need consistent, verifiable deal data.",
   "deterministic_tool_potential": null,
   "validation_requirement": "Coverage and definition audits before any number is published.",
   "risks_limitations": "Every input class is unreliable: private, self-reported, inconsistently defined.",
   "tags": [
    "CFB",
    "TALENT",
    "MARKET",
    "SOURCE-RISK"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "high",
   "roadmap_step": 5,
   "recommendation_modifiers": [
    "high-priority",
    "decision-engine"
   ],
   "dependencies": [
    "cfb-plays",
    "cfb-team-week"
   ],
   "candidate_mcp_tools": [
    "get_fourth_down_decision"
   ],
   "components": [
    {
     "name": "Decision engine",
     "source_heading": "Fourth-Down Decision Engine",
     "summary": "Deterministic game-state answers — \"4th-and-3 at the opponent 41, up four with 8:13 remaining: go, punt or kick?\" — returning the expected result of each choice and the decision advantage, not prose-only advice. Built on the open CFB fourth-down / EPA / WP modeling ecosystem."
    },
    {
     "name": "Yards-gained distribution model",
     "source_heading": "Fourth-Down Yards-Gained Distribution Model",
     "summary": "Supporting model: the existing SportsDataverse multi-class yards-distribution methodology, evaluated for whether it should feed the conversion outcomes inside the engine."
    }
   ],
   "related_ideas": [
    "cfb-coaching-scorecards",
    "cfb-counterfactual"
   ],
   "governance": [
    "cfb-gov-baseline"
   ],
   "revisit_conditions": null,
   "notes": "Consolidation: the yards-gained distribution model is preserved as a supporting component of the decision engine rather than a separate card.",
   "id": "cfb-fourth-down",
   "name": "Fourth-Down Decision Engine",
   "category": "decision-engine",
   "recommendation": "build",
   "source_headings": [
    "Fourth-Down Decision Engine",
    "Fourth-Down Yards-Gained Distribution Model"
   ],
   "rationale": "One of the best architectural fits for Data Dawgs: a bounded deterministic calculation an AI can call and a human can check.",
   "expected_value": "Per-choice expected value and decision advantage for any fourth-down state; the substrate for coaching scorecards.",
   "data_source_requirements": "Canonical plays with EPA/WP; the open fourth-down modeling ecosystem as scientific substrate.",
   "deterministic_tool_potential": "Yes — the defining example on this roadmap.",
   "validation_requirement": "Calibration of the underlying WP/EPA models on held-out CFB seasons; decision outputs benchmarked against the open ecosystem’s published results.",
   "risks_limitations": "CFB clock rules, pace and talent gaps differ from the NFL; imported assumptions must be re-validated, not assumed.",
   "tags": [
    "CFB",
    "DECISION-ENGINE",
    "MODEL",
    "MCP",
    "HIGH-PRIORITY"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": null,
   "recommendation_modifiers": [],
   "dependencies": [
    "cfb-plays",
    "cfb-player-game"
   ],
   "candidate_mcp_tools": [],
   "components": [],
   "related_ideas": [
    "cfb-xrepa",
    "cfb-qbr"
   ],
   "governance": [
    "cfb-gov-model-cards"
   ],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-cpoe",
   "name": "CPOE Layer",
   "category": "decision-engine",
   "recommendation": "build",
   "source_headings": [
    "CPOE"
   ],
   "rationale": "Completion probability over expectation as a player/team analytical layer where useful — a known-good construct ported to CFB data.",
   "expected_value": "QB and team passing evaluation less polluted by depth-of-target and situation mix.",
   "data_source_requirements": "Canonical plays with the fields a completion-probability model needs.",
   "deterministic_tool_potential": "Yes — published CPOE aggregates are deterministic reads.",
   "validation_requirement": "The completion-probability model gets a model card; CPOE stays descriptive until incremental predictive value is shown.",
   "risks_limitations": "CFB pass-level data quality varies more than NFL; expected-completion calibration must be checked per season.",
   "tags": [
    "CFB",
    "MODEL"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": null,
   "recommendation_modifiers": [],
   "dependencies": [
    "cfb-plays",
    "cfb-player-game"
   ],
   "candidate_mcp_tools": [],
   "components": [],
   "related_ideas": [
    "cfb-cpoe"
   ],
   "governance": [
    "cfb-gov-model-cards"
   ],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-xrepa",
   "name": "xREPA (Expected Rushing EPA)",
   "category": "decision-engine",
   "recommendation": "build",
   "source_headings": [
    "xREPA"
   ],
   "rationale": "Expected rushing EPA as an analytical and player-evaluation capability — with a clearly documented model card and definition required from the start.",
   "expected_value": "Rushing evaluation that separates situation from execution.",
   "data_source_requirements": "Canonical plays with rushing context fields.",
   "deterministic_tool_potential": "Yes — published aggregates are deterministic reads.",
   "validation_requirement": "A documented model card and definition before any number is published; descriptive until incremental value is shown.",
   "risks_limitations": "Definition drift is the known failure mode for expected-rushing constructs; hence the model-card requirement in the source roadmap.",
   "tags": [
    "CFB",
    "MODEL"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "high",
   "roadmap_step": 8,
   "recommendation_modifiers": [
    "high-priority",
    "decision-engine"
   ],
   "dependencies": [
    "cfb-unit-ratings"
   ],
   "candidate_mcp_tools": [
    "find_cfb_matchup_edges"
   ],
   "components": [],
   "related_ideas": [
    "cfb-fourth-down",
    "cfb-fraud-detector"
   ],
   "governance": [
    "cfb-gov-incremental"
   ],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-matchup-fingerprints",
   "name": "Matchup Fingerprints",
   "category": "decision-engine",
   "recommendation": "build",
   "source_headings": [
    "Matchup Fingerprints"
   ],
   "rationale": "Overall ratings conceal matchup-specific structure. Represent strengths and weaknesses across pass offense × pass defense, rush offense × rush defense, pressure × pass protection, explosiveness × explosive prevention, early downs × early downs, red zone × red zone, and havoc × ball security.",
   "expected_value": "Named, quantified matchup edges for any pairing — the analytical answer to \"where is this game actually won\".",
   "data_source_requirements": "Opponent-adjusted unit ratings across the fingerprint dimensions.",
   "deterministic_tool_potential": "Yes — edge-finding over published unit ratings is deterministic.",
   "validation_requirement": "Edges must demonstrate forecast value beyond team-level ratings before being presented as predictive rather than descriptive.",
   "risks_limitations": "Depends entirely on unit-rating quality; noisy units produce confident-looking false edges.",
   "tags": [
    "CFB",
    "DECISION-ENGINE",
    "MCP",
    "HIGH-PRIORITY"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": null,
   "recommendation_modifiers": [
    "decision-engine"
   ],
   "dependencies": [
    "cfb-ratings-registry",
    "cfb-talent-composite",
    "cfb-returning-production"
   ],
   "candidate_mcp_tools": [],
   "components": [],
   "related_ideas": [
    "cfb-season-sim",
    "cfb-portal-flow"
   ],
   "governance": [
    "cfb-gov-uncertainty"
   ],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-counterfactual",
   "name": "Counterfactual Simulator",
   "category": "decision-engine",
   "recommendation": "build",
   "source_headings": [
    "Counterfactual Simulator"
   ],
   "rationale": "Controlled what-if scenarios: different returning production, altered portal additions/losses, injuries/availability where reliable, different game outcomes, different team-strength assumptions — with uncertainty explicit.",
   "expected_value": "Disciplined counterfactuals instead of vibes: what actually changes if an assumption changes.",
   "data_source_requirements": "The ratings registry plus the talent/portal feature families being perturbed.",
   "deterministic_tool_potential": "Yes — declared perturbation in, distribution out, reproducibly.",
   "validation_requirement": "Every scenario labelled simulation; uncertainty bands mandatory; no counterfactual presented as observation.",
   "risks_limitations": "Counterfactuals inherit every modelling assumption underneath them; false precision is the standing hazard.",
   "tags": [
    "CFB",
    "SIMULATION",
    "DECISION-ENGINE"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "building",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    },
    {
     "status": "building",
     "on": "2026-08-08",
     "note": "Implemented an exact caller-supplied hypothetical schedule-path distribution plus per-game win-threshold leverage over the dated Elo registry; actual schedules, official standings, tiebreakers and playoff selection remain unbuilt."
    }
   ],
   "implemented": true,
   "delivery_evidence": [
    "/work/mcp-block.js",
    "/work/test-mcp.mjs",
    "/data/cfb-ratings.json"
   ],
   "delivery_note": "Partially implemented through live dd_project_cfb_schedule_path: exact Poisson-binomial win-count distributions and optional per-game win-threshold leverage for up to 20 caller-supplied matchups using fixed end-of-2025 Elo. Threshold leverage is not conference/playoff leverage; this is not an actual 2026 schedule, conference simulation or playoff model.",
   "graveyard_ready": true,
   "priority": "high",
   "roadmap_step": 9,
   "recommendation_modifiers": [
    "high-priority",
    "decision-engine"
   ],
   "dependencies": [
    "cfb-ratings-registry",
    "cfb-games"
   ],
   "candidate_mcp_tools": [
    "dd_project_cfb_schedule_path"
   ],
   "components": [
    {
     "name": "Season Monte Carlo",
     "source_heading": "Schedule Path Simulator",
     "summary": "Monte Carlo the remainder of a season: expected record, conference championship probability, playoff probability, seed distribution and conditional paths — \"what happens to Ohio State’s playoff path if they lose to Oregon?\""
    },
    {
     "name": "Game leverage index",
     "source_heading": "Game Leverage Index",
     "summary": "Derived capability of the same simulator: which remaining games swing conference/playoff outcomes most, computed by differencing conditional simulations."
    }
   ],
   "related_ideas": [
    "cfb-counterfactual",
    "cfb-prediction-markets"
   ],
   "governance": [
    "cfb-gov-uncertainty"
   ],
   "revisit_conditions": null,
   "notes": "Consolidation: Game Leverage Index is preserved as a derived component of the simulator rather than a separate card.",
   "id": "cfb-season-sim",
   "name": "Schedule Path Simulator",
   "category": "season-simulation",
   "recommendation": "build",
   "source_headings": [
    "Schedule Path Simulator",
    "Game Leverage Index"
   ],
   "rationale": "The leverage index is a derived output of the path simulator, not a second engine; one simulation core serves both.",
   "expected_value": "Playoff odds, seed distributions, conditional paths and per-game leverage from a single reproducible simulator.",
   "data_source_requirements": "The ratings registry for game probabilities plus canonical schedules and tiebreak/selection rules.",
   "deterministic_tool_potential": "Yes — seeded simulation with declared inputs is reproducible.",
   "validation_requirement": "Simulated probabilities carry their input ratings and date; selection-committee modelling is labelled as modelled, not rule-derived.",
   "risks_limitations": "Playoff selection is a committee, not a formula; that model layer carries irreducible uncertainty.",
   "tags": [
    "CFB",
    "SIMULATION",
    "DECISION-ENGINE",
    "MCP",
    "HIGH-PRIORITY"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": null,
   "recommendation_modifiers": [
    "add-when-available"
   ],
   "dependencies": [
    "cfb-market",
    "cfb-ratings-registry"
   ],
   "candidate_mcp_tools": [],
   "components": [],
   "related_ideas": [
    "cfb-consensus-engine"
   ],
   "governance": [],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-prediction-markets",
   "name": "Prediction-Market Integration",
   "category": "season-simulation",
   "recommendation": "build",
   "source_headings": [
    "Prediction-Market Integration"
   ],
   "rationale": "Prediction-market prices as another independent consensus signal — when sufficiently liquid and reliable CFB contracts exist. Market probability is a signal, not truth.",
   "expected_value": "An additional independent belief in the registry, useful precisely because its errors correlate differently.",
   "data_source_requirements": "Liquid CFB contracts with dated, attributable prices.",
   "deterministic_tool_potential": "Yes — dated price reads.",
   "validation_requirement": "Liquidity thresholds declared before inclusion; thin markets excluded rather than smoothed.",
   "risks_limitations": "CFB prediction-market liquidity is currently thin and uneven across games.",
   "tags": [
    "CFB",
    "MARKET",
    "FORECASTING"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "evaluating",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    },
    {
     "status": "evaluating",
     "on": "2026-08-08",
     "note": "Published a results-only record-versus-scoring divergence baseline with one-score records; no predictive labels are permitted yet."
    },
    {
     "status": "evaluating",
     "on": "2026-08-08",
     "note": "A leakage-resistant chronological holdout found a small incremental signal beyond Elo; the one-season retrodictive result keeps the detector evaluating and does not permit team labels."
    }
   ],
   "implemented": true,
   "delivery_evidence": [
    "/data/cfb-record-divergence.json",
    "/data/cfb-record-divergence-validation.json",
    "/scripts/cfb_record_divergence.py",
    "/scripts/cfb_record_divergence_validation.py",
    "/tests/test_cfb_record_divergence.py",
    "/tests/test_cfb_record_divergence_validation.py",
    "/work/mcp-block.js",
    "/work/test-mcp.mjs"
   ],
   "delivery_note": "The descriptive baseline now has a one-season, pregame-only chronological holdout: one Elo-offset coefficient improved Brier by 0.001123 and log loss by 0.002277 over 233 untouched games. A production read-only MCP explorer exposes the dated gaps and aggregate receipt without labels. This remains retrodictive, not market-adjusted or prospective, and does not authorize overrated/underrated team labels.",
   "graveyard_ready": true,
   "priority": "high",
   "roadmap_step": 7,
   "recommendation_modifiers": [
    "high-priority"
   ],
   "dependencies": [
    "cfb-team-week",
    "cfb-ratings-registry",
    "cfb-market"
   ],
   "candidate_mcp_tools": [
    "dd_find_cfb_record_divergence",
    "find_cfb_overrated_teams",
    "find_cfb_underrated_teams"
   ],
   "components": [],
   "related_ideas": [
    "cfb-disagreement-lab",
    "cfb-matchup-fingerprints"
   ],
   "governance": [
    "cfb-gov-uncertainty"
   ],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-fraud-detector",
   "name": "Overrated / Underrated Team Detector",
   "category": "fraud-detector",
   "recommendation": "build",
   "source_headings": [
    "Overrated / Underrated Team Detector"
   ],
   "rationale": "Identify gaps between observed results and underlying performance from record, point differential, EPA, success rate, postgame win expectancy, turnover variance, fourth-down variance, opponent strength, close-game results and market/SP+/FPI/Data Dawgs ratings. The calculation quantifies divergence; \"fraud\" is a brand, not a method.",
   "expected_value": "Expected record, luck index, underlying performance rank, market over/undervaluation and uncertainty — one of the strongest potential weekly CFB products.",
   "data_source_requirements": "The team-week layer, ratings registry and market dataset.",
   "deterministic_tool_potential": "Yes — declared divergence formulas over published inputs.",
   "validation_requirement": "Divergence must demonstrate forward predictive value (does \"fraud\" regress?) before any claim beyond description; outputs carry uncertainty.",
   "risks_limitations": "Luck metrics are seductive and noisy at CFB sample sizes; the label must never outrun the calculation.",
   "tags": [
    "CFB",
    "MODEL",
    "FORECASTING",
    "MCP",
    "HIGH-PRIORITY"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": null,
   "recommendation_modifiers": [],
   "dependencies": [
    "cfb-games"
   ],
   "candidate_mcp_tools": [],
   "components": [
    {
     "name": "Coaching trees",
     "source_heading": "Coaching Trees",
     "summary": "Coaching movement, ancestry, coordinator relationships, scheme inheritance and tenure as structural data. Interesting; predictive/decision value must be demonstrated."
    },
    {
     "name": "Movement / performance delta",
     "source_heading": "Coaching Movement / Performance Delta",
     "summary": "Performance changes associated with coaching and coordinator transitions, controlling for obvious confounders (talent, schedule, roster churn)."
    }
   ],
   "related_ideas": [
    "cfb-coaching-scorecards"
   ],
   "governance": [
    "cfb-gov-incremental"
   ],
   "revisit_conditions": null,
   "notes": "Consolidation: Coaching Trees and Coaching Movement / Performance Delta merge into one lab; both hypotheses are preserved as components.",
   "id": "cfb-coaching-lab",
   "name": "Coaching Networks & Transition Effects Lab",
   "category": "coaching",
   "recommendation": "lab",
   "source_headings": [
    "Coaching Trees",
    "Coaching Movement / Performance Delta"
   ],
   "rationale": "The tree is the structure and the performance delta is the test of whether that structure predicts anything; one lab covers both, sharing the same coaching-history dataset.",
   "expected_value": "If the delta analysis shows signal, a coaching-transition feature; if not, a documented negative result.",
   "data_source_requirements": "A coaching/coordinator history dataset keyed to canonical teams and seasons — itself a build.",
   "deterministic_tool_potential": "Only if promoted: tree queries and transition features would be deterministic reads.",
   "validation_requirement": "Transition effects must survive confounder controls and the incremental-information test before entering any forecast.",
   "risks_limitations": "Coaching changes correlate with everything else changing at once; attribution is genuinely hard.",
   "tags": [
    "CFB",
    "COACHING",
    "NETWORK",
    "EXPERIMENTAL"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": 10,
   "recommendation_modifiers": [],
   "dependencies": [
    "cfb-fourth-down",
    "cfb-plays"
   ],
   "candidate_mcp_tools": [],
   "components": [],
   "related_ideas": [
    "cfb-coaching-lab"
   ],
   "governance": [
    "cfb-gov-baseline"
   ],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-coaching-scorecards",
   "name": "Coaching Decision Scorecards",
   "category": "coaching",
   "recommendation": "build",
   "source_headings": [
    "Coaching Decision Scorecards"
   ],
   "rationale": "Separate coaching decision quality from realized outcomes across fourth-down decisions, timeout usage, two-point decisions, clock management, aggression and decision EPA/WP. Do not punish a mathematically correct decision because it happened to fail.",
   "expected_value": "Season-long decision-quality grading per staff — philosophically the most Data Dawgs product on this roadmap.",
   "data_source_requirements": "Canonical plays plus the fourth-down engine’s per-choice expected values.",
   "deterministic_tool_potential": "Yes — scorecards are deterministic aggregation over graded decisions.",
   "validation_requirement": "The underlying decision models must be calibrated first; scorecards inherit and must disclose their assumptions.",
   "risks_limitations": "Decision EPA/WP models embed assumptions coaches may rationally reject (roster, injury, weather context the model cannot see).",
   "tags": [
    "CFB",
    "COACHING",
    "DECISION-ENGINE"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": null,
   "recommendation_modifiers": [],
   "dependencies": [
    "cfb-games",
    "cfb-team-week"
   ],
   "candidate_mcp_tools": [],
   "components": [
    {
     "name": "Weather effects",
     "source_heading": "Weather Effects",
     "summary": "Test whether detailed weather features provide stable incremental forecast value."
    },
    {
     "name": "Altitude",
     "source_heading": "Altitude",
     "summary": "Test the effect instead of assuming its magnitude."
    },
    {
     "name": "Travel distance / time zones",
     "source_heading": "Travel Distance / Time Zones",
     "summary": "Test incremental value after controlling for team strength and venue."
    },
    {
     "name": "Indoor / outdoor effects",
     "source_heading": "Indoor / Outdoor Effects",
     "summary": "Potential interaction with weather and team style."
    }
   ],
   "related_ideas": [
    "cfb-availability-lab"
   ],
   "governance": [
    "cfb-gov-incremental"
   ],
   "revisit_conditions": null,
   "notes": "Consolidation: Weather, Altitude, Travel/Time Zones and Indoor/Outdoor merge into one contextual-effects lab; each hypothesis is preserved as a separately testable component.",
   "id": "cfb-context-lab",
   "name": "Contextual Effects Lab (Weather / Altitude / Travel / Venue)",
   "category": "context-signals",
   "recommendation": "lab",
   "source_headings": [
    "Weather Effects",
    "Altitude",
    "Travel Distance / Time Zones",
    "Indoor / Outdoor Effects"
   ],
   "rationale": "Four environmental hypotheses sharing one experimental design: engineer the feature, control for team strength and venue, and run the same incremental-information test. A single lab prevents four copies of the same harness.",
   "expected_value": "Whichever contextual features genuinely survive testing enter forecasts; the rest become documented negative results.",
   "data_source_requirements": "Venue metadata, historical weather, travel/time-zone derivations joined to canonical games.",
   "deterministic_tool_potential": "Only for features that graduate.",
   "validation_requirement": "Each component is separately tested against the no-context baseline; stable out-of-sample lift required for promotion.",
   "risks_limitations": "Contextual effects are small, collinear and easy to overfit; that is exactly why they are lab work.",
   "tags": [
    "CFB",
    "EXPERIMENTAL",
    "FORECASTING"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": null,
   "recommendation_modifiers": [
    "high-potential"
   ],
   "dependencies": [
    "cfb-rosters"
   ],
   "candidate_mcp_tools": [],
   "components": [
    {
     "name": "Structured injury / availability data",
     "source_heading": "Injury / Availability Data",
     "recommendation": "lab",
     "summary": "Potentially valuable, but data quality and reliable historical snapshots are major concerns. Explore trustworthy structured sources before relying on anything scraped."
    },
    {
     "name": "Practice participation / beat-writer proxies",
     "source_heading": "Practice Participation / Beat-Writer Proxies",
     "recommendation": "defer",
     "summary": "Potential signal, but unstructured-data maintenance and historical reproducibility could be expensive. Higher source risk than structured feeds — evidence of incremental value required before productionization."
    }
   ],
   "related_ideas": [
    "cfb-context-lab",
    "cfb-counterfactual"
   ],
   "governance": [
    "cfb-gov-incremental",
    "cfb-gov-snapshotting"
   ],
   "revisit_conditions": null,
   "notes": "Consolidation: the two availability headings merge into one lab while their differing source-risk recommendations are preserved per component (structured: lab; beat-writer proxies: defer).",
   "id": "cfb-availability-lab",
   "name": "Injury & Availability Signals Lab",
   "category": "context-signals",
   "recommendation": "lab",
   "source_headings": [
    "Injury / Availability Data",
    "Practice Participation / Beat-Writer Proxies"
   ],
   "rationale": "Availability is one signal family with two source classes carrying different risk: structured feeds are worth exploring now; beat-writer proxies are deferred until the structured route is exhausted and value is demonstrated.",
   "expected_value": "If historical snapshots prove reliable: one of the few context signals with plausible material forecast value.",
   "data_source_requirements": "Structured availability sources with reproducible historical snapshots; snapshots frozen at forecast time, like receipts.",
   "deterministic_tool_potential": "Only for signals that graduate.",
   "validation_requirement": "Historical reproducibility audit first — an availability signal that cannot be reconstructed as-of game time cannot be validated at all.",
   "risks_limitations": "CFB injury reporting is inconsistent by conference and era; retroactive data quietly leaks outcomes.",
   "tags": [
    "CFB",
    "EXPERIMENTAL",
    "SOURCE-RISK"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": null,
   "recommendation_modifiers": [],
   "dependencies": [],
   "candidate_mcp_tools": [],
   "components": [],
   "related_ideas": [
    "cfb-coaching-lab"
   ],
   "governance": [],
   "revisit_conditions": [
    "A cheap reproducible corpus becomes available",
    "Evidence emerges that sentiment leads rather than follows results",
    "A specific bounded question (e.g. coaching pressure) shows measurable lift"
   ],
   "notes": null,
   "id": "cfb-sentiment",
   "name": "Media / Reddit / Social Sentiment",
   "category": "alternative-signals",
   "recommendation": "defer",
   "source_headings": [
    "Media / Reddit / Social Sentiment"
   ],
   "rationale": "A potential experimental signal for coaching pressure or recruiting momentum, but likely noisy, endogenous, hard to reproduce, expensive to maintain and prone to narrative contamination.",
   "expected_value": "Speculative; retained as an idea, not a current priority.",
   "data_source_requirements": "Social/media firehoses with archival for reproducibility — expensive before any value is shown.",
   "deterministic_tool_potential": null,
   "validation_requirement": "Reproducible historical corpus plus demonstrated lift over public information already in the registry.",
   "risks_limitations": "Sentiment often just restates record and market — endogeneity is the default outcome.",
   "tags": [
    "CFB",
    "EXPERIMENTAL",
    "SOURCE-RISK"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": null,
   "recommendation_modifiers": [],
   "dependencies": [
    "cfb-player-game"
   ],
   "candidate_mcp_tools": [],
   "components": [],
   "related_ideas": [
    "cfb-cpoe"
   ],
   "governance": [
    "cfb-gov-incremental"
   ],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-qbr",
   "name": "ESPN Total QBR Historical Layer",
   "category": "alternative-signals",
   "recommendation": "lab",
   "source_headings": [
    "ESPN Total QBR Historical Layer"
   ],
   "rationale": "Investigate the incremental analytical value and a permitted, reliable ingestion route. Do not duplicate existing open functionality unnecessarily.",
   "expected_value": "A QB evaluation layer to test against CPOE/xREPA — kept only if it adds information.",
   "data_source_requirements": "A permitted, reliable QBR ingestion route with dated snapshots.",
   "deterministic_tool_potential": "Only if adopted: historical reads.",
   "validation_requirement": "Incremental value over the in-house passing layers before any dependency is created.",
   "risks_limitations": "Proprietary metric with an opaque method; ingestion permission and stability are unverified.",
   "tags": [
    "CFB",
    "MODEL",
    "SOURCE-RISK"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "live",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Captured as the read-only deterministic interface for validated CFB capabilities."
    },
    {
     "status": "building",
     "on": "2026-08-08",
     "note": "Implemented and evaluated canonical game, results-only team-game, compact latest-game, team-period and compact latest-period, and historical market lookup, generated model-card governance, rating-system discovery, bounded single-system rankings, team profile, comparison, hypothetical Elo matchup, exact hypothetical schedule-path, descriptive record-divergence, blocked model-disagreement and prospective-receipt status tools locally; all remain staged and non-callable in production."
    },
    {
     "status": "live",
     "on": "2026-08-08",
     "note": "Deployed sixteen validated, bounded, read-only CFB tools to the production toto Worker as version 4de01c9d-cff6-4234-9be1-3b93df6f49e7."
    }
   ],
   "implemented": true,
   "delivery_evidence": [
    "/work/mcp-block.js",
    "/work/test-mcp.mjs",
    "/data/cfb-ratings.json",
    "/data/cfb-record-divergence.json",
    "/data/cfb-record-divergence-validation.json",
    "/data/cfb-market.json",
    "/data/cfb-model-cards.json"
   ],
   "delivery_note": "Sixteen source-backed CFB tools are live in production, including canonical game, results-only team-game, compact latest-game, team-period and compact latest-period, no-CLV historical market lookup, generated model-card governance, rating-system discovery, bounded single-system rankings, exact matchup and schedule-path calculations, plus no-label divergence, blocked-study and prospective-receipt status readers. The production registry now contains 42 live tools total.",
   "graveyard_ready": true,
   "priority": "high",
   "roadmap_step": null,
   "recommendation_modifiers": [
    "foundation",
    "high-priority"
   ],
   "dependencies": [
    "cfb-games",
    "cfb-market",
    "cfb-ratings-registry",
    "cfb-disagreement-lab",
    "cfb-consensus-engine",
    "cfb-fourth-down",
    "cfb-matchup-fingerprints",
    "cfb-season-sim",
    "cfb-fraud-detector",
    "cfb-model-receipts",
    "cfb-team-week"
   ],
   "candidate_mcp_tools": [
    "dd_find_cfb_games",
    "dd_find_cfb_team_games",
    "dd_find_cfb_team_periods",
    "dd_find_cfb_historical_market",
    "dd_get_cfb_model_card",
    "dd_get_cfb_rating_system",
    "dd_rank_cfb_teams",
    "dd_cfb_team_profile",
    "dd_compare_cfb_teams",
    "dd_project_cfb_matchup",
    "dd_project_cfb_schedule_path",
    "dd_find_cfb_record_divergence",
    "dd_get_cfb_model_disagreement",
    "dd_get_cfb_model_receipt_status",
    "get_cfb_model_grades",
    "find_cfb_disagreements",
    "get_cfb_consensus",
    "get_fourth_down_decision",
    "find_cfb_matchup_edges",
    "find_cfb_overrated_teams",
    "find_cfb_underrated_teams"
   ],
   "components": [],
   "related_ideas": [
    "cfb-public-outputs"
   ],
   "governance": [],
   "revisit_conditions": null,
   "notes": null,
   "id": "cfb-mcp-layer",
   "name": "Deterministic CFB MCP/API Tool Layer",
   "category": "ai-interface",
   "recommendation": "build",
   "source_headings": [
    "Deterministic CFB MCP/API Tool Layer"
   ],
   "rationale": "The production product layer: read-only tools that call deterministic Data Dawgs computation, with the AI doing orchestration and explanation — fourteen CFB tools now run alongside the rest of the registry, and future names remain gated on their underlying capability.",
   "expected_value": "AI-callable CFB answers backed by receipts instead of vibes.",
   "data_source_requirements": "Each candidate tool depends on its underlying capability existing and being validated first.",
   "deterministic_tool_potential": "Yes — this entry is the tool layer itself.",
   "validation_requirement": "A candidate tool goes live only after its underlying computation is built, tested and deployed — the fourteen live readers passed that gate; remaining reserved names stay non-callable.",
   "risks_limitations": "The temptation is registering tool names before the computation earns them; the Pound exists to prevent exactly that.",
   "tags": [
    "CFB",
    "MCP",
    "API",
    "FOUNDATION",
    "HIGH-PRIORITY"
   ]
  },
  {
   "kind": "roadmap-idea",
   "domain": "College Football",
   "lifecycle_status": "idea",
   "lifecycle_history": [
    {
     "status": "idea",
     "on": "2026-08-08",
     "note": "Entered The Pound from the 2026-08-08 CFB roadmap."
    }
   ],
   "implemented": false,
   "delivery_evidence": [],
   "delivery_note": null,
   "graveyard_ready": true,
   "priority": "standard",
   "roadmap_step": null,
   "recommendation_modifiers": [],
   "dependencies": [],
   "candidate_mcp_tools": [],
   "components": [],
   "related_ideas": [
    "cfb-mcp-layer"
   ],
   "governance": [],
   "revisit_conditions": [
    "A requirement emerges that hosted models cannot serve (offline operation, private data that cannot leave the machine)",
    "The existing language layer becomes unavailable"
   ],
   "notes": null,
   "id": "cfb-llm-reports",
   "name": "Local LLM Generated Reports",
   "category": "ai-interface",
   "recommendation": "not-needed",
   "source_headings": [
    "Local LLM Generated Reports"
   ],
   "rationale": "A separate Ollama/report-writing architecture duplicates the language layer Claude/GPT/Toto already provide. A deterministic analytical capability is more valuable than another generated summary.",
   "expected_value": "None over the existing architecture.",
   "data_source_requirements": "None.",
   "deterministic_tool_potential": null,
   "validation_requirement": "Not applicable while redundant.",
   "risks_limitations": "Builds and maintains a second AI stack to produce prose the current stack already produces.",
   "tags": [
    "CFB",
    "EXPERIMENTAL"
   ]
  }
 ],
 "tier_meaning": "The DawgHouse (formerly The Pound) — shelved, with the reason attached.",
 "built": "2026-08-28",
 "canonical_url": "https://datadawgs216.com/data/pound-tools.json"
}