backblaze-proofframe / docs /assets /final-launch-plan.json
ADJCJH's picture
Sync post-live local Genblaze proof evidence
74ee21a verified
Raw
History Blame Contribute Delete
5.83 kB
{
"schema": "proofframe.final_launch_plan.v1",
"created_at": "2026-07-03T10:37:59Z",
"ok": false,
"mode": "ready_for_public_video",
"repo_root": "/Users/junhaocheng/working-dir/ai-competitions/backblaze-proofframe",
"current_phase": "public_video",
"summary": {
"total": 6,
"done": 3,
"ready": 1,
"blocked": 2
},
"task_statuses": {
"T020": "done",
"T021": "done",
"T040": "done",
"T041": "blocked",
"T041A": "blocked",
"T042": "blocked"
},
"phases": [
{
"id": "credential_entry",
"title": "Enter final credentials locally",
"status": "done",
"detail": "Live credential handoff is complete; no missing ids remain.",
"command": "python scripts/final_env_wizard.py --output .env.final.local --missing-only --force",
"expected_artifacts": [
"docs/assets/b2-key-scope-checklist.md reviewed before key creation",
"B2 pre-key confirmation phrase recorded without secrets: I confirm ProofFrame B2 key scope: standard key, bucket proofframe-demo-a6b4e49, prefix campaigns/, no all-bucket access, no delete/admin permissions, and no secrets in chat/docs/git.",
".env.final.local (git-ignored, never committed)"
],
"safe_to_commit_after_scan": [],
"task_updates_after_success": []
},
{
"id": "b2_live_proof",
"title": "Capture Backblaze B2 live proof",
"status": "done",
"detail": "Sanitized B2 evidence is present and T020 is done.",
"command": "python scripts/run_b2_live_proof.py --env-file .env.final.local --evidence-out docs/assets/b2-live-proof-evidence.json",
"expected_artifacts": [
"docs/assets/b2-live-proof-evidence.json"
],
"safe_to_commit_after_scan": [
"docs/assets/b2-live-proof-evidence.json"
],
"task_updates_after_success": [
"python3 scripts/task.py done T020 --note \"B2 live proof evidence captured in docs/assets/b2-live-proof-evidence.json.\""
]
},
{
"id": "genblaze_live_proof",
"title": "Capture final B2 plus Genblaze proof",
"status": "done",
"detail": "Sanitized final B2 plus Genblaze evidence is present and T021 is done.",
"command": "python scripts/run_final_live_proof.py --env-file .env.final.local --genblaze-provider local --genblaze-image-model local-svg-v1 --evidence-out docs/assets/final-live-proof-evidence.json",
"expected_artifacts": [
"docs/assets/final-live-proof-evidence.json"
],
"safe_to_commit_after_scan": [
"docs/assets/final-live-proof-evidence.json"
],
"task_updates_after_success": [
"python3 scripts/task.py done T021 --note \"Final B2 plus Genblaze live proof evidence captured in docs/assets/final-live-proof-evidence.json.\""
]
},
{
"id": "public_video",
"title": "Record and verify public demo video",
"status": "ready",
"detail": "Record and upload the public demo after live proof evidence exists.",
"command": "python scripts/devpost_packet.py --post-live --video-url \"$PROOFFRAME_PUBLIC_VIDEO_URL\"",
"expected_artifacts": [
"public demo video URL",
"docs/assets/devpost-submission-packet.json",
"docs/assets/devpost-form-kit.json",
"docs/assets/demo-storyboard.json",
"docs/assets/recording-assets.json"
],
"safe_to_commit_after_scan": [
"docs/assets/devpost-submission-packet.json",
"docs/assets/devpost-form-kit.json",
"docs/assets/demo-storyboard.json",
"docs/assets/recording-assets.json"
],
"task_updates_after_success": []
},
{
"id": "final_safety_audit",
"title": "Run final secret scan and submission audit",
"status": "blocked",
"detail": "Waiting on final public video.",
"command": "python scripts/secret_scan.py && python scripts/submission_audit.py --strict-final",
"expected_artifacts": [
"docs/assets/secret-scan-report.json",
"docs/assets/submission-audit-report.json"
],
"safe_to_commit_after_scan": [
"docs/assets/secret-scan-report.json",
"docs/assets/submission-audit-report.json"
],
"task_updates_after_success": [
"python3 scripts/task.py done T041A --note \"Final secret scan clear after live proof and public video.\"",
"python3 scripts/task.py done T041 --note \"Final submission audit passed after live proof and public video.\""
]
},
{
"id": "devpost_submit",
"title": "Submit Devpost and capture receipt",
"status": "blocked",
"detail": "Waiting on all pre-submit gates.",
"command": "python scripts/devpost_submission_receipt.py --project-url \"$PROOFFRAME_DEVPOST_PROJECT_URL\" --submitted-at \"$PROOFFRAME_DEVPOST_SUBMITTED_AT\" --confirmation-note \"Devpost accepted/submitted the ProofFrame project.\"",
"expected_artifacts": [
"docs/assets/devpost-submission-receipt.json"
],
"safe_to_commit_after_scan": [
"docs/assets/devpost-submission-receipt.json"
],
"task_updates_after_success": [
"python3 scripts/task.py done T042 --note \"Devpost project submitted and public receipt captured.\""
]
}
],
"next_command": "python scripts/devpost_packet.py --post-live --video-url \"$PROOFFRAME_PUBLIC_VIDEO_URL\"",
"next_detail": "Record and upload the public demo after live proof evidence exists.",
"safety_policy": {
"no_secret_values_in_report": true,
"never_commit": [
".env.final.local",
"Backblaze key IDs or application keys",
"Genblaze provider API keys",
"Devpost cookies or browser session files",
"raw signed URLs or provider temporary URLs"
],
"source_env_files": false
}
}