[
  {
    "id": "coverage-leaked-datamined-extracted-material",
    "sourceSurface": "Leaked/datamined/extracted material",
    "priority": "critical",
    "status": "reject",
    "reviewCadence": "always",
    "affectedRoutes": [
      "n/a"
    ],
    "nextLocalAction": "Rejected for hub use; do not host, summarize private documents, or rely on leaked/extracted assets.",
    "promotionEvidence": "Do not promote. Keep this source class rejected unless a future official/public evidence policy supersedes it.",
    "blockedInputs": [
      "leaked assets",
      "private build screenshots",
      "datamined files",
      "retailer placeholders as facts",
      "unsourced social reposts"
    ],
    "verificationGate": "npm run build && npm run validate",
    "approvalBoundary": "No production deploy, public post, newsletter send, external alert, account connection, or credential/runtime change without explicit approval.",
    "rollbackPath": "Remove or supersede the local queue/source row, rebuild generated exports, and add a corrections-log entry if reader-facing guidance changed."
  },
  {
    "id": "coverage-third-party-preorder-and-edition-pages",
    "sourceSurface": "Third-party preorder and edition pages",
    "priority": "critical",
    "status": "untrusted-discovery-only",
    "reviewCadence": "2026-05-12 public read-only search",
    "affectedRoutes": [
      "public search results"
    ],
    "nextLocalAction": "Do not promote pricing, editions, timelines, or expected bonuses from third-party speculation.",
    "promotionEvidence": "Do not promote. Keep this source class rejected unless a future official/public evidence policy supersedes it.",
    "blockedInputs": [
      "leaked assets",
      "private build screenshots",
      "datamined files",
      "retailer placeholders as facts",
      "unsourced social reposts"
    ],
    "verificationGate": "npm run build && npm run validate",
    "approvalBoundary": "No production deploy, public post, newsletter send, external alert, account connection, or credential/runtime change without explicit approval.",
    "rollbackPath": "Remove or supersede the local queue/source row, rebuild generated exports, and add a corrections-log entry if reader-facing guidance changed."
  },
  {
    "id": "freshness-buyer-store-watchlists",
    "sourceSurface": "content freshness SLA",
    "priority": "critical",
    "status": "scheduled-review",
    "reviewCadence": "weekly until official store pages exist; immediate review when preorder, edition, price, rating, or preload pages appear",
    "affectedRoutes": [
      "/buying-guide/",
      "/blog/gta-6-preorder-editions-watchlist/",
      "/newsletter/",
      "/data/platform-store-source-router.json"
    ],
    "nextLocalAction": "Official store, rating-board, support, refund, edition, bonus, price, preload, or platform metadata appears or changes.",
    "promotionEvidence": "Use the platform/store/source router first; keep price, edition, preload, and affiliate copy out until official evidence and disclosure rules are present.",
    "blockedInputs": [
      "retailer placeholders as facts",
      "fake edition tables",
      "affiliate urgency copy",
      "unverified screenshots",
      "leaked assets"
    ],
    "verificationGate": "npm run build && npm run validate",
    "approvalBoundary": "Affiliate links, sponsor copy, external email campaigns, and purchase CTAs require explicit approval.",
    "rollbackPath": "Keep the current route copy and data exports unchanged until the evidence gate passes; log any material correction before promotion."
  },
  {
    "id": "freshness-release-platform-core",
    "sourceSurface": "content freshness SLA",
    "priority": "critical",
    "status": "scheduled-review",
    "reviewCadence": "daily during announcement windows; immediately after Rockstar or Take-Two date/platform statements",
    "affectedRoutes": [
      "/release-date/",
      "/timeline/",
      "/confirmed-vs-rumoured/",
      "/faq/",
      "/data/facts.json"
    ],
    "nextLocalAction": "Any newer official date, platform, delay, store, or support signal changes the current launch answer or platform availability.",
    "promotionEvidence": "Rockstar, Take-Two, official platform-store, Rockstar Support, or launcher page must be reviewed; facts, timeline, FAQ/search, corrections log, sitemap/feed, and answer-engine packet must be regenerated together.",
    "blockedInputs": [
      "retailer placeholder dates",
      "influencer date claims",
      "screenshots without public official URLs",
      "leaked schedules",
      "leaked assets"
    ],
    "verificationGate": "npm run build && npm run validate",
    "approvalBoundary": "No deploy, public post, newsletter send, or external alert without explicit approval.",
    "rollbackPath": "Keep the current route copy and data exports unchanged until the evidence gate passes; log any material correction before promotion."
  },
  {
    "id": "coverage-accessibility-decision-layer-routing",
    "sourceSurface": "Accessibility decision-layer routing",
    "priority": "high",
    "status": "watchlist-gap",
    "reviewCadence": "2026-05-16 local build pass",
    "affectedRoutes": [
      "/blog/gta-6-accessibility-options-watchlist/"
    ],
    "nextLocalAction": "Use the accessibility decision layer to route assistive-needs, buying, launch-checklist, and source-policy decisions without promoting unconfirmed settings or leaked settings screens.",
    "promotionEvidence": "Promote only after a public official source exists and the affected route, source coverage ledger, correction log, and answer-engine exports are regenerated together.",
    "blockedInputs": [
      "leaked assets",
      "private build screenshots",
      "datamined files",
      "retailer placeholders as facts",
      "unsourced social reposts"
    ],
    "verificationGate": "npm run build && npm run validate",
    "approvalBoundary": "No production deploy, public post, newsletter send, external alert, account connection, or credential/runtime change without explicit approval.",
    "rollbackPath": "Remove or supersede the local queue/source row, rebuild generated exports, and add a corrections-log entry if reader-facing guidance changed."
  },
  {
    "id": "coverage-rockstar-newswire-preorder-edition-monitoring",
    "sourceSurface": "Rockstar Newswire preorder/edition monitoring",
    "priority": "high",
    "status": "watchlist-gap",
    "reviewCadence": "2026-05-12 public read-only search",
    "affectedRoutes": [
      "https://www.rockstargames.com/newswire/"
    ],
    "nextLocalAction": "No preorder/edition details promoted; keep buyer-intent pages as official gaps until official store/pages exist.",
    "promotionEvidence": "Promote only after a public official source exists and the affected route, source coverage ledger, correction log, and answer-engine exports are regenerated together.",
    "blockedInputs": [
      "leaked assets",
      "private build screenshots",
      "datamined files",
      "retailer placeholders as facts",
      "unsourced social reposts"
    ],
    "verificationGate": "npm run build && npm run validate",
    "approvalBoundary": "No production deploy, public post, newsletter send, external alert, account connection, or credential/runtime change without explicit approval.",
    "rollbackPath": "Remove or supersede the local queue/source row, rebuild generated exports, and add a corrections-log entry if reader-facing guidance changed."
  },
  {
    "id": "coverage-rockstar-support-and-launcher-pages",
    "sourceSurface": "Rockstar Support and launcher pages",
    "priority": "high",
    "status": "watchlist-gap",
    "reviewCadence": "monthly until support pages exist; immediately after PC or preload announcements",
    "affectedRoutes": [
      "/blog/is-gta-6-coming-to-pc/"
    ],
    "nextLocalAction": "Use support/launcher evidence for PC requirements, preload, accessibility, account, or technical setup only after a GTA VI-specific public support page exists.",
    "promotionEvidence": "Promote only after a public official source exists and the affected route, source coverage ledger, correction log, and answer-engine exports are regenerated together.",
    "blockedInputs": [
      "leaked assets",
      "private build screenshots",
      "datamined files",
      "retailer placeholders as facts",
      "unsourced social reposts"
    ],
    "verificationGate": "npm run build && npm run validate",
    "approvalBoundary": "No production deploy, public post, newsletter send, external alert, account connection, or credential/runtime change without explicit approval.",
    "rollbackPath": "Remove or supersede the local queue/source row, rebuild generated exports, and add a corrections-log entry if reader-facing guidance changed."
  },
  {
    "id": "coverage-social-community-forum-sources",
    "sourceSurface": "Social/community/forum sources",
    "priority": "high",
    "status": "watchlist-only",
    "reviewCadence": "ongoing approved public-read lane",
    "affectedRoutes": [
      "n/a"
    ],
    "nextLocalAction": "May seed FAQs and watchlist questions; requires primary-source confirmation before factual promotion.",
    "promotionEvidence": "Promote only after a public official source exists and the affected route, source coverage ledger, correction log, and answer-engine exports are regenerated together.",
    "blockedInputs": [
      "leaked assets",
      "private build screenshots",
      "datamined files",
      "retailer placeholders as facts",
      "unsourced social reposts"
    ],
    "verificationGate": "npm run build && npm run validate",
    "approvalBoundary": "No production deploy, public post, newsletter send, external alert, account connection, or credential/runtime change without explicit approval.",
    "rollbackPath": "Remove or supersede the local queue/source row, rebuild generated exports, and add a corrections-log entry if reader-facing guidance changed."
  },
  {
    "id": "freshness-answer-engine-exports",
    "sourceSurface": "content freshness SLA",
    "priority": "high",
    "status": "scheduled-review",
    "reviewCadence": "after every content/source-policy change",
    "affectedRoutes": [
      "/data/answer-engine-packet.json",
      "/data/query-to-page-map.json",
      "/data/reader-action-router.json",
      "/data/content-freshness-sla.json",
      "/llms.txt",
      "/site-inventory/"
    ],
    "nextLocalAction": "Any canonical route, source rule, correction policy, reader action, crawl priority, or data export contract changes.",
    "promotionEvidence": "Regenerate all JSON exports and llms.txt in the same build; validate JSON parseability, inventory presence, and no-leaks policy references.",
    "blockedInputs": [
      "stale generated JSON",
      "manual edits to dist exports without source update",
      "missing correction route after material claim changes",
      "leaked assets"
    ],
    "verificationGate": "npm run build && npm run validate",
    "approvalBoundary": "Crawler files are local/static; production deploy, external indexing requests, or analytics activation requires explicit approval.",
    "rollbackPath": "Keep the current route copy and data exports unchanged until the evidence gate passes; log any material correction before promotion."
  },
  {
    "id": "freshness-guide-database-launch-scale",
    "sourceSurface": "content freshness SLA",
    "priority": "high",
    "status": "scheduled-review",
    "reviewCadence": "monthly pre-launch; daily during launch week; event-driven after official media or verified post-launch testing",
    "affectedRoutes": [
      "/guides/",
      "/spoiler-policy/",
      "/vehicles/",
      "/features/",
      "/map/",
      "/map-claim-ledger/",
      "/blog/"
    ],
    "nextLocalAction": "Official gameplay footage, screenshots, support docs, platform metadata, or verified released-game testing changes a guide/database answer.",
    "promotionEvidence": "Update source labels first, then database rows, guide pages, search index, image sitemap where relevant, and corrections log when reader-facing claims change.",
    "blockedInputs": [
      "leaked maps",
      "datamined rosters",
      "private trophy lists",
      "AI-generated feature tables",
      "unsourced full species or vehicle lists",
      "leaked assets"
    ],
    "verificationGate": "npm run build && npm run validate",
    "approvalBoundary": "Story-spoiler guide expansion should follow spoiler policy; external publication or social distribution requires explicit approval.",
    "rollbackPath": "Keep the current route copy and data exports unchanged until the evidence gate passes; log any material correction before promotion."
  },
  {
    "id": "freshness-online-rp-systems",
    "sourceSurface": "content freshness SLA",
    "priority": "high",
    "status": "scheduled-review",
    "reviewCadence": "weekly plus after official Online, GTA+, creator-tool, crossplay, transfer, or support updates",
    "affectedRoutes": [
      "/online/",
      "/rp/",
      "/features/",
      "/blog/gta-6-online-watchlist/",
      "/blog/gta-6-modding-fivem-roleplay-watchlist/"
    ],
    "nextLocalAction": "Rockstar publishes Online, GTA+, crossplay, transfer, creator-tool, policy, server, or support details.",
    "promotionEvidence": "Separate official Online facts from independent RP product analysis; update feature records, FAQ, source monitor, and correction impact routes before promotion.",
    "blockedInputs": [
      "paid compatibility promises",
      "private server access claims",
      "mod menu rumours",
      "leaked Online footage",
      "leaked assets"
    ],
    "verificationGate": "npm run build && npm run validate",
    "approvalBoundary": "Discord/webhook integrations, outreach, account connections, and external design-partner sends require explicit approval.",
    "rollbackPath": "Keep the current route copy and data exports unchanged until the evidence gate passes; log any material correction before promotion."
  },
  {
    "id": "coverage-take-two-investor-news-pages",
    "sourceSurface": "Take-Two investor/news pages",
    "priority": "standard",
    "status": "corroboration-only",
    "reviewCadence": "after earnings, delay, platform, or commercial statements",
    "affectedRoutes": [
      "/release-date/"
    ],
    "nextLocalAction": "Use Take-Two material to corroborate timing or commercial context; keep Rockstar pages as the reader-facing primary source for consumer answers.",
    "promotionEvidence": "Use only as corroboration after Rockstar or another reader-facing official source supports the same claim.",
    "blockedInputs": [
      "leaked assets",
      "private build screenshots",
      "datamined files",
      "retailer placeholders as facts",
      "unsourced social reposts"
    ],
    "verificationGate": "npm run build && npm run validate",
    "approvalBoundary": "No production deploy, public post, newsletter send, external alert, account connection, or credential/runtime change without explicit approval.",
    "rollbackPath": "Remove or supersede the local queue/source row, rebuild generated exports, and add a corrections-log entry if reader-facing guidance changed."
  }
]
