{
  "schema": "sonic_forage.wake_report_archive_reuse_guardrails.v1",
  "generated_utc": "2026-05-06T14:41:15Z",
  "status": "wake_report_archive_reuse_guardrails_manual_report_only_closed_until_human_yes",
  "canonical_namespace": "Sonic-Forage",
  "canonical_repo": "Sonic-Forage/afterparty-forge-explainer-site",
  "review_only": true,
  "manual_report_required": true,
  "manual_reuse_review_required": true,
  "manual_retrieval_required": true,
  "requires_human_approval": true,
  "auto_post_enabled": false,
  "auto_upload_enabled": false,
  "auto_stream_enabled": false,
  "auto_payment_enabled": false,
  "auto_outreach_enabled": false,
  "auto_gpu_enabled": false,
  "auto_paid_api_enabled": false,
  "auto_training_enabled": false,
  "auto_cron_mutation_enabled": false,
  "provider_credential_check": false,
  "voice_to_shell": false,
  "secret_exposure": false,
  "purpose": "Compress the archive retrieval checklist into a manual reuse/no-reuse boundary before archived outcome evidence is cited in a future wake report.",
  "human_approval_question": "Do you approve reusing one archived wake-report outcome as local source evidence after this guardrail review passes?",
  "source_paths": [
    "docs/reports/WAKE_REPORT_ARCHIVE_RETRIEVAL_CHECKLIST.md",
    "docs/data/wake-report-archive-retrieval-checklist.json",
    "docs/reports/WAKE_REPORT_OUTCOME_ARCHIVE_INDEX.md",
    "docs/data/wake-report-outcome-archive-index.json",
    "docs/reports/WAKE_REPORT_SOURCE_MAP.md"
  ],
  "reuse_fields": [
    {
      "id": "retrieved_archive_reference",
      "meaning": "The local archive entry or blocker reference being considered for reuse.",
      "proof_path": "docs/reports/WAKE_REPORT_ARCHIVE_RETRIEVAL_CHECKLIST.md",
      "closed_gate": "Manual source check only; no delivery or provider action."
    },
    {
      "id": "reuse_reason",
      "meaning": "Why this archived outcome helps the new readout.",
      "proof_path": "docs/reports/WAKE_REPORT_SOURCE_MAP.md",
      "closed_gate": "Reasoning stays internal until approved."
    },
    {
      "id": "freshness_recheck",
      "meaning": "Confirm the proof path is still current against git and Pages evidence.",
      "proof_path": "docs/reports/PAGES_VERIFICATION_RECEIPT.md",
      "closed_gate": "No public claim is made from stale evidence."
    },
    {
      "id": "closed_gate_recheck",
      "meaning": "Confirm public/commercial/provider/model/cron gates remain closed.",
      "proof_path": "docs/data/wake-report-archive-retrieval-checklist.json",
      "closed_gate": "External actions remain blocked without awake approval."
    },
    {
      "id": "exactly_one_reuse_decision",
      "meaning": "Choose reuse as source evidence, request human blocker review, suppress no-news followup, or keep closed/no action.",
      "proof_path": "docs/data/wake-report-outcome-review-checklist.json",
      "closed_gate": "Decision is a local reporting boundary, not execution."
    }
  ],
  "reuse_decision_options": [
    {
      "id": "reuse_archive_as_source_evidence",
      "allowed_next_step": "Cite the archive entry only as repo-local source evidence in a manual report draft.",
      "proof_path": "docs/reports/WAKE_REPORT_ARCHIVE_RETRIEVAL_CHECKLIST.md",
      "closed_gate": "No posting, delivery, provider check, or public claim."
    },
    {
      "id": "request_human_blocker_review",
      "allowed_next_step": "Escalate a sanitized blocker to the awake operator before reusing the archive.",
      "proof_path": "docs/reports/WAKE_REPORT_OUTCOME_REVIEW_CHECKLIST.md",
      "closed_gate": "No secret printing or credential refresh."
    },
    {
      "id": "suppress_no_news_followup",
      "allowed_next_step": "Stay silent/no-news only when verifier and proof-path checks show no new artifact or blocker.",
      "proof_path": "docs/reports/WAKE_REPORT_SILENCE_SUPPRESSION_CARD.md",
      "closed_gate": "No outbound message beyond scheduler final response policy."
    },
    {
      "id": "keep_closed_no_action",
      "allowed_next_step": "Do not reuse the archive; continue building/verifying local proof.",
      "proof_path": "docs/reports/LAUNCH_PROOF_INDEX.md",
      "closed_gate": "All external lanes remain closed."
    }
  ],
  "reuse_review_steps": [
    {
      "step": "Open the retrieval checklist and identify exactly one archived outcome candidate.",
      "proof_path": "docs/reports/WAKE_REPORT_ARCHIVE_RETRIEVAL_CHECKLIST.md",
      "expected_signal": "manual_retrieval_required=true"
    },
    {
      "step": "Reopen the source map and confirm the archive supports safe wording only.",
      "proof_path": "docs/reports/WAKE_REPORT_SOURCE_MAP.md",
      "expected_signal": "manual_report_required=true"
    },
    {
      "step": "Check the Pages receipt before treating proof-hub visibility as current.",
      "proof_path": "docs/reports/PAGES_VERIFICATION_RECEIPT.md",
      "expected_signal": "pages_verification_receipt_manual_report_only_closed_until_human_yes"
    },
    {
      "step": "Pick exactly one reuse decision and stop before any provider, stream, upload, post, payment, or cron action.",
      "proof_path": "docs/data/wake-report-archive-reuse-guardrails.json",
      "expected_signal": "wake_report_archive_reuse_guardrails_manual_report_only_closed_until_human_yes"
    },
    {
      "step": "If uncertain, keep closed/no action and make the next task a repo-only verifier or proof-path cleanup.",
      "proof_path": "docs/reports/LAUNCH_PROOF_INDEX.md",
      "expected_signal": "proof-over-hype source evidence"
    }
  ],
  "safe_wording": [
    "Archived outcome evidence can be reused only as repo-local source context after a manual freshness recheck.",
    "The proof hub remains a manual-review surface; streams and providers are not started by this card.",
    "If the archive is stale, the safe route is keep closed/no action.",
    "A blocker can be escalated only as a sanitized local note.",
    "Human approval is required before any external delivery, public post, upload, payment, provider check, GPU job, training run, or cron change."
  ],
  "do_not_say": [
    "Provider credentials were checked during archive reuse.",
    "A public post or upload happened from an archived outcome.",
    "A payment artifact exists without approval.",
    "Buyer outreach happened unattended.",
    "A live stream was started from archive evidence.",
    "A dataset or private media upload happened during reuse review.",
    "A GPU/model/training run was started by this guardrail.",
    "Cron was changed by archive reuse review."
  ],
  "blocked_without_approval": [
    "Public posting or scheduling",
    "YouTube/HF/private-media upload",
    "Twitch/Kick/RTMP/OBS/Spaces start or restart",
    "Provider credential checks or endpoint tests",
    "Payment links, checkout, invoices, or revenue claims",
    "Outreach, DMs, forms, or CRM updates",
    "GPU jobs, paid API calls, model downloads, evals, or training",
    "Voice-to-shell, secret exposure, or cron mutation"
  ],
  "closed_gates": {
    "public_posting": false,
    "youtube_upload": false,
    "hf_upload": false,
    "private_media_upload": false,
    "publishes_stream": false,
    "records_audio": false,
    "provider_credential_check": false,
    "outreach": false,
    "payment_links": false,
    "claim_revenue": false,
    "claim_openai_affiliation": false,
    "starts_gpu": false,
    "starts_paid_api": false,
    "downloads_models": false,
    "starts_training": false,
    "voice_to_shell": false,
    "mutates_cron": false,
    "secret_exposure": false
  },
  "proof_paths": [
    "docs/reports/WAKE_REPORT_ARCHIVE_RETRIEVAL_CHECKLIST.md",
    "docs/data/wake-report-archive-retrieval-checklist.json",
    "docs/reports/WAKE_REPORT_OUTCOME_ARCHIVE_INDEX.md",
    "docs/data/wake-report-outcome-archive-index.json",
    "docs/reports/WAKE_REPORT_SOURCE_MAP.md",
    "docs/reports/PAGES_VERIFICATION_RECEIPT.md",
    "docs/reports/LAUNCH_PROOF_INDEX.md"
  ],
  "verifier_commands": [
    "PYTHONDONTWRITEBYTECODE=1 python3 scripts/verify_site.py",
    "python3 -m json.tool docs/data/wake-report-archive-reuse-guardrails.json >/dev/null",
    "git diff --check"
  ],
  "morning_operator_next_step": "Use the retrieval checklist plus this guardrail to choose exactly one manual archive reuse decision, or keep closed/no action."
}
