{
  "schema": "sonic_forage.youtube_final_preflight_checklist.v1",
  "generated_utc": "2026-05-06T08:58:00Z",
  "status": "youtube_final_preflight_checklist_manual_upload_only_closed_until_human_yes",
  "canonical_namespace": "Sonic-Forage",
  "purpose": "Compress the existing thumbnail, caption, browser visual QA, Shorts, and release-copy lanes into one final no-upload checklist for an awake operator before any manual YouTube action.",
  "review_only": true,
  "manual_review_required": true,
  "manual_upload_required": true,
  "requires_human_approval": true,
  "auto_upload_enabled": false,
  "auto_post_enabled": false,
  "auto_stream_enabled": false,
  "auto_record_enabled": false,
  "human_approval_question": "Do you approve using this Sonic-Forage final YouTube preflight checklist to decide whether a separate human should manually upload after reviewing the exact video, title, caption, thumbnail, and transcript?",
  "preflight_steps": [
    {
      "id": "verify_site_green",
      "operator_action": "Run the local verifier and confirm VERIFY OK before trusting the proof hub.",
      "proof_path": "scripts/verify_site.py"
    },
    {
      "id": "open_release_pack",
      "operator_action": "Open the manual-upload-only release pack and confirm the title, description, chapter map, and non-claims match the final video.",
      "proof_path": "docs/youtube/FACELESS_YOUTUBE_TRAINING_RELEASE_PACK.md"
    },
    {
      "id": "caption_transcript_check",
      "operator_action": "Open the caption/transcript pack and spot-check VTT/SRT timing plus transcript wording.",
      "proof_path": "docs/youtube/CAPTIONS_TRANSCRIPTS_PACK.md"
    },
    {
      "id": "caption_readability_check",
      "operator_action": "Run the caption readability screen path on phone/desktop and confirm no title/caption overlap.",
      "proof_path": "docs/youtube/CAPTION_READABILITY_SCREEN_PATH.md"
    },
    {
      "id": "thumbnail_alt_caption_check",
      "operator_action": "Check thumbnail alt text, caption stub, safe wording, and do-not-say lines before any upload UI is opened.",
      "proof_path": "docs/youtube/THUMBNAIL_ALT_CAPTION_QA.md"
    },
    {
      "id": "browser_visual_fallback_check",
      "operator_action": "Use the browser visual QA fallback if the proof hub preview is blank or unreadable.",
      "proof_path": "docs/youtube/BROWSER_VISUAL_QA_FALLBACK.md"
    },
    {
      "id": "shorts_copy_optional_check",
      "operator_action": "If Shorts copy will be used later, verify it remains manual-upload-only and does not imply revenue, affiliation, live customers, or public dataset release.",
      "proof_path": "docs/youtube/SHORTS_SCRIPT_PACK.md"
    },
    {
      "id": "stop_before_external_action",
      "operator_action": "Stop before YouTube upload, public posting, scheduling, paid promotion, outreach, stream start, recording, GPU/model work, dataset release, payment, or cron mutation unless an awake human approves that exact action.",
      "proof_path": "docs/data/site-manifest.json"
    }
  ],
  "safe_wording": [
    "Manual-upload-only preflight checklist.",
    "The proof hub contains review artifacts, not public-launch approval.",
    "Captions, thumbnail, Shorts copy, and release metadata remain local drafts until a human approves the exact upload/post.",
    "No revenue, affiliation, live-customer, partnership, or dataset-publication claim is made by this checklist."
  ],
  "do_not_say": [
    "The YouTube video is uploaded.",
    "Posting is scheduled.",
    "Revenue is expected or guaranteed.",
    "Sonic-Forage is affiliated with OpenAI or YouTube.",
    "The private dataset is public.",
    "GPU generation or model training started.",
    "A stream, Space, or recording is live."
  ],
  "proof_paths": [
    "docs/youtube/FACELESS_YOUTUBE_TRAINING_RELEASE_PACK.md",
    "docs/youtube/CAPTIONS_TRANSCRIPTS_PACK.md",
    "docs/youtube/CAPTION_READABILITY_SCREEN_PATH.md",
    "docs/youtube/THUMBNAIL_ALT_CAPTION_QA.md",
    "docs/youtube/BROWSER_VISUAL_QA_FALLBACK.md",
    "docs/youtube/SHORTS_SCRIPT_PACK.md",
    "docs/data/youtube-captions-pack.json",
    "docs/data/caption-readability-screen-path.json",
    "docs/data/thumbnail-alt-caption-qa.json",
    "docs/data/browser-visual-qa-fallback.json",
    "docs/data/youtube-shorts-script-pack.json",
    "docs/assets/thumbnails/afterparty_forge_youtube_thumbnail_clean.png",
    "scripts/verify_site.py"
  ],
  "verifier_commands": [
    "PYTHONDONTWRITEBYTECODE=1 python3 scripts/verify_site.py",
    "python3 -m json.tool docs/data/youtube-final-preflight-checklist.json >/dev/null",
    "git diff --check"
  ],
  "closed_gates": {
    "youtube_upload": false,
    "caption_upload": false,
    "public_posting": false,
    "auto_scheduling": false,
    "paid_promotion": false,
    "outreach": false,
    "publishes_stream": false,
    "records_audio": false,
    "uploads_private_media": false,
    "public_dataset_release": false,
    "starts_gpu": false,
    "starts_paid_api": false,
    "downloads_models": false,
    "starts_training": false,
    "claim_revenue": false,
    "claim_openai_affiliation": false,
    "payment_links": false,
    "wallet_actions": false,
    "secret_exposure": false,
    "mutates_cron": false
  },
  "blocked_without_approval": [
    "Opening YouTube Studio upload flow with an intent to publish.",
    "Uploading captions, thumbnails, videos, Shorts, or private media to any platform.",
    "Posting or scheduling on X, YouTube, Twitch, Kick, Spaces, Discord, or other public channels.",
    "Starting OBS, RTMP, Twitch, Kick, Spaces, livestreams, recording, or voice-to-shell.",
    "Making datasets public, uploading to Hugging Face, downloading models, starting GPU jobs, training, or eval runs.",
    "Creating payment links, invoices, paid promotion, buyer outreach, revenue claims, or affiliation claims.",
    "Printing secrets, stream keys, provider tokens, private URLs, or credentials.",
    "Creating, updating, pausing, removing, or scheduling cron jobs."
  ],
  "morning_operator_next_step": "Run the verifier, open the proof hub and checklist, then either keep everything closed or ask one exact human approval question for a manual upload/post action."
}
