Spaces:
Sleeping
Sleeping
| { | |
| "schema": "proofframe.final_operator_brief.v1", | |
| "mode": "needs_operator_setup", | |
| "ready_for_secret_entry": false, | |
| "ready_for_genblaze_live_proof": false, | |
| "safe_to_submit": false, | |
| "task_statuses": { | |
| "T020": "done", | |
| "T021": "done", | |
| "T040": "done", | |
| "T041": "blocked", | |
| "T041A": "blocked", | |
| "T042": "blocked" | |
| }, | |
| "b2_setup": { | |
| "present": true, | |
| "status": "bucket_created_key_pending", | |
| "bucket_name": "proofframe-demo-a6b4e49", | |
| "endpoint": "s3.us-west-004.backblazeb2.com", | |
| "bucket_type": "private", | |
| "prepared_application_key_name": "proofframe-demo-live-proof", | |
| "application_key_status": "form_prepared_not_created" | |
| }, | |
| "b2_pre_key_confirmation": { | |
| "present": true, | |
| "status": "required_before_key_creation", | |
| "required_phrase": "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.", | |
| "safe_to_store": true | |
| }, | |
| "credential_handoff": { | |
| "present": true, | |
| "mode": "live_env_ready", | |
| "ready": true, | |
| "source": ".env.final.local", | |
| "missing_ids": [], | |
| "missing_only_expected_secrets": false, | |
| "required_presence": { | |
| "storage_backend_mode": true, | |
| "generation_backend_mode": true, | |
| "b2_endpoint": true, | |
| "b2_bucket": true, | |
| "b2_key_id": true, | |
| "b2_application_key": true, | |
| "genblaze_provider_key": true, | |
| "genblaze_image_model": true | |
| } | |
| }, | |
| "reports": { | |
| "event_snapshot": { | |
| "present": true, | |
| "path": "docs/assets/devpost-event-snapshot.json", | |
| "schema_ok": true, | |
| "mode": "live_official_snapshot", | |
| "ok": null, | |
| "score": null, | |
| "max_score": null, | |
| "safe_to_submit": null, | |
| "validation_ok": true, | |
| "mock_recording_ready": null, | |
| "public_mock_verified": null | |
| }, | |
| "recording_assets": { | |
| "present": true, | |
| "path": "docs/assets/recording-assets.json", | |
| "schema_ok": true, | |
| "mode": "mock_recording_ready", | |
| "ok": null, | |
| "score": null, | |
| "max_score": null, | |
| "safe_to_submit": null, | |
| "validation_ok": null, | |
| "mock_recording_ready": true, | |
| "public_mock_verified": false | |
| }, | |
| "public_video_check": { | |
| "present": true, | |
| "path": "docs/assets/public-video-check.json", | |
| "schema_ok": true, | |
| "mode": "pending_video_url", | |
| "ok": false, | |
| "score": null, | |
| "max_score": null, | |
| "safe_to_submit": false, | |
| "validation_ok": null, | |
| "mock_recording_ready": null, | |
| "public_mock_verified": null | |
| }, | |
| "award_readiness": { | |
| "present": true, | |
| "path": "docs/assets/award-readiness-report.json", | |
| "schema_ok": true, | |
| "mode": "proof_verified_video_pending", | |
| "ok": null, | |
| "score": 105, | |
| "max_score": 115, | |
| "safe_to_submit": null, | |
| "validation_ok": null, | |
| "mock_recording_ready": null, | |
| "public_mock_verified": null | |
| }, | |
| "secret_scan": { | |
| "present": true, | |
| "path": "docs/assets/secret-scan-report.json", | |
| "schema_ok": true, | |
| "mode": "clear", | |
| "ok": true, | |
| "score": null, | |
| "max_score": null, | |
| "safe_to_submit": null, | |
| "validation_ok": null, | |
| "mock_recording_ready": null, | |
| "public_mock_verified": null | |
| }, | |
| "final_control": { | |
| "present": true, | |
| "path": "docs/assets/final-submission-control.json", | |
| "schema_ok": true, | |
| "mode": "pre_live_control", | |
| "ok": true, | |
| "score": null, | |
| "max_score": null, | |
| "safe_to_submit": false, | |
| "validation_ok": null, | |
| "mock_recording_ready": null, | |
| "public_mock_verified": null | |
| }, | |
| "submission_audit": { | |
| "present": true, | |
| "path": "docs/assets/submission-audit-report.json", | |
| "schema_ok": true, | |
| "mode": "pre_submit_audit_blocked", | |
| "ok": false, | |
| "score": null, | |
| "max_score": null, | |
| "safe_to_submit": null, | |
| "validation_ok": null, | |
| "mock_recording_ready": null, | |
| "public_mock_verified": null | |
| }, | |
| "final_rehearsal": { | |
| "present": true, | |
| "path": "docs/assets/final-rehearsal-checklist.json", | |
| "schema_ok": true, | |
| "mode": "needs_rehearsal_setup", | |
| "ok": false, | |
| "score": null, | |
| "max_score": null, | |
| "safe_to_submit": false, | |
| "validation_ok": null, | |
| "mock_recording_ready": null, | |
| "public_mock_verified": null | |
| }, | |
| "devpost_submission_checklist": { | |
| "present": true, | |
| "path": "docs/assets/devpost-submission-checklist.json", | |
| "schema_ok": true, | |
| "mode": "pre_submit_blocked", | |
| "ok": false, | |
| "score": null, | |
| "max_score": null, | |
| "safe_to_submit": false, | |
| "validation_ok": null, | |
| "mock_recording_ready": null, | |
| "public_mock_verified": null | |
| }, | |
| "devpost_submission_preview": { | |
| "present": true, | |
| "path": "docs/assets/devpost-submission-preview.json", | |
| "schema_ok": true, | |
| "mode": "pre_live_preview_ready", | |
| "ok": true, | |
| "score": null, | |
| "max_score": null, | |
| "safe_to_submit": false, | |
| "validation_ok": null, | |
| "mock_recording_ready": null, | |
| "public_mock_verified": null | |
| }, | |
| "devpost_submission_receipt": { | |
| "present": true, | |
| "path": "docs/assets/devpost-submission-receipt.json", | |
| "schema_ok": true, | |
| "mode": "pending_submission", | |
| "ok": false, | |
| "score": null, | |
| "max_score": null, | |
| "safe_to_submit": null, | |
| "validation_ok": null, | |
| "mock_recording_ready": null, | |
| "public_mock_verified": null | |
| }, | |
| "submission_bundle": { | |
| "present": true, | |
| "path": "docs/assets/submission-bundle-manifest.json", | |
| "schema_ok": true, | |
| "mode": null, | |
| "ok": null, | |
| "score": null, | |
| "max_score": null, | |
| "safe_to_submit": false, | |
| "validation_ok": null, | |
| "mock_recording_ready": null, | |
| "public_mock_verified": null | |
| } | |
| }, | |
| "user_actions": [ | |
| "Run `python scripts/live_env_handoff.py --env-file .env.final.local --strict` and confirm it reports no missing ids.", | |
| "Run the post-credential live proof runner once; it validates B2-only and final evidence before any task updates.", | |
| "Record and upload the public demo video only after live proof evidence exists.", | |
| "Run final secret scan and final submission audit, submit Devpost, then generate the public Devpost submission receipt." | |
| ], | |
| "codex_actions_after_credentials": [ | |
| "python scripts/post_credential_live_proof.py --env-file .env.final.local --execute --update-tasks", | |
| "python scripts/public_space_upload.py --execute --commit-message \"Sync ProofFrame public Space after live proof\"", | |
| "python scripts/public_space_sync.py --wait-attempts 5 --wait-seconds 30", | |
| "python scripts/api_smoke.py --base-url https://adjcjh-backblaze-proofframe.hf.space", | |
| "python scripts/demo_storyboard.py --strict-final", | |
| "python scripts/public_video_check.py --video-url \"$PROOFFRAME_PUBLIC_VIDEO_URL\" --verify-url --strict-final", | |
| "python scripts/demo_readiness.py --strict-final", | |
| "python scripts/recording_assets.py --verify-public --strict-final", | |
| "python scripts/secret_scan.py", | |
| "python scripts/devpost_packet.py --post-live --video-url \"$PROOFFRAME_PUBLIC_VIDEO_URL\"", | |
| "python scripts/devpost_form_kit.py --strict-final", | |
| "python scripts/devpost_submission_checklist.py --strict-final", | |
| "python scripts/submission_audit.py --strict-final", | |
| "python scripts/devpost_submission_preview.py", | |
| "python scripts/secret_scan.py", | |
| "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.\"", | |
| "python scripts/secret_scan.py", | |
| "python scripts/final_submission_control.py --strict-final", | |
| "python scripts/final_launch_plan.py --strict-final", | |
| "python scripts/devpost_submission_preview.py --strict-final", | |
| "python scripts/submission_bundle.py --strict-final", | |
| "python scripts/public_space_upload.py --execute --commit-message \"Sync ProofFrame public Space after final receipt\"", | |
| "python scripts/public_space_sync.py --wait-attempts 5 --wait-seconds 30", | |
| "python scripts/api_smoke.py --base-url https://adjcjh-backblaze-proofframe.hf.space" | |
| ], | |
| "safety_policy": { | |
| "env_final_local_ignored": true, | |
| "never_commit": [ | |
| ".env.final.local", | |
| "Backblaze key IDs or application keys", | |
| "Genblaze provider keys", | |
| "Devpost cookies or browser session files", | |
| "raw signed URLs or provider temporary URLs", | |
| "screen recordings that visibly expose secrets" | |
| ], | |
| "safe_to_commit_after_scan": [ | |
| "docs/assets/b2-live-proof-evidence.json", | |
| "docs/assets/final-live-proof-evidence.json", | |
| "docs/assets/public-video-check.json", | |
| "docs/assets/devpost-submission-packet.json", | |
| "docs/assets/devpost-form-kit.json", | |
| "docs/assets/devpost-submission-preview.json", | |
| "docs/assets/devpost-submission-checklist.json", | |
| "docs/assets/submission-bundle-manifest.json" | |
| ] | |
| }, | |
| "claim_boundary": "Do not claim completed B2 or Genblaze proof until sanitized live evidence is generated and final gates pass." | |
| } | |