# NFL Picks Review Packet

Generated from fixture-mode artifacts. This packet is for release review only and does not enable live data.

## Current Status

- Project: sacboyz-nfl-picks
- Version: 0.1.0
- Verification: 658 passed
- Artifact count: 122
- Release ready: True
- Fixture mode ready: True
- Online prep ready: True
- Live ready: False
- Runtime mode: live_no_call
- Provider calls enabled: False

## Release Bundle

- Required paths: 265
- Missing paths: 0
- Generated artifacts summarized: 114
- Generated artifact bytes: 822158

Missing release paths:

- None

## Baseline Comparison

- Fixture candidates: 17
- Sample candidates: 2
- Candidate delta: -15
- Fixture source gate: PASS
- Sample source gate: REVIEW

## Repo Setup

- Expected remote: sacboyz/nfl-picks
- Standalone Git repo: True
- Nested under parent Git: False
- Remote configured: True
- Ready for remote publish: True
- Fixture mode affected: False

Repo setup next actions:

- run quality gate before every push or PR update
- continue branch-based PR work; avoid direct commits to main
- configure Cloudflare Pages after remote Actions pass

## Docs Publish Readiness

- Publish directory: docs
- Ready for static publish: True
- External setup required: True
- Site map entries: 128

Docs publish blockers:

- None

## Provider Dry Run

- Mode: live_no_call
- Provider calls enabled: False
- Source families: 7
- Would call providers: 0
- All calls blocked: True

## Live V1 Artifact Gates

- Odds API request plan safe: True
- Odds API markets planned: 15
- Provider sample bundle complete: True
- Provider sample source-health gate: REVIEW
- Manual injury overrides ready: True
- Manual injury override invalid rows: 0

## Season Window Policy

- Season phase: OFFSEASON
- Live picks available: False
- Supported windows: Thursday, Sunday Early, Sunday Late, Sunday Night, Monday Night, International, Holiday
- Inactive report cutoff minutes: 90
- Season/window confirmation required: True

Window policy notes:

- Live picks require a schedule-confirmed NFL game window.
- Official inactives must be checked around 90 minutes before kickoff.
- Pre-inactives outputs remain confidence-capped and cannot publish A grades.
- Post-inactives invalidation forces re-grade or Abstain / No Play.

## Network Guard Audit

- Valid: True
- Scanned files: 444
- Findings: 0
- Provider calls allowed: False

## Runtime Mode Matrix

- Default safe mode: live_no_call
- Matrix rows: 7
- Provider-call-enabled scenarios: 2
- Live-pick-allowed scenarios: 1

## Live Enablement Checklist

- Online prep ready: True
- Live enablement ready: False
- Gates: 17 / 21
- Blocked gates: 4

## Live Preflight Summary

- Decision: ONLINE_PREP_READY_LIVE_BLOCKED
- Online prep ready: True
- Live enablement ready: False
- Provider calls allowed: False
- Live publish allowed: False
- Failed gates: 5 / 22

## Live Blocker Queue

- Queue count: 5
- P0 blockers: 0
- P1 blockers: 5
- Provider calls allowed: False
- Live publish allowed: False

## Live Go/No-Go

- Decision: NO_GO_LIVE_BLOCKED
- Human approval required: False
- Provider calls allowed: False
- Live publish allowed: False
- Blocker queue count: 5

## Live Activation Plan

- Current phase: offline_prep
- Activation ready: False
- No-call safe: True
- Calls-only staging supported: True
- Publish mode supported by matrix: True
- Phase count: 4
- Open activation items: 7
- Next action: Continue offline prep until provider approval, quota, season/window, and human go/no-go review clear.

## Live Calls Rehearsal

- Rehearsal ready: False
- Current phase: offline_prep
- No-call safe: True
- Calls-only staging supported: True
- Source families: 7
- Would call providers now: 0
- Planned markets: 15
- Provider calls allowed: False
- Live publish allowed: False

## Live Readiness

Live mode remains closed until the blocker list is resolved.

Blockers:

- season phase is OFFSEASON
- runtime mode is not live

## Fixture Scenario Coverage

- Covered scenarios: 20 / 20
- All required covered: True

Uncovered scenarios:

- None

## Provider Review

- Source families: 7
- Not selected: 0
- Live enablement allowed: False

Review principles:

- do not approve providers from placeholders
- add sanitized schema samples before live adapters
- keep fixture mode secret-free
- separate projection inputs from sportsbook confirmation
- prefer cross-sport reuse when it improves customer-facing depth charts, injuries, schedules, or historical views

## Provider Decision Summary

- Provider decisions valid: True
- V1 provider count: 7
- Credentialed sources: odds
- Provider calls enabled: False
- Live calls enabled by default: False
- Fixture credentials required: False
- Live enablement allowed: False
- Next action: Provider defaults are approved for no-call adapter planning only. Require separate human approval before live provider calls or publishing.

## Environment Readiness

- `.env.example` present: True
- Required live env vars: ODDS_API_KEY
- Missing required vars from `.env.example`: None
- Current env values captured: False
- Secret values captured: False
- Provider calls enabled: False
- Live enablement allowed: False
- Ready for live env review: True

## Live Switch Audit

- Switches declared: True
- Switches default false: True
- Provider calls with empty env: False
- Live publish with empty env: False
- Calls-only staging supported: True
- Provider calls allowed: False
- Live publish allowed: False
- Next action: Keep all live switches false until provider, quota, season, and human review gates clear.

## Quota Readiness

- Odds quota state: unknown
- Live quota available: False
- Quota review required: True
- Quota confirmation status: needs_operator_confirmation
- Operator confirmation checks: 3 / 5
- Secret values captured: False
- Provider calls enabled: False
- Live enablement allowed: False
- Next action: Set ODDS_API_QUOTA_STATE=available only after quota is confirmed outside this no-call build.

## Live Provider Review

- Decision: PROVIDER_REVIEW_HOLD
- Provider review clear: False
- Review items: 1
- Online prep ready: True
- Sample review ready: True
- Provider sample bundle complete: True
- Provider sample source-health gate: REVIEW
- Source health decision: SOURCE_HEALTH_REVIEW
- Source health review required: True
- Dry run all calls blocked: True
- Dry run would-call count: 0
- Provider calls allowed: False
- Live publish allowed: False
- Live enablement allowed: False
- Next action: Review provider-readiness evidence; live calls remain disabled until human approval, quota, and season gates clear.

## Provider Sample Request

- Requests: 7
- High-risk requests: 4
- Blocked until provider approval: 0
- Fixture credentials required: False

## Provider Sample Intake

- Families: 7
- Ready families: 7
- Pending samples: 0
- Blocked until provider approval: 0

## Provider Sample Validation

- Families: 7
- Ready for adapter review: 7
- Missing samples: 0
- Invalid samples: 0
- Invalid JSON files: 0
- Unsupported sample shapes: 0
- Non-object sample rows: 0
- Missing required rows: 0
- Bad timestamp rows: 0
- Normalizer error rows: 0
- Normalized missing rows: 0

## Provider Sample Consistency

- Families: 7
- Checks: 6
- Passed checks: 5
- Review checks: 1

Consistency review detail:

- weather_games_in_schedule: expected_sample_diversity - Expected sample diversity: weather samples intentionally include additional outdoor/dome games to exercise weather normalization. Review before live adapter work, but this is not a fixture gap.

## Provider Sample Redaction Audit

- Valid: True
- Sample files: 14
- Findings: 0

## Provider Sample Review Summary

- Ready for provider sample review: True
- Invalid JSON files: 0
- Unsupported sample shapes: 0
- Non-object sample rows: 0
- Missing required rows: 0
- Bad timestamp rows: 0
- Normalizer error rows: 0
- Normalized missing rows: 0
- Consistency review checks: 1
- Consistency classifications: expected_sample_diversity
- Expected sample diversity checks: 1
- Next review action: review provider sample cross-family consistency

## Provider Sample Collection Packet

- Path: provider_sample_collection_packet.md
- Purpose: copy-ready sanitized sample collection checklist

## Next Actions

- P1: Continue Fixture-Mode QA (offline_safe, ready) - Fixture mode is available and required scenarios are covered.
- P1: Review Provider Selection Rubric (decision_needed, needs_human_review) - Provider defaults are ready for no-call adapter planning, but live provider calls still need separate approval.
- P2: Review Sanitized Provider Schema Samples (offline_safe, ready) - Provider-neutral schema samples are present; provider approval is still separate.
- P1: Review Live V1 Readiness Artifacts (offline_safe, ready) - Provider-specific request plan, sample bundle, and manual injury overrides are no-call safe.
- P1: Review Live Switch Audit (offline_safe, ready) - Live switches are declared, default-off, and safe for calls-only staging.
- P3: Implement Live Provider Adapters (live_blocked, blocked) - Live mode remains disabled by design.
- P3: Wire GitHub And Cloudflare Pages (publishing, ready) - Standalone GitHub repo is ready; Cloudflare Pages settings remain external.
- P2: Review Release Readiness Bundle (offline_safe, ready) - Release readiness artifacts validate locally without live data.
