{
  "schema": "sonic_forage.wake_report_archive_citation_archive_summary_signoff_checklist.v1",
  "generated_utc": "2026-05-06T20:07:43Z",
  "status": "wake_report_archive_citation_archive_summary_signoff_checklist_manual_report_only_closed_until_human_yes",
  "canonical_namespace": "Sonic-Forage",
  "canonical_repo": "Sonic-Forage/afterparty-forge-explainer-site",
  "canonical_pages": "https://sonic-forage.github.io/afterparty-forge-explainer-site/",
  "purpose": "Provide one final local/manual signoff boundary after the archive-citation archive summary decision router and before any wake-report readout references archived evidence.",
  "review_only": true,
  "manual_report_required": true,
  "manual_archive_summary_signoff_required": true,
  "manual_archive_summary_decision_required": true,
  "manual_archive_summary_qa_required": true,
  "manual_source_map_recheck_required": true,
  "manual_pages_receipt_recheck_required": true,
  "manual_packet_qa_recheck_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,
  "human_approval_question": "Do you approve using this archive-citation archive summary signoff checklist after the decision router is selected and before any manual readout cites archived evidence?",
  "source_paths": [
    "docs/reports/WAKE_REPORT_ARCHIVE_CITATION_ARCHIVE_SUMMARY_DECISION_ROUTER.md",
    "docs/data/wake-report-archive-citation-archive-summary-decision-router.json",
    "docs/reports/WAKE_REPORT_ARCHIVE_CITATION_ARCHIVE_SUMMARY_QA_CHECKLIST.md",
    "docs/reports/WAKE_REPORT_ARCHIVE_CITATION_ARCHIVE_SUMMARY_CARD.md",
    "docs/reports/WAKE_REPORT_SOURCE_MAP.md",
    "docs/reports/PAGES_VERIFICATION_RECEIPT.md"
  ],
  "signoff_checks": [
    {
      "id": "decision_router_reopened",
      "question": "Was the archive summary decision router reopened from the current tree?",
      "proof_path": "docs/reports/WAKE_REPORT_ARCHIVE_CITATION_ARCHIVE_SUMMARY_DECISION_ROUTER.md",
      "closed_gate": "Router review stays local and cannot deliver, post, upload, stream, pay, train, or change cron."
    },
    {
      "id": "qa_checklist_current",
      "question": "Did the archive summary QA checklist pass or record a sanitized blocker?",
      "proof_path": "docs/reports/WAKE_REPORT_ARCHIVE_CITATION_ARCHIVE_SUMMARY_QA_CHECKLIST.md",
      "closed_gate": "QA does not authorize public or commercial actions."
    },
    {
      "id": "source_map_current",
      "question": "Was the wake report source map checked before wording is reused?",
      "proof_path": "docs/reports/WAKE_REPORT_SOURCE_MAP.md",
      "closed_gate": "Source-map review does not claim fresh external results."
    },
    {
      "id": "pages_receipt_boundary_checked",
      "question": "Was the Pages verification receipt or blocker boundary checked?",
      "proof_path": "docs/reports/PAGES_VERIFICATION_RECEIPT.md",
      "closed_gate": "Pages receipt review is evidence only and not a new deployment claim."
    },
    {
      "id": "verifier_rerun",
      "question": "Was the aggregate verifier rerun before signoff?",
      "proof_path": "scripts/verify_site.py",
      "closed_gate": "Verifier status is local only and does not mutate cron or providers."
    }
  ],
  "signoff_routes": [
    {
      "id": "signoff_current_source_map_only",
      "allowed_next_step": "Approve current-source-map-only wording and suppress archived citation reuse.",
      "proof_path": "docs/reports/WAKE_REPORT_SOURCE_MAP.md",
      "closed_gate": "Manual delivery remains separate human-approved work."
    },
    {
      "id": "signoff_one_archive_citation_after_recheck",
      "allowed_next_step": "Approve exactly one archived outcome reference only after QA, source map, Pages boundary, packet QA, and verifier checks are current.",
      "proof_path": "docs/reports/WAKE_REPORT_ARCHIVE_CITATION_ARCHIVE_SUMMARY_DECISION_ROUTER.md",
      "closed_gate": "The citation is source-backed local wording, not a fresh external-result claim."
    },
    {
      "id": "signoff_sanitized_blocker_to_human",
      "allowed_next_step": "Record a sanitized blocker if any proof path, Pages boundary, or verifier result is stale.",
      "proof_path": "docs/reports/WAKE_REPORT_ARCHIVE_CITATION_ARCHIVE_RETRIEVAL_CHECKLIST.md",
      "closed_gate": "Escalation is a local note until a human chooses a separate action."
    },
    {
      "id": "signoff_suppress_archive_reference",
      "allowed_next_step": "Suppress archived-evidence wording when the signoff boundary cannot be proven from the current tree.",
      "proof_path": "docs/reports/WAKE_REPORT_ARCHIVE_CITATION_ARCHIVE_REUSE_GUARDRAILS.md",
      "closed_gate": "Suppression creates no delivery, posting, outreach, payment, upload, stream, provider, GPU, training, or cron action."
    }
  ],
  "signoff_steps": [
    {
      "step": "Open the archive summary decision router and choose zero or one route.",
      "proof_path": "docs/reports/WAKE_REPORT_ARCHIVE_CITATION_ARCHIVE_SUMMARY_DECISION_ROUTER.md",
      "expected_signal": "The route is current and no external action is implied."
    },
    {
      "step": "Reopen QA, source-map, Pages receipt, packet QA, and verifier proof paths.",
      "proof_path": "docs/reports/WAKE_REPORT_ARCHIVE_CITATION_ARCHIVE_SUMMARY_QA_CHECKLIST.md",
      "expected_signal": "Every source path exists or a sanitized blocker route is chosen."
    },
    {
      "step": "Prefer current source-map-only wording unless exactly one archive citation is fully rechecked.",
      "proof_path": "docs/reports/WAKE_REPORT_SOURCE_MAP.md",
      "expected_signal": "No fresh external-result claim is added."
    },
    {
      "step": "If stale evidence appears, suppress archive wording or escalate a sanitized blocker to a human.",
      "proof_path": "docs/reports/WAKE_REPORT_ARCHIVE_CITATION_ARCHIVE_REUSE_GUARDRAILS.md",
      "expected_signal": "No delivery, post, upload, stream, payment, provider, GPU, training, or cron action starts."
    },
    {
      "step": "Before any delivery outside the repo, fill the existing delivery receipt template manually after approval.",
      "proof_path": "docs/reports/WAKE_REPORT_ARCHIVE_CITATION_DELIVERY_RECEIPT_TEMPLATE.md",
      "expected_signal": "Receipt remains manual and approval-gated."
    }
  ],
  "safe_wording": [
    "Archive-citation archive summary signoff is ready for local/manual review.",
    "Choose current source-map-only wording by default.",
    "Cite at most one archived outcome only after the decision router and QA checklist are current.",
    "Suppress archived evidence when any proof path, Pages boundary, packet QA, or verifier result is stale.",
    "No provider credentials were checked by this checklist.",
    "No stream, upload, outreach, payment, GPU, paid API, training, or cron action occurred."
  ],
  "do_not_say": [
    "Fresh buyer contact happened unattended.",
    "A payment artifact exists without approval.",
    "Provider credentials were checked by this checklist.",
    "The archive citation proves a fresh external result.",
    "A public post or upload was authorized.",
    "A stream or live provider was started.",
    "A model, GPU, or training job was launched.",
    "Cron behavior was changed by this checklist."
  ],
  "blocked_without_approval": [
    "public posting or scheduling",
    "dataset or private media upload",
    "streaming, OBS, RTMP, Twitch, Kick, or Spaces actions",
    "payment links, checkout, invoices, or revenue claims",
    "outreach, replies, DMs, or email",
    "provider credential checks or token handling",
    "GPU jobs, paid APIs, model downloads, or training",
    "voice-to-shell or cron mutation"
  ],
  "closed_gates": {
    "public_posting": false,
    "uploads": false,
    "streams_or_live_providers": false,
    "payments_or_revenue_claims": false,
    "outreach": false,
    "provider_credential_check": false,
    "gpu_or_paid_api_jobs": false,
    "model_downloads_or_training": false,
    "voice_to_shell": false,
    "secret_exposure": false,
    "cron_mutation": false
  },
  "proof_paths": [
    "docs/reports/WAKE_REPORT_ARCHIVE_CITATION_ARCHIVE_SUMMARY_SIGNOFF_CHECKLIST.md",
    "docs/data/wake-report-archive-citation-archive-summary-signoff-checklist.json",
    "docs/reports/WAKE_REPORT_ARCHIVE_CITATION_ARCHIVE_SUMMARY_DECISION_ROUTER.md",
    "docs/reports/WAKE_REPORT_ARCHIVE_CITATION_ARCHIVE_SUMMARY_QA_CHECKLIST.md",
    "docs/reports/WAKE_REPORT_ARCHIVE_CITATION_ARCHIVE_SUMMARY_CARD.md",
    "docs/reports/WAKE_REPORT_ARCHIVE_CITATION_PACKET_QA.md",
    "docs/reports/WAKE_REPORT_SOURCE_MAP.md",
    "docs/reports/PAGES_VERIFICATION_RECEIPT.md",
    "scripts/verify_site.py"
  ],
  "verifier_commands": [
    "PYTHONDONTWRITEBYTECODE=1 python3 scripts/verify_site.py",
    "python3 -m json.tool docs/data/wake-report-archive-citation-archive-summary-signoff-checklist.json >/dev/null",
    "git diff --check"
  ],
  "morning_operator_next_step": "After the archive summary decision router is selected, use this checklist to sign off zero or one local/manual route; do not deliver, post, upload, stream, pay, train, check provider credentials, or change cron from this checklist."
}
