{"data":[{"id":"4c6a53ac-a76e-4ec7-90e6-ceca987c2fed","source":"forgejo","status":"waiting","payload":{"branch":"ai/mail-mobile-full-refactor-20260908","prNumber":2178,"nextAction":"Follow the existing canonical release to terminal proof.","mergeCommitSha":"4c6e481ab7caa3cd70da5b3999adb95aedcda6c3","branchDeletedAfterMerge":true,"correctiveGenerationCreated":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-08T21:49:46.776059+00:00","proof_gate":"forgejo_merged_pr_is_authoritative_source_lineage","source_sha":"4c6e481ab7caa3cd70da5b3999adb95aedcda6c3","external_id":"2178","receipt_type":"source_lineage_merged_pr_authoritative","idempotency_key":"mission:f1d33def-0f64-407c-a5aa-454409e1ef3a:merged-pr:2178:4c6e481ab7caa3cd70da5b3999adb95aedcda6c3","mission_step_id":"971364f8-89cb-48e0-ac2c-ed4454dade51","command_center_event_id":"f1d33def-0f64-407c-a5aa-454409e1ef3a"},{"id":"4c6b5275-cce2-473a-b424-de22b2af16a5","source":"cc-execution","status":"recorded","payload":{"requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"rawUtterance":"Continue the same tenant application shell continuity repair. Reconcile and adopt the already-written unique branch ai/tenant-application-shell-continuity-primitive-20260911 with zero additional source writes, then create/reuse exactly one PR, refresh from current main if required, Gate, squash merge, frontend release, and live proof. Do not run Visual Witness.","wordingChanged":false,"canonicalIntent":"Continue the same tenant application shell continuity repair. Reconcile and adopt the already-written unique branch ai/tenant-application-shell-continuity-primitive-20260911 with zero additional source writes, then create/reuse exactly one PR, refresh from current main if required, Gate, squash merge, frontend release, and live proof. Do not run Visual Witness.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"outcome-integrated-boundary","statement":"Tenant-integrated FirstClassAppTenantBoundary never renders application-owned header/avatar chrome regardless of caller applicationChrome flags, and always nests app content beneath the host tenant shell.","proofConditionIds":["proof-boundary-source","proof-production-live"]},{"id":"outcome-direct-workspace-guard","statement":"ApplicationWorkspace independently fails closed in tenant-integrated mode so direct integrated use cannot create competing application chrome and nested OwnerLayout content defers to the host shell.","proofConditionIds":["proof-workspace-source","proof-production-live"]},{"id":"outcome-regression-guard","statement":"The existing tenant application avatar-menu contract guard covers integrated chrome suppression and owner-shell nesting while standalone behavior and existing tenant menu/route ownership remain preserved.","proofConditionIds":["proof-regression-source","proof-production-live"]}],"objective":"Continue the same tenant application shell continuity repair. Reconcile and adopt the already-written unique branch ai/tenant-application-shell-continuity-primitive-20260911 with zero additional source writes, then create/reuse exactly one PR, refresh from current main if required, Gate, squash merge, frontend release, and live proof. Do not run Visual Witness.","constraints":[{"id":"constraint-standalone-preserved","statement":"Standalone application presentation retains its existing ApplicationWorkspace header/avatar behavior.","proofConditionIds":["proof-regression-source"]},{"id":"constraint-existing-tenant-ownership","statement":"Existing tenantShellOwner CRMUserMenu ownership and nativeTenantRouteOwner routing behavior remain unchanged.","proofConditionIds":["proof-regression-source"]},{"id":"constraint-scope","statement":"No control-plane, database, auth, Supabase, or unrelated tenant-specific source changes.","proofConditionIds":["proof-scope-source"]},{"id":"constraint-release-path","statement":"Use one fresh ai/* branch, one PR, KnockLaunch Gate, Forgejo squash merge, frontend-only release, and live production proof.","proofConditionIds":["proof-scope-source","proof-production-live"]},{"id":"constraint-no-visual-witness","statement":"Do not run Visual Witness for this architecture enforcement repair.","proofConditionIds":["proof-scope-source"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"proof-boundary-source","kind":"repository","claim":"Current Forgejo main contains fail-closed tenant-integrated chrome suppression and OwnerShellNestingContext enforcement in FirstClassAppTenantBoundary.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]},{"id":"proof-workspace-source","kind":"repository","claim":"Current Forgejo main contains a defense-in-depth tenant-integrated fail-closed path in ApplicationWorkspace.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]},{"id":"proof-regression-source","kind":"repository","claim":"Current Forgejo main preserves standalone application chrome, existing tenant menu ownership, native route ownership, and extends the existing tenant application contract guard.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]},{"id":"proof-scope-source","kind":"repository","claim":"The merged diff is limited to the declared frontend primitive and existing contract guard paths and follows the canonical Gate/merge path without Visual Witness.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]},{"id":"proof-production-live","kind":"runtime","claim":"The exact merged frontend artifact containing the shared tenant shell continuity primitive is live in production.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]}],"validationErrors":[]},"requestContractHash":"633b517d4a512fc841dc009e3c988b7e8cb2bb6b767d65d2c240d304bc32a435","requestContractRevision":4,"previousRequestContractHash":"b1a7dff559e5a5e97d4d31a2467c6bd1f72cfa87263a2fd8f4859c5a2ab67292"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-11T23:56:51.918948+00:00","proof_gate":"request_contract_revision_recorded","source_sha":null,"external_id":null,"receipt_type":"request_contract_revision","idempotency_key":"mission:08148501-cdc3-4e73-99de-228061c3c860:request-contract:633b517d4a512fc841dc009e3c988b7e8cb2bb6b767d65d2c240d304bc32a435","mission_step_id":"2f8047f8-c982-4659-9362-96e3875156d8","command_center_event_id":"08148501-cdc3-4e73-99de-228061c3c860"},{"id":"4c6c9667-a4d0-4dcc-a194-ec8def99e19d","source":"forgejo-runtime","status":"verified","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"success","cc-execution/runtime-proof":"success","render-onrunner/runtime-proof":"success"},"mainSha":"b28d4e96c7b94f8da1544570def9be44fadf020d","missing":[],"pending":[],"required":["forgejo-main/source","forgejo-release/workflow","cc-execution/runtime-proof","render-onrunner/runtime-proof"],"sourceSha":"b28d4e96c7b94f8da1544570def9be44fadf020d","releaseState":"verified","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":false,"onrunner":true,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"onrunner":"success","ccExecution":"success"},"requestContractHash":"56142877dd85d574dc5a86eea6367e6e795b17f9b66b670ce6024d37390561c1","forgejoWorkflowProof":{"runId":11172,"source":"signed_push_receipt","status":"success","results":{},"conclusion":"success","targetStates":{"onrunner":"success","ccExecution":"success"},"targetJobCount":7,"observedTargetStates":{"onrunner":"success","ccExecution":"success"}},"onrunnerRuntimeProof":{"reason":null,"hostedUrl":"https://knocklaunchcrm.onrender.com","brokerReady":true,"exactSource":true,"healthStatus":200,"runtimeReady":true,"liveSourceSha":"b28d4e96c7b94f8da1544570def9be44fadf020d","runnerVersion":"onrunner-b28d4e96c7b9","expectedSourceSha":"b28d4e96c7b94f8da1544570def9be44fadf020d"},"releaseSourceVerified":true,"ccExecutionRuntimeProof":{"liveSha":"b28d4e96c7b94f8da1544570def9be44fadf020d","proofGate":"cc_execution_target_aware_runtime_identity_verified","deploymentId":"forgejo-main-b28d4e96c7b94f8da1544570def9be44fadf020d","compareStatus":"target_job_success_runtime_verified","workflowRunId":11172,"identitySource":"canonical_release_target_job","runtimeVersion":"1.58.223-durable-witness-lane-affinity","workflowFailed":false,"containsSourceSha":true},"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-23T11:15:43.337327+00:00","proof_gate":"canonical_release_terminal_verified","source_sha":"b28d4e96c7b94f8da1544570def9be44fadf020d","external_id":"forgejo-main-b28d4e96c7b9","receipt_type":"canonical_release_status","idempotency_key":"mission:327fbd8a-71db-4501-b47e-e1ab49d54700:forgejo-release-status:b28d4e96c7b94f8da1544570def9be44fadf020d:verified:forgejo-main/source=success|forgejo-release/workflow=success|cc-execution/runtime-proof=success|render-onrunner/runtime-proof=success","mission_step_id":"6d3f8171-f64a-4b69-80d0-ef9e47d76428","command_center_event_id":"327fbd8a-71db-4501-b47e-e1ab49d54700"},{"id":"4c6ff468-5116-4b94-a3fd-b77a512f3c37","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"implementation","branch":"ai/objective-first-repair-f81b22a4ba3b","reason":"retryable_provider_transport:forgejo_provider_read_timeout","status":"retryable","metrics":{"receiptBytes":10628,"releaseCount":0,"toolCallCount":4,"repeatedCallCount":0,"executorlessWaitMs":42885,"firstUsefulResultAt":"2026-10-05T18:56:59.373Z","recoveryAttemptCount":1,"ownerInterruptionCount":0},"version":"1.64.99-positive-mutation-admission","prNumber":5033,"terminal":false,"missionId":"f81b22a4-ba3b-4231-99c6-fb7f5b3f22a2","operation":"execute_mission","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":1554,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":1479,"approvedPlanMs":0,"missionSetupMs":380,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":287,"ledgerReconcileMs":0,"lineageReconcileMs":93,"resolvePreflightMs":380,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":287,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"f81b22a4-ba3b-4231-99c6-fb7f5b3f22a2"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1523,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-05T18:57:42.318261+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"5033","receipt_type":"execute_mission","idempotency_key":"mission:f81b22a4-ba3b-4231-99c6-fb7f5b3f22a2:execute_mission:repair_mission_pr_ready_retryable:current-generation","mission_step_id":"11b2b11c-f50f-4d57-994c-d9b0d9bc3264","command_center_event_id":"f81b22a4-ba3b-4231-99c6-fb7f5b3f22a2"},{"id":"4c70822a-8f4a-488c-8541-e26b054db179","source":"cc-execution","status":"authorized","payload":{"paths":["config/control-plane-capabilities.json","scripts/validate-command-center-contracts.mjs","workers/cc-execution/src/entrypoint-owner-status.js","workers/cc-execution/src/version.js"],"reason":"Bounded orphan adoption after the prior exact control-plane commit succeeded but PR creation timed out; verify desired state using no-op anchors and preserve the existing unique branch byte-for-byte.","baseSha":"ee58325d6f14ec5da42a8799ce779de57b94e676","issuedAt":1789176327747,"expiresAt":1789176507747,"missionId":"0dac9869-97af-4272-b9fc-10aea3b19559","authorizationId":"1d7356e7-c017-4f91-9937-32aa0d554f4f","retryableWithinExactScope":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-12T01:25:28.355392+00:00","proof_gate":"control_plane_maintenance_scope_authorized","source_sha":"ee58325d6f14ec5da42a8799ce779de57b94e676","external_id":null,"receipt_type":"control_plane_maintenance_authorization","idempotency_key":"control-plane-maintenance-authorize:1d7356e7-c017-4f91-9937-32aa0d554f4f","mission_step_id":"9339d582-ba95-435e-9db4-405b4bc9753e","command_center_event_id":"0dac9869-97af-4272-b9fc-10aea3b19559"},{"id":"4c711f85-4582-40cd-975e-0616447ef743","source":"cc-execution","status":"release_verification_pending","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":null,"reason":null,"status":"release_verification_pending","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.30.5-truthful-release-correlation","prNumber":3907,"terminal":false,"missionId":"4b6ee54e-fed3-47bd-abe0-abebbbd02a38","operation":"ship_and_prove","proofGate":"ship_and_prove_release_pending","sourceSha":"496698709a601459f0ffa4434eeea72aa25620a2","timingsMs":null,"nextAction":null,"receiptRef":{"mode":"full","missionId":"4b6ee54e-fed3-47bd-abe0-abebbbd02a38"},"performance":null,"deploymentId":"canonical-release-496698709a60","workflowRunId":30854789213,"releaseTargets":{"frontend":true,"onrunner":false,"ccExecution":false,"supabaseEdge":false},"detailsAvailable":true,"sourceReceiptBytes":1171,"ownerActionRequired":false},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-08-03T21:30:05.868816+00:00","proof_gate":"ship_and_prove_release_pending","source_sha":"496698709a601459f0ffa4434eeea72aa25620a2","external_id":"canonical-release-496698709a60","receipt_type":"ship_and_prove","idempotency_key":"mission:4b6ee54e-fed3-47bd-abe0-abebbbd02a38:ship_and_prove:ship_and_prove_release_pending","mission_step_id":"6ef2b01b-11f1-4810-8dda-20adb0014515","command_center_event_id":"4b6ee54e-fed3-47bd-abe0-abebbbd02a38"},{"id":"4c727331-23eb-4647-8c1f-4355b630be54","source":"cc-execution","status":"waiting_for_gate","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-bb17df59a25a","reason":"pull_request_checks_pending","status":"waiting_for_gate","metrics":{"receiptBytes":25443,"releaseCount":0,"toolCallCount":6,"repeatedCallCount":1,"executorlessWaitMs":219879,"firstUsefulResultAt":"2026-09-29T18:10:39.341Z","recoveryAttemptCount":2,"ownerInterruptionCount":0},"version":"1.64.10-paul-eval-precision","prNumber":4160,"terminal":false,"missionId":"bb17df59-a25a-48db-b2e3-b63636b31e82","operation":"execute_mission","proofGate":"repair_mission_waiting_for_gate","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":4276,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":4000,"approvedPlanMs":0,"missionSetupMs":523,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":381,"ledgerReconcileMs":0,"lineageReconcileMs":142,"resolvePreflightMs":523,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":381,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request after the exact-head KnockLaunch Gate changes state.","receiptRef":{"mode":"full","missionId":"bb17df59-a25a-48db-b2e3-b63636b31e82"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1691,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-29T18:15:24.009321+00:00","proof_gate":"repair_mission_waiting_for_gate","source_sha":null,"external_id":"4160","receipt_type":"execute_mission","idempotency_key":"mission:bb17df59-a25a-48db-b2e3-b63636b31e82:execute_mission:repair_mission_waiting_for_gate:current-generation","mission_step_id":"57844452-8088-4812-8f42-227fb5e1ebb4","command_center_event_id":"bb17df59-a25a-48db-b2e3-b63636b31e82"},{"id":"4c75e0e7-78f5-474e-a86d-8501cb137334","source":"cc-execution","status":"authorized","payload":{"paths":["config/control-plane-capabilities.json","src/__tests__/commandCenter/deployDetection.test.ts","workers/cc-execution/src/entrypoint-owner-status.js"],"reason":"Owner explicitly authorized a durable control-plane primitive so concurrent conversations cannot strand approved PRs when protected main advances.","baseSha":"ce9a1eeaa5f068a868963b7c8f6335b6be39902b","issuedAt":1790774015189,"expiresAt":1790774195189,"missionId":"c773265b-fed6-4dfb-985f-547b06c0e765","authorizationId":"a8c4a5a1-e2ea-45c6-b48b-ef4bb5a8a5ab","retryableWithinExactScope":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-30T13:13:35.57588+00:00","proof_gate":"control_plane_maintenance_scope_authorized","source_sha":"ce9a1eeaa5f068a868963b7c8f6335b6be39902b","external_id":null,"receipt_type":"control_plane_maintenance_authorization","idempotency_key":"control-plane-maintenance-authorize:a8c4a5a1-e2ea-45c6-b48b-ef4bb5a8a5ab","mission_step_id":"7f41b849-e069-4e0f-92fa-c4c5b49b4bf8","command_center_event_id":"c773265b-fed6-4dfb-985f-547b06c0e765"},{"id":"4c762b2f-bce8-4c4a-8cb9-915e8fd8bc0c","source":"owner_authorized_full_backlog_cleanup","status":"recorded","payload":{"category":"platform_editor_brand","disposition":"superseded_execution_attempt","previousStatus":"retryable","sourcePreserved":true,"noCompletionClaim":true,"recoveryPortfolioId":"f5ac0529-8647-57d7-d698-8cbb7f61212a"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-11T16:14:39.646808+00:00","proof_gate":"source_objective_preserved_in_existing_mission_ledger","source_sha":null,"external_id":null,"receipt_type":"owner_backlog_disposition","idempotency_key":"owner-full-backlog-cleanup-20261011:b3ede1d9-d6f2-4f2b-9443-310d7f88ccd3","mission_step_id":null,"command_center_event_id":"b3ede1d9-d6f2-4f2b-9443-310d7f88ccd3"},{"id":"4c774568-c14f-4cb0-a591-a358d09afd4f","source":"cc-execution","status":"deployment_dispatched","payload":{"ok":true,"jobId":null,"phase":"release","branch":"ai/forgejo-memory-pressure-guard-20260912","reason":null,"status":"deployment_dispatched","metrics":{"receiptBytes":0,"releaseCount":1,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":null,"prNumber":2477,"terminal":false,"missionId":"4a4e53c0-1223-4b69-8cd4-7e426c9dc18c","operation":"automatic_mission_resume","proofGate":"canonical_release_dispatched","sourceSha":"00dab561085eb19d619a3132572bd403c9cdff0a","timingsMs":{"prReadinessMs":926,"approvedPlanMs":0,"shipAndProveMs":2556,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"4a4e53c0-1223-4b69-8cd4-7e426c9dc18c"},"performance":null,"deploymentId":"forgejo-main-00dab561085e","workflowRunId":7327,"releaseTargets":{"frontend":false,"onrunner":false,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":2040,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-12T04:50:09.664262+00:00","proof_gate":"canonical_release_dispatched","source_sha":null,"external_id":"2477","receipt_type":"automatic_mission_resume","idempotency_key":"mission:4a4e53c0-1223-4b69-8cd4-7e426c9dc18c:automatic-mission-resume:2477:canonical_release_dispatched","mission_step_id":"f4d873dc-cd21-4dad-a81b-9584adf3c7b8","command_center_event_id":"4a4e53c0-1223-4b69-8cd4-7e426c9dc18c"},{"id":"4c775b50-ac93-425d-89d9-e227556417d8","source":"durable-mission-ledger","status":"pending","payload":{"sourceSha":"02d1d9ed846f87b45d28a245854e28f8f98adab5","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"tenant-avatar-bootstrap","satisfied":false,"statement":"Self-contained and custom tenant workspaces cannot bootstrap without a canonical tenant avatar: an existing shell-owned canonical avatar wins; otherwise the platform renders the tenant-avatar fallback.","proofConditionIds":["bootstrap-source","bootstrap-live"]}],"satisfied":false,"constraints":[{"id":"no-duplicate-avatar","satisfied":false,"statement":"Existing shells that render data-single-role-tenant-avatar=true must not receive a duplicate platform fallback.","proofConditionIds":["bootstrap-source"]},{"id":"no-second-avatar-architecture","satisfied":false,"statement":"Reuse MiscAwareAccountMenu and the canonical tenant avatar marker; do not create another avatar system.","proofConditionIds":["bootstrap-source"]},{"id":"no-visual-witness","satisfied":false,"statement":"Do not run Visual Witness for this non-visual bootstrap contract.","proofConditionIds":["bootstrap-source","bootstrap-live"]}],"contractHash":"95ad4e4520bc6dc0af1df5718aa256ef515a414be39101f56a51b88e0ef9d516","releaseBound":true,"witnessBound":false,"visualRequested":false,"visualSatisfied":true,"conditionResults":[{"id":"bootstrap-source","kind":"repository","evidence":{"repositoryProofGate":null,"requestContractHash":"95ad4e4520bc6dc0af1df5718aa256ef515a414be39101f56a51b88e0ef9d516","repositoryProofStatus":"required","repositoryProofSourceSha":null},"required":true,"satisfied":false},{"id":"bootstrap-live","kind":"runtime","evidence":{"releaseState":"verified","activeReleaseTargets":["frontend"],"releaseRequestContractHash":"95ad4e4520bc6dc0af1df5718aa256ef515a414be39101f56a51b88e0ef9d516"},"required":true,"satisfied":true}],"validationErrors":[],"pendingProofKinds":["repository"],"activeReleaseTargets":["frontend"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"60911b66-2940-4f68-9b88-cd17d1bdf5b6","created_at":"2026-09-07T01:22:31.770021+00:00","proof_gate":"request_contract_pending","source_sha":"02d1d9ed846f87b45d28a245854e28f8f98adab5","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:fc98ed49-3b5c-45aa-b1bd-014766821c14:request-contract:95ad4e4520bc6dc0af1df5718aa256ef515a414be39101f56a51b88e0ef9d516:02d1d9ed846f87b45d28a245854e28f8f98adab5:pending:repository","mission_step_id":"d306be7a-bd8a-4b8a-8b12-e1d95d0c8ea1","command_center_event_id":"fc98ed49-3b5c-45aa-b1bd-014766821c14"},{"id":"4c7b8cf5-6c54-4734-b8b2-dcfeaa1622b5","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":"ai/repair-onrunner-operator-identity-refresh","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.31.26-direct-route-visual-intent","prNumber":null,"terminal":false,"missionId":"200aa30b-2799-4689-87f4-84e558cf0455","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":null,"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /repair/continue-mission automatically with this missionId without another owner prompt.","receiptRef":{"mode":"full","missionId":"200aa30b-2799-4689-87f4-84e558cf0455"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":9056,"likelyAffectedFiles":["scripts/visual-witness-hosted-runner/src/universal-witness.mjs","scripts/visual-witness-hosted-runner/src/runner-entrypoint.mjs","workers/cc-execution/src/index-visual-witness-fast-path.js","src/routes/","src/pages/","src/components/","src/index.css"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-08-09T13:40:24.701186+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:200aa30b-2799-4689-87f4-84e558cf0455:execute_mission:repair_mission_synthesis_ready","mission_step_id":"a235a21c-e059-4092-9bb4-ab2497771673","command_center_event_id":"200aa30b-2799-4689-87f4-84e558cf0455"},{"id":"4c7bdf61-ca79-4a39-82b7-48b710faf499","source":"cc-execution","status":"deployment_dispatched","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":"ai/big-papis-tenant-stabilization","reason":null,"status":"deployment_dispatched","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.64-mutation-ledger-handoff","prNumber":1862,"terminal":false,"missionId":"74a9a3c0-652b-468e-ba41-a757b7a1ee08","operation":"execute_mission","proofGate":"canonical_release_dispatched","sourceSha":"13864a881c8e913dd266248dbc6d4d13b0cf8eda","timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":7116,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":969,"approvedPlanMs":0,"missionSetupMs":1606,"providerAuthMs":0,"shipAndProveMs":5968,"ledgerPrepareMs":885,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":1606,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":885,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"74a9a3c0-652b-468e-ba41-a757b7a1ee08"},"performance":null,"deploymentId":"forgejo-main-13864a881c8e","workflowRunId":null,"releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":2615,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"766cfaa7-ac42-46c8-bbef-69d13268a29d","created_at":"2026-09-05T17:55:17.131486+00:00","proof_gate":"canonical_release_dispatched","source_sha":"13864a881c8e913dd266248dbc6d4d13b0cf8eda","external_id":"forgejo-main-13864a881c8e","receipt_type":"execute_mission","idempotency_key":"mission:74a9a3c0-652b-468e-ba41-a757b7a1ee08:execute_mission:canonical_release_dispatched:current-generation","mission_step_id":"638f93dc-1f4c-4be0-bb8a-5036028e2461","command_center_event_id":"74a9a3c0-652b-468e-ba41-a757b7a1ee08"},{"id":"4c7c19f5-da1a-4663-b02e-b1b24ed429ce","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/big-papis-calendar-doubleclick","reason":"pull_request_stale_refresh_required","status":"retryable","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":null,"prNumber":3406,"terminal":false,"missionId":"e1c12577-4e1e-4d8c-b1a8-1dfefd7dd6f6","operation":"automatic_mission_resume","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"prReadinessMs":6008,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"e1c12577-4e1e-4d8c-b1a8-1dfefd7dd6f6"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":2363,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-22T10:29:39.461309+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"3406","receipt_type":"automatic_mission_resume","idempotency_key":"mission:e1c12577-4e1e-4d8c-b1a8-1dfefd7dd6f6:automatic-mission-resume:3406:repair_mission_pr_ready_retryable","mission_step_id":"190c84f8-01c4-482c-a79f-c7a21a996162","command_center_event_id":"e1c12577-4e1e-4d8c-b1a8-1dfefd7dd6f6"},{"id":"4c7c8e5e-c6ab-415d-ad16-0948ba510f0c","source":"cc-execution","status":"authorized","payload":{"paths":["config/control-plane-capabilities.json","src/__tests__/contracts/command-center-forgejo-transport-reliability.contract.test.ts","workers/cc-execution/src/index-release-fast-lane.js","workers/cc-execution/src/version.js"],"reason":"Owner requested making the Command Center control plane fast; this exact bounded change corrects excessive PR-readiness read budgets.","baseSha":"2dafff03dc088ec965677cd7c046f444587bacb3","issuedAt":1787951839708,"expiresAt":1787952019708,"missionId":"7c6a769a-7290-4180-b59a-8fac247c57d1","singleUse":true,"authorizationId":"97139c05-1680-4038-9754-e210accdfb8d"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-28T21:17:20.908921+00:00","proof_gate":"control_plane_maintenance_scope_authorized","source_sha":"2dafff03dc088ec965677cd7c046f444587bacb3","external_id":null,"receipt_type":"control_plane_maintenance_authorization","idempotency_key":"control-plane-maintenance-authorize:97139c05-1680-4038-9754-e210accdfb8d","mission_step_id":"ddaa3b3c-8107-41a8-9369-5f523f7e2030","command_center_event_id":"7c6a769a-7290-4180-b59a-8fac247c57d1"},{"id":"4c7d3f0d-fe1a-42d3-9df4-a001c7554f52","source":"forgejo-exact-source","status":"verified","payload":{"sourceSha":"1bcd27da77d1f318d8780b643d46ae936d7f09ed","repository":"noel/KnockLaunchOS","repositoryProofs":[{"id":"repo-proof","path":null,"proof":"forgejo_merged_pr_exact_head_gate","headSha":"699db372a1c722478bda9af1824c4673a65f7f97","prNumber":3099,"gateRunId":9589,"gateContext":"KnockLaunch Gate / KnockLaunch Gate (pull_request)","expectedText":null,"gateTargetUrl":"/noel/KnockLaunchOS/actions/runs/9589/jobs/1","mergeCommitSha":"1bcd27da77d1f318d8780b643d46ae936d7f09ed"}],"requestContractHash":"868a898e77be191b3bcad8ca6b58865435b48dbd79b0cbf8560e3d86b3fa8e19","namedGateEvidenceReceiptVersion":null},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-18T14:44:06.908267+00:00","proof_gate":"request_contract_repository_verified","source_sha":"1bcd27da77d1f318d8780b643d46ae936d7f09ed","external_id":null,"receipt_type":"request_contract_repository_status","idempotency_key":"mission:4fc18dbb-9532-4542-a530-e4f9be24130a:request-contract-repository:868a898e77be191b3bcad8ca6b58865435b48dbd79b0cbf8560e3d86b3fa8e19:1bcd27da77d1f318d8780b643d46ae936d7f09ed","mission_step_id":"f567d30e-2f4c-4b51-988a-76786d8d2e34","command_center_event_id":"4fc18dbb-9532-4542-a530-e4f9be24130a"},{"id":"4c7d54af-cf47-4f37-a09b-3812497f0a16","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"pending","frontend-cloudflare/live":"pending"},"mainSha":"327a7728c8e1592395456186485bc9ffa1a520f3","missing":[],"pending":["forgejo-release/workflow","frontend-cloudflare/live"],"required":["forgejo-main/source","forgejo-release/workflow","frontend-cloudflare/live"],"sourceSha":"327a7728c8e1592395456186485bc9ffa1a520f3","releaseState":"pending","sourceInMain":true,"compareStatus":"identical","releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"frontend":"pending"},"requestContractHash":"d929cdb8f990be8c4f054f9d9b86a5f08b949012b07b5d514a2e692aba0db0f6","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/6518","runId":6518,"status":"running","sourceSha":"327a7728c8e1592395456186485bc9ffa1a520f3","conclusion":null,"failedJobs":[],"diagnostics":null,"exactSource":true,"targetStates":{"frontend":"pending"},"targetJobCount":7,"observedTargetStates":{"frontend":"pending"}},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-09T02:11:26.484372+00:00","proof_gate":"canonical_release_pending","source_sha":"327a7728c8e1592395456186485bc9ffa1a520f3","external_id":"forgejo-main-327a7728c8e1","receipt_type":"canonical_release_status","idempotency_key":"mission:9ab3b554-14b9-4da6-878b-b9b4bd384f05:forgejo-release-status:327a7728c8e1592395456186485bc9ffa1a520f3:pending:forgejo-main/source=success|forgejo-release/workflow=pending|frontend-cloudflare/live=pending","mission_step_id":"bd22c9ef-369f-4aca-a364-fe69b47d14e2","command_center_event_id":"9ab3b554-14b9-4da6-878b-b9b4bd384f05"},{"id":"4c7d6fe1-05b8-40e6-bf9a-cccaf2ba76c9","source":"cc-execution","status":"pending","payload":{"ok":true,"jobId":"27dea1d7-2eec-4613-a3dd-e67af24b92ab","phase":"universal_visual_witness_supervised","branch":null,"reason":null,"status":"pending","metrics":{"receiptBytes":26351,"releaseCount":0,"toolCallCount":21,"repeatedCallCount":13,"executorlessWaitMs":229517,"firstUsefulResultAt":"2026-10-06T01:00:18.550Z","recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":null,"prNumber":5114,"terminal":false,"missionId":"a522fdf1-9b15-4c08-a749-aa07530e41de","operation":"visual_proof_started","proofGate":"universal_visual_witness_pending","sourceSha":"a5f0d7844048f25852cde2e7eead1940187d28bb","timingsMs":{"queue":227,"total":300,"execution":73},"nextAction":"Execution is pending; poll inspect_route_status only when fresh progress is expected, or cancel with inspect_route_cancel.","receiptRef":{"mode":"full","missionId":"a522fdf1-9b15-4c08-a749-aa07530e41de"},"performance":null,"deploymentId":"forgejo-main-a5f0d7844048","releaseState":"verified","visualWitness":{"role":"GodMode","jobId":"27dea1d7-2eec-4613-a3dd-e67af24b92ab","tenant":"pcg","runnerUrl":"https://laptop-witness.knocklaunch.app","runnerLane":"laptop","attemptsUsed":0,"supervisorId":"27dea1d7-2eec-4613-a3dd-e67af24b92ab","failureReason":null,"observedRoute":null,"runnerVersion":null,"attemptLineage":[],"missionOutcome":null,"requestedRoute":"/pcg/settings?section=website-builder","runnerSourceSha":null,"selectedViewports":["desktop","mobile"],"checkpointAccounting":null,"correctiveGeneration":0,"restartReplayHistory":[]},"workflowRunId":16148,"releaseTargets":{"frontend":true,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1788,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T01:04:10.466529+00:00","proof_gate":"post_release_visual_proof_started","source_sha":"a5f0d7844048f25852cde2e7eead1940187d28bb","external_id":"27dea1d7-2eec-4613-a3dd-e67af24b92ab","receipt_type":"visual_proof_started","idempotency_key":"mission:a522fdf1-9b15-4c08-a749-aa07530e41de:visual-start:27dea1d7-2eec-4613-a3dd-e67af24b92ab","mission_step_id":"81391cc7-e4a3-4ef6-a248-a972ac467d7b","command_center_event_id":"a522fdf1-9b15-4c08-a749-aa07530e41de"},{"id":"4c7e953d-76c9-4be2-92bf-5c6d1c2fcce3","source":"cc-execution","status":"verified","payload":{"paths":["workers/cc-execution/src/version.js","workers/cc-execution/test/release-orchestration-invariants.test.js"],"baseSha":"30b5ed6b03a2bf6cd0f10b6f00173d66ff44fbe4","consumedAt":1788018432226,"consumerToken":"d356cdc4-d15c-4da9-9031-b9223131a70c","authorizationId":"494241db-1cbc-4fd9-9289-7c7d8a82b0f3"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-29T15:47:13.318302+00:00","proof_gate":"control_plane_maintenance_single_use_consumed","source_sha":"30b5ed6b03a2bf6cd0f10b6f00173d66ff44fbe4","external_id":null,"receipt_type":"control_plane_maintenance_consumed","idempotency_key":"control-plane-maintenance-consume:494241db-1cbc-4fd9-9289-7c7d8a82b0f3","mission_step_id":"ad76e3a1-bdfa-425a-8aaf-d1d8194b65e4","command_center_event_id":"775892e8-a00e-4667-9364-0bbb124e241f"},{"id":"4c7f06a3-782d-4a6e-9e6d-597e7b20f6d2","source":"forgejo-runtime","status":"verified","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"success","frontend-cloudflare/live":"success"},"mainSha":"5ace728dbc0c8153ea7759091d77f8d0daedfc20","missing":[],"pending":[],"required":["forgejo-main/source","forgejo-release/workflow","frontend-cloudflare/live"],"sourceSha":"5ace728dbc0c8153ea7759091d77f8d0daedfc20","releaseState":"verified","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"frontend":"success"},"requestContractHash":"52dc391823e6a4a67446dab10fb4e978f79577270c76ea1be4b3ad520e35f953","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/11004","runId":11004,"status":"running","sourceSha":"5ace728dbc0c8153ea7759091d77f8d0daedfc20","conclusion":null,"failedJobs":[],"diagnostics":null,"exactSource":true,"targetStates":{"frontend":"success"},"targetJobCount":7,"observedTargetStates":{"frontend":"pending"}},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-23T01:43:43.918519+00:00","proof_gate":"canonical_release_terminal_verified","source_sha":"5ace728dbc0c8153ea7759091d77f8d0daedfc20","external_id":"forgejo-main-5ace728dbc0c","receipt_type":"canonical_release_status","idempotency_key":"mission:285944ef-f62b-4c50-a0be-04838efe26d6:forgejo-release-status:5ace728dbc0c8153ea7759091d77f8d0daedfc20:verified:forgejo-main/source=success|forgejo-release/workflow=success|frontend-cloudflare/live=success","mission_step_id":"500abb1f-e4b1-4e6d-878f-11028fcf4801","command_center_event_id":"285944ef-f62b-4c50-a0be-04838efe26d6"},{"id":"4c801fff-8a5a-4243-93a3-814f140d3271","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in visual proof.","nextAction":{"lane":"onrunner","action":"verify_visual","reason":"release_verified_visual_proof_pending","automationAllowed":true,"ownerActionRequired":false},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"visual_proof\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"request_contract_reconciliation\",\"status\":\"pending\",\"proofGate\":\"request_contract_pending\"},\"activeStep\":{\"key\":\"preflight\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"pull_request\",\"status\":\"retryable\",\"lane\":\"cc-execution\"},\"nextSafeAction\":{\"action\":\"verify_visual\",\"lane\":\"onrunner\",\"reason\":\"release_verified_visual_proof_pending\",\"automationAllowed\":true,\"ownerActionRequired\":false},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"cc-execution\",\"nextAction\":\"verify_visual\",\"recoveryOwner\":\"onrunner\"},\"acceptance\":{\"total\":3,\"verified\":0,\"pending\":3,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[\"proof-storage\",\"proof-ui\",\"proof-search\"]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":\"visual_proof\",\"deadlineAt\":\"2026-09-27T20:39:14.099961+00:00\",\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":\"ai/objective-first-repair-29a78e00e80b\",\"prNumber\":3888,\"sourceSha\":\"27a42020a78e42d6e08c9423a9f2b93209071065\",\"deploymentId\":\"forgejo-main-27a42020a78e\"}"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-27T16:53:08.671211+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:29a78e00-e80b-4f8f-81aa-aba19badaafb:owner-progress-heartbeat:119368532","mission_step_id":"4f648a34-7589-4272-bced-575908a1f27c","command_center_event_id":"29a78e00-e80b-4f8f-81aa-aba19badaafb"},{"id":"4c811b4e-358e-4d4b-9c8c-42e9312f8fa5","source":"forgejo","status":"waiting","payload":{"branch":"ai/block-empty-source-mutations-20260827","prNumber":819,"nextAction":"Follow the existing canonical release to terminal proof.","mergeCommitSha":"7b0f5b1aa9a27b62df5023fd9ec8af53cfa998ed","branchDeletedAfterMerge":false,"correctiveGenerationCreated":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-27T12:36:55.617139+00:00","proof_gate":"forgejo_merged_pr_is_authoritative_source_lineage","source_sha":"7b0f5b1aa9a27b62df5023fd9ec8af53cfa998ed","external_id":"819","receipt_type":"source_lineage_merged_pr_authoritative","idempotency_key":"mission:a002f79b-7d2b-43ea-9a52-98f27c095795:merged-pr:819:7b0f5b1aa9a27b62df5023fd9ec8af53cfa998ed","mission_step_id":"2ced3ab2-78b4-4415-ba93-2f3885b21566","command_center_event_id":"a002f79b-7d2b-43ea-9a52-98f27c095795"},{"id":"4c822108-8e82-480c-836f-bc89e1cbe10c","source":"cc-execution","status":"implementation_payload_required","payload":{"reason":"compiler_model_generation_failed","failureClass":"retryable","sourceTargets":["src/pages/owner/KnockLaunchOSDashboard.tsx"],"dependencyReason":"model_provider_http_429","dependencyStatus":429,"providerAttempts":[{"role":"deep","reason":"model_provider_attempt_timeout","status":504,"provider":"cloudflare-workers-ai","formatRepair":false},{"role":"primary","reason":"model_provider_attempt_timeout","status":504,"provider":"cloudflare-workers-ai","formatRepair":false},{"role":"fallback","reason":"model_provider_http_429","status":429,"provider":"openai","formatRepair":false}],"automaticExecutorAssigned":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-16T04:39:27.330983+00:00","proof_gate":"first_party_exact_source_edit_continuation_persisted","source_sha":"75706ad2ffd80ceb5e1ac8310bcdc53ac832bcf8","external_id":null,"receipt_type":"bounded_implementation_continuation","idempotency_key":"mission:cc3bdfe0-f4e7-449d-9237-3e1b955daa12:compiler:75706ad2ffd80ceb5e1ac8310bcdc53ac832bcf8:src/pages/owner/KnockLaunchOSDashboard.tsx","mission_step_id":"55caa945-acf1-4638-b0a1-55496d1427e0","command_center_event_id":"cc3bdfe0-f4e7-449d-9237-3e1b955daa12"},{"id":"4c826877-cf16-4f3d-acbf-7bda7c966d03","source":"cc-execution","status":"deployment_dispatched","payload":{"ok":true,"jobId":null,"phase":"implementation","branch":"ai/readable-tenant-storage-final","reason":null,"status":"deployment_dispatched","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.64-mutation-ledger-handoff","prNumber":1845,"terminal":false,"missionId":"cbb70c5a-cfcf-48bc-b06c-b23e1028284d","operation":"execute_mission","proofGate":"canonical_release_dispatched","sourceSha":"14c3b1f9d349811570cd27af6b5cebbaa47d4226","timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":15271,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":1779,"approvedPlanMs":0,"missionSetupMs":1419,"providerAuthMs":0,"shipAndProveMs":9855,"ledgerPrepareMs":813,"ledgerReconcileMs":0,"lineageReconcileMs":606,"resolvePreflightMs":1419,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":813,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"cbb70c5a-cfcf-48bc-b06c-b23e1028284d"},"performance":null,"deploymentId":"forgejo-main-14c3b1f9d349","workflowRunId":null,"releaseTargets":{"frontend":false,"onrunner":false,"migrations":true,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":2665,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-05T14:19:24.30292+00:00","proof_gate":"canonical_release_dispatched","source_sha":"14c3b1f9d349811570cd27af6b5cebbaa47d4226","external_id":"forgejo-main-14c3b1f9d349","receipt_type":"execute_mission","idempotency_key":"mission:cbb70c5a-cfcf-48bc-b06c-b23e1028284d:execute_mission:canonical_release_dispatched:current-generation","mission_step_id":"282e48c8-3a56-4986-9716-4c14e0ebac12","command_center_event_id":"cbb70c5a-cfcf-48bc-b06c-b23e1028284d"},{"id":"4c884d9b-693e-4b9b-bbda-69395b78f9a4","source":"owner_authorized_full_backlog_cleanup","status":"recorded","payload":{"category":"platform_reliability","disposition":"superseded_execution_attempt","previousStatus":"waiting","sourcePreserved":true,"noCompletionClaim":true,"recoveryPortfolioId":"96ea42b4-2d81-3020-09df-dfbab4b2b656"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-11T16:14:39.646808+00:00","proof_gate":"source_objective_preserved_in_existing_mission_ledger","source_sha":null,"external_id":null,"receipt_type":"owner_backlog_disposition","idempotency_key":"owner-full-backlog-cleanup-20261011:8902e052-f6f9-45a2-89f6-e0bfac4ca406","mission_step_id":null,"command_center_event_id":"8902e052-f6f9-45a2-89f6-e0bfac4ca406"},{"id":"4c89e339-4cb7-4a02-8955-c205a844b6de","source":"cc-execution","status":"waiting_for_gate","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/proposal-rebuild-version-contract","reason":"fresh_pr_provider_receipt_already_proves_auto_progress_gate_notifier_owns_next_state","status":"waiting_for_gate","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.64-mutation-ledger-handoff","prNumber":1866,"terminal":false,"missionId":"f1ad53f7-d0f8-4984-80de-caf531f916c9","operation":"execute_mission","proofGate":"repair_mission_fresh_pr_handed_off_to_gate","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":2439,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":0,"missionSetupMs":398,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":349,"ledgerReconcileMs":0,"lineageReconcileMs":49,"resolvePreflightMs":398,"repositoryMutationMs":2439,"repositoryProviderMs":2182,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":1338,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":349,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":844},"nextAction":"Canonical KnockLaunch Gate notifier and mission supervisor own progression from this exact PR head; do not synchronously poll Forgejo from the owner request.","receiptRef":{"mode":"full","missionId":"f1ad53f7-d0f8-4984-80de-caf531f916c9"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":3212,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"766cfaa7-ac42-46c8-bbef-69d13268a29d","created_at":"2026-09-05T18:23:36.365976+00:00","proof_gate":"repair_mission_fresh_pr_handed_off_to_gate","source_sha":null,"external_id":"1866","receipt_type":"execute_mission","idempotency_key":"mission:f1ad53f7-d0f8-4984-80de-caf531f916c9:execute_mission:repair_mission_fresh_pr_handed_off_to_gate:current-generation","mission_step_id":"7f68d042-0ff4-4ff7-9cf1-865ea0499219","command_center_event_id":"f1ad53f7-d0f8-4984-80de-caf531f916c9"},{"id":"4c8ae78f-e363-482b-b1d0-6c9f102c54d5","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in reasoning required.","nextAction":{"lane":"cc-execution","action":"continue_implementation","reason":"synthesis_required","automationAllowed":true,"ownerActionRequired":false},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"reasoning_required\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"execute_mission\",\"status\":\"synthesis_required\",\"proofGate\":\"repair_mission_synthesis_ready\"},\"activeStep\":{\"key\":\"implementation\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"pull_request\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextSafeAction\":{\"action\":\"continue_implementation\",\"lane\":\"cc-execution\",\"reason\":\"synthesis_required\",\"automationAllowed\":true,\"ownerActionRequired\":false},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"cc-execution\",\"nextAction\":\"continue_implementation\",\"recoveryOwner\":\"cc-execution\"},\"acceptance\":{\"total\":1,\"verified\":0,\"pending\":1,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[\"proof-production\"]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":\"pull_request\",\"deadlineAt\":\"2026-10-06T02:02:33.720754+00:00\",\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":null,\"prNumber\":null,\"sourceSha\":null,\"deploymentId\":null}"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-05T23:32:58.425819+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:16ed4d9d-fbe9-4546-8ff2-db39db9f025b:owner-progress-heartbeat:119416211","mission_step_id":"304e1fed-48f5-4e23-b3b1-835f45381fb0","command_center_event_id":"16ed4d9d-fbe9-4546-8ff2-db39db9f025b"},{"id":"4c8ba5e6-55a0-41a9-a31a-2b6ad8cfe394","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"pending","frontend-cloudflare/live":"pending"},"mainSha":"0e26ccb54f3862fc11f1b38aa6831a4fd6147e89","missing":[],"pending":["forgejo-release/workflow","frontend-cloudflare/live"],"required":["forgejo-main/source","forgejo-release/workflow","frontend-cloudflare/live"],"sourceSha":"0e26ccb54f3862fc11f1b38aa6831a4fd6147e89","releaseState":"pending","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"frontend":"pending"},"requestContractHash":"462500966ab5f46dfaf34d78a3777aa044e0e5da5a897447f724ef7f1e46f010","forgejoWorkflowProof":{"runId":12496,"source":"signed_push_receipt","status":"running","results":{},"conclusion":"running","targetStates":{"frontend":"pending"},"targetJobCount":7,"observedTargetStates":{"frontend":"pending"}},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-28T11:40:57.731387+00:00","proof_gate":"canonical_release_pending","source_sha":"0e26ccb54f3862fc11f1b38aa6831a4fd6147e89","external_id":"forgejo-main-0e26ccb54f38","receipt_type":"canonical_release_status","idempotency_key":"mission:c02e2d1c-63c2-4013-87d8-1d093b808d01:forgejo-release-status:0e26ccb54f3862fc11f1b38aa6831a4fd6147e89:pending:forgejo-main/source=success|forgejo-release/workflow=pending|frontend-cloudflare/live=pending","mission_step_id":"3cc3c6fc-019f-4965-add9-e5bda7234423","command_center_event_id":"c02e2d1c-63c2-4013-87d8-1d093b808d01"},{"id":"4c8bb026-58c7-40ec-941a-9e41f0151ba5","source":"cc-execution","status":"recorded","payload":{"requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"rawUtterance":"Unfreeze the control plane for this bounded Command Center reliability repair, then complete the durable chat/MCP recovery hardening. Fix the remaining recovery relevance and terminalization defects proven by the replacement-chat canary: stale owner-progress heartbeats must not outrank newly created missions during no-hint recovery; mission_list_active is a read and must use bounded read retry semantics; explicit/normalized request-contract proof conditions are authoritative for whether visual/interaction witness proof is required, so stale visual flags cannot keep repository/runtime-only missions nonterminal; recovery must preserve useful ledger error detail. Preserve the existing durable mission ledger, supervisor, one-lineage behavior, canonical Forgejo Gate, canonical release conductor, and no duplicate branch/PR/release semantics.","wordingChanged":false,"canonicalIntent":"Unfreeze the control plane for this bounded Command Center reliability repair, then complete the durable chat/MCP recovery hardening. Fix the remaining recovery relevance and terminalization defects proven by the replacement-chat canary: stale owner-progress heartbeats must not outrank newly created missions during no-hint recovery; mission_list_active is a read and must use bounded read retry semantics; explicit/normalized request-contract proof conditions are authoritative for whether visual/interaction witness proof is required, so stale visual flags cannot keep repository/runtime-only missions nonterminal; recovery must preserve useful ledger error detail. Preserve the existing durable mission ledger, supervisor, one-lineage behavior, canonical Forgejo Gate, canonical release conductor, and no duplicate branch/PR/release semantics.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"outcome-recovery","statement":"After requester chat/MCP loss, a fresh no-ID recovery resolves the newest actually-created durable mission rather than a stale mission made artificially recent by heartbeats, and a repository/runtime-only explicit contract terminalizes without invented visual proof.","proofConditionIds":["proof-repository","proof-runtime"]}],"objective":"Unfreeze the control plane for this bounded Command Center reliability repair, then complete the durable chat/MCP recovery hardening. Fix the remaining recovery relevance and terminalization defects proven by the replacement-chat canary: stale owner-progress heartbeats must not outrank newly created missions during no-hint recovery; mission_list_active is a read and must use bounded read retry semantics; explicit/normalized request-contract proof conditions are authoritative for whether visual/interaction witness proof is required, so stale visual flags cannot keep repository/runtime-only missions nonterminal; recovery must preserve useful ledger error detail. Preserve the existing durable mission ledger, supervisor, one-lineage behavior, canonical Forgejo Gate, canonical release conductor, and no duplicate branch/PR/release semantics.","constraints":[{"id":"canonical-machinery-only","statement":"Use only the existing Command Center mission ledger, supervisor, Forgejo Gate, canonical merge, canonical release conductor, and affected cc-execution/Supabase Edge owners. Do not create a parallel recovery or release system.","proofConditionIds":["proof-repository","proof-runtime"]},{"id":"capability-completeness","statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","proofConditionIds":["proof-repository","proof-runtime"]},{"id":"atomic-capability-lifecycle","statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","proofConditionIds":["proof-repository","proof-runtime"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"proof-repository","kind":"repository","claim":"workers/cc-execution/test/release-orchestration-invariants.test.js passes in canonical Gate and exact source proves creation-lineage recovery ordering, mission_list_active read semantics, contract-authoritative witness requirements, and preserved recovery error detail.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false},{"id":"proof-runtime","kind":"runtime","claim":"Live cc-execution exposes the new recovery build; mission_status with recoverLatest=true and no missionId resolves the same newest-created durable mission candidate as live ledger truth rather than heartbeat-churned stale work; the original reliability mission can reconcile to terminal verified without visual proof.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false}],"validationErrors":[],"capabilityManifest":{"id":"Unfreeze-the-control-plane-for-this-bounded-Command-Center-reliability-repair-then-complete-the-dura","driftPolicy":"exact_manifest_source_release_dependency_or_runtime_identity_mismatch_is_nonterminal","proofLedger":"command_center_mission_ledger_request_contract_hash_bound","schemaVersion":1,"releaseTargets":[],"lifecycleStates":["prepare","deploy","verify","activate"],"activationPolicy":"dependencies_and_claim_matched_live_proof_before_exposure","dependencyDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_required_not_runtime_failures","compatibilityWindow":["N","N-1"],"failureIsolationPolicy":"quarantine_or_rollback_affected_capability_only_preserve_unrelated_working_capabilities","canaryProofConditionIds":["proof-repository","proof-runtime"]},"capabilityCompleteness":{"domains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"required":true,"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_states_not_runtime_failures"}},"requestContractHash":"b86d9c89433f81bfa100a554f20eb6f4b9c8cbb497373de61acb6045f4bd14bd","requestContractRevision":5,"previousRequestContractHash":"a2f667766c10143e4a504d9556a307557e970b7ac9e0a78d70aa5c762a0b0a10"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-21T00:50:44.272421+00:00","proof_gate":"request_contract_revision_recorded","source_sha":null,"external_id":null,"receipt_type":"request_contract_revision","idempotency_key":"mission:403bc395-9d19-486a-9409-06e51cc91573:request-contract:b86d9c89433f81bfa100a554f20eb6f4b9c8cbb497373de61acb6045f4bd14bd","mission_step_id":"1f5df87c-5bd9-4d2a-8515-afdd357d4e19","command_center_event_id":"403bc395-9d19-486a-9409-06e51cc91573"},{"id":"4c8f0a1d-0a0f-4385-8be8-d654552a0c0f","source":"cc-execution","status":"authorized","payload":{"paths":["workers/cc-execution/src/index-mcp.js","workers/cc-execution/test/forgejo-runner-slot-admission.test.js"],"baseSha":"77c3f1e70895096bdb455b3b5d3f6d7611b558d0","issuedAt":1792112886930,"expiresAt":1792113066930,"missionId":"402e417e-98a2-498a-a03f-591c003d79ab","autoRefreeze":true,"authorizationId":"2960bd76-b377-4e1e-a079-6001636e9947","authorizationSource":"explicit_owner_request_contract"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-16T01:08:07.392019+00:00","proof_gate":"control_plane_maintenance_exact_scope_authorized","source_sha":"77c3f1e70895096bdb455b3b5d3f6d7611b558d0","external_id":"2960bd76-b377-4e1e-a079-6001636e9947","receipt_type":"control_plane_maintenance_authorized","idempotency_key":"control-plane-maintenance:402e417e-98a2-498a-a03f-591c003d79ab:2960bd76-b377-4e1e-a079-6001636e9947","mission_step_id":null,"command_center_event_id":"402e417e-98a2-498a-a03f-591c003d79ab"},{"id":"4c928d15-e856-4043-842a-11fed63ba2b3","source":"cc-execution","status":"waiting_for_gate","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/redfish-multiservice-prospecting-corrective-20260902","reason":"pull_request_checks_pending","status":"waiting_for_gate","metrics":{"receiptBytes":10531,"releaseCount":0,"toolCallCount":5,"repeatedCallCount":1,"ownerInterruptionCount":0},"version":null,"prNumber":1454,"terminal":false,"missionId":"a0f64142-3a76-47a4-856e-e72e1326619e","operation":"automatic_mission_resume","proofGate":"repair_mission_waiting_for_gate","sourceSha":null,"timingsMs":{"prReadinessMs":1653,"approvedPlanMs":0,"shipAndProveMs":0},"nextAction":"Reconcile this same mission and pull request after the exact-head KnockLaunch Gate changes state.","receiptRef":{"mode":"full","missionId":"a0f64142-3a76-47a4-856e-e72e1326619e"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1159,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"de8369b6-a78f-40bb-ae1f-28ffca62bc7e","created_at":"2026-09-02T17:54:01.302233+00:00","proof_gate":"repair_mission_waiting_for_gate","source_sha":null,"external_id":"1454","receipt_type":"automatic_mission_resume","idempotency_key":"mission:a0f64142-3a76-47a4-856e-e72e1326619e:automatic-mission-resume:1454:repair_mission_waiting_for_gate","mission_step_id":"dd7189a2-7f3a-4379-b149-ed242259b806","command_center_event_id":"a0f64142-3a76-47a4-856e-e72e1326619e"},{"id":"4c962731-71a9-433f-8c42-74096415352a","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"pending","frontend-cloudflare/live":"pending"},"mainSha":"628b5300d9eb2bc2b6a9afe08624e53333d9ba3e","missing":[],"pending":["forgejo-release/workflow","frontend-cloudflare/live"],"required":["forgejo-main/source","forgejo-release/workflow","frontend-cloudflare/live"],"sourceSha":"628b5300d9eb2bc2b6a9afe08624e53333d9ba3e","releaseState":"pending","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"frontend":"pending"},"requestContractHash":"15377b15d53df645c68053986e8bd97bea0d082a818b5a45816ff1f2966fda05","forgejoWorkflowProof":{"runId":7196,"source":"signed_push_receipt","status":"running","results":{},"conclusion":"running","targetStates":{"frontend":"pending"},"targetJobCount":7,"observedTargetStates":{"frontend":"pending"}},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-11T21:23:53.697118+00:00","proof_gate":"canonical_release_pending","source_sha":"628b5300d9eb2bc2b6a9afe08624e53333d9ba3e","external_id":"forgejo-main-628b5300d9eb","receipt_type":"canonical_release_status","idempotency_key":"mission:518293e0-098e-46bb-a9a6-87a92a36f806:forgejo-release-status:628b5300d9eb2bc2b6a9afe08624e53333d9ba3e:pending:forgejo-main/source=success|forgejo-release/workflow=pending|frontend-cloudflare/live=pending","mission_step_id":"b24c9e2a-66b3-48b1-97de-fffadd138b28","command_center_event_id":"518293e0-098e-46bb-a9a6-87a92a36f806"},{"id":"4c975700-922d-4a0c-a4f7-cf74b74244d6","source":"cc-execution","status":"blocked","payload":{"ok":false,"jobId":null,"phase":"objective_received","branch":"ai/live-runtime-proof-fallback-20260821","reason":"The operation was aborted due to timeout","status":"blocked","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.50.11-bounded-provider-control-plane","prNumber":null,"terminal":false,"missionId":"b251c8b3-e40d-40bb-8fca-9a6f5b0bc984","operation":"execute_mission","proofGate":"repair_mission_execution_blocked","sourceSha":null,"timingsMs":null,"nextAction":null,"receiptRef":{"mode":"full","missionId":"b251c8b3-e40d-40bb-8fca-9a6f5b0bc984"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":3411,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-21T18:04:30.460479+00:00","proof_gate":"repair_mission_execution_blocked","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:b251c8b3-e40d-40bb-8fca-9a6f5b0bc984:execute_mission:repair_mission_execution_blocked","mission_step_id":"23f3afd1-fdd6-4dce-9498-59c4c1de467d","command_center_event_id":"b251c8b3-e40d-40bb-8fca-9a6f5b0bc984"},{"id":"4c9785f7-dfff-4fe7-b171-809780d08d07","source":"cc-execution","status":"recorded","payload":{"objective":"Correct the live-routing defect discovered after WhatsMyProgress productization. Current Forgejo main maps /crm/:tenantType/:companyName/jobs directly to <JobTracker />, so JobsWorkOrdersApplicationRoute—and the new ProgressWorkspace—never executes. On a fresh branch from current main, make exactly two source edits in src/routes/crmRoutes.tsx: add a lazyWithRetry import for '@/pages/applications/JobsWorkOrdersApplicationRoute' beside the other application route lazy imports, and replace the /jobs route child <JobTracker /> with <JobsWorkOrdersApplicationRoute /> while keeping the existing TenantRoute role guard, SX suspense wrapper, and CRMShell. Preserve all non-progress tenant behavior because JobsWorkOrdersApplicationRoute itself falls back to JobTracker, preserve public WhatsMyProgress files, and deploy frontend only. Run Gate, squash merge, live proof New progress record.","tenantRef":"whatsmyprogress-com","receivedAt":"2026-09-01T02:45:39.862Z","fingerprint":"67a56bb909b6697c8a22860420a3e6b34f73b02a382a633edb744712b261b2f1","workstreamRef":"whatsmyprogresscom","conversationId":null,"canonicalBranch":"ai/whatsmyprogress-progress-route-fix-20260901","requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"rawUtterance":"Correct the live-routing defect discovered after WhatsMyProgress productization. Current Forgejo main maps /crm/:tenantType/:companyName/jobs directly to <JobTracker />, so JobsWorkOrdersApplicationRoute—and the new ProgressWorkspace—never executes. On a fresh branch from current main, make exactly two source edits in src/routes/crmRoutes.tsx: add a lazyWithRetry import for '@/pages/applications/JobsWorkOrdersApplicationRoute' beside the other application route lazy imports, and replace the /jobs route child <JobTracker /> with <JobsWorkOrdersApplicationRoute /> while keeping the existing TenantRoute role guard, SX suspense wrapper, and CRMShell. Preserve all non-progress tenant behavior because JobsWorkOrdersApplicationRoute itself falls back to JobTracker, preserve public WhatsMyProgress files, and deploy frontend only. Run Gate, squash merge, live proof New progress record.","wordingChanged":false,"canonicalIntent":"Correct the live-routing defect discovered after WhatsMyProgress productization. Current Forgejo main maps /crm/:tenantType/:companyName/jobs directly to <JobTracker />, so JobsWorkOrdersApplicationRoute—and the new ProgressWorkspace—never executes. On a fresh branch from current main, make exactly two source edits in src/routes/crmRoutes.tsx: add a lazyWithRetry import for '@/pages/applications/JobsWorkOrdersApplicationRoute' beside the other application route lazy imports, and replace the /jobs route child <JobTracker /> with <JobsWorkOrdersApplicationRoute /> while keeping the existing TenantRoute role guard, SX suspense wrapper, and CRMShell. Preserve all non-progress tenant behavior because JobsWorkOrdersApplicationRoute itself falls back to JobTracker, preserve public WhatsMyProgress files, and deploy frontend only. Run Gate, squash merge, live proof New progress record.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"progress-live","statement":"WhatsMyProgress /jobs renders the purpose-built ProgressWorkspace through JobsWorkOrdersApplicationRoute.","proofConditionIds":["source-route","runtime-progress"]},{"id":"siblings-safe","statement":"Ordinary tenants continue to use the existing JobTracker fallback inside CRMShell.","proofConditionIds":["source-route"]},{"id":"public-safe","statement":"The public WhatsMyProgress Coming Soon experience remains unchanged.","proofConditionIds":["source-scope","runtime-public"]}],"objective":"Correct the live-routing defect discovered after WhatsMyProgress productization. Current Forgejo main maps /crm/:tenantType/:companyName/jobs directly to <JobTracker />, so JobsWorkOrdersApplicationRoute—and the new ProgressWorkspace—never executes. On a fresh branch from current main, make exactly two source edits in src/routes/crmRoutes.tsx: add a lazyWithRetry import for '@/pages/applications/JobsWorkOrdersApplicationRoute' beside the other application route lazy imports, and replace the /jobs route child <JobTracker /> with <JobsWorkOrdersApplicationRoute /> while keeping the existing TenantRoute role guard, SX suspense wrapper, and CRMShell. Preserve all non-progress tenant behavior because JobsWorkOrdersApplicationRoute itself falls back to JobTracker, preserve public WhatsMyProgress files, and deploy frontend only. Run Gate, squash merge, live proof New progress record.","constraints":[{"id":"one-file","statement":"Corrective source diff is limited to src/routes/crmRoutes.tsx.","proofConditionIds":["source-scope"]},{"id":"preserve-role-shell","statement":"Keep the current jobs role guard, suspense wrapper, and CRMShell.","proofConditionIds":["source-route"]},{"id":"no-public-change","statement":"Do not modify public/whats-my-progress files.","proofConditionIds":["source-scope","runtime-public"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"source-route","kind":"repository","claim":"crmRoutes lazy-loads JobsWorkOrdersApplicationRoute and renders it inside CRMShell for /jobs.","route":"/crm/MISC/whatsmyprogress-com/jobs","required":true,"expectedText":"JobsWorkOrdersApplicationRoute","targetedActions":[],"allowedReleaseTargets":["frontend"],"requiredReleaseTargets":["frontend"]},{"id":"source-scope","kind":"repository","claim":"Only src/routes/crmRoutes.tsx changes in this corrective PR.","route":"/crm/MISC/whatsmyprogress-com/jobs","required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":["frontend"],"requiredReleaseTargets":["frontend"]},{"id":"runtime-progress","kind":"runtime","claim":"Live WhatsMyProgress /jobs renders the purpose-built Progress workspace.","route":"/crm/MISC/whatsmyprogress-com/jobs","required":true,"expectedText":"New progress record","targetedActions":[],"allowedReleaseTargets":["frontend"],"requiredReleaseTargets":["frontend"]},{"id":"runtime-public","kind":"runtime","claim":"Public WhatsMyProgress apex remains Coming Soon.","route":"https://whatsmyprogress.com/","required":true,"expectedText":"COMING SOON","targetedActions":[],"allowedReleaseTargets":["frontend"],"requiredReleaseTargets":["frontend"]}],"validationErrors":[]},"requestedBranch":"ai/whatsmyprogress-progress-route-fix-20260901","conversationContext":null,"requestContractHash":"60fa09df695557019f15527cd17ccca6dae964775bfd67ca9a183ad4a2771f3e","requestContractRevision":1},"tenant_id":"6789c016-47c0-495a-8560-6b455a5844ba","created_at":"2026-09-01T02:45:40.276363+00:00","proof_gate":"tenant_workstream_contribution_recorded","source_sha":null,"external_id":null,"receipt_type":"tenant_workstream_contribution","idempotency_key":"mission:f3c53e65-5f01-4baf-9746-1f2d5d0cd4cb:tenant-workstream-contribution:67a56bb909b6697c8a22860420a3e6b34f73b02a382a633edb744712b261b2f1","mission_step_id":null,"command_center_event_id":"f3c53e65-5f01-4baf-9746-1f2d5d0cd4cb"},{"id":"4c97c69c-1ad8-4f6f-ad56-b012d51f08cf","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/mission-release-target-failclosed-v2-20260825","reason":"retryable_provider_transport:The operation was aborted due to timeout","status":"retryable","metrics":{"receiptBytes":9341,"releaseCount":0,"toolCallCount":7,"repeatedCallCount":3,"ownerInterruptionCount":0},"version":null,"prNumber":743,"terminal":false,"missionId":"e7be62ea-ad7d-4e42-bd11-6f9e33c67733","operation":"automatic_mission_resume","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"prReadinessMs":5000,"approvedPlanMs":0,"shipAndProveMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"e7be62ea-ad7d-4e42-bd11-6f9e33c67733"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":698,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-25T17:29:33.313061+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"743","receipt_type":"automatic_mission_resume","idempotency_key":"mission:e7be62ea-ad7d-4e42-bd11-6f9e33c67733:automatic-mission-resume:743:repair_mission_pr_ready_retryable","mission_step_id":"0d0e9d7a-4b94-465c-90c2-10d4cba5e956","command_center_event_id":"e7be62ea-ad7d-4e42-bd11-6f9e33c67733"},{"id":"4c99882e-6126-4a93-b738-6f1672e2b7eb","source":"cc-execution","status":"no_change","payload":{"ok":true,"jobId":null,"phase":"implementation","branch":"ai/objective-first-repair-ac0ec7c38659","reason":null,"status":"no_change","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.167-cancelled-release-unfinished-target-scope","prNumber":null,"terminal":false,"missionId":"ac0ec7c3-8659-4f0f-987a-9e5fa5eed04e","operation":"execute_mission","proofGate":"repair_mission_prepared","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":2207,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":403,"providerAuthMs":0,"ledgerPrepareMs":403,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":403,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":403,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"pull_request_required","receiptRef":{"mode":"full","missionId":"ac0ec7c3-8659-4f0f-987a-9e5fa5eed04e"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1386,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-16T21:02:33.183532+00:00","proof_gate":"repair_mission_prepared","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:ac0ec7c3-8659-4f0f-987a-9e5fa5eed04e:execute_mission:repair_mission_prepared:current-generation","mission_step_id":"0db14448-4028-4ebb-99d6-1f3f79dc6210","command_center_event_id":"ac0ec7c3-8659-4f0f-987a-9e5fa5eed04e"},{"id":"4c99cff9-9de1-412a-a94a-cdcde52ee1af","source":"forgejo","status":"waiting","payload":{"branch":"ai/cloudflare-native-npm-detection","prNumber":4154,"nextAction":null,"mergeCommitSha":"eb344d36922c3078aeb08a4685e1004ecb99db25","branchDeletedAfterMerge":true,"correctiveGenerationCreated":false},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-10-04T11:37:36.406835+00:00","proof_gate":"forgejo_merged_pr_is_authoritative_source_lineage","source_sha":"eb344d36922c3078aeb08a4685e1004ecb99db25","external_id":"4154","receipt_type":"source_lineage_merged_pr_authoritative","idempotency_key":"mission:69560c72-ae48-437e-aee5-889a566d5332:merged-pr:4154:eb344d36922c3078aeb08a4685e1004ecb99db25","mission_step_id":"44676a01-e3bb-4d72-ad26-f7a4ae1bb675","command_center_event_id":"69560c72-ae48-437e-aee5-889a566d5332"},{"id":"4c9a3d8d-5463-49dc-a219-8cdfff7f0a82","source":"cc-execution","status":"recorded","payload":{"requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"rawUtterance":"Repair generation 1 for the existing long-running job notification mission. Production migration version 20260906013000 is already owned by book_me_directly_public_profile_and_provisioning_reconciliation. From current Forgejo main, rename only supabase/migrations/20260906013000_universal_background_jobs.sql to the confirmed-unused supabase/migrations/20260906014800_universal_background_jobs.sql with identical SQL content, and update only src/__tests__/contracts/background-job-notifications.contract.test.ts so its migration path points to 20260906014800_universal_background_jobs.sql. Do not change any other source or existing migration ledger row. Preserve #1912 product behavior and do not modify the roof-estimator Edge Function. Pass Gate, squash merge, release affected targets, and prove app_background_jobs live. No Visual Witness.","wordingChanged":false,"canonicalIntent":"Repair generation 1 for the existing long-running job notification mission. Production migration version 20260906013000 is already owned by book_me_directly_public_profile_and_provisioning_reconciliation. From current Forgejo main, rename only supabase/migrations/20260906013000_universal_background_jobs.sql to the confirmed-unused supabase/migrations/20260906014800_universal_background_jobs.sql with identical SQL content, and update only src/__tests__/contracts/background-job-notifications.contract.test.ts so its migration path points to 20260906014800_universal_background_jobs.sql. Do not change any other source or existing migration ledger row. Preserve #1912 product behavior and do not modify the roof-estimator Edge Function. Pass Gate, squash merge, release affected targets, and prove app_background_jobs live. No Visual Witness.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"long-running-jobs","statement":"Long-running app work has durable progress, active-work UI, and deduped terminal notifications, with Roof Estimator wired as the first producer.","proofConditionIds":["repo-ui","repo-estimator","repo-bell","repo-migration","release","database"]}],"objective":"Repair generation 1 for the existing long-running job notification mission. Production migration version 20260906013000 is already owned by book_me_directly_public_profile_and_provisioning_reconciliation. From current Forgejo main, rename only supabase/migrations/20260906013000_universal_background_jobs.sql to the confirmed-unused supabase/migrations/20260906014800_universal_background_jobs.sql with identical SQL content, and update only src/__tests__/contracts/background-job-notifications.contract.test.ts so its migration path points to 20260906014800_universal_background_jobs.sql. Do not change any other source or existing migration ledger row. Preserve #1912 product behavior and do not modify the roof-estimator Edge Function. Pass Gate, squash merge, release affected targets, and prove app_background_jobs live. No Visual Witness.","constraints":[{"id":"preserve","statement":"Preserve all #1912 product behavior, existing notification/preferences data, existing migration ledger rows, and Roof Estimator result behavior; do not modify the roof-estimator Edge Function.","proofConditionIds":["repo-estimator","repo-migration","database"]},{"id":"resequence-only","statement":"Repair generation 1 only resequences the background-jobs migration from collided 20260906013000 to unused 20260906014800 and updates its contract-test reference.","proofConditionIds":["repo-migration"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"repo-ui","kind":"repository","claim":"Notifications center shows Active work.","route":"src/pages/crm/UnifiedNotifications.tsx","roleRef":null,"userRef":null,"required":true,"expectedText":"Active work","targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]},{"id":"repo-estimator","kind":"repository","claim":"Roof Estimator uses roof.measurement background jobs.","route":"src/pages/roof-estimator/RoofTracingPage.tsx","roleRef":null,"userRef":null,"required":true,"expectedText":"jobType: 'roof.measurement'","targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]},{"id":"repo-bell","kind":"repository","claim":"Notification bell exposes active background jobs.","route":"src/components/notifications/NotificationBell.tsx","roleRef":null,"userRef":null,"required":true,"expectedText":"active background job","targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]},{"id":"repo-migration","kind":"repository","claim":"Current Forgejo source contains the resequenced universal background-jobs migration.","route":"supabase/migrations/20260906014800_universal_background_jobs.sql","roleRef":null,"userRef":null,"required":true,"expectedText":"create table if not exists public.app_background_jobs","targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]},{"id":"release","kind":"release","claim":"Affected production targets complete from the exact corrective merged source.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]},{"id":"database","kind":"runtime","claim":"Production contains app_background_jobs with tenant/user isolation and terminal notification transition behavior.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]}],"validationErrors":[]},"requestContractHash":"daf5c59ae63ebd7ba2506ab1beb7679052fc8e9731712765f9002fe8c76be8b6","requestContractRevision":7,"previousRequestContractHash":"878cc3529c63b1808e46892da176ec198a0f0a5adcc306f8ddaaf00afc7b7848"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-06T01:52:50.377134+00:00","proof_gate":"request_contract_revision_recorded","source_sha":null,"external_id":null,"receipt_type":"request_contract_revision","idempotency_key":"mission:b8f0e488-cb62-41a3-9d2e-48f214fe07c4:request-contract:daf5c59ae63ebd7ba2506ab1beb7679052fc8e9731712765f9002fe8c76be8b6","mission_step_id":"ab888721-f04c-4a62-b9fd-40986e53c32f","command_center_event_id":"b8f0e488-cb62-41a3-9d2e-48f214fe07c4"},{"id":"4c9cdb2f-e983-49a1-b99c-40f170b3d57a","source":"durable-mission-ledger","status":"verified","payload":{"sourceSha":"eded7da1f4d7945443ff3a61b62fb1d1f7f43a17","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"embedded-route-identity","satisfied":true,"statement":"Valid MODES tenant application routes resolve by tenant-embedded application identity, including workspace aliases and suite surfaces such as forms, payments, rental inventory, and event-rental operations.","proofConditionIds":["proof-live"]},{"id":"mode-membership","satisfied":true,"statement":"A valid application assigned to the active MODES mode renders its intended application surface instead of the 'That tool does not belong to this mode' mismatch state.","proofConditionIds":["proof-live"]},{"id":"universal-settings","satisfied":true,"statement":"MODES tenant Settings & Profile, Profile section, Notifications, and Connections routes render the canonical TenantSettingsPage inside tenant context.","proofConditionIds":["proof-live"]}],"satisfied":true,"constraints":[{"id":"standalone-semantics","satisfied":true,"statement":"Do not make suite surfaces independently standalone-launchable; tenant-embedded path resolution must remain distinct from standalone product launch semantics.","proofConditionIds":["proof-live"]},{"id":"preserve-special-workspaces","satisfied":true,"statement":"Preserve dedicated Big Papi, roofing, Redfish, Curri, and other special workspace route owners.","proofConditionIds":["proof-live"]},{"id":"shared-primitive","satisfied":true,"statement":"Repair the shared embedded-route and MODES settings ownership primitives rather than adding Speedy-Panda-only route patches.","proofConditionIds":["proof-live"]},{"id":"capability-completeness","satisfied":true,"statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","proofConditionIds":["proof-live"]},{"id":"atomic-capability-lifecycle","satisfied":true,"statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","proofConditionIds":["proof-live"]}],"contractHash":"0ec109a510666c6af6db90aff060f6372f5d7235c733be525e61cad1fa5e4abf","releaseBound":true,"witnessBound":false,"visualRequested":false,"visualSatisfied":true,"conditionResults":[{"id":"proof-live","kind":"runtime","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":false,"releaseTargetStates":{"frontend":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["frontend"],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"migrationReleaseVerified":null,"releaseRequestContractHash":"0ec109a510666c6af6db90aff060f6372f5d7235c733be525e61cad1fa5e4abf"},"required":true,"satisfied":true}],"validationErrors":[],"pendingProofKinds":[],"activeReleaseTargets":["frontend"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-19T03:53:55.250945+00:00","proof_gate":"request_contract_terminal_verified","source_sha":"eded7da1f4d7945443ff3a61b62fb1d1f7f43a17","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:e1acf37d-4f83-426c-bebc-7387e5043d9f:request-contract:0ec109a510666c6af6db90aff060f6372f5d7235c733be525e61cad1fa5e4abf:eded7da1f4d7945443ff3a61b62fb1d1f7f43a17:verified:","mission_step_id":"3126c190-69d4-4320-95e6-63498fb6e598","command_center_event_id":"e1acf37d-4f83-426c-bebc-7387e5043d9f"},{"id":"4c9d0a93-91e3-4300-b122-741573308e84","source":"cc-execution","status":"release_reconciliation_pending","payload":{"ok":true,"jobId":null,"phase":"release","branch":"ai/objective-first-repair-fe82deac77de","reason":null,"status":"release_reconciliation_pending","metrics":{"receiptBytes":95553,"releaseCount":0,"toolCallCount":8,"repeatedCallCount":3,"executorlessWaitMs":404268,"firstUsefulResultAt":"2026-09-29T18:03:46.001Z","recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.64.10-paul-eval-precision","prNumber":4158,"terminal":false,"missionId":"fe82deac-77de-444f-87ed-2b7fae11cba6","operation":"execute_mission","proofGate":"canonical_release_reconciliation_pending","sourceSha":"0069334ad3ae60040cdefc7d4e3ff6652340ce95","timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":1885,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":234,"approvedPlanMs":0,"missionSetupMs":458,"providerAuthMs":0,"shipAndProveMs":885,"ledgerPrepareMs":458,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":458,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":458,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"reconcile_release","receiptRef":{"mode":"full","missionId":"fe82deac-77de-444f-87ed-2b7fae11cba6"},"performance":null,"deploymentId":"forgejo-main-0069334ad3ae","releaseState":null,"workflowRunId":null,"releaseTargets":{"frontend":true,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":2556,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-29T18:08:04.148181+00:00","proof_gate":"canonical_release_reconciliation_pending","source_sha":"0069334ad3ae60040cdefc7d4e3ff6652340ce95","external_id":"forgejo-main-0069334ad3ae","receipt_type":"execute_mission","idempotency_key":"mission:fe82deac-77de-444f-87ed-2b7fae11cba6:execute_mission:canonical_release_reconciliation_pending:current-generation","mission_step_id":"65095bd6-178a-4e78-86a4-41186e9736a6","command_center_event_id":"fe82deac-77de-444f-87ed-2b7fae11cba6"},{"id":"4c9f2d8c-f971-4b1a-9aee-8d41ec1217df","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in implementation.","nextAction":{"lane":"cc-execution","action":"reconcile_pull_request","reason":"durable_state:pull_request","automationAllowed":true,"ownerActionRequired":false},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"implementation\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"request_contract_revision\",\"status\":\"recorded\",\"proofGate\":\"request_contract_revision_recorded\"},\"activeStep\":{\"key\":\"pull_request\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"release\",\"status\":\"ready\",\"lane\":\"production-release-conductor\"},\"nextSafeAction\":{\"action\":\"reconcile_pull_request\",\"lane\":\"cc-execution\",\"reason\":\"durable_state:pull_request\",\"automationAllowed\":true,\"ownerActionRequired\":false},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"cc-execution\",\"nextAction\":\"reconcile_pull_request\",\"recoveryOwner\":\"cc-execution\"},\"acceptance\":{\"total\":1,\"verified\":0,\"pending\":1,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[\"proof-production\"]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":\"runtime_proof\",\"deadlineAt\":\"2026-10-06T14:54:20.947247+00:00\",\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":null,\"prNumber\":null,\"sourceSha\":null,\"deploymentId\":null}"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T11:26:38.56536+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:8461f374-86b0-422f-bb81-3fb39febaab9:owner-progress-heartbeat:119419066","mission_step_id":"a036e1a4-6bb7-4248-b530-a16b22bcaaa4","command_center_event_id":"8461f374-86b0-422f-bb81-3fb39febaab9"},{"id":"4ca0eb94-8d29-427f-baa5-a11da07ac598","source":"cc-execution","status":"pending","payload":{"ok":true,"jobId":"882a3f90-41a1-4b7e-ae8d-2640ec2c7833","phase":"universal_visual_witness_supervised","branch":"ai/proposal-editor-ornament-instances","reason":null,"status":"pending","metrics":{"receiptBytes":0,"releaseCount":1,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":null,"prNumber":1964,"terminal":false,"missionId":"0dc9d40e-bebf-4e68-908d-1523ef3f07ef","operation":"visual_proof_started","proofGate":"universal_visual_witness_pending","sourceSha":"dfdea14400577d14bbac33a3854fda076f45f998","timingsMs":{"wake":103,"total":408,"submit":305,"wakeAttempts":1},"nextAction":"Poll inspect_route_status or cancel with inspect_route_cancel.","receiptRef":{"mode":"full","missionId":"0dc9d40e-bebf-4e68-908d-1523ef3f07ef"},"performance":null,"deploymentId":"forgejo-main-dfdea1440057","workflowRunId":5885,"releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":true,"edgeFunctionSlugs":["proposal-engine"]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":655,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"766cfaa7-ac42-46c8-bbef-69d13268a29d","created_at":"2026-09-06T16:36:05.8777+00:00","proof_gate":"post_release_visual_proof_started","source_sha":"dfdea14400577d14bbac33a3854fda076f45f998","external_id":"882a3f90-41a1-4b7e-ae8d-2640ec2c7833","receipt_type":"visual_proof_started","idempotency_key":"mission:0dc9d40e-bebf-4e68-908d-1523ef3f07ef:visual-start:882a3f90-41a1-4b7e-ae8d-2640ec2c7833","mission_step_id":"4d303181-6869-456a-b65e-502fbc995b6d","command_center_event_id":"0dc9d40e-bebf-4e68-908d-1523ef3f07ef"},{"id":"4ca148e0-8ba6-40f4-b874-2d5651344c90","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":"ai/rebuild-encore-pa-os-20260808","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.31.23-targeted-owner-preflight","prNumber":null,"terminal":false,"missionId":"8a8db942-fb42-4e66-b6cf-0b0981441541","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":null,"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /repair/continue-mission automatically with this missionId without another owner prompt.","receiptRef":{"mode":"full","missionId":"8a8db942-fb42-4e66-b6cf-0b0981441541"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":11764,"likelyAffectedFiles":["workers/cc-execution/src/index-mission-control.js","workers/cc-execution/src/command-center-contracts.js","workers/cc-execution/src/index-release-fast-lane.js",".github/workflows/production-release-conductor.yml","scripts/resolve-autonomous-change-plan.mjs","scripts/resolve-production-workflow-run.mjs","src/routes/","src/pages/","src/components/","src/index.css",".github/workflows/canonical-pull-request-gate.yml","workers/cc-execution/src/index-controlled-deploy-gate.js"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"fe5cc9d9-c2fe-4062-84c7-a334663cd63c","created_at":"2026-08-08T18:32:40.315755+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:8a8db942-fb42-4e66-b6cf-0b0981441541:execute_mission:repair_mission_synthesis_ready","mission_step_id":"be8c2751-a9bf-4cf5-852e-e117cd4eb00a","command_center_event_id":"8a8db942-fb42-4e66-b6cf-0b0981441541"},{"id":"4ca239e0-3a17-430f-835a-598eb4cac7ea","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in release.","nextAction":{"lane":"production-release-conductor","action":"reconcile_release","reason":"merged_source_requires_release_proof","automationAllowed":true,"ownerActionRequired":false},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"release\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"source_lineage_merged_pr_authoritative\",\"status\":\"waiting\",\"proofGate\":\"forgejo_merged_pr_is_authoritative_source_lineage\"},\"activeStep\":{\"key\":\"preflight\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"pull_request\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextSafeAction\":{\"action\":\"reconcile_release\",\"lane\":\"production-release-conductor\",\"reason\":\"merged_source_requires_release_proof\",\"automationAllowed\":true,\"ownerActionRequired\":false},\"acceptance\":{\"total\":1,\"verified\":0,\"pending\":1,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[\"proof-calendar\"]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":\"preflight\",\"deadlineAt\":\"2026-09-21T02:26:51.231189+00:00\",\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":\"ai/big-papis-30-day-calendar\",\"prNumber\":3335,\"sourceSha\":\"8b43a6e32d003df61d69af7d5e974ac3c0f64e32\",\"deploymentId\":\"forgejo-main-8b43a6e32d00\"}"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-21T02:18:49.583478+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:4b6ccbad-c933-4828-ba3c-62bb86b06f90:owner-progress-heartbeat:119330475","mission_step_id":"b279c387-5e68-4d1f-8cc5-7dac91d03a92","command_center_event_id":"4b6ccbad-c933-4828-ba3c-62bb86b06f90"},{"id":"4ca449c5-2df5-44e8-ab7e-4fe7f9eb064b","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in release.","nextAction":{"lane":"cc-execution","action":"reconcile_pull_request","reason":"pull_request_exists_without_merged_source","automationAllowed":true,"ownerActionRequired":false},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"release\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"owner_progress_heartbeat\",\"status\":\"waiting\",\"proofGate\":\"owner_progress_heartbeat\"},\"activeStep\":{\"key\":\"preflight\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"implementation\",\"status\":\"pending\",\"lane\":\"cc-execution\"},\"nextSafeAction\":{\"action\":\"reconcile_pull_request\",\"lane\":\"cc-execution\",\"reason\":\"pull_request_exists_without_merged_source\",\"automationAllowed\":true,\"ownerActionRequired\":false},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"cc-execution\",\"nextAction\":\"reconcile_pull_request\",\"recoveryOwner\":\"cc-execution\"},\"acceptance\":{\"total\":1,\"verified\":0,\"pending\":1,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[\"proof-pcg-mobile-pagination-final\"]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":\"release\",\"deadlineAt\":\"2026-10-06T06:08:08.467348+00:00\",\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":null,\"prNumber\":5151,\"sourceSha\":null,\"deploymentId\":null}"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T05:06:49.385797+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:1ac7f316-f174-4a19-8f65-70f51fa4ba0e:owner-progress-heartbeat:119417547","mission_step_id":"3f87b5cc-95c7-45ca-a19c-5de0d9146e8d","command_center_event_id":"1ac7f316-f174-4a19-8f65-70f51fa4ba0e"},{"id":"4ca521d8-dcd1-4fd3-9441-cfebd918d3ef","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/fix-frontend-gate-tsc-heap-20260827","reason":"retryable_provider_transport:GET:The operation was aborted due to timeout","status":"retryable","metrics":{"receiptBytes":1164,"releaseCount":0,"toolCallCount":1,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.52.8-deterministic-green-merge-ack","prNumber":null,"terminal":false,"missionId":"de2e2fac-e9ec-403d-ae56-6cfafbfac4de","operation":"execute_mission","proofGate":"repair_mission_execution_retryable","sourceSha":null,"timingsMs":{"handlerMs":29586,"prReadinessMs":0,"approvedPlanMs":29586,"missionSetupMs":416,"shipAndProveMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"de2e2fac-e9ec-403d-ae56-6cfafbfac4de"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":5054,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-27T02:35:47.013884+00:00","proof_gate":"repair_mission_execution_retryable","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:de2e2fac-e9ec-403d-ae56-6cfafbfac4de:execute_mission:repair_mission_execution_retryable","mission_step_id":"8dced2c8-2ca4-43b1-a033-b50d0eb37c89","command_center_event_id":"de2e2fac-e9ec-403d-ae56-6cfafbfac4de"},{"id":"4ca751fb-088f-45ae-a669-b1834546a723","source":"owner_authorized_full_backlog_cleanup","status":"recorded","payload":{"category":"other_product_work","disposition":"superseded_execution_attempt","previousStatus":"blocked","sourcePreserved":true,"noCompletionClaim":true,"recoveryPortfolioId":"bab983f2-5b27-75ee-2ba0-fc92336af889"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-11T16:14:39.646808+00:00","proof_gate":"source_objective_preserved_in_existing_mission_ledger","source_sha":null,"external_id":null,"receipt_type":"owner_backlog_disposition","idempotency_key":"owner-full-backlog-cleanup-20261011:a6ea91fb-1f27-476b-a293-b52791e06b16","mission_step_id":null,"command_center_event_id":"a6ea91fb-1f27-476b-a293-b52791e06b16"},{"id":"4ca9ca98-7a44-421c-bb92-3bf2e5e567ed","source":"cc-execution","status":"authorized","payload":{"paths":[".forgejo/workflows/control-plane-canary.yml","workers/cc-execution/src/index-mission-control.js","workers/cc-execution/test/mission-control-maintenance-regression.test.js"],"baseSha":"0590bd4c60545a6a71b1d3f0171d883b862287d0","issuedAt":1791902855501,"expiresAt":1791903035501,"missionId":"109c1f46-423a-4356-90cb-5769dc0b47a4","autoRefreeze":true,"authorizationId":"72184cc2-9ae2-4666-b37a-013d5fa103aa","authorizationSource":"explicit_owner_request_contract"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-13T14:47:36.208323+00:00","proof_gate":"control_plane_maintenance_exact_scope_authorized","source_sha":"0590bd4c60545a6a71b1d3f0171d883b862287d0","external_id":"72184cc2-9ae2-4666-b37a-013d5fa103aa","receipt_type":"control_plane_maintenance_authorized","idempotency_key":"control-plane-maintenance:109c1f46-423a-4356-90cb-5769dc0b47a4:72184cc2-9ae2-4666-b37a-013d5fa103aa","mission_step_id":null,"command_center_event_id":"109c1f46-423a-4356-90cb-5769dc0b47a4"},{"id":"4cabacaa-6af5-45b7-a42f-67383b341a46","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-b103393b9f11","reason":"retryable_provider_transport:forgejo_provider_read_timeout","status":"retryable","metrics":{"receiptBytes":32812,"releaseCount":0,"toolCallCount":16,"repeatedCallCount":13,"executorlessWaitMs":143504,"firstUsefulResultAt":"2026-10-01T10:32:51.539Z","recoveryAttemptCount":14,"ownerInterruptionCount":0},"version":null,"prNumber":4335,"terminal":false,"missionId":"b103393b-9f11-447a-92bc-4795cc646b13","operation":"automatic_mission_resume","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"prReadinessMs":2176,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"b103393b-9f11-447a-92bc-4795cc646b13"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":819,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-01T10:33:02.119668+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"4335","receipt_type":"automatic_mission_resume","idempotency_key":"mission:b103393b-9f11-447a-92bc-4795cc646b13:automatic-mission-resume:4335:repair_mission_pr_ready_retryable","mission_step_id":"c6973df5-b5a2-4a75-9a42-c97c250be4a8","command_center_event_id":"b103393b-9f11-447a-92bc-4795cc646b13"},{"id":"4cac5446-5ec1-4745-95ea-374ad66c23e9","source":"cc-execution","status":"authorized","payload":{"paths":["workers/cc-execution/src/index-release-fast-lane.js","workers/cc-execution/src/version.js","workers/cc-execution/test/event-driven-auto-merge-invariants.test.js"],"reason":"Owner authorized PAUL hardening; live acceptance found a remaining exact-basename punctuation edge case.","baseSha":"0939dc6088f84f0fade8f389b845ebaa8ddd737f","issuedAt":1790773470623,"expiresAt":1790773650623,"missionId":"92176a8e-5379-4bf4-bb3b-f0b343cd9918","authorizationId":"8fe29e02-94e2-4170-9b55-d93a9b4e81a2","retryableWithinExactScope":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-30T13:04:31.0772+00:00","proof_gate":"control_plane_maintenance_scope_authorized","source_sha":"0939dc6088f84f0fade8f389b845ebaa8ddd737f","external_id":null,"receipt_type":"control_plane_maintenance_authorization","idempotency_key":"control-plane-maintenance-authorize:8fe29e02-94e2-4170-9b55-d93a9b4e81a2","mission_step_id":"afa75339-c807-42d9-b43c-d17ec292fc7e","command_center_event_id":"92176a8e-5379-4bf4-bb3b-f0b343cd9918"},{"id":"4cad35c3-1c82-4a57-81dd-1caf2ce2586e","source":"forgejo","status":"waiting","payload":{"branch":"ai/objective-first-repair-47c98dd9c4fb","prNumber":4572,"nextAction":"Follow the existing canonical release to terminal proof.","mergeCommitSha":"0ba9013a9e650cde5c166e078ae6734b163603a7","branchDeletedAfterMerge":true,"correctiveGenerationCreated":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-03T00:42:01.121196+00:00","proof_gate":"forgejo_merged_pr_is_authoritative_source_lineage","source_sha":"0ba9013a9e650cde5c166e078ae6734b163603a7","external_id":"4572","receipt_type":"source_lineage_merged_pr_authoritative","idempotency_key":"mission:47c98dd9-c4fb-4d0a-a080-42e0f6481bb6:merged-pr:4572:0ba9013a9e650cde5c166e078ae6734b163603a7","mission_step_id":"cad6ba85-fbbf-4fff-9fac-e5b684575d91","command_center_event_id":"47c98dd9-c4fb-4d0a-a080-42e0f6481bb6"},{"id":"4cae5fbb-d795-4bd0-b5c7-bf0d0e158c08","source":"cc-execution","status":"waiting","payload":{"body":{"ship":true,"files":[],"branch":"ai/objective-first-repair-f571210e0ba0","writes":[],"patches":[],"version":1,"approved":true,"missionId":"f571210e-0ba0-43e1-b58e-5b0698be6d20","objective":"Second PAUL conversational-intelligence improvement after live runtime 1.64.51 still failed paul_intelligence_eval. Keep deep conversations deep end-to-end: run the internal decision planner and final critic with deep reasoning, and require the critic for correction-recovery turns even when there is no completion claim or planner-risk flag. Preserve existing tool repair, tenant safety, provider-neutral routing, and cost controls for fast/simple turns. Ship through canonical PR, Gate, squash merge, cc-execution release, and rerun live paul_intelligence_eval.","repository":"noel/KnockLaunchOS","ownerApproved":true,"releaseIntent":null,"sourceTargets":["workers/cc-execution/src/platform-sidekick-intelligence.js","workers/cc-execution/src/version.js"],"anchored_edits":[{"path":"workers/cc-execution/src/platform-sidekick-intelligence.js","anchor":"reasoningProfile:\"standard\"});return{brief:decisionBriefOf(r.decision,catalog),provider:r.provider,model:r.model}}catch{return null}}","replacement":"reasoningProfile:\"deep\"});return{brief:decisionBriefOf(r.decision,catalog),provider:r.provider,model:r.model}}catch{return null}}"},{"path":"workers/cc-execution/src/platform-sidekick-intelligence.js","anchor":"reasoningProfile:\"standard\"})}catch{return null}}","replacement":"reasoningProfile:\"deep\"})}catch{return null}}"},{"path":"workers/cc-execution/src/platform-sidekick-intelligence.js","anchor":"criticRequired=reasoningProfile===\"deep\"&&!structured&&selectedCalls.length===0&&Boolean(planner?.brief)&&(criticalCompletionClaim||plannerRisk)","replacement":"criticRequired=reasoningProfile===\"deep\"&&!structured&&selectedCalls.length===0&&Boolean(planner?.brief)&&(criticalCompletionClaim||plannerRisk||Boolean(correctionDirective))"},{"path":"workers/cc-execution/src/version.js","anchor":"1.64.51-paul-conversational-depth","replacement":"1.64.52-paul-deep-critic"}],"implementation":{"files":[],"writes":[]},"requestContract":{"valid":true,"intent":{"compilation":{"stages":["owner_intent","conversation_context","scope","live_state","mutation_authority","affected_systems","dependencies","risk_and_blast_radius","execution_tactics","required_proof","release_plan","recovery_plan"],"version":2,"explicit":true,"objective":"Second PAUL conversational-intelligence improvement after live runtime 1.64.51 still failed paul_intelligence_eval. Keep deep conversations deep end-to-end: run the internal decision planner and final critic with deep reasoning, and require the critic for correction-recovery turns even when there is no completion claim or planner-risk flag. Preserve existing tool repair, tenant safety, provider-neutral routing, and cost controls for fast/simple turns. Ship through canonical PR, Gate, squash merge, cc-execution release, and rerun live paul_intelligence_eval.","proofKinds":["runtime"]},"rawUtterance":"Second PAUL conversational-intelligence improvement after live runtime 1.64.51 still failed paul_intelligence_eval. Keep deep conversations deep end-to-end: run the internal decision planner and final critic with deep reasoning, and require the critic for correction-recovery turns even when there is no completion claim or planner-risk flag. Preserve existing tool repair, tenant safety, provider-neutral routing, and cost controls for fast/simple turns. Ship through canonical PR, Gate, squash merge, cc-execution release, and rerun live paul_intelligence_eval.","wordingChanged":false,"canonicalIntent":"Second PAUL conversational-intelligence improvement after live runtime 1.64.51 still failed paul_intelligence_eval. Keep deep conversations deep end-to-end: run the internal decision planner and final critic with deep reasoning, and require the critic for correction-recovery turns even when there is no completion claim or planner-risk flag. Preserve existing tool repair, tenant safety, provider-neutral routing, and cost controls for fast/simple turns. Ship through canonical PR, Gate, squash merge, cc-execution release, and rerun live paul_intelligence_eval.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"paul-deep-critic","statement":"Second PAUL conversational-intelligence improvement after live runtime 1.64.51 still failed paul_intelligence_eval. Keep deep conversations deep end-to-end: run the internal decision planner and final critic with deep reasoning, and require the critic for correction-recovery turns even when there is no completion claim or planner-risk flag. Preserve existing tool repair, tenant safety, provider-neutral routing, and cost controls for fast/simple turns. Ship through canonical PR, Gate, squash merge, cc-execution release, and rerun live paul_intelligence_eval.","provenance":{"reason":"Owner instructed continued PAUL improvement and live eval remains degraded.","source":"owner_explicit_request","inherited":false,"blockingAuthority":true},"proofConditionIds":["paul-eval-proof"]}],"objective":"Second PAUL conversational-intelligence improvement after live runtime 1.64.51 still failed paul_intelligence_eval. Keep deep conversations deep end-to-end: run the internal decision planner and final critic with deep reasoning, and require the critic for correction-recovery turns even when there is no completion claim or planner-risk flag. Preserve existing tool repair, tenant safety, provider-neutral routing, and cost controls for fast/simple turns. Ship through canonical PR, Gate, squash merge, cc-execution release, and rerun live paul_intelligence_eval.","constraints":[{"id":"canonical-execution","statement":"Use canonical Prime/Forgejo/Gate/release path and preserve tenant/security invariants.","provenance":{"reason":"Platform execution contract.","source":"hard_safety_invariant","inherited":false,"blockingAuthority":true},"proofConditionIds":["paul-eval-proof"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"paul-eval-proof","kind":"runtime","claim":"The deeper planner/critic behavior is live and the PAUL intelligence evaluation is no longer degraded for the repaired quality path."}]},"repairGeneration":null,"executionEnvelope":{"ship":true,"version":1,"approved":true,"missionId":null,"ownerApproved":true,"releaseIntent":null,"sourceTargets":["workers/cc-execution/src/platform-sidekick-intelligence.js","workers/cc-execution/src/version.js"],"requestContract":{"valid":true,"intent":{"compilation":{"stages":["owner_intent","conversation_context","scope","live_state","mutation_authority","affected_systems","dependencies","risk_and_blast_radius","execution_tactics","required_proof","release_plan","recovery_plan"],"version":2,"explicit":true,"objective":"Second PAUL conversational-intelligence improvement after live runtime 1.64.51 still failed paul_intelligence_eval. Keep deep conversations deep end-to-end: run the internal decision planner and final critic with deep reasoning, and require the critic for correction-recovery turns even when there is no completion claim or planner-risk flag. Preserve existing tool repair, tenant safety, provider-neutral routing, and cost controls for fast/simple turns. Ship through canonical PR, Gate, squash merge, cc-execution release, and rerun live paul_intelligence_eval.","proofKinds":["runtime"]},"rawUtterance":"Second PAUL conversational-intelligence improvement after live runtime 1.64.51 still failed paul_intelligence_eval. Keep deep conversations deep end-to-end: run the internal decision planner and final critic with deep reasoning, and require the critic for correction-recovery turns even when there is no completion claim or planner-risk flag. Preserve existing tool repair, tenant safety, provider-neutral routing, and cost controls for fast/simple turns. Ship through canonical PR, Gate, squash merge, cc-execution release, and rerun live paul_intelligence_eval.","wordingChanged":false,"canonicalIntent":"Second PAUL conversational-intelligence improvement after live runtime 1.64.51 still failed paul_intelligence_eval. Keep deep conversations deep end-to-end: run the internal decision planner and final critic with deep reasoning, and require the critic for correction-recovery turns even when there is no completion claim or planner-risk flag. Preserve existing tool repair, tenant safety, provider-neutral routing, and cost controls for fast/simple turns. Ship through canonical PR, Gate, squash merge, cc-execution release, and rerun live paul_intelligence_eval.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"paul-deep-critic","statement":"Second PAUL conversational-intelligence improvement after live runtime 1.64.51 still failed paul_intelligence_eval. Keep deep conversations deep end-to-end: run the internal decision planner and final critic with deep reasoning, and require the critic for correction-recovery turns even when there is no completion claim or planner-risk flag. Preserve existing tool repair, tenant safety, provider-neutral routing, and cost controls for fast/simple turns. Ship through canonical PR, Gate, squash merge, cc-execution release, and rerun live paul_intelligence_eval.","provenance":{"reason":"Owner instructed continued PAUL improvement and live eval remains degraded.","source":"owner_explicit_request","inherited":false,"blockingAuthority":true},"proofConditionIds":["paul-eval-proof"]}],"objective":"Second PAUL conversational-intelligence improvement after live runtime 1.64.51 still failed paul_intelligence_eval. Keep deep conversations deep end-to-end: run the internal decision planner and final critic with deep reasoning, and require the critic for correction-recovery turns even when there is no completion claim or planner-risk flag. Preserve existing tool repair, tenant safety, provider-neutral routing, and cost controls for fast/simple turns. Ship through canonical PR, Gate, squash merge, cc-execution release, and rerun live paul_intelligence_eval.","constraints":[{"id":"canonical-execution","statement":"Use canonical Prime/Forgejo/Gate/release path and preserve tenant/security invariants.","provenance":{"reason":"Platform execution contract.","source":"hard_safety_invariant","inherited":false,"blockingAuthority":true},"proofConditionIds":["paul-eval-proof"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"paul-eval-proof","kind":"runtime","claim":"The deeper planner/critic behavior is live and the PAUL intelligence evaluation is no longer degraded for the repaired quality path."}]},"repairGeneration":null,"proofRequirements":null,"controlPlaneUnfreeze":true,"controlPlaneMaintenance":true,"controlPlaneMaintenancePaths":["workers/cc-execution/src/platform-sidekick-intelligence.js","workers/cc-execution/src/version.js"],"controlPlaneMaintenanceReason":"Owner-authorized PAUL deep planner/critic quality improvement after live eval remained degraded."},"proofRequirements":null,"controlPlaneUnfreeze":true,"durableMutationResume":true,"controlPlaneMaintenance":true,"controlPlaneMaintenancePaths":["workers/cc-execution/src/platform-sidekick-intelligence.js","workers/cc-execution/src/version.js"],"controlPlaneMaintenanceReason":"Owner-authorized PAUL deep planner/critic quality improvement after live eval remained degraded."},"recovery":false,"fingerprint":"7ac043e785eab1faaac96b5991e509caf2e1fb8b3a68695ddc71fc14770ccc68","replayCount":0,"serializedBytes":11581},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-02T21:12:40.432915+00:00","proof_gate":"repository_mutation_intent_persisted","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent","idempotency_key":"mission:f571210e-0ba0-43e1-b58e-5b0698be6d20:repository-mutation-intent:7ac043e785eab1faaac96b5991e509caf2e1fb8b3a68695ddc71fc14770ccc68:0","mission_step_id":"77e25a4e-e185-47d4-9e62-471a37e5ea93","command_center_event_id":"f571210e-0ba0-43e1-b58e-5b0698be6d20"},{"id":"4caf853e-bac7-4283-8359-05154edccde4","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-mtg1it93","reason":"The operation was aborted due to timeout","status":"retryable","metrics":{"receiptBytes":7221,"releaseCount":0,"toolCallCount":6,"repeatedCallCount":3,"ownerInterruptionCount":0},"version":"1.56.3-source-scope-boundary","prNumber":1121,"terminal":false,"missionId":"e29af9a1-ad64-428e-a54b-774fd39b19d6","operation":"execute_mission","proofGate":"canonical_release_transport_retryable","sourceSha":null,"timingsMs":{"handlerMs":20712,"prReadinessMs":484,"approvedPlanMs":0,"missionSetupMs":1046,"shipAndProveMs":20137},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"e29af9a1-ad64-428e-a54b-774fd39b19d6"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":5528,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-30T17:01:56.453931+00:00","proof_gate":"canonical_release_transport_retryable","source_sha":null,"external_id":"1121","receipt_type":"execute_mission","idempotency_key":"mission:e29af9a1-ad64-428e-a54b-774fd39b19d6:execute_mission:canonical_release_transport_retryable:current-generation","mission_step_id":"65469066-ca14-43c2-874a-eb25c9310aaf","command_center_event_id":"e29af9a1-ad64-428e-a54b-774fd39b19d6"},{"id":"4caf8b0b-450f-4c33-8d07-18935b654505","source":"forgejo","status":"waiting","payload":{"branch":"ai/objective-first-repair-mu2q1r7a","prNumber":2819,"nextAction":"Follow the existing canonical release to terminal proof.","mergeCommitSha":"3712b1eccc93035efd76de11a6331919c9d1db10","branchDeletedAfterMerge":true,"correctiveGenerationCreated":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-15T14:06:49.849863+00:00","proof_gate":"forgejo_merged_pr_is_authoritative_source_lineage","source_sha":"3712b1eccc93035efd76de11a6331919c9d1db10","external_id":"2819","receipt_type":"source_lineage_merged_pr_authoritative","idempotency_key":"mission:a37fb99d-608d-4a18-acb3-b58d89750d79:merged-pr:2819:3712b1eccc93035efd76de11a6331919c9d1db10","mission_step_id":"e39f05a3-526b-486f-8242-020cdbd1333e","command_center_event_id":"a37fb99d-608d-4a18-acb3-b58d89750d79"},{"id":"4cafe23c-27b4-48c1-937e-7655c576dfff","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-9bd232005455","reason":"retryable_provider_transport:forgejo_provider_read_timeout","status":"retryable","metrics":{"receiptBytes":20338,"releaseCount":0,"toolCallCount":10,"repeatedCallCount":6,"executorlessWaitMs":428959,"firstUsefulResultAt":"2026-10-02T17:35:51.776Z","recoveryAttemptCount":4,"ownerInterruptionCount":0},"version":"1.64.50-onepath-source-domain","prNumber":4507,"terminal":false,"missionId":"9bd23200-5455-4f9b-ab0e-a990291ca240","operation":"execute_mission","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":2171,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":2095,"approvedPlanMs":0,"missionSetupMs":419,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":286,"ledgerReconcileMs":0,"lineageReconcileMs":133,"resolvePreflightMs":419,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":286,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"9bd23200-5455-4f9b-ab0e-a990291ca240"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1522,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-02T17:43:04.165986+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"4507","receipt_type":"execute_mission","idempotency_key":"mission:9bd23200-5455-4f9b-ab0e-a990291ca240:execute_mission:repair_mission_pr_ready_retryable:current-generation","mission_step_id":"c0952bd4-6bcd-4a60-a0d9-71019eff108f","command_center_event_id":"9bd23200-5455-4f9b-ab0e-a990291ca240"},{"id":"4cb04c12-7901-44a8-a354-ea048b7b2a8d","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"pending","frontend-cloudflare/live":"pending"},"mainSha":"d8611e986293b452f676a5e0cac17826c293e462","missing":[],"pending":["forgejo-release/workflow","frontend-cloudflare/live"],"required":["forgejo-main/source","forgejo-release/workflow","frontend-cloudflare/live"],"sourceSha":"d8611e986293b452f676a5e0cac17826c293e462","releaseState":"pending","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"frontend":"pending"},"requestContractHash":"dd4126d158185118c0ef1258f10ef11b701935dbd1cdbb2e1bf0431699b7b3f1","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/9058","runId":9058,"status":"running","sourceSha":"d8611e986293b452f676a5e0cac17826c293e462","conclusion":null,"failedJobs":[],"diagnostics":null,"exactSource":true,"targetStates":{"frontend":"pending"},"targetJobCount":7,"observedTargetStates":{"frontend":"pending"}},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-16T23:34:00.446597+00:00","proof_gate":"canonical_release_pending","source_sha":"d8611e986293b452f676a5e0cac17826c293e462","external_id":"forgejo-main-d8611e986293","receipt_type":"canonical_release_status","idempotency_key":"mission:6d992804-5b0b-4682-b641-8e5ef0692f8a:forgejo-release-status:d8611e986293b452f676a5e0cac17826c293e462:pending:forgejo-main/source=success|forgejo-release/workflow=pending|frontend-cloudflare/live=pending","mission_step_id":"98422763-23f2-4ef3-943b-fe972c1a9de0","command_center_event_id":"6d992804-5b0b-4682-b641-8e5ef0692f8a"},{"id":"4cb07824-c070-4c04-a948-f7f4e8ba4d03","source":"cc-execution","status":"blocked","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-90e18e9a0e48","reason":"forgejo_pull_request_read_failed:502","status":"blocked","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":null,"prNumber":2510,"terminal":false,"missionId":"90e18e9a-0e48-482f-aa0c-1f222cdda17a","operation":"automatic_mission_resume","proofGate":"canonical_release_blocked","sourceSha":null,"timingsMs":{"prReadinessMs":2959,"approvedPlanMs":0,"shipAndProveMs":9638,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"90e18e9a-0e48-482f-aa0c-1f222cdda17a"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":703,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-12T16:56:01.24769+00:00","proof_gate":"canonical_release_blocked","source_sha":null,"external_id":"2510","receipt_type":"automatic_mission_resume","idempotency_key":"mission:90e18e9a-0e48-482f-aa0c-1f222cdda17a:automatic-mission-resume:2510:canonical_release_blocked","mission_step_id":"e459d3fe-c9f3-4b1f-b075-aab603c1809f","command_center_event_id":"90e18e9a-0e48-482f-aa0c-1f222cdda17a"},{"id":"4cb294bc-6c6c-4aa9-9902-eb8a39fe178a","source":"cc-execution","status":"in_progress","payload":{"ok":true,"jobId":null,"phase":"release","branch":"ai/cloudflare-credential-manager","reason":null,"status":"in_progress","metrics":{"receiptBytes":0,"releaseCount":1,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":null,"prNumber":1748,"terminal":false,"missionId":"05014277-8ab7-4cf0-bb07-3a2517a6c2f1","operation":"automatic_mission_resume","proofGate":"canonical_release_reconciliation_pending","sourceSha":"4bd55da380bba61ff8f67bcec023f741f877ec49","timingsMs":{"prReadinessMs":978,"approvedPlanMs":0,"shipAndProveMs":5797,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create replacement work.","receiptRef":{"mode":"full","missionId":"05014277-8ab7-4cf0-bb07-3a2517a6c2f1"},"performance":null,"deploymentId":"forgejo-main-4bd55da380bb","workflowRunId":5306,"releaseTargets":{"frontend":false,"onrunner":false,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":793,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-04T20:34:57.403824+00:00","proof_gate":"canonical_release_reconciliation_pending","source_sha":null,"external_id":"1748","receipt_type":"automatic_mission_resume","idempotency_key":"mission:05014277-8ab7-4cf0-bb07-3a2517a6c2f1:automatic-mission-resume:1748:canonical_release_reconciliation_pending","mission_step_id":"655786b7-8275-46ee-b4fd-af6a06c0fca7","command_center_event_id":"05014277-8ab7-4cf0-bb07-3a2517a6c2f1"},{"id":"4cb52e07-050f-49ff-ab91-e8dbf07891ca","source":"cc-execution","status":"waiting","payload":{"body":{"ship":false,"files":[],"branch":"ai/objective-first-repair-e3478acfa504","writes":[],"patches":[],"version":1,"approved":true,"prNumber":4073,"missionId":"d31923ac-371e-4a5b-9034-e02109a06e33","objective":"Apply exact repository-authority decruft batch 3 to existing PR #4073 on branch ai/objective-first-repair-e3478acfa504, bound to current protected main c2eea2a4ff6cec84887d9be917c3584c7c90739f. Do not merge, release, create another PR, or broaden scope.","sourceSha":"c2eea2a4ff6cec84887d9be917c3584c7c90739f","repository":"noel/KnockLaunchOS","ownerApproved":true,"releaseIntent":null,"sourceTargets":["src/pages/admin/AdminCloudflareOps.tsx","supabase/functions/cloudflare-ops/index.ts","workers/cc-execution/src/command-center-contracts.js","workers/cc-execution/src/entrypoint-routed.js","workers/cc-execution/src/index-autonomous-release.js","workers/cc-execution/src/index-canonical-edge-deploy.js"],"workstreamKey":"repo-decruft-pr4073-batch3-c2eea2a4ff6c","anchored_edits":[{"path":"src/pages/admin/AdminCloudflareOps.tsx","edits":[{"new_content":"  const [healthUrl, setHealthUrl] = useState('https://app.knocklaunch.app');\n  const [workflowRunId, setWorkflowRunId] = useState('');\n  const [workflowFile, setWorkflowFile] = useState('');\n  const [secretWorkerName, setSecretWorkerName] = useState('knocklaunch-cc-read-proxy');\n  const [secretName, setSecretName] = useState('');\n  const [secretValue, setSecretValue] = useState('');\n  const [deleteConfirm, setDeleteConfirm] = useState('');\n  const [results, setResults] = useState<OpsResult[]>([]);","old_content":"  const [healthUrl, setHealthUrl] = useState('https://app.knocklaunch.app');\n  const [workflowRunId, setWorkflowRunId] = useState('');\n  const [workflowFile, setWorkflowFile] = useState('');\n  const [renderApiKey, setRenderApiKey] = useState('');\n  const [renderServiceId, setRenderServiceId] = useState('');\n  const [secretWorkerName, setSecretWorkerName] = useState('knocklaunch-cc-read-proxy');\n  const [secretName, setSecretName] = useState('RENDER_API_KEY');\n  const [secretValue, setSecretValue] = useState('');\n  const [deleteConfirm, setDeleteConfirm] = useState('');\n  const [results, setResults] = useState<OpsResult[]>([]);"},{"new_content":"    if (result.ok !== false) setSecretValue('');\n  }\n\n\n  async function deleteWorkerSecretFromManager() {\n    const worker = secretWorkerName.trim();","old_content":"    if (result.ok !== false) setSecretValue('');\n  }\n\n  async function writeReadProxySecret(secretNameToWrite: string, value: string, clear: () => void) {\n    const secret = value.trim();\n    if (!secret) {\n      toast({ title: `${secretNameToWrite} required`, description: 'Paste the value, then save it. It will be cleared after a successful write.', variant: 'destructive' });\n      return;\n    }\n    const result = await run('put_worker_secret', { workerName: 'knocklaunch-cc-read-proxy', secretName: secretNameToWrite, secretValue: secret });\n    if (result.ok !== false) clear();\n  }\n\n  async function deleteWorkerSecretFromManager() {\n    const worker = secretWorkerName.trim();"},{"new_content":"            <ShieldCheck className=\"h-4 w-4\" />\n            <AlertTitle>Canonical operations only</AlertTitle>\n            <AlertDescription>\n              This page does not deploy, roll back, pause routes, or revive retired browser runners. Frontend production is deployed by Cloudflare Workers Builds from main. Authenticated visual proof uses cc-execution with the owner-controlled KNOCKLAUNCH Visual Sandbox.\n            </AlertDescription>\n          </Alert>\n","old_content":"            <ShieldCheck className=\"h-4 w-4\" />\n            <AlertTitle>Canonical operations only</AlertTitle>\n            <AlertDescription>\n              This page does not deploy, roll back, pause routes, or revive retired browser runners. Frontend production is deployed by Cloudflare Workers Builds from main. Authenticated visual proof uses cc-execution with Render OnRunner profile default.\n            </AlertDescription>\n          </Alert>\n"},{"new_content":"            </CardContent>\n          </Card>\n\n          <Card>\n            <CardHeader><CardTitle className=\"text-base\">Advanced Worker Secrets Manager</CardTitle><CardDescription>Generic write, rotate, and delete controls for scoped operator maintenance.</CardDescription></CardHeader>\n            <CardContent className=\"space-y-3\">","old_content":"            </CardContent>\n          </Card>\n\n          <Card className=\"order-first border-emerald-500/30 bg-emerald-500/5\">\n            <CardHeader>\n              <CardTitle className=\"text-base\">Visual Witness Auto-Restart Setup</CardTitle>\n              <CardDescription>Configure only the canonical hosted Render service restart credentials used by cc-read-proxy during a bounded 502/524 outage.</CardDescription>\n            </CardHeader>\n            <CardContent className=\"space-y-4\">\n              <Alert><ShieldCheck className=\"h-4 w-4\" /><AlertTitle>Target locked for safety</AlertTitle><AlertDescription>Worker: <span className=\"font-mono\">knocklaunch-cc-read-proxy</span>. Values are write-only and clear after save.</AlertDescription></Alert>\n              <div className=\"rounded-lg border border-border bg-background p-3 space-y-2\">\n                <div className=\"flex flex-col gap-1 sm:flex-row sm:items-center sm:justify-between\"><div><div className=\"font-mono text-xs font-semibold\">RENDER_API_KEY</div><p className=\"text-xs text-muted-foreground\">Authorizes the scoped Render restart call.</p></div><Badge variant=\"secondary\">required</Badge></div>\n                <Textarea value={renderApiKey} onChange={(event) => setRenderApiKey(event.target.value)} placeholder=\"Paste Render API key. It will be saved once, then cleared.\" className=\"min-h-[84px] font-mono text-xs\" />\n                <Button type=\"button\" className=\"w-full\" disabled={busy || !renderApiKey.trim()} onClick={() => writeReadProxySecret('RENDER_API_KEY', renderApiKey, () => setRenderApiKey(''))}>{loadingAction === 'put_worker_secret' ? <Loader2 className=\"mr-2 h-4 w-4 animate-spin\" /> : <ShieldCheck className=\"mr-2 h-4 w-4\" />}Save Render API Key</Button>\n              </div>\n              <div className=\"rounded-lg border border-border bg-background p-3 space-y-2\">\n                <div className=\"flex flex-col gap-1 sm:flex-row sm:items-center sm:justify-between\"><div><div className=\"font-mono text-xs font-semibold\">RENDER_VISUAL_WITNESS_SERVICE_ID</div><p className=\"text-xs text-muted-foreground\">Render service ID for the canonical Hosted Visual Witness service.</p></div><Badge variant=\"secondary\">required</Badge></div>\n                <Input value={renderServiceId} onChange={(event) => setRenderServiceId(event.target.value.trim())} placeholder=\"srv-...\" className=\"font-mono\" />\n                <Button type=\"button\" className=\"w-full\" disabled={busy || !renderServiceId.trim()} onClick={() => writeReadProxySecret('RENDER_VISUAL_WITNESS_SERVICE_ID', renderServiceId, () => setRenderServiceId(''))}>{loadingAction === 'put_worker_secret' ? <Loader2 className=\"mr-2 h-4 w-4 animate-spin\" /> : <ShieldCheck className=\"mr-2 h-4 w-4\" />}Save Visual Witness Service ID</Button>\n              </div>\n              <div className=\"grid grid-cols-1 gap-2 sm:grid-cols-2\">\n                <Button type=\"button\" variant=\"outline\" disabled={busy} onClick={() => run('list_worker_secrets', { workerName: 'knocklaunch-cc-read-proxy' })}>{loadingAction === 'list_worker_secrets' ? <Loader2 className=\"mr-2 h-4 w-4 animate-spin\" /> : <ShieldCheck className=\"mr-2 h-4 w-4\" />}Check read-proxy secrets</Button>\n                <Button type=\"button\" variant=\"secondary\" disabled={busy} onClick={() => run('get_secret_checklist')}>{loadingAction === 'get_secret_checklist' ? <Loader2 className=\"mr-2 h-4 w-4 animate-spin\" /> : <ShieldCheck className=\"mr-2 h-4 w-4\" />}Check Cloudflare Ops config</Button>\n              </div>\n            </CardContent>\n          </Card>\n\n          <Card>\n            <CardHeader><CardTitle className=\"text-base\">Advanced Worker Secrets Manager</CardTitle><CardDescription>Generic write, rotate, and delete controls for scoped operator maintenance.</CardDescription></CardHeader>\n            <CardContent className=\"space-y-3\">"},{"new_content":"          </Card>\n\n          <Card>\n            <CardHeader><CardTitle className=\"text-base\">Frontend build status</CardTitle><CardDescription>Defaults to the native Cloudflare Workers Build on main. Enter a Forgejo workflow file or run ID only for an explicit workflow lookup.</CardDescription></CardHeader>\n            <CardContent className=\"space-y-3\">\n              <Input value={workflowFile} onChange={(event) => setWorkflowFile(event.target.value)} placeholder=\"Optional explicit workflow.yml\" />\n              <Input value={workflowRunId} onChange={(event) => setWorkflowRunId(event.target.value)} placeholder=\"Optional Forgejo Actions run ID\" />\n              <Button type=\"button\" variant=\"outline\" className=\"w-full\" disabled={busy} onClick={() => run('get_workflow_status', workflowRunId ? { runId: workflowRunId } : workflowFile.trim() ? { workflow: workflowFile } : { branch: 'main' })}>{loadingAction === 'get_workflow_status' ? <Loader2 className=\"mr-2 h-4 w-4 animate-spin\" /> : <RefreshCw className=\"mr-2 h-4 w-4\" />}Get Frontend Status</Button>\n            </CardContent>\n          </Card>","old_content":"          </Card>\n\n          <Card>\n            <CardHeader><CardTitle className=\"text-base\">Frontend build status</CardTitle><CardDescription>Defaults to the native Cloudflare Workers Build on main. Enter a GitHub workflow file or run ID only for an explicit workflow lookup.</CardDescription></CardHeader>\n            <CardContent className=\"space-y-3\">\n              <Input value={workflowFile} onChange={(event) => setWorkflowFile(event.target.value)} placeholder=\"Optional explicit workflow.yml\" />\n              <Input value={workflowRunId} onChange={(event) => setWorkflowRunId(event.target.value)} placeholder=\"Optional GitHub Actions run ID\" />\n              <Button type=\"button\" variant=\"outline\" className=\"w-full\" disabled={busy} onClick={() => run('get_workflow_status', workflowRunId ? { runId: workflowRunId } : workflowFile.trim() ? { workflow: workflowFile } : { branch: 'main' })}>{loadingAction === 'get_workflow_status' ? <Loader2 className=\"mr-2 h-4 w-4 animate-spin\" /> : <RefreshCw className=\"mr-2 h-4 w-4\" />}Get Frontend Status</Button>\n            </CardContent>\n          </Card>"}]},{"path":"supabase/functions/cloudflare-ops/index.ts","edits":[{"new_content":"    canonical_frontend_check: CANONICAL_FRONTEND_CHECK,\n    canonical_frontend_workflow: null,\n    canonical_browser_lane: 'cc-execution /repair/inspect-route',\n    canonical_browser_runtime: 'cc-execution -> KNOCKLAUNCH Visual Sandbox -> universal-witness.mjs',\n    canonical_browser_profile: 'default',\n    generic_worker_deploy_available: false,\n    route_mutation_available: false,","old_content":"    canonical_frontend_check: CANONICAL_FRONTEND_CHECK,\n    canonical_frontend_workflow: null,\n    canonical_browser_lane: 'cc-execution /repair/inspect-route',\n    canonical_browser_runtime: 'render-onrunner/runner-entrypoint.mjs -> universal-witness.mjs',\n    canonical_browser_profile: 'default',\n    generic_worker_deploy_available: false,\n    route_mutation_available: false,"}]},{"path":"workers/cc-execution/src/command-center-contracts.js","edits":[{"new_content":"}\n\nconst REQUEST_CONTRACT_PROOF_KINDS = new Set([\"runtime\", \"release\", \"repository\", \"scope\", \"interaction\", \"visual\", \"host_watchdog\"]);\nconst REQUEST_CONTRACT_RELEASE_TARGETS = new Set([\"ccExecution\", \"frontend\", \"supabaseEdge\", \"migrations\"]);\nconst CAPABILITY_LIFECYCLE_STATES = Object.freeze([\"prepare\", \"deploy\", \"verify\", \"activate\"]);\nconst CAPABILITY_COMPATIBILITY_WINDOW = Object.freeze([\"N\", \"N-1\"]);\n","old_content":"}\n\nconst REQUEST_CONTRACT_PROOF_KINDS = new Set([\"runtime\", \"release\", \"repository\", \"scope\", \"interaction\", \"visual\", \"host_watchdog\"]);\nconst REQUEST_CONTRACT_RELEASE_TARGETS = new Set([\"ccExecution\", \"onrunner\", \"frontend\", \"supabaseEdge\", \"migrations\"]);\nconst CAPABILITY_LIFECYCLE_STATES = Object.freeze([\"prepare\", \"deploy\", \"verify\", \"activate\"]);\nconst CAPABILITY_COMPATIBILITY_WINDOW = Object.freeze([\"N\", \"N-1\"]);\n"},{"new_content":"  const inputs = object(eventPayload?.inputs);\n  const enabled = (key) => inputs[key] === true || String(inputs[key] || \"\").trim().toLowerCase() === \"true\";\n  return (!targets.ccExecution || enabled(\"release_cc_execution\"))\n    && (!targets.frontend || enabled(\"release_frontend\"))\n    && (!targets.supabaseEdge || enabled(\"release_supabase_edge\"))\n    && (!targets.migrations || enabled(\"release_migrations\"));","old_content":"  const inputs = object(eventPayload?.inputs);\n  const enabled = (key) => inputs[key] === true || String(inputs[key] || \"\").trim().toLowerCase() === \"true\";\n  return (!targets.ccExecution || enabled(\"release_cc_execution\"))\n    && (!targets.onrunner || enabled(\"release_onrunner\"))\n    && (!targets.frontend || enabled(\"release_frontend\"))\n    && (!targets.supabaseEdge || enabled(\"release_supabase_edge\"))\n    && (!targets.migrations || enabled(\"release_migrations\"));"},{"new_content":"  const inputs = object(eventPayload?.inputs);\n  const targetInputs = {\n    ccExecution: \"release_cc_execution\",\n    frontend: \"release_frontend\",\n    supabaseEdge: \"release_supabase_edge\",\n    migrations: \"release_migrations\",","old_content":"  const inputs = object(eventPayload?.inputs);\n  const targetInputs = {\n    ccExecution: \"release_cc_execution\",\n    onrunner: \"release_onrunner\",\n    frontend: \"release_frontend\",\n    supabaseEdge: \"release_supabase_edge\",\n    migrations: \"release_migrations\","},{"new_content":"\nconst FORGEJO_RELEASE_TARGET_JOB_PATTERNS = Object.freeze({\n  ccExecution: /^Release cc-execution(?:\\s|$)/i,\n  frontend: /^Release frontend(?:\\s|$)/i,\n  supabaseEdge: /^Release Supabase Edge Functions(?:\\s|$)/i,\n  migrations: /^Apply Supabase migrations(?:\\s|$)/i,","old_content":"\nconst FORGEJO_RELEASE_TARGET_JOB_PATTERNS = Object.freeze({\n  ccExecution: /^Release cc-execution(?:\\s|$)/i,\n  onrunner: /^Release Render OnRunner(?:\\s|$)/i,\n  frontend: /^Release frontend(?:\\s|$)/i,\n  supabaseEdge: /^Release Supabase Edge Functions(?:\\s|$)/i,\n  migrations: /^Apply Supabase migrations(?:\\s|$)/i,"},{"new_content":"    projection: payload.projection || \"GodMode\",\n    profileRef: payload.profileRef || payload.profile || \"default\",\n    // The default authenticated tenant audit is a GodMode projection. Send the\n    // opt-out explicitly so older visual-runner builds cannot silently fall back to\n    // resolving a real tenant owner before projection.\n    tenantOwnerPreflight: payload.tenantOwnerPreflight === true,\n    scope: payload.scope || \"linked_routes\",","old_content":"    projection: payload.projection || \"GodMode\",\n    profileRef: payload.profileRef || payload.profile || \"default\",\n    // The default authenticated tenant audit is a GodMode projection. Send the\n    // opt-out explicitly so older OnRunner builds cannot silently fall back to\n    // resolving a real tenant owner before projection.\n    tenantOwnerPreflight: payload.tenantOwnerPreflight === true,\n    scope: payload.scope || \"linked_routes\","}]},{"path":"workers/cc-execution/src/entrypoint-routed.js","edits":[{"new_content":"      \"/repair/inspect-route\": {\n        post: {\n          operationId: \"ccExecutionInspectRoute\",\n          summary: \"Deployment-proof compatibility alias for the canonical resumable KNOCKLAUNCH visual-sandbox route inspection command.\",\n          security: [{ bearerAuth: [] }],\n          requestBody: {\n            required: true,","old_content":"      \"/repair/inspect-route\": {\n        post: {\n          operationId: \"ccExecutionInspectRoute\",\n          summary: \"Deployment-proof compatibility alias for the canonical resumable Render OnRunner route inspection command.\",\n          security: [{ bearerAuth: [] }],\n          requestBody: {\n            required: true,"},{"new_content":"    },\n    canonicalVisualLane: {\n      route: \"/repair/inspect-route\",\n      runtime: \"KNOCKLAUNCH Visual Sandbox\",\n      source: \"scripts/visual-witness-hosted-runner/src/universal-witness.mjs\",\n      profile: \"default\",\n      projection: \"GodMode\",","old_content":"    },\n    canonicalVisualLane: {\n      route: \"/repair/inspect-route\",\n      runtime: \"Render OnRunner\",\n      source: \"scripts/visual-witness-hosted-runner/src/universal-witness.mjs\",\n      profile: \"default\",\n      projection: \"GodMode\","},{"new_content":"      });\n    }\n    if (path === \"/openapi.json\") return json(deploymentProofOpenApi());\n    if (path === \"/action/capabilities\" && request.method === \"GET\") return json({ ok: true, status: \"live\", proofGate: \"action_capabilities_current\", runtimeVersion: VERSION, actionSchema: actionSchemaNotice(), commands: Object.entries(ACTION_COMMAND_REGISTRY).map(([command, metadata]) => ({ command, ...metadata })), canonicalVisualLane: { healthCommand: \"inspect_route_health\", startCommand: \"inspect_route_start\", statusCommand: \"inspect_route_status\", cancelCommand: \"inspect_route_cancel\", runtime: \"KNOCKLAUNCH Visual Sandbox\", source: \"scripts/visual-witness-hosted-runner/src/runner-entrypoint.mjs -> universal-witness.mjs\", profile: \"default\", projection: \"GodMode\", fallbackAllowed: false }, destructiveActionsAllowed: false });\n    if (path === \"/action/execute\" && request.method === \"POST\") return executeActionCommand(request, env, ctx);\n    if (path === \"/command-center/prove\" && request.method === \"POST\") return proveCommandCenter(request, env, ctx);\n    if (path === \"/paul/machinery-snapshot\") return commandCenterMcpWorker.fetch(request, env, ctx);","old_content":"      });\n    }\n    if (path === \"/openapi.json\") return json(deploymentProofOpenApi());\n    if (path === \"/action/capabilities\" && request.method === \"GET\") return json({ ok: true, status: \"live\", proofGate: \"action_capabilities_current\", runtimeVersion: VERSION, actionSchema: actionSchemaNotice(), commands: Object.entries(ACTION_COMMAND_REGISTRY).map(([command, metadata]) => ({ command, ...metadata })), canonicalVisualLane: { healthCommand: \"inspect_route_health\", startCommand: \"inspect_route_start\", statusCommand: \"inspect_route_status\", cancelCommand: \"inspect_route_cancel\", runtime: \"Render OnRunner\", source: \"scripts/visual-witness-hosted-runner/src/runner-entrypoint.mjs -> universal-witness.mjs\", profile: \"default\", projection: \"GodMode\", fallbackAllowed: false }, destructiveActionsAllowed: false });\n    if (path === \"/action/execute\" && request.method === \"POST\") return executeActionCommand(request, env, ctx);\n    if (path === \"/command-center/prove\" && request.method === \"POST\") return proveCommandCenter(request, env, ctx);\n    if (path === \"/paul/machinery-snapshot\") return commandCenterMcpWorker.fetch(request, env, ctx);"}]},{"path":"workers/cc-execution/src/index-autonomous-release.js","edits":[{"new_content":"\n  if (path.startsWith(CC_EXECUTION_SUPPORT_TEST_PREFIX)) return null;\n\n  if (path.startsWith(\"scripts/visual-witness-hosted-runner/\")) return \"cc-execution\";\n\n  if (\n    path.startsWith(\"src/\") ||","old_content":"\n  if (path.startsWith(CC_EXECUTION_SUPPORT_TEST_PREFIX)) return null;\n\n  if (path.startsWith(\"scripts/visual-witness-hosted-runner/\")) return \"onrunner-service\";\n\n  if (\n    path.startsWith(\"src/\") ||"}]},{"path":"workers/cc-execution/src/index-canonical-edge-deploy.js","edits":[{"new_content":"import currentWorker from \"./index-merge-queue-openapi.js\";\n\nconst VERSION = \"1.6.3-forgejo-native-deploy\";\nconst DEFAULT_REPOSITORY = \"noel/KnockLaunchOS\";\nconst WORKFLOW_FILE = \"knocklaunch.yml\";\nconst PREFIX = \"edge-function:\";\n\nfunction json(body, status = 200) {\n  return new Response(JSON.stringify(body, null, 2), {","old_content":"import currentWorker from \"./index-merge-queue-openapi.js\";\n\nconst VERSION = \"1.6.2-render-onrunner-deploy\";\nconst DEFAULT_REPOSITORY = \"noel/KnockLaunchOS\";\nconst WORKFLOW_FILE = \"knocklaunch.yml\";\nconst PREFIX = \"edge-function:\";\nconst RENDER_ONRUNNER_TARGET = \"render-onrunner\";\nconst RENDER_ONRUNNER_WORKFLOW = \"onrunner-service-release.yml\";\n\nfunction json(body, status = 200) {\n  return new Response(JSON.stringify(body, null, 2), {"},{"new_content":"  try {\n    const target = String(body.target || body.functionName || body.function_name || \"\").trim();\n    const deploymentId = String(body.deploymentId || body.deployment_id || body.jobId || \"\").trim();\n    const parsed = parseDeploymentId(deploymentId);\n    if (!parsed) {\n      if (target && target !== \"cc-execution\") {\n        return json({ ok: false, status: \"blocked\", proofGate: \"deploy_request_blocked\", reason: \"unsupported_deployment_target\", deploymentId: deploymentId || null, functionName: target, provider: \"forgejo\" }, 400);\n      }\n      return null;\n    }\n    const repository = normalizeRepository(body.repository || body.repo || body.requestedRepository);\n    const expectedVersion = String(body.expectedVersion || body.expected_version || \"\").trim();\n    if (!expectedVersion || expectedVersion.length > 160) throw new Error(\"expectedVersion_required\");","old_content":"  try {\n    const target = String(body.target || body.functionName || body.function_name || \"\").trim();\n    const deploymentId = String(body.deploymentId || body.deployment_id || body.jobId || \"\").trim();\n    if (target === RENDER_ONRUNNER_TARGET) {\n      return json({\n        ok: false,\n        status: \"blocked\",\n        proofGate: \"deploy_request_blocked\",\n        reason: \"render_onrunner_github_lane_retired_use_forgejo_release_supervisor\",\n        deploymentId: deploymentId || null,\n        functionName: RENDER_ONRUNNER_TARGET,\n        provider: \"forgejo\",\n      }, 410);\n    }\n    const parsed = parseDeploymentId(deploymentId);\n    if (!parsed) return null;\n    const repository = normalizeRepository(body.repository || body.repo || body.requestedRepository);\n    const expectedVersion = String(body.expectedVersion || body.expected_version || \"\").trim();\n    if (!expectedVersion || expectedVersion.length > 160) throw new Error(\"expectedVersion_required\");"},{"new_content":"  try {\n    const target = String(url.searchParams.get(\"target\") || body.target || body.functionName || body.function_name || \"\").trim();\n    const deploymentId = String(url.searchParams.get(\"deploymentId\") || url.searchParams.get(\"deployment_id\") || body.deploymentId || body.deployment_id || \"\").trim();\n    const parsed = parseDeploymentId(deploymentId);\n    if (!parsed) {\n      if (target && target !== \"cc-execution\") {\n        return json({ ok: false, status: \"blocked\", proofGate: \"deploy_status_blocked\", reason: \"unsupported_deployment_target\", deploymentId: deploymentId || null, functionName: target, provider: \"forgejo\" }, 400);\n      }\n      return null;\n    }\n    const repository = normalizeRepository(body.repository || body.repo || body.requestedRepository);\n    const payload = await forgejo(env, \"GET\", `/repos/${encRepo(repository)}/actions/runs?limit=100`);\n    const runs = (Array.isArray(payload?.workflow_runs) ? payload.workflow_runs : Array.isArray(payload?.runs) ? payload.runs : Array.isArray(payload) ? payload : []).map(mapRun);","old_content":"  try {\n    const target = String(url.searchParams.get(\"target\") || body.target || body.functionName || body.function_name || \"\").trim();\n    const deploymentId = String(url.searchParams.get(\"deploymentId\") || url.searchParams.get(\"deployment_id\") || body.deploymentId || body.deployment_id || \"\").trim();\n    if (target === RENDER_ONRUNNER_TARGET) {\n      return json({\n        ok: false,\n        status: \"blocked\",\n        proofGate: \"deploy_status_blocked\",\n        reason: \"render_onrunner_github_lane_retired_use_live_runtime_proof\",\n        deploymentId: deploymentId || null,\n        functionName: RENDER_ONRUNNER_TARGET,\n        provider: \"forgejo\",\n      }, 410);\n    }\n    const parsed = parseDeploymentId(deploymentId);\n    if (!parsed) return null;\n    const repository = normalizeRepository(body.repository || body.repo || body.requestedRepository);\n    const payload = await forgejo(env, \"GET\", `/repos/${encRepo(repository)}/actions/runs?limit=100`);\n    const runs = (Array.isArray(payload?.workflow_runs) ? payload.workflow_runs : Array.isArray(payload?.runs) ? payload.runs : Array.isArray(payload) ? payload : []).map(mapRun);"}]}],"implementation":{"files":[],"writes":[]},"updateStrategy":"push_to_branch","requestContract":{"source":"explicit","version":1,"outcomes":[{"id":"outcome-1","statement":"Batch 3 exact edits are committed to existing PR #4073.","proofConditionIds":["proof-branch"]}],"objective":"Apply exact repository-authority decruft batch 3 to existing PR #4073 on branch ai/objective-first-repair-e3478acfa504, bound to current protected main c2eea2a4ff6cec84887d9be917c3584c7c90739f. Do not merge, release, create another PR, or broaden scope.","constraints":[{"id":"same-pr","statement":"Reuse PR #4073 and branch ai/objective-first-repair-e3478acfa504 only.","proofConditionIds":["proof-branch"]},{"id":"no-ship","statement":"Do not merge or release this intermediate batch.","proofConditionIds":["proof-branch"]},{"id":"exact-scope","statement":"Apply only the supplied anchored edits.","proofConditionIds":["proof-branch"]}],"terminalPolicy":"all_required_proof_conditions_satisfied","proofConditions":[{"id":"proof-branch","kind":"repository","claim":"The supplied batch is committed to the exact existing PR branch.","route":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]}]},"repairGeneration":null,"executionEnvelope":{"ship":false,"version":1,"approved":true,"missionId":null,"ownerApproved":true,"releaseIntent":null,"sourceTargets":["src/pages/admin/AdminCloudflareOps.tsx","supabase/functions/cloudflare-ops/index.ts","workers/cc-execution/src/command-center-contracts.js","workers/cc-execution/src/entrypoint-routed.js","workers/cc-execution/src/index-autonomous-release.js","workers/cc-execution/src/index-canonical-edge-deploy.js"],"requestContract":{"source":"explicit","version":1,"outcomes":[{"id":"outcome-1","statement":"Batch 3 exact edits are committed to existing PR #4073.","proofConditionIds":["proof-branch"]}],"objective":"Apply exact repository-authority decruft batch 3 to existing PR #4073 on branch ai/objective-first-repair-e3478acfa504, bound to current protected main c2eea2a4ff6cec84887d9be917c3584c7c90739f. Do not merge, release, create another PR, or broaden scope.","constraints":[{"id":"same-pr","statement":"Reuse PR #4073 and branch ai/objective-first-repair-e3478acfa504 only.","proofConditionIds":["proof-branch"]},{"id":"no-ship","statement":"Do not merge or release this intermediate batch.","proofConditionIds":["proof-branch"]},{"id":"exact-scope","statement":"Apply only the supplied anchored edits.","proofConditionIds":["proof-branch"]}],"terminalPolicy":"all_required_proof_conditions_satisfied","proofConditions":[{"id":"proof-branch","kind":"repository","claim":"The supplied batch is committed to the exact existing PR branch.","route":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]}]},"repairGeneration":null,"proofRequirements":null,"controlPlaneUnfreeze":true,"controlPlaneMaintenance":true,"controlPlaneMaintenancePaths":["src/pages/admin/AdminCloudflareOps.tsx","supabase/functions/cloudflare-ops/index.ts","workers/cc-execution/src/command-center-contracts.js","workers/cc-execution/src/entrypoint-routed.js","workers/cc-execution/src/index-autonomous-release.js","workers/cc-execution/src/index-canonical-edge-deploy.js"],"controlPlaneMaintenanceReason":"Exact owner-authorized intermediate PR #4073 mutation bound to current protected main c2eea2a4ff6cec84887d9be917c3584c7c90739f."},"proofRequirements":null,"controlPlaneUnfreeze":true,"durableMutationResume":true,"controlPlaneMaintenance":true,"controlPlaneMaintenancePaths":["src/pages/admin/AdminCloudflareOps.tsx","supabase/functions/cloudflare-ops/index.ts","workers/cc-execution/src/command-center-contracts.js","workers/cc-execution/src/entrypoint-routed.js","workers/cc-execution/src/index-autonomous-release.js","workers/cc-execution/src/index-canonical-edge-deploy.js"],"controlPlaneMaintenanceReason":"Exact owner-authorized intermediate PR #4073 mutation bound to current protected main c2eea2a4ff6cec84887d9be917c3584c7c90739f."},"recovery":false,"fingerprint":"aae7d34bfee8bbeb61fdb25a8c9c9ba9e2577a54aaa298e8defd6c022bc725ff","replayCount":0,"serializedBytes":29287},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-29T02:32:29.987643+00:00","proof_gate":"repository_mutation_intent_persisted","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent","idempotency_key":"mission:d31923ac-371e-4a5b-9034-e02109a06e33:repository-mutation-intent:aae7d34bfee8bbeb61fdb25a8c9c9ba9e2577a54aaa298e8defd6c022bc725ff:0","mission_step_id":"b12b3526-ace1-491c-8b04-d14bbda04108","command_center_event_id":"d31923ac-371e-4a5b-9034-e02109a06e33"},{"id":"4cb642bf-8288-41c6-9165-cdef9f13cba0","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"implementation","branch":"ai/cafe-qsr-first-class-20260818","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":3714,"releaseCount":0,"toolCallCount":2,"repeatedCallCount":1,"ownerInterruptionCount":0},"version":"1.47.2-release-lineage-compare","prNumber":null,"terminal":false,"missionId":"75c7fea2-44f6-4cb4-b5f3-820a186e6885","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":null,"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /repair/continue-mission automatically with this missionId without another owner prompt.","receiptRef":{"mode":"full","missionId":"75c7fea2-44f6-4cb4-b5f3-820a186e6885"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":9097,"likelyAffectedFiles":["src/PrivateAppShell.tsx","src/__tests__/contracts/critical-tenant-routing.contract.test.ts"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-08-18T12:21:36.618245+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:75c7fea2-44f6-4cb4-b5f3-820a186e6885:execute_mission:repair_mission_synthesis_ready","mission_step_id":"afe3702f-fe2d-41d4-9a75-7737730fd190","command_center_event_id":"75c7fea2-44f6-4cb4-b5f3-820a186e6885"},{"id":"4cb6d2d5-9991-49f0-b7e4-52cb97858eb0","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"pending","frontend-cloudflare/live":"pending"},"mainSha":"de3424e791d624a9291ec609293359d7a912be0a","missing":[],"pending":["forgejo-release/workflow","frontend-cloudflare/live"],"required":["forgejo-main/source","forgejo-release/workflow","frontend-cloudflare/live"],"sourceSha":"de3424e791d624a9291ec609293359d7a912be0a","releaseState":"pending","sourceInMain":true,"compareStatus":"identical","releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"requestContractHash":"d6292d62b3d0ec564b2beb56104a9b596b3106f38eddea1b9c453c2b7affd4ed","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/4042","runId":4042,"status":"waiting","sourceSha":"de3424e791d624a9291ec609293359d7a912be0a","conclusion":null,"failedJobs":[],"diagnostics":null,"exactSource":true},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"de8369b6-a78f-40bb-ae1f-28ffca62bc7e","created_at":"2026-09-01T15:12:57.891542+00:00","proof_gate":"canonical_release_pending","source_sha":"de3424e791d624a9291ec609293359d7a912be0a","external_id":"forgejo-main-de3424e791d6","receipt_type":"canonical_release_status","idempotency_key":"mission:2bac74ed-8177-4f71-9a46-cc04448ce3cd:forgejo-release-status:de3424e791d624a9291ec609293359d7a912be0a:pending:forgejo-main/source=success|forgejo-release/workflow=pending|frontend-cloudflare/live=pending","mission_step_id":"9557694a-a4b6-429a-a214-6a2ff69ca2a4","command_center_event_id":"2bac74ed-8177-4f71-9a46-cc04448ce3cd"},{"id":"4cb6f067-dd8f-4481-ad5f-778cbe871592","source":"cc-execution","status":"verified","payload":{"ownerWaitSloMs":{"merge_to_live_ms":231034,"owner_action_to_pr_ms":76421,"green_gate_to_merge_ms":1917,"owner_action_to_useful_response_ms":70688},"ownerWaitLiveAt":"2026-09-24T15:05:05.034Z"},"tenant_id":"d60e3c27-73ed-4a5f-a49b-c37636455daf","created_at":"2026-09-24T15:05:05.391042+00:00","proof_gate":"owner_wait_live_milestone_recorded","source_sha":null,"external_id":null,"receipt_type":"owner_wait_live_milestone","idempotency_key":"mission:0618a5ff-b7bd-4db6-a975-5b9689bf2c05:owner-wait-live","mission_step_id":"416abf70-ef25-40e7-9a75-a4fa6f6aeb30","command_center_event_id":"0618a5ff-b7bd-4db6-a975-5b9689bf2c05"},{"id":"4cb725f9-ec2f-48e7-805b-507974f47806","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":null,"reason":null,"status":"synthesis_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"executorlessWaitMs":0,"firstUsefulResultAt":null,"recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.65.4-release-terminal-proof-unblocks-queue","prNumber":null,"terminal":false,"missionId":"58eae21b-9b45-42d6-994c-7418b8d3ebd6","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":3346,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":487,"providerAuthMs":0,"ledgerPrepareMs":487,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":487,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":487,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"Synthesize exact mutation from the resolved authoritative source targets and continue this same mission.","receiptRef":{"mode":"full","missionId":"58eae21b-9b45-42d6-994c-7418b8d3ebd6"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":3096,"likelyAffectedFiles":["src/PrivateAppShell.tsx"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-05T22:49:31.909643+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:58eae21b-9b45-42d6-994c-7418b8d3ebd6:execute_mission:repair_mission_synthesis_ready:current-generation","mission_step_id":"c70a685e-6668-4bf3-8ae9-3a720f81ec66","command_center_event_id":"58eae21b-9b45-42d6-994c-7418b8d3ebd6"},{"id":"4cb89d5f-0886-49da-aeac-32e197e87e90","source":"cc-execution","status":"authorized","payload":{"paths":["config/control-plane-capabilities.json","scripts/command-center-host-agent/forgejo-watchdog.sh","workers/cc-execution/src/version.js","workers/cc-execution/test/release-orchestration-invariants.test.js"],"reason":"Finish the owner-authorized Forgejo latency repair by removing the stale outer failed-receipt suppression so the corrected v13 cruft-pack maintenance can retry and produce signed host proof.","baseSha":"24b26a769b6e2104830542b22cda1e6ac10ce869","issuedAt":1788497195917,"expiresAt":1788497375917,"missionId":"f37d7aa8-4980-41c1-a818-cb2c32a25da8","authorizationId":"cc90fbe1-6983-4b0c-a966-c1d5b0bf3acc","retryableWithinExactScope":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-04T04:46:36.875147+00:00","proof_gate":"control_plane_maintenance_scope_authorized","source_sha":"24b26a769b6e2104830542b22cda1e6ac10ce869","external_id":null,"receipt_type":"control_plane_maintenance_authorization","idempotency_key":"control-plane-maintenance-authorize:cc90fbe1-6983-4b0c-a966-c1d5b0bf3acc","mission_step_id":"a904a29f-40d5-4ece-8329-f749ef282c97","command_center_event_id":"f37d7aa8-4980-41c1-a818-cb2c32a25da8"},{"id":"4cbdc54f-c6c7-457b-ac39-7ea9c3ee5537","source":"cc-execution","status":"recorded","payload":{"requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"rawUtterance":"Amend the active Visual Witness corrective branch only. Change the two stale queue capability assertions from root config.* to config.release.*, preserve runtime behavior, re-run the exact-head gate, and continue OnRunner-only release and live click proof.","wordingChanged":false,"canonicalIntent":"Amend the active Visual Witness corrective branch only. Change the two stale queue capability assertions from root config.* to config.release.*, preserve runtime behavior, re-run the exact-head gate, and continue OnRunner-only release and live click proof.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"gate-click-tests","statement":"All six Visual Witness click regressions remain passing in the real gate.","proofConditionIds":["repo-proof"]},{"id":"test-schema-alignment","statement":"The queue invariant reads both queue-hygiene values from config.release, matching the capability schema with no runtime behavior change.","proofConditionIds":["repo-proof"]},{"id":"onrunner-only","statement":"OnRunner release source-SHA handoff remains corrected and only OnRunner is released.","proofConditionIds":["runtime-proof"]},{"id":"live-click","statement":"The previously failing live Visual Witness click succeeds.","proofConditionIds":["live-click-proof"]}],"objective":"Amend the active Visual Witness corrective branch only. Change the two stale queue capability assertions from root config.* to config.release.*, preserve runtime behavior, re-run the exact-head gate, and continue OnRunner-only release and live click proof.","constraints":[{"id":"active-branch","statement":"Amend the already-active corrective branch only; do not create a duplicate branch or PR for this two-line test correction.","proofConditionIds":["repo-proof"]},{"id":"control-plane-test-only","statement":"Additional control plane mutation is limited to the two assertion paths in workers/cc-execution/test/event-driven-auto-merge-invariants.test.js.","proofConditionIds":["repo-proof"]},{"id":"release-scope","statement":"Release OnRunner only.","proofConditionIds":["runtime-proof"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"repo-proof","kind":"repository","claim":"Active corrective branch contains Visual Witness click resolver, OnRunner release fix, gate-executed click tests, and corrected queue assertion paths.","route":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":["onrunner"],"requiredReleaseTargets":["onrunner"]},{"id":"runtime-proof","kind":"runtime","claim":"Render OnRunner is live on the merged corrective source after OnRunner-only release.","route":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":["onrunner"],"requiredReleaseTargets":["onrunner"]},{"id":"live-click-proof","kind":"interaction","claim":"Live Visual Witness clicks Open an existing tenant on /admin/experience-studio using the previously failing role/name action.","route":"/admin/experience-studio","required":true,"expectedText":null,"targetedActions":[{"id":"prove-open-existing-tenant","name":"Open an existing tenant","role":"button","type":"click","exact":true,"required":true}],"allowedReleaseTargets":["onrunner"],"requiredReleaseTargets":["onrunner"]}],"validationErrors":[]},"requestContractHash":"370b3b53e5556de27097721dbfd9dd04debbb42d4c716be036afc7e6cd13b153","requestContractRevision":6,"previousRequestContractHash":"8c7bb4b0075a5730a4501dae0a4bb5badf199d50fe1b14e725521db6ab2820b1"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-30T01:51:27.795488+00:00","proof_gate":"request_contract_revision_recorded","source_sha":null,"external_id":null,"receipt_type":"request_contract_revision","idempotency_key":"mission:c6f0f6b1-f995-4e2f-9a27-8e397564b7c9:request-contract-revision:6:370b3b53e5556de27097721dbfd9dd04debbb42d4c716be036afc7e6cd13b153","mission_step_id":"c487acf0-06cf-442e-b28a-976b5f30ef67","command_center_event_id":"c6f0f6b1-f995-4e2f-9a27-8e397564b7c9"},{"id":"4cc0804f-5345-4ad5-9cb3-ec3be334b5b6","source":"cc-execution","status":"blocked","payload":{"reason":"anchored_edit_invalid","fingerprint":"5450770b6b2a69ba574b680e2a89a81a7c5f7097fa7f5669a60e7910958fa68f"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-30T12:43:57.927093+00:00","proof_gate":"repository_mutation_intent_deterministic_failure","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent_blocked","idempotency_key":"mission:e5c1369d-8d6c-423a-9f53-c5bc3957763d:repository-mutation-intent-blocked:5450770b6b2a69ba574b680e2a89a81a7c5f7097fa7f5669a60e7910958fa68f","mission_step_id":"27c2c3d5-3f7e-44be-a540-cf76b79e191f","command_center_event_id":"e5c1369d-8d6c-423a-9f53-c5bc3957763d"},{"id":"4cc4b625-5f05-42f3-bdfd-59e653e73a61","source":"durable-mission-ledger","status":"verified","payload":{"sourceSha":"216a2af90c8730b5d4cda61f1bf435e53ad29c5d","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"outcome-1","satisfied":true,"statement":"Non-mobile-vendor event booking inserts no longer fail inside sync_mobile_vendor_event_expenses_to_finance because of uuid=text comparisons.","proofConditionIds":["proof-production"]},{"id":"outcome-2","satisfied":true,"statement":"Mobile-vendor finance expense projection retains its existing behavior using a safely normalized tenant UUID.","proofConditionIds":["proof-production"]},{"id":"outcome-3","satisfied":true,"statement":"Temporary Speedy Panda verification rows are fully cleaned up after proof.","proofConditionIds":["proof-production"]}],"satisfied":true,"constraints":[{"id":"shared-trigger-only","satisfied":true,"statement":"Repair the shared trigger function only; do not disable the trigger or special-case Speedy Panda.","proofConditionIds":["proof-production"]},{"id":"capability-completeness","satisfied":true,"statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","proofConditionIds":["proof-production"]},{"id":"atomic-capability-lifecycle","satisfied":true,"statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","proofConditionIds":["proof-production"]}],"contractHash":"986a84cbb6c6617de8d8df40de5da12e6d4fcabb052db73e5be414f10c1a36bf","releaseBound":true,"witnessBound":false,"visualRequested":false,"visualSatisfied":true,"conditionResults":[{"id":"proof-production","kind":"runtime","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":true,"releaseTargetStates":{"migrations":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["migrations"],"allowedReleaseTargets":["migrations"],"requiredReleaseTargets":["migrations"],"migrationReleaseVerified":true,"releaseRequestContractHash":"986a84cbb6c6617de8d8df40de5da12e6d4fcabb052db73e5be414f10c1a36bf"},"required":true,"satisfied":true}],"validationErrors":[],"pendingProofKinds":[],"activeReleaseTargets":["migrations"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-18T17:42:10.069798+00:00","proof_gate":"request_contract_terminal_verified","source_sha":"216a2af90c8730b5d4cda61f1bf435e53ad29c5d","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:7f229be8-10c3-4395-8d2d-b3d378a8098d:request-contract:986a84cbb6c6617de8d8df40de5da12e6d4fcabb052db73e5be414f10c1a36bf:216a2af90c8730b5d4cda61f1bf435e53ad29c5d:verified:","mission_step_id":"c4b4aa2d-8bd1-47d1-8059-7d76030c6743","command_center_event_id":"7f229be8-10c3-4395-8d2d-b3d378a8098d"},{"id":"4cc62f70-2e8d-4bf8-9104-af06e02aeee1","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":"ai/objective-first-repair-1a7ef142c949","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"executorlessWaitMs":0,"firstUsefulResultAt":null,"recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.65.7-prime-stale-manual-retirement-adapter","prNumber":null,"terminal":false,"missionId":"1a7ef142-c949-4bfb-a553-31974376e6da","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":4321,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":505,"providerAuthMs":0,"ledgerPrepareMs":505,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":505,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":505,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /mission/execute again automatically with this same missionId without another owner prompt or workflow switch.","receiptRef":{"mode":"full","missionId":"1a7ef142-c949-4bfb-a553-31974376e6da"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":4966,"likelyAffectedFiles":["src/PcgAppShell.tsx","src/PrivateAppShell.tsx"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T00:23:35.180996+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:1a7ef142-c949-4bfb-a553-31974376e6da:execute_mission:repair_mission_synthesis_ready:current-generation","mission_step_id":"276bc3bb-bcd2-4c3d-b86c-2cb35224691d","command_center_event_id":"1a7ef142-c949-4bfb-a553-31974376e6da"},{"id":"4cc66fb7-6c82-4be1-98e3-4e062efd1289","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"pending","frontend-cloudflare/live":"pending","supabase-migrations/live":"success","supabase-edge-production/live":"pending"},"mainSha":"50c610320cb6cdcd2a4ef649704ad33088dc8c19","missing":[],"pending":["forgejo-release/workflow","supabase-edge-production/live","frontend-cloudflare/live"],"required":["forgejo-main/source","forgejo-release/workflow","supabase-edge-production/live","frontend-cloudflare/live","supabase-migrations/live"],"sourceSha":"50c610320cb6cdcd2a4ef649704ad33088dc8c19","releaseState":"pending","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":true,"onrunner":false,"migrations":true,"ccExecution":false,"supabaseEdge":true},"releaseTargetStates":{"frontend":"pending","migrations":"success","supabaseEdge":"pending"},"requestContractHash":"348e2de4f083cfebd00fb38cb7875244d119fd98a84725cfc3224c0ec5c688df","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/6107","runId":6107,"status":"running","sourceSha":"50c610320cb6cdcd2a4ef649704ad33088dc8c19","conclusion":null,"failedJobs":[],"diagnostics":null,"exactSource":true,"targetStates":{"frontend":"pending","migrations":"success","supabaseEdge":"pending"},"targetJobCount":7,"observedTargetStates":{"frontend":"pending","migrations":"success","supabaseEdge":"pending"}},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"releaseTargetRecoveryProof":{"exact":true,"source":"exact_source_push_event_payload_shared_release_owner_mapping","parentSha":"0c3cab6116754520713879576744bd15d3a008e7","sourceSha":"50c610320cb6cdcd2a4ef649704ad33088dc8c19","changedPaths":["src/lib/demo/demoPreview.ts","src/pages/demo/PersistedApplicationDemo.tsx","src/pages/owner/KnockLaunchApplications.tsx","supabase/migrations/20260907040100_application_demo_orchestration.sql","src/components/admin/AdminLayout.tsx","src/components/admin/AdminSidebar.tsx","src/config/applicationCapabilityRegistry.ts","src/lib/platform/externalPropertyRegistry.ts","src/pages/Admin.tsx","src/pages/BuildMyDemo.tsx","src/pages/owner/KnockLaunchOSDashboard.tsx","src/pages/owner/KnockLaunchOSShared.tsx","supabase/functions/self-serve-demo/index.ts"],"changedPathCount":13,"independentOfCurrentMainCompare":true},"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-07T04:31:32.494827+00:00","proof_gate":"canonical_release_pending","source_sha":"50c610320cb6cdcd2a4ef649704ad33088dc8c19","external_id":null,"receipt_type":"canonical_release_status","idempotency_key":"mission:9ccad517-f966-436a-90d3-fa6ea923fa64:forgejo-release-status:50c610320cb6cdcd2a4ef649704ad33088dc8c19:pending:forgejo-main/source=success|forgejo-release/workflow=pending|supabase-edge-production/live=pending|frontend-cloudflare/live=pending|supabase-migrations/live=success","mission_step_id":"7a70b215-8f3a-4c14-9edf-62c23d43f4ce","command_center_event_id":"9ccad517-f966-436a-90d3-fa6ea923fa64"},{"id":"4cc77a91-762f-4a7c-96e6-5660903ddc27","source":"owner_authorized_full_backlog_cleanup","status":"recorded","payload":{"category":"platform_reliability","disposition":"superseded_execution_attempt","previousStatus":"blocked","sourcePreserved":true,"noCompletionClaim":true,"recoveryPortfolioId":"96ea42b4-2d81-3020-09df-dfbab4b2b656"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-11T16:14:39.646808+00:00","proof_gate":"source_objective_preserved_in_existing_mission_ledger","source_sha":null,"external_id":null,"receipt_type":"owner_backlog_disposition","idempotency_key":"owner-full-backlog-cleanup-20261011:a1af83a4-6e46-4626-9afa-a7f45a508686","mission_step_id":null,"command_center_event_id":"a1af83a4-6e46-4626-9afa-a7f45a508686"},{"id":"4cc7bf10-0d81-4e11-a1d0-9553855fb5d4","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"implementation","branch":"ai/objective-first-repair-842eb06b93d4","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.90-mission-terminalization","prNumber":null,"terminal":false,"missionId":"842eb06b-93d4-43cd-a5e8-52de9834cc21","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":10,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":260,"providerAuthMs":0,"ledgerPrepareMs":260,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":260,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":260,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /mission/execute again automatically with this same missionId without another owner prompt or workflow switch.","receiptRef":{"mode":"full","missionId":"842eb06b-93d4-43cd-a5e8-52de9834cc21"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":3267,"likelyAffectedFiles":["src/components/MiscAwareAccountMenu.tsx"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-10T05:37:13.757478+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:842eb06b-93d4-43cd-a5e8-52de9834cc21:execute_mission:repair_mission_synthesis_ready:current-generation","mission_step_id":"908a227f-8890-491a-ac24-15819d435678","command_center_event_id":"842eb06b-93d4-43cd-a5e8-52de9834cc21"},{"id":"4cc8a9e0-61c1-42c0-a700-81eea7bc2cb8","source":"cc-execution","status":"deployment_dispatched","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/reconcile-released-ancestor-after-main-advance-20260827","reason":null,"status":"deployment_dispatched","metrics":{"receiptBytes":49782,"releaseCount":0,"toolCallCount":42,"repeatedCallCount":9,"ownerInterruptionCount":0},"version":null,"prNumber":843,"terminal":false,"missionId":"ea7d9b16-8768-4cd6-aace-2c258e9598e4","operation":"automatic_mission_resume","proofGate":"canonical_release_dispatched","sourceSha":"72afdcc43c717e2e31d19af045ab010999e0e6da","timingsMs":{"prReadinessMs":295,"approvedPlanMs":0,"shipAndProveMs":492},"nextAction":null,"receiptRef":{"mode":"full","missionId":"ea7d9b16-8768-4cd6-aace-2c258e9598e4"},"performance":null,"deploymentId":"forgejo-main-72afdcc43c71","workflowRunId":null,"releaseTargets":{"frontend":false,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1630,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-27T16:15:07.356519+00:00","proof_gate":"canonical_release_dispatched","source_sha":null,"external_id":"843","receipt_type":"automatic_mission_resume","idempotency_key":"mission:ea7d9b16-8768-4cd6-aace-2c258e9598e4:automatic-mission-resume:843:canonical_release_dispatched","mission_step_id":"1f4a7851-508e-4f66-9ab0-8c95f34bc930","command_center_event_id":"ea7d9b16-8768-4cd6-aace-2c258e9598e4"},{"id":"4cc9ea4c-d0f8-47f0-ae11-e5823ac1682b","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-muu9v3p6","reason":"retryable_provider_transport:forgejo_provider_read_timeout","status":"retryable","metrics":{"receiptBytes":290017,"releaseCount":0,"toolCallCount":26,"repeatedCallCount":21,"executorlessWaitMs":176941,"firstUsefulResultAt":"2026-10-04T20:28:22.911Z","recoveryAttemptCount":23,"ownerInterruptionCount":0},"version":null,"prNumber":4846,"terminal":false,"missionId":"17c6a6dd-cb42-473c-af49-b4b444a7a429","operation":"automatic_mission_resume","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"prReadinessMs":2328,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"17c6a6dd-cb42-473c-af49-b4b444a7a429"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":819,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-04T20:29:14.105827+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"4846","receipt_type":"automatic_mission_resume","idempotency_key":"mission:17c6a6dd-cb42-473c-af49-b4b444a7a429:automatic-mission-resume:4846:repair_mission_pr_ready_retryable","mission_step_id":"677e2e42-bc8d-4f58-b21e-a2779b0bc28c","command_center_event_id":"17c6a6dd-cb42-473c-af49-b4b444a7a429"},{"id":"4ccb2343-ba93-4c63-968d-d67ddbc85ab3","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"implementation","branch":"ai/objective-first-repair-0bf4339b9602","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":1683,"releaseCount":0,"toolCallCount":1,"repeatedCallCount":0,"executorlessWaitMs":0,"firstUsefulResultAt":"2026-09-25T17:47:26.237Z","recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.58.282-lineage-main-guard","prNumber":null,"terminal":false,"missionId":"0bf4339b-9602-4efe-bd74-795c8e9d6282","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":1322,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":262,"providerAuthMs":0,"ledgerPrepareMs":262,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":262,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":262,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /mission/execute again automatically with this same missionId without another owner prompt or workflow switch.","receiptRef":{"mode":"full","missionId":"0bf4339b-9602-4efe-bd74-795c8e9d6282"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":4530,"likelyAffectedFiles":["supabase/functions/agreement-sign/index.ts","supabase/functions/send-email/index.ts","supabase/functions/_shared/sendBrandedEmail.ts","supabase/functions/send-transactional-email/index.ts","src/__tests__/contracts/proposal-branded-delivery-email.contract.test.ts","src/__tests__/contracts/big-papis-event-email-standard.contract.test.ts"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-25T17:47:41.139099+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:0bf4339b-9602-4efe-bd74-795c8e9d6282:execute_mission:repair_mission_synthesis_ready:current-generation","mission_step_id":"baae0d1f-9bfc-4e4f-9f62-cd009180c681","command_center_event_id":"0bf4339b-9602-4efe-bd74-795c8e9d6282"},{"id":"4ccdc6c9-5f7d-4e07-bdbf-4f3f2e2d0897","source":"cc-execution","status":"recorded","payload":{"objective":"Continue only existing PR #2018 for the tenant avatar bootstrap repair under the explicit owner request contract supplied here. Do not create or mutate another branch/PR. Reconcile the exact-head KnockLaunch Gate; when green, squash merge and release only affected frontend and Supabase function owners. Then backfill/reconcile curri-control-center, curri-properties, and one-call assistant settings without overwriting unrelated settings, and complete the required repository/data/desktop-mobile visual proofs before reporting live.","tenantRef":"60911b66-2940-4f68-9b88-cd17d1bdf5b6","receivedAt":"2026-09-07T00:38:22.309Z","fingerprint":"62301b96ddc754855ba24e02982c814b8cd1069438aca08c2973515f38cc7118","workstreamRef":"60911b6629404f689b88cd17d1bdf5b6","conversationId":null,"canonicalBranch":"ai/objective-first-repair-mtqi9fbe","requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"rawUtterance":"Continue only existing PR #2018 for the tenant avatar bootstrap repair under the explicit owner request contract supplied here. Do not create or mutate another branch/PR. Reconcile the exact-head KnockLaunch Gate; when green, squash merge and release only affected frontend and Supabase function owners. Then backfill/reconcile curri-control-center, curri-properties, and one-call assistant settings without overwriting unrelated settings, and complete the required repository/data/desktop-mobile visual proofs before reporting live.","wordingChanged":false,"canonicalIntent":"Continue only existing PR #2018 for the tenant avatar bootstrap repair under the explicit owner request contract supplied here. Do not create or mutate another branch/PR. Reconcile the exact-head KnockLaunch Gate; when green, squash merge and release only affected frontend and Supabase function owners. Then backfill/reconcile curri-control-center, curri-properties, and one-call assistant settings without overwriting unrelated settings, and complete the required repository/data/desktop-mobile visual proofs before reporting live.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"avatar-live","statement":"Curri Control Center has a visible tenant-specific Executive Chief of Staff avatar on its private control-center routes, without changing the Curri shell/cockpit.","proofConditionIds":["curri-avatar-live"]},{"id":"bootstrap-fixed","statement":"Canonical tenant provisioning persists and validates a tenant-scoped assistant/avatar contract so future tenants cannot silently bootstrap without it unless intentionally opted out.","proofConditionIds":["bootstrap-source"]},{"id":"tenant-isolation","statement":"Curri Control Center, Realty World Curri Properties, and One Call have distinct tenant-scoped assistant identities and switching tenants changes assistant context without bleed.","proofConditionIds":["assistant-data"]}],"objective":"Continue only existing PR #2018 for the tenant avatar bootstrap repair under the explicit owner request contract supplied here. Do not create or mutate another branch/PR. Reconcile the exact-head KnockLaunch Gate; when green, squash merge and release only affected frontend and Supabase function owners. Then backfill/reconcile curri-control-center, curri-properties, and one-call assistant settings without overwriting unrelated settings, and complete the required repository/data/desktop-mobile visual proofs before reporting live.","constraints":[],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"curri-avatar-live","kind":"visual","claim":"Curri Control Center visibly renders its Executive Chief of Staff avatar without obscuring the premium Curri shell on desktop and mobile.","route":"https://app.knocklaunch.app/curri-control-center/dashboard","roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]},{"id":"bootstrap-source","kind":"repository","claim":"Current protected source derives, persists, validates, and privately renders the tenant assistant contract from the shared tenant platform bootstrap primitive.","route":"https://app.knocklaunch.app/curri-control-center/dashboard","roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]},{"id":"assistant-data","kind":"runtime","claim":"The three Curri-family tenant records expose distinct tenant-specific assistant roles: Executive Chief of Staff, Brokerage Assistant, and Operations Assistant.","route":"https://app.knocklaunch.app/curri-control-center/dashboard","roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]}],"validationErrors":[]},"requestedBranch":"ai/objective-first-repair-mtqi9fbe","conversationContext":null,"requestContractHash":"337c00ddd108925c2d3011af27d123e29f5a258cb71d2287d789b83a830bd05d","requestContractRevision":1},"tenant_id":"60911b66-2940-4f68-9b88-cd17d1bdf5b6","created_at":"2026-09-07T00:38:23.040132+00:00","proof_gate":"tenant_workstream_contribution_recorded","source_sha":null,"external_id":null,"receipt_type":"tenant_workstream_contribution","idempotency_key":"mission:420eaddb-1429-4d2f-9d28-8f6ce37bcaac:tenant-workstream-contribution:62301b96ddc754855ba24e02982c814b8cd1069438aca08c2973515f38cc7118","mission_step_id":null,"command_center_event_id":"420eaddb-1429-4d2f-9d28-8f6ce37bcaac"},{"id":"4cceacff-87eb-4ac4-8248-59fb3a881d6a","source":"cc-execution","status":"verified","payload":{"ok":true,"jobId":null,"phase":"runtime_proof","branch":"ai/objective-first-repair-mtru42uh","reason":null,"status":"verified","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":null,"prNumber":2124,"terminal":true,"missionId":"9124b0cc-95c0-41ba-ab34-896c709e56cb","operation":"automatic_mission_resume","proofGate":"canonical_release_already_verified","sourceSha":"313a9a03b2e61e197bc2871cbae42d6be50ba109","timingsMs":{"prReadinessMs":1105,"approvedPlanMs":0,"shipAndProveMs":5430,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"9124b0cc-95c0-41ba-ab34-896c709e56cb"},"performance":null,"deploymentId":"forgejo-main-313a9a03b2e6","workflowRunId":6307,"releaseTargets":{"frontend":false,"onrunner":false,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"LIVE","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1950,"ownerActionRequired":false,"ownerFacingTerminal":true,"continuationRequired":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-07T22:59:47.966174+00:00","proof_gate":"canonical_release_already_verified","source_sha":null,"external_id":"2124","receipt_type":"automatic_mission_resume","idempotency_key":"mission:9124b0cc-95c0-41ba-ab34-896c709e56cb:automatic-mission-resume:2124:canonical_release_already_verified","mission_step_id":"688e839c-2017-47c0-9af3-c99de97811c4","command_center_event_id":"9124b0cc-95c0-41ba-ab34-896c709e56cb"},{"id":"4ccf4e98-3614-4cb4-8072-102a9c35c3c3","source":"durable-mission-ledger","status":"verified","payload":{"sourceSha":"befae28e66bedd4be94516856a1ae8253f40ce05","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"outcome-1","satisfied":true,"statement":"BP-2026-025 downloads as the branded Big Papi proposal matching Customer Preview, and Send attaches that same artifact.","proofConditionIds":["proof-production"]}],"satisfied":true,"constraints":[{"id":"preserve-working-storage","satisfied":true,"statement":"Preserve current server-side storage and tenant-isolated access. Do not reintroduce browser DOM capture.","proofConditionIds":["proof-production"]},{"id":"capability-completeness","satisfied":true,"statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","proofConditionIds":["proof-production"]},{"id":"atomic-capability-lifecycle","satisfied":true,"statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","proofConditionIds":["proof-production"]}],"contractHash":"215723f23732f93b95e831df92e62590f991234a975a583714cb25f544d169ac","releaseBound":true,"witnessBound":false,"visualRequested":false,"visualSatisfied":true,"conditionResults":[{"id":"proof-production","kind":"runtime","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":false,"releaseTargetStates":{"frontend":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["frontend"],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"migrationReleaseVerified":null,"releaseRequestContractHash":"215723f23732f93b95e831df92e62590f991234a975a583714cb25f544d169ac"},"required":true,"satisfied":true}],"validationErrors":[],"pendingProofKinds":[],"activeReleaseTargets":["frontend"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-17T16:35:43.679848+00:00","proof_gate":"request_contract_terminal_verified","source_sha":"befae28e66bedd4be94516856a1ae8253f40ce05","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:d1048710-d62b-4840-ae76-32f139d8bb94:request-contract:215723f23732f93b95e831df92e62590f991234a975a583714cb25f544d169ac:befae28e66bedd4be94516856a1ae8253f40ce05:verified:","mission_step_id":"eb636775-78fe-47ca-9a16-0695f6fdd953","command_center_event_id":"d1048710-d62b-4840-ae76-32f139d8bb94"},{"id":"4cd05ad5-41d6-48ef-8dd5-4d713df614dc","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":"ai/objective-first-repair-293df568d4ad","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.223-durable-witness-lane-affinity","prNumber":null,"terminal":false,"missionId":"293df568-d4ad-41cb-8de6-f7cfc9064e07","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":19,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":394,"providerAuthMs":0,"ledgerPrepareMs":394,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":394,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":394,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /mission/execute again automatically with this same missionId without another owner prompt or workflow switch.","receiptRef":{"mode":"full","missionId":"293df568-d4ad-41cb-8de6-f7cfc9064e07"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":4355,"likelyAffectedFiles":["src/PrivateAppShell.tsx"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-23T17:50:59.28216+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:293df568-d4ad-41cb-8de6-f7cfc9064e07:execute_mission:repair_mission_synthesis_ready:current-generation","mission_step_id":"59f43f44-b8be-4080-b93c-0f7c226d708f","command_center_event_id":"293df568-d4ad-41cb-8de6-f7cfc9064e07"},{"id":"4cd41a37-0c78-4adc-a62d-bb14fd162ed6","source":"cc-execution","status":"deployment_dispatched","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-mtc2v74p","reason":null,"status":"deployment_dispatched","metrics":{"receiptBytes":2433,"releaseCount":0,"toolCallCount":2,"repeatedCallCount":1,"ownerInterruptionCount":0},"version":"1.54.0-intent-canonicalization","prNumber":868,"terminal":false,"missionId":"d5fcdd19-5e1e-4c20-8a82-8d73c9e027bb","operation":"execute_mission","proofGate":"canonical_release_dispatched","sourceSha":"ab19e8b2d733add834b7b667c000badec9a0d50c","timingsMs":{"handlerMs":9716,"prReadinessMs":332,"approvedPlanMs":0,"missionSetupMs":612,"shipAndProveMs":9264},"nextAction":null,"receiptRef":{"mode":"full","missionId":"d5fcdd19-5e1e-4c20-8a82-8d73c9e027bb"},"performance":null,"deploymentId":"forgejo-main-ab19e8b2d733","workflowRunId":null,"releaseTargets":{"frontend":false,"onrunner":false,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":6477,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-27T22:43:11.866186+00:00","proof_gate":"canonical_release_dispatched","source_sha":"ab19e8b2d733add834b7b667c000badec9a0d50c","external_id":"forgejo-main-ab19e8b2d733","receipt_type":"execute_mission","idempotency_key":"mission:d5fcdd19-5e1e-4c20-8a82-8d73c9e027bb:execute_mission:canonical_release_dispatched:current-generation","mission_step_id":"c3681d0b-8b95-4bb9-a4be-0c132d2a851f","command_center_event_id":"d5fcdd19-5e1e-4c20-8a82-8d73c9e027bb"},{"id":"4cd89f80-4f39-4f1f-b4ff-7a909a850308","source":"cc-execution","status":"release_reconciliation_pending","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-002d4611fa84","reason":null,"status":"release_reconciliation_pending","metrics":{"receiptBytes":53148,"releaseCount":0,"toolCallCount":4,"repeatedCallCount":0,"executorlessWaitMs":29602,"firstUsefulResultAt":"2026-09-29T01:49:24.092Z","recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":null,"prNumber":4077,"terminal":false,"missionId":"002d4611-fa84-4e05-8e1f-3df593076b20","operation":"automatic_mission_resume","proofGate":"canonical_release_reconciliation_pending","sourceSha":"4aa4fd8a98645eb4abb4503e1e073c2f6cee374c","timingsMs":{"prReadinessMs":648,"approvedPlanMs":0,"shipAndProveMs":2661,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"reconcile_release","receiptRef":{"mode":"full","missionId":"002d4611-fa84-4e05-8e1f-3df593076b20"},"performance":null,"deploymentId":"forgejo-main-4aa4fd8a9864","releaseState":null,"workflowRunId":null,"releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1805,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-29T01:50:35.671401+00:00","proof_gate":"canonical_release_reconciliation_pending","source_sha":null,"external_id":"4077","receipt_type":"automatic_mission_resume","idempotency_key":"mission:002d4611-fa84-4e05-8e1f-3df593076b20:automatic-mission-resume:4077:canonical_release_reconciliation_pending","mission_step_id":"c79639d5-294c-442e-99f0-68298ae097a0","command_center_event_id":"002d4611-fa84-4e05-8e1f-3df593076b20"},{"id":"4cdc799e-2c48-40c2-bd5b-473bb436ca69","source":"cc-execution","status":"deployment_dispatched","payload":{"ok":true,"jobId":null,"phase":"release","branch":"ai/objective-first-repair-bd15d0d75a1f","reason":null,"status":"deployment_dispatched","metrics":{"receiptBytes":32142,"releaseCount":0,"toolCallCount":20,"repeatedCallCount":12,"executorlessWaitMs":55144,"firstUsefulResultAt":"2026-10-02T23:45:30.242Z","recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.64.60-paul-long-horizon-state","prNumber":4567,"terminal":false,"missionId":"bd15d0d7-5a1f-40a3-8655-fd6b1d5275c2","operation":"execute_mission","proofGate":"canonical_release_dispatched","sourceSha":"77dc9d3156fd1791fc7023c4af0c0faf4bc9db08","timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":1435,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":110,"approvedPlanMs":0,"missionSetupMs":255,"providerAuthMs":0,"shipAndProveMs":722,"ledgerPrepareMs":255,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":255,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":255,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"bd15d0d7-5a1f-40a3-8655-fd6b1d5275c2"},"performance":null,"deploymentId":"forgejo-main-77dc9d3156fd","releaseState":"failed","workflowRunId":14614,"releaseTargets":{"frontend":true,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":2534,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-02T23:46:42.639887+00:00","proof_gate":"canonical_release_dispatched","source_sha":"77dc9d3156fd1791fc7023c4af0c0faf4bc9db08","external_id":"forgejo-main-77dc9d3156fd","receipt_type":"execute_mission","idempotency_key":"mission:bd15d0d7-5a1f-40a3-8655-fd6b1d5275c2:execute_mission:canonical_release_dispatched:current-generation","mission_step_id":"123f6dc8-a93d-4f21-a0de-36bd79aa6a86","command_center_event_id":"bd15d0d7-5a1f-40a3-8655-fd6b1d5275c2"},{"id":"4ce44d9f-db53-4a82-bc3b-932e365417ab","source":"cc-execution","status":"deployment_dispatched","payload":{"ok":true,"jobId":null,"phase":"implementation","branch":"ai/storage-v3-migration-resequence","reason":null,"status":"deployment_dispatched","metrics":{"receiptBytes":0,"releaseCount":1,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.66-repair-generation-continuation","prNumber":1919,"terminal":false,"missionId":"c4c9d18b-e8b7-467d-b714-0cbd6627714b","operation":"execute_mission","proofGate":"canonical_release_dispatched","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":7298,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":951,"approvedPlanMs":0,"missionSetupMs":749,"providerAuthMs":0,"shipAndProveMs":6224,"ledgerPrepareMs":749,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":749,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":749,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"c4c9d18b-e8b7-467d-b714-0cbd6627714b"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":{"frontend":false,"onrunner":false,"migrations":true,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":2584,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-06T02:19:19.550565+00:00","proof_gate":"canonical_release_dispatched","source_sha":null,"external_id":"1919","receipt_type":"execute_mission","idempotency_key":"mission:c4c9d18b-e8b7-467d-b714-0cbd6627714b:execute_mission:canonical_release_dispatched:generation-2","mission_step_id":"bb461623-711a-4a37-b749-481f6ff403ed","command_center_event_id":"c4c9d18b-e8b7-467d-b714-0cbd6627714b"},{"id":"4ce5a1d0-359e-44e6-9426-bb5e2d7dd044","source":"forgejo-runtime","status":"verified","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"success","cc-execution/runtime-proof":"success"},"mainSha":"f0a0d685deb6f7443a11ab7c0e149ad81a4d6bf9","missing":[],"pending":[],"required":["forgejo-main/source","forgejo-release/workflow","cc-execution/runtime-proof"],"sourceSha":"f0a0d685deb6f7443a11ab7c0e149ad81a4d6bf9","releaseState":"verified","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":false,"onrunner":false,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"ccExecution":"success"},"requestContractHash":"1934be612c3dd3ffeb32363129d7f8f4a9ffd3da50824a958dcb85ad49f8f04c","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/12374","runId":12374,"source":"exact_live_cc_execution_runtime_identity","status":"running","liveSha":"f0a0d685deb6f7443a11ab7c0e149ad81a4d6bf9","proofGate":"cc_execution_exact_live_runtime_substitutes_transient_workflow_receipt","sourceSha":"f0a0d685deb6f7443a11ab7c0e149ad81a4d6bf9","conclusion":null,"failedJobs":[],"diagnostics":null,"exactSource":true,"deploymentId":"forgejo-main-f0a0d685deb6f7443a11ab7c0e149ad81a4d6bf9","targetStates":{"ccExecution":"pending"},"runtimeVersion":"1.58.296-universal-stop","targetJobCount":7,"observedTargetStates":{"ccExecution":"pending"},"workflowReceiptSubstituted":true},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":{"liveSha":"f0a0d685deb6f7443a11ab7c0e149ad81a4d6bf9","proofGate":"cc_execution_target_aware_runtime_identity_verified","deploymentId":"forgejo-main-f0a0d685deb6f7443a11ab7c0e149ad81a4d6bf9","compareStatus":"identical","workflowRunId":12374,"identitySource":"local_build_metadata","runtimeVersion":"1.58.296-universal-stop","workflowFailed":false,"containsSourceSha":true},"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-27T23:44:11.15754+00:00","proof_gate":"canonical_release_terminal_verified","source_sha":"f0a0d685deb6f7443a11ab7c0e149ad81a4d6bf9","external_id":"forgejo-main-f0a0d685deb6","receipt_type":"canonical_release_status","idempotency_key":"mission:bfd6c329-a78e-47ad-af2a-136766ffff16:forgejo-release-status:f0a0d685deb6f7443a11ab7c0e149ad81a4d6bf9:verified:forgejo-main/source=success|forgejo-release/workflow=success|cc-execution/runtime-proof=success","mission_step_id":"ed69939d-1a3a-4416-8518-ca65d52fcbec","command_center_event_id":"bfd6c329-a78e-47ad-af2a-136766ffff16"},{"id":"4ce66c3a-4488-4811-af6d-da42baa96c82","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"pending","frontend-cloudflare/live":"pending"},"mainSha":"5772f4c147fd8f16eb7b5037c6f260fbfafa58d8","missing":[],"pending":["forgejo-release/workflow","frontend-cloudflare/live"],"required":["forgejo-main/source","forgejo-release/workflow","frontend-cloudflare/live"],"sourceSha":"5772f4c147fd8f16eb7b5037c6f260fbfafa58d8","releaseState":"pending","sourceInMain":true,"compareStatus":"identical","releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false},"releaseTargetStates":{"frontend":"pending"},"requestContractHash":"593f33673efaa908eb83e18976cb665c00722c025404596809602b7db773c7e6","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/5762","runId":5762,"status":"running","sourceSha":"5772f4c147fd8f16eb7b5037c6f260fbfafa58d8","conclusion":null,"failedJobs":[],"diagnostics":null,"exactSource":true,"targetStates":{"frontend":"pending"},"targetJobCount":7,"observedTargetStates":{"frontend":"pending"}},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"766cfaa7-ac42-46c8-bbef-69d13268a29d","created_at":"2026-09-06T02:17:12.607905+00:00","proof_gate":"canonical_release_pending","source_sha":"5772f4c147fd8f16eb7b5037c6f260fbfafa58d8","external_id":null,"receipt_type":"canonical_release_status","idempotency_key":"mission:e3876821-7b7f-4cf5-9b71-9282f29fb725:forgejo-release-status:5772f4c147fd8f16eb7b5037c6f260fbfafa58d8:pending:forgejo-main/source=success|forgejo-release/workflow=pending|frontend-cloudflare/live=pending","mission_step_id":"2b03ab59-e7f4-4d83-a9d2-df7f97d8d1b5","command_center_event_id":"e3876821-7b7f-4cf5-9b71-9282f29fb725"},{"id":"4ce7ef89-6077-40f5-875e-952b91ac69e3","source":"cc-execution","status":"blocked","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-46a23538ac0f","reason":"control_plane_maintenance_authorization_required","status":"blocked","metrics":{"receiptBytes":13766,"releaseCount":0,"toolCallCount":6,"repeatedCallCount":2,"executorlessWaitMs":939527,"firstUsefulResultAt":"2026-09-28T17:00:39.262Z","recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.58.303-paul-runner-broker","prNumber":4022,"terminal":false,"missionId":"46a23538-ac0f-498a-85bf-1d527da22391","operation":"execute_mission","proofGate":"repair_mission_execution_blocked","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":0,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":0,"missionSetupMs":877,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":808,"ledgerReconcileMs":0,"lineageReconcileMs":69,"resolvePreflightMs":877,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":808,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"46a23538-ac0f-498a-85bf-1d527da22391"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1442,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-28T17:16:29.270052+00:00","proof_gate":"repair_mission_execution_blocked","source_sha":null,"external_id":"4022","receipt_type":"execute_mission","idempotency_key":"mission:46a23538-ac0f-498a-85bf-1d527da22391:execute_mission:repair_mission_execution_blocked:current-generation","mission_step_id":"ccb99647-9a2b-4764-b250-4c2351905981","command_center_event_id":"46a23538-ac0f-498a-85bf-1d527da22391"},{"id":"4ce873fc-71f1-44c3-bfad-bb54a8500d7d","source":"cc-execution","status":"release_reconciliation_pending","payload":{"ok":true,"jobId":"ae14619b-0a49-4e4f-ab3a-5313977c6504","phase":"pull_request","branch":"ai/objective-first-repair-e941883ce08c","reason":null,"status":"release_reconciliation_pending","metrics":{"receiptBytes":79063,"releaseCount":0,"toolCallCount":37,"repeatedCallCount":23,"executorlessWaitMs":1763348,"firstUsefulResultAt":"2026-10-01T12:19:24.711Z","recoveryAttemptCount":16,"ownerInterruptionCount":0},"version":null,"prNumber":4361,"terminal":false,"missionId":"e941883c-e08c-4d2b-ac54-4eeb4afee0b1","operation":"automatic_mission_resume","proofGate":"canonical_release_reconciliation_pending","sourceSha":"413252b1da211238f36322af3bf1dd554f41df71","timingsMs":{"prReadinessMs":3000,"approvedPlanMs":0,"shipAndProveMs":2955,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"reconcile_release","receiptRef":{"mode":"full","missionId":"e941883c-e08c-4d2b-ac54-4eeb4afee0b1"},"performance":null,"deploymentId":"forgejo-main-413252b1da21","releaseState":null,"visualWitness":{"role":null,"jobId":"ae14619b-0a49-4e4f-ab3a-5313977c6504","tenant":null,"runnerUrl":null,"runnerLane":null,"attemptsUsed":null,"supervisorId":null,"failureReason":null,"observedRoute":null,"runnerVersion":null,"attemptLineage":[],"missionOutcome":null,"requestedRoute":null,"runnerSourceSha":null,"selectedViewports":[],"checkpointAccounting":null,"correctiveGeneration":0,"restartReplayHistory":[]},"workflowRunId":null,"releaseTargets":{"frontend":true,"migrations":true,"ccExecution":false,"supabaseEdge":true,"edgeFunctionSlugs":["marketing-campaign-dispatch"]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":2177,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-01T12:52:16.323362+00:00","proof_gate":"canonical_release_reconciliation_pending","source_sha":null,"external_id":"4361","receipt_type":"automatic_mission_resume","idempotency_key":"mission:e941883c-e08c-4d2b-ac54-4eeb4afee0b1:automatic-mission-resume:4361:canonical_release_reconciliation_pending","mission_step_id":"d3275b34-8ca5-4b37-9602-f3207e5e05d5","command_center_event_id":"e941883c-e08c-4d2b-ac54-4eeb4afee0b1"},{"id":"4ce90b8c-a32d-40bc-bab0-1e911fd5dfb0","source":"cc-execution","status":"blocked","payload":{"reason":"compiler_model_generation_failed","failureClass":"retryable","sourceTargets":["src/pages/card-grading/pcgLocalSlabOcr.ts","src/pages/card-grading/PCGSlabUpload.tsx"],"dependencyReason":"model_provider_http_429","dependencyStatus":429,"providerAttempts":[{"role":"deep","reason":"model_provider_attempt_timeout","status":504,"provider":"cloudflare-workers-ai","formatRepair":false},{"role":"primary","reason":"model_provider_attempt_timeout","status":504,"provider":"cloudflare-workers-ai","formatRepair":false},{"role":"fallback","reason":"model_provider_http_429","status":429,"provider":"openai","formatRepair":false}],"automaticExecutorAssigned":false},"tenant_id":"9602e177-0cbb-496c-bdf5-2fbc93f1b859","created_at":"2026-10-12T19:29:59.084044+00:00","proof_gate":"bounded_implementation_checkpoint_persisted","source_sha":"9e33b1116dd64931fc8777d40fd353dd850225c1","external_id":null,"receipt_type":"bounded_implementation_continuation","idempotency_key":"mission:393789c0-b448-4c6b-ac8c-834d7e59263d:compiler:9e33b1116dd64931fc8777d40fd353dd850225c1:src/pages/card-grading/pcgLocalSlabOcr.ts,src/pages/card-grading/PCGSlabUpload.tsx","mission_step_id":"ab7ee27d-326a-429c-921f-cc3671539f8b","command_center_event_id":"393789c0-b448-4c6b-ac8c-834d7e59263d"},{"id":"4ce990f8-b5d7-4151-8ea9-08447df9c3f2","source":"cc-execution","status":"authorized","payload":{"paths":["workers/cc-execution/test/release-orchestration-invariants.test.js"],"reason":"Correct the single stale contract assertion exposed by KnockLaunch Gate for the same owner-velocity/request-fidelity repair.","baseSha":"048fc193dd52f1f6175ae88e97e6867061d3e65c","issuedAt":1788198174230,"expiresAt":1788198354230,"missionId":"84b2cdbb-ccd5-4983-b220-cda55e96088a","singleUse":true,"authorizationId":"187c7e32-d5b4-48c8-ba7d-e7e8e63bde80"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-31T17:42:55.139498+00:00","proof_gate":"control_plane_maintenance_scope_authorized","source_sha":"048fc193dd52f1f6175ae88e97e6867061d3e65c","external_id":null,"receipt_type":"control_plane_maintenance_authorization","idempotency_key":"control-plane-maintenance-authorize:187c7e32-d5b4-48c8-ba7d-e7e8e63bde80","mission_step_id":"090027d5-e7d9-4d19-a257-231658d193b3","command_center_event_id":"84b2cdbb-ccd5-4983-b220-cda55e96088a"},{"id":"4ceb62f9-d6f2-4e75-9145-227cf6823660","source":"cc-execution","status":"no_change","payload":{"ok":true,"jobId":null,"phase":"implementation","branch":"ai/objective-first-repair-2ec362cba3e0","reason":null,"status":"no_change","metrics":{"receiptBytes":126592,"releaseCount":0,"toolCallCount":1,"repeatedCallCount":0,"executorlessWaitMs":0,"firstUsefulResultAt":"2026-09-29T19:43:47.729Z","recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.64.10-paul-eval-precision","prNumber":null,"terminal":false,"missionId":"2ec362cb-a3e0-4d69-82fb-162d99a6b086","operation":"execute_mission","proofGate":"repair_mission_prepared","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":694,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":1683,"providerAuthMs":0,"ledgerPrepareMs":1683,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":1683,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":1683,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"pull_request_required","receiptRef":{"mode":"full","missionId":"2ec362cb-a3e0-4d69-82fb-162d99a6b086"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime","visual"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1387,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"9602e177-0cbb-496c-bdf5-2fbc93f1b859","created_at":"2026-09-29T19:43:51.488936+00:00","proof_gate":"repair_mission_prepared","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:2ec362cb-a3e0-4d69-82fb-162d99a6b086:execute_mission:repair_mission_prepared:current-generation","mission_step_id":"6bc683ec-2de3-454a-9b50-0239f3fc8776","command_center_event_id":"2ec362cb-a3e0-4d69-82fb-162d99a6b086"},{"id":"4cebdb90-917b-40e6-9b0f-afeb2ed3cbef","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":"7c7b5eed-fc80-493e-9c70-faf066c7ed7c","phase":"pull_request","branch":"ai/objective-first-repair-8c63eb4f0acb","reason":"retryable_provider_transport:forgejo_provider_read_timeout","status":"retryable","metrics":{"receiptBytes":60040,"releaseCount":0,"toolCallCount":39,"repeatedCallCount":26,"executorlessWaitMs":523290,"firstUsefulResultAt":"2026-10-06T15:26:36.328Z","recoveryAttemptCount":15,"ownerInterruptionCount":0},"version":null,"prNumber":5191,"terminal":false,"missionId":"8c63eb4f-0acb-4944-8991-952b0cbeb908","operation":"automatic_mission_resume","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"prReadinessMs":2170,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"8c63eb4f-0acb-4944-8991-952b0cbeb908"},"performance":null,"deploymentId":null,"releaseState":null,"visualWitness":{"role":null,"jobId":"7c7b5eed-fc80-493e-9c70-faf066c7ed7c","tenant":null,"runnerUrl":null,"runnerLane":null,"attemptsUsed":null,"supervisorId":null,"failureReason":"retryable_provider_transport:forgejo_provider_read_timeout","observedRoute":null,"runnerVersion":null,"attemptLineage":[],"missionOutcome":null,"requestedRoute":null,"runnerSourceSha":null,"selectedViewports":[],"checkpointAccounting":null,"correctiveGeneration":1,"restartReplayHistory":[]},"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":819,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T15:34:30.075693+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"5191","receipt_type":"automatic_mission_resume","idempotency_key":"mission:8c63eb4f-0acb-4944-8991-952b0cbeb908:automatic-mission-resume:5191:repair_mission_pr_ready_retryable","mission_step_id":"fc0d811c-8ec5-4eb4-9198-1a2af78e0e07","command_center_event_id":"8c63eb4f-0acb-4944-8991-952b0cbeb908"},{"id":"4cf05106-ae52-4353-bb45-22b3d6b2e9d2","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-c297ae724804","reason":"retryable_provider_transport:forgejo_provider_read_timeout","status":"retryable","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":null,"prNumber":3445,"terminal":false,"missionId":"c297ae72-4804-43b4-adc5-a7816f848242","operation":"automatic_mission_resume","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"prReadinessMs":5434,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"c297ae72-4804-43b4-adc5-a7816f848242"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime","visual"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":819,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-22T16:58:08.467376+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"3445","receipt_type":"automatic_mission_resume","idempotency_key":"mission:c297ae72-4804-43b4-adc5-a7816f848242:automatic-mission-resume:3445:repair_mission_pr_ready_retryable","mission_step_id":"5b272d69-817f-489b-9179-9d4123fdff16","command_center_event_id":"c297ae72-4804-43b4-adc5-a7816f848242"},{"id":"4cf2f0fb-6f3f-4b8b-b34e-052d2fbae003","source":"cc-execution","status":"authorized","payload":{"paths":["workers/cc-execution/test/event-driven-auto-merge-invariants.test.js"],"baseSha":"17cc059f1021854efa7b8da008c20f871daefb9e","issuedAt":1791469723186,"expiresAt":1791469903186,"missionId":"73d0e2d3-bcaf-4481-b663-5eded40d0b7b","autoRefreeze":true,"authorizationId":"23762887-419f-49bd-8a91-2dade3ff3552","authorizationSource":"explicit_owner_request_contract"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-08T14:28:44.007863+00:00","proof_gate":"control_plane_maintenance_exact_scope_authorized","source_sha":"17cc059f1021854efa7b8da008c20f871daefb9e","external_id":"23762887-419f-49bd-8a91-2dade3ff3552","receipt_type":"control_plane_maintenance_authorized","idempotency_key":"control-plane-maintenance:73d0e2d3-bcaf-4481-b663-5eded40d0b7b:23762887-419f-49bd-8a91-2dade3ff3552","mission_step_id":null,"command_center_event_id":"73d0e2d3-bcaf-4481-b663-5eded40d0b7b"},{"id":"4cf43f78-1b34-4e2f-b749-4054c25e4042","source":"cc-execution","status":"waiting","payload":{"body":{"ship":true,"files":[],"branch":"ai/objective-first-repair-7bce1d87eb51","writes":[],"patches":[],"version":1,"approved":true,"missionId":"7bce1d87-eb51-4c5f-8790-9c059a7bbce3","repository":"noel/KnockLaunchOS","ownerApproved":true,"releaseIntent":null,"sourceTargets":[],"anchored_edits":[{"path":"scripts/cloudflare-native-owner-worker.mjs","edits":[{"new_content":"const WORKSPACE_RESOLVER_PATH = '/__knocklaunch/workspaces';\nconst CONSOLE_FORGEJO_PATH = '/__knocklaunch/console/forgejo';","old_content":"const WORKSPACE_RESOLVER_PATH = '/__knocklaunch/workspaces';"},{"new_content":"async function requireSystemAdmin(request) {\n  const authorization = String(request.headers.get('authorization') || '').trim();\n  if (!authorization.startsWith('Bearer ') || authorization.length <= 7) return { ok: false, response: workspaceJson({ ok: false, error: 'Authentication required' }, 401) };\n  let userResponse;\n  try {\n    userResponse = await fetch(`${SUPABASE_URL}/auth/v1/user`, { headers: { Authorization: authorization, apikey: SUPABASE_PUBLISHABLE_KEY }, signal: AbortSignal.timeout(5000) });\n  } catch {\n    return { ok: false, response: workspaceJson({ ok: false, error: 'Authentication service unavailable' }, 504) };\n  }\n  const user = await userResponse.json().catch(() => null);\n  if (!userResponse.ok || !user?.id) return { ok: false, response: workspaceJson({ ok: false, error: 'Session invalid' }, 401) };\n  let adminResponse;\n  try {\n    adminResponse = await fetch(`${SUPABASE_URL}/rest/v1/rpc/is_system_admin`, { method: 'POST', headers: { Authorization: authorization, apikey: SUPABASE_PUBLISHABLE_KEY, 'Content-Type': 'application/json' }, body: JSON.stringify({ _user_id: user.id }), signal: AbortSignal.timeout(5000) });\n  } catch {\n    return { ok: false, response: workspaceJson({ ok: false, error: 'Authorization service unavailable' }, 504) };\n  }\n  const isAdmin = await adminResponse.json().catch(() => false);\n  if (!adminResponse.ok || isAdmin !== true) return { ok: false, response: workspaceJson({ ok: false, error: 'Platform owner required' }, 403) };\n  return { ok: true, authorization, user };\n}\n\nasync function handleConsoleForgejoRequest(request, env) {\n  if (!['GET','POST'].includes(request.method)) return workspaceJson({ ok: false, error: 'Method not allowed' }, 405, { allow: 'GET, POST' });\n  const auth = await requireSystemAdmin(request); if (!auth.ok) return auth.response;\n  const token = String(env.FGJ_CONTROL_TOKEN || env.FORGEJO_TOKEN || '').trim();\n  if (!token) return workspaceJson({ ok: false, error: 'Forgejo control credential is not configured' }, 503);\n  const headers = { Authorization: `token ${token}`, Accept: 'application/json', 'Content-Type': 'application/json' };\n  if (request.method === 'POST') {\n    const body = await request.json().catch(() => ({}));\n    if (body?.action !== 'runner-proof') return workspaceJson({ ok: false, error: 'Action not allowed' }, 400);\n    const dispatched = await fetch('https://git.knocklaunch.app/api/v1/repos/noel/KnockLaunchOS/actions/workflows/msi-runner-proof.yml/dispatches', { method: 'POST', headers, body: JSON.stringify({ ref: 'main' }), signal: AbortSignal.timeout(10000) }).catch(() => null);\n    if (!dispatched?.ok) return workspaceJson({ ok: false, error: `MSI proof dispatch failed${dispatched ? ` (${dispatched.status})` : ''}` }, 502);\n    return workspaceJson({ status: 'observed', observedAt: new Date().toISOString(), summary: { Runner: 'msi-local', Workflow: 'MSI Runner Proof', Ref: 'main', Dispatch: 'accepted' }, sections: { Dispatch: { status: 'observed', data: { workflow: 'msi-runner-proof.yml', ref: 'main' } } } });\n  }\n  const runnersResponse = await fetch('https://git.knocklaunch.app/api/v1/repos/noel/KnockLaunchOS/actions/runners?limit=50', { headers, signal: AbortSignal.timeout(10000) }).catch(() => null);\n  if (!runnersResponse?.ok) return workspaceJson({ ok: false, error: `Forgejo runner inventory unavailable${runnersResponse ? ` (${runnersResponse.status})` : ''}` }, 502);\n  const payload = await runnersResponse.json().catch(() => null);\n  const runners = (Array.isArray(payload?.runners) ? payload.runners : []).map((runner) => ({ id: runner?.id ?? null, name: String(runner?.name || ''), status: String(runner?.status || ''), busy: Boolean(runner?.busy), version: String(runner?.version || ''), labels: (Array.isArray(runner?.labels) ? runner.labels : []).map((label) => typeof label === 'string' ? label : String(label?.name || '')).filter(Boolean) }));\n  return workspaceJson({ status: 'observed', observedAt: new Date().toISOString(), summary: { Runners: runners.length }, sections: { Runners: { status: 'observed', data: { total_count: runners.length, runners } } } });\n}\n\nasync function resolveWorkspaceRequest(request) {","old_content":"async function resolveWorkspaceRequest(request) {"},{"new_content":"    if (KNOCKLAUNCH_APP_HOSTS.has(hostname) && normalizedPath === WORKSPACE_RESOLVER_PATH) {\n      return resolveWorkspaceRequest(request);\n    }\n    if (KNOCKLAUNCH_APP_HOSTS.has(hostname) && normalizedPath === CONSOLE_FORGEJO_PATH) {\n      return handleConsoleForgejoRequest(request, env);\n    }","old_content":"    if (KNOCKLAUNCH_APP_HOSTS.has(hostname) && normalizedPath === WORKSPACE_RESOLVER_PATH) {\n      return resolveWorkspaceRequest(request);\n    }"}]},{"path":"src/pages/admin/GodModeCommandConsole.tsx","edits":[{"new_content":"      try {\n        let data: any;\n        if (action === 'forgejo' || action === 'runner-proof') {\n          const { data: sessionData } = await supabase.auth.getSession();\n          const accessToken = sessionData.session?.access_token;\n          if (!accessToken) throw new Error('Sign in required');\n          const response = await fetch('/__knocklaunch/console/forgejo', {\n            method: action === 'forgejo' ? 'GET' : 'POST',\n            headers: { Authorization: `Bearer ${accessToken}`, 'Content-Type': 'application/json' },\n            ...(action === 'runner-proof' ? { body: JSON.stringify({ action }) } : {}),\n          });\n          data = await response.json();\n          if (!response.ok || data?.error) throw new Error(data?.error || `Console backend returned ${response.status}`);\n        } else {\n          const result = await supabase.functions.invoke('console-ops', { body: { action } });\n          if (result.error || result.data?.error) throw new Error(result.error?.message || result.data.error);\n          data = result.data;\n        }\n        frame.current?.contentWindow?.postMessage({ type:'kl-console-result', id, data }, window.location.origin);","old_content":"      try {\n        const { data, error } = await supabase.functions.invoke('console-ops', { body: { action } });\n        if (error || data?.error) throw new Error(error?.message || data.error);\n        frame.current?.contentWindow?.postMessage({ type:'kl-console-result', id, data }, window.location.origin);"}]}],"implementation":{"files":[],"writes":[]},"requestContract":null,"repairGeneration":null,"executionEnvelope":{"ship":true,"version":1,"approved":true,"missionId":"7bce1d87-eb51-4c5f-8790-9c059a7bbce3","ownerApproved":true,"releaseIntent":null,"sourceTargets":[],"requestContract":null,"repairGeneration":null,"proofRequirements":null,"controlPlaneUnfreeze":false,"controlPlaneMaintenance":false,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":null},"proofRequirements":null,"controlPlaneUnfreeze":false,"durableMutationResume":true,"controlPlaneMaintenance":false,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":null},"recovery":false,"fingerprint":"f091527ccd63ed71b0f716164c679d4a4e60f3a5f25e645af5e0bfd46a9cefbb","replayCount":0,"serializedBytes":7635},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-26T17:15:42.664042+00:00","proof_gate":"repository_mutation_intent_persisted","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent","idempotency_key":"mission:7bce1d87-eb51-4c5f-8790-9c059a7bbce3:repository-mutation-intent:f091527ccd63ed71b0f716164c679d4a4e60f3a5f25e645af5e0bfd46a9cefbb:0","mission_step_id":"e91897b2-8ad5-4b27-aa06-7941a3c60feb","command_center_event_id":"7bce1d87-eb51-4c5f-8790-9c059a7bbce3"},{"id":"4cf4a07d-e2b6-449c-b8a2-f9e2952e3bb2","source":"cc-execution","status":"blocked","payload":{"reason":"control_plane_frozen_explicit_unfreeze_required","fingerprint":"2fcd2685ac7a90ed34a5e907c08ace2b6b1bea89faf4e68ec5a6a6631a71a19b"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-02T00:57:47.341001+00:00","proof_gate":"repository_mutation_intent_deterministic_failure","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent_blocked","idempotency_key":"mission:75d1a597-8065-4363-ab05-63bf70d78f3a:repository-mutation-intent-blocked:2fcd2685ac7a90ed34a5e907c08ace2b6b1bea89faf4e68ec5a6a6631a71a19b","mission_step_id":"ed450cc3-9ea6-40a1-a067-c9b69f3f31d5","command_center_event_id":"75d1a597-8065-4363-ab05-63bf70d78f3a"},{"id":"4cf722c0-a57b-44fe-934c-1348b4750d9e","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":"ai/experience-studio-make-experience-studio-the-sin","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.31.31-resumable-backup-failover","prNumber":null,"terminal":false,"missionId":"9d978288-f9a7-479a-8e8a-3bcb46db1fa9","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":null,"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /repair/continue-mission automatically with this missionId without another owner prompt.","receiptRef":{"mode":"full","missionId":"9d978288-f9a7-479a-8e8a-3bcb46db1fa9"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":9906,"likelyAffectedFiles":["src/pages/admin/ExperienceStudioUX.tsx","src/pages/admin/PlatformExperienceEditor.tsx","src/components/experience-editor/","src/lib/design/experienceSurface","src/lib/design/platformExperienceInventory","scripts/visual-witness-hosted-runner/src/universal-witness.mjs","scripts/visual-witness-hosted-runner/src/runner-entrypoint.mjs","workers/cc-execution/src/index-visual-witness-fast-path.js",".github/workflows/production-release-conductor.yml","scripts/resolve-autonomous-change-plan.mjs","scripts/resolve-production-workflow-run.mjs","src/routes/"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"c55998b4-82a3-467e-8d35-177bb4785f6e","created_at":"2026-08-10T17:10:48.550504+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:9d978288-f9a7-479a-8e8a-3bcb46db1fa9:execute_mission:repair_mission_synthesis_ready","mission_step_id":"ac3dc5e3-b2b3-4703-8b0a-ab47d7433464","command_center_event_id":"9d978288-f9a7-479a-8e8a-3bcb46db1fa9"},{"id":"4cf7a18a-942f-495c-96d3-4c3853529d90","source":"cc-execution","status":"waiting_for_gate","payload":{"ok":true,"jobId":null,"phase":"implementation","branch":"ai/objective-first-repair-96c3698e86e9","reason":"pull_request_checks_pending","status":"waiting_for_gate","metrics":{"receiptBytes":230494,"releaseCount":0,"toolCallCount":148,"repeatedCallCount":142,"executorlessWaitMs":947812,"firstUsefulResultAt":"2026-10-06T11:39:59.801Z","recoveryAttemptCount":36,"ownerInterruptionCount":0},"version":"1.65.10-boundary-fix-release-retry","prNumber":5168,"terminal":false,"missionId":"96c3698e-86e9-4f19-92c7-b49846a35450","operation":"execute_mission","proofGate":"repair_mission_waiting_for_gate","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":4102,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":4000,"approvedPlanMs":0,"missionSetupMs":1053,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":937,"ledgerReconcileMs":0,"lineageReconcileMs":116,"resolvePreflightMs":1053,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":937,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request after the exact-head KnockLaunch Gate changes state.","receiptRef":{"mode":"full","missionId":"96c3698e-86e9-4f19-92c7-b49846a35450"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["repository"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1694,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T11:50:56.393334+00:00","proof_gate":"repair_mission_waiting_for_gate","source_sha":null,"external_id":"5168","receipt_type":"execute_mission","idempotency_key":"mission:96c3698e-86e9-4f19-92c7-b49846a35450:execute_mission:repair_mission_waiting_for_gate:current-generation","mission_step_id":"8d8b2fd6-c02f-4fec-8a21-6c9e3f4d0be9","command_center_event_id":"96c3698e-86e9-4f19-92c7-b49846a35450"},{"id":"4cfaa70a-b325-4fce-a275-632fa2a90671","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"implementation","branch":"ai/objective-first-repair-eddc318a07dc","reason":"retryable_provider_transport:GET:The operation was aborted due to timeout","status":"retryable","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.115-release-speed-lock","prNumber":null,"terminal":false,"missionId":"eddc318a-07dc-4ee3-bc65-e01324c1e033","operation":"execute_mission","proofGate":"repair_mission_execution_retryable","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":22850,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":0,"missionSetupMs":341,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":341,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":341,"repositoryMutationMs":22850,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":341,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"eddc318a-07dc-4ee3-bc65-e01324c1e033"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1561,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-12T01:17:41.1755+00:00","proof_gate":"repair_mission_execution_retryable","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:eddc318a-07dc-4ee3-bc65-e01324c1e033:execute_mission:repair_mission_execution_retryable:current-generation","mission_step_id":"421cb44c-c029-44c5-af4b-7f0be454b550","command_center_event_id":"eddc318a-07dc-4ee3-bc65-e01324c1e033"},{"id":"4cfaacb2-fd2e-4660-bdd6-f95f0b3d427a","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":"ai/objective-first-repair-dc3ac1954bcc","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"executorlessWaitMs":0,"firstUsefulResultAt":null,"recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.64.99-positive-mutation-admission","prNumber":null,"terminal":false,"missionId":"dc3ac195-4bcc-4522-8496-ebd5160fd524","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":4301,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":587,"providerAuthMs":0,"ledgerPrepareMs":587,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":587,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":587,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /mission/execute again automatically with this same missionId without another owner prompt or workflow switch.","receiptRef":{"mode":"full","missionId":"dc3ac195-4bcc-4522-8496-ebd5160fd524"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":5084,"likelyAffectedFiles":["src/pages/connections/TenantConnections.tsx","src/pages/crm/TenantConnections.tsx","src/pages/settings/TenantSettingsPageWithWebsiteAssets.tsx","src/pages/owner/KnockLaunchOSSettings.tsx","src/PcgAppShell.tsx","src/PrivateAppShell.tsx"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-05T18:35:39.994062+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:dc3ac195-4bcc-4522-8496-ebd5160fd524:execute_mission:repair_mission_synthesis_ready:current-generation","mission_step_id":"6054253f-2d5b-4746-8d3c-25ae5838a59a","command_center_event_id":"dc3ac195-4bcc-4522-8496-ebd5160fd524"},{"id":"4cfcbcd8-663b-4ce8-bf4b-6aabd2893a7a","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in reasoning required.","nextAction":{"lane":"cc-execution","action":"continue_implementation","reason":"synthesis_required","automationAllowed":true,"ownerActionRequired":false},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"reasoning_required\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"execute_mission\",\"status\":\"synthesis_required\",\"proofGate\":\"repair_mission_synthesis_ready\"},\"activeStep\":{\"key\":\"implementation\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"pull_request\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextSafeAction\":{\"action\":\"continue_implementation\",\"lane\":\"cc-execution\",\"reason\":\"synthesis_required\",\"automationAllowed\":true,\"ownerActionRequired\":false},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"cc-execution\",\"nextAction\":\"continue_implementation\",\"recoveryOwner\":\"cc-execution\"},\"acceptance\":{\"total\":1,\"verified\":0,\"pending\":1,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[\"proof-production\"]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":\"release\",\"deadlineAt\":\"2026-10-06T14:45:50.391675+00:00\",\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":null,\"prNumber\":null,\"sourceSha\":null,\"deploymentId\":null}"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T11:49:04.669399+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:9e6a4771-814a-4d3a-8559-fbc6788ac894:owner-progress-heartbeat:119419156","mission_step_id":"c1c54602-88f7-4e2f-9950-5c46185699e7","command_center_event_id":"9e6a4771-814a-4d3a-8559-fbc6788ac894"},{"id":"4cff32e0-93bb-454d-b864-283e9e5bf915","source":"cc-execution","status":"authorized","payload":{"paths":[".forgejo/workflows/knocklaunch.yml","workers/cc-execution/src/index-release-fast-lane.js","workers/cc-execution/src/version.js"],"reason":"Owner already authorized this bounded control-plane repair through deploy and verification; this corrective generation removes the redundant global Actions read from successful exact-head readiness and uses a temporary branch-only bootstrap that will be removed before final merge.","baseSha":"7e6686d266fc6651d4e3862b68cc3378b73f03cc","issuedAt":1790305034829,"expiresAt":1790305214829,"missionId":"06e9f9f8-3c92-46c7-b78b-2447369b948b","authorizationId":"d671d6f7-2fff-4950-b355-cd3ed381c58f","retryableWithinExactScope":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-25T02:57:15.171604+00:00","proof_gate":"control_plane_maintenance_scope_authorized","source_sha":"7e6686d266fc6651d4e3862b68cc3378b73f03cc","external_id":null,"receipt_type":"control_plane_maintenance_authorization","idempotency_key":"control-plane-maintenance-authorize:d671d6f7-2fff-4950-b355-cd3ed381c58f","mission_step_id":"a7755bec-f374-4dd6-b0a6-85181f9a5578","command_center_event_id":"06e9f9f8-3c92-46c7-b78b-2447369b948b"},{"id":"4d00c24b-f32e-4e53-9f84-e3a36a7b0ae9","source":"cc-execution","status":"waiting","payload":{"sourceTargets":["scripts/command-center-host-agent/forgejo-watchdog.sh"],"continuationObjective":"Continue the same mission. Fetch only scripts/command-center-host-agent/forgejo-watchdog.sh as the exact current-main source for implementation. Do not mutate."},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-04T17:03:46.851176+00:00","proof_gate":"mission_continuation_scope_persisted","source_sha":null,"external_id":null,"receipt_type":"mission_continuation_scope_updated","idempotency_key":"mission:3096d3af-6ed5-42ba-b900-4cd6a80842fc:mission_continuation_scope_updated:mission_continuation_scope_persisted:waiting","mission_step_id":"bf6c54b9-15eb-4b4d-b003-7e31f958a34e","command_center_event_id":"3096d3af-6ed5-42ba-b900-4cd6a80842fc"},{"id":"4d01839e-1f32-4b1a-ac86-bf44558b39f0","source":"durable-mission-ledger","status":"pending","payload":{"sourceSha":"cf01d02f724af79dab770eafde69738549f59be7","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"session-decoupled","satisfied":false,"statement":"Signing out of God Mode or another KNOCKLAUNCH application clears only that browser-local app session and does not revoke the independently held KNOCKLAUNCH Command Center OAuth authorization.","proofConditionIds":["repo","release","connector"]}],"satisfied":false,"constraints":[{"id":"no-auth-bypass","satisfied":false,"statement":"Do not make Command Center anonymous, weaken protected-route authentication, expose bearer tokens, or introduce an auth bypass.","proofConditionIds":["repo"]},{"id":"reuse-existing-pr","satisfied":false,"statement":"Reuse PR #2045, branch ai/objective-first-repair-mtqpdvjd, and exact green head 528dcdcdad3acd1f543a50edfae8ef7d7fe50ab3; create no replacement branch or PR.","proofConditionIds":["repo"]},{"id":"frontend-only-release","satisfied":true,"statement":"Release only the frontend because no cc-execution, migration, database, or frozen control-plane source changed.","proofConditionIds":["release"]}],"contractHash":"6556d2c67571c8c47456e668f87c54d9398a645e278cdda2e93f3a40d9e0cba8","releaseBound":true,"witnessBound":false,"visualRequested":false,"visualSatisfied":true,"conditionResults":[{"id":"repo","kind":"repository","evidence":{"repositoryProofGate":null,"requestContractHash":"6556d2c67571c8c47456e668f87c54d9398a645e278cdda2e93f3a40d9e0cba8","repositoryProofStatus":"required","repositoryProofSourceSha":null},"required":true,"satisfied":false},{"id":"release","kind":"release","evidence":{"releaseState":"verified","activeReleaseTargets":["frontend"],"releaseRequestContractHash":"6556d2c67571c8c47456e668f87c54d9398a645e278cdda2e93f3a40d9e0cba8"},"required":true,"satisfied":true},{"id":"connector","kind":"runtime","evidence":{"releaseState":"verified","activeReleaseTargets":["frontend"],"releaseRequestContractHash":"6556d2c67571c8c47456e668f87c54d9398a645e278cdda2e93f3a40d9e0cba8"},"required":true,"satisfied":true}],"validationErrors":[],"pendingProofKinds":["repository"],"activeReleaseTargets":["frontend"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-07T03:58:22.415464+00:00","proof_gate":"request_contract_pending","source_sha":"cf01d02f724af79dab770eafde69738549f59be7","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:a61e6088-33b0-4552-bf10-fbe34ab24c5c:request-contract:6556d2c67571c8c47456e668f87c54d9398a645e278cdda2e93f3a40d9e0cba8:cf01d02f724af79dab770eafde69738549f59be7:pending:repository","mission_step_id":"825a0627-db9a-4d63-84d6-d0681a09d4a8","command_center_event_id":"a61e6088-33b0-4552-bf10-fbe34ab24c5c"},{"id":"4d0320be-bf03-4310-8c3c-8b3a55e36517","source":"durable-mission-ledger","status":"verified","payload":{"sourceSha":"068ac1e4c0e74ce96701b593b7d36e76dc1caa1c","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"outcome-1","satisfied":true,"statement":"Big Papi's keeps tenant context and usable navigation across owner routes.","proofConditionIds":["proof-production"]}],"satisfied":true,"constraints":[{"id":"capability-completeness","satisfied":true,"statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","proofConditionIds":["proof-production"]},{"id":"atomic-capability-lifecycle","satisfied":true,"statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","proofConditionIds":["proof-production"]}],"contractHash":"def8ec3fc1a6bcf15c0e61567505c9d4e8c6183ba247532585daa7d9f3368a8c","releaseBound":true,"witnessBound":false,"visualRequested":false,"visualSatisfied":true,"conditionResults":[{"id":"proof-production","kind":"runtime","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":false,"releaseTargetStates":{"frontend":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["frontend"],"allowedReleaseTargets":["frontend"],"requiredReleaseTargets":["frontend"],"migrationReleaseVerified":null,"releaseRequestContractHash":"def8ec3fc1a6bcf15c0e61567505c9d4e8c6183ba247532585daa7d9f3368a8c"},"required":true,"satisfied":true}],"validationErrors":[],"pendingProofKinds":[],"activeReleaseTargets":["frontend"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-23T04:26:57.544337+00:00","proof_gate":"request_contract_terminal_verified","source_sha":"068ac1e4c0e74ce96701b593b7d36e76dc1caa1c","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:e82060e5-de67-464c-a1b4-8de87e62ffa0:request-contract:def8ec3fc1a6bcf15c0e61567505c9d4e8c6183ba247532585daa7d9f3368a8c:068ac1e4c0e74ce96701b593b7d36e76dc1caa1c:verified:","mission_step_id":"7c496af3-c871-49e0-9f35-f6a5140537b5","command_center_event_id":"e82060e5-de67-464c-a1b4-8de87e62ffa0"},{"id":"4d03a24c-4dc8-4434-bc24-6e2028b42c1b","source":"cc-execution","status":"source_resolution_required","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":null,"reason":null,"status":"source_resolution_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"executorlessWaitMs":0,"firstUsefulResultAt":null,"recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.58.284-control-plane-source-fast-path","prNumber":null,"terminal":false,"missionId":"8262d36a-d2a1-45f0-b21e-8c1dce642413","operation":"execute_mission","proofGate":"repair_mission_source_resolution_required","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":1468,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":598,"providerAuthMs":0,"ledgerPrepareMs":598,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":598,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":598,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"Supply exact sourceTargets on the same mission; planner guesses cannot replace missing mission scope.","receiptRef":{"mode":"full","missionId":"8262d36a-d2a1-45f0-b21e-8c1dce642413"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1176,"likelyAffectedFiles":[],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-26T02:11:56.463393+00:00","proof_gate":"repair_mission_source_resolution_required","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:8262d36a-d2a1-45f0-b21e-8c1dce642413:execute_mission:repair_mission_source_resolution_required:current-generation","mission_step_id":"433a3052-28cf-4e43-ad21-4e2b58148cae","command_center_event_id":"8262d36a-d2a1-45f0-b21e-8c1dce642413"},{"id":"4d04b797-8e10-48e9-ac9c-026ca0790f6b","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-aa521ac50272","reason":"retryable_provider_transport:forgejo_provider_read_timeout","status":"retryable","metrics":{"receiptBytes":26895,"releaseCount":0,"toolCallCount":9,"repeatedCallCount":5,"executorlessWaitMs":79372,"firstUsefulResultAt":"2026-10-02T00:57:41.722Z","recoveryAttemptCount":6,"ownerInterruptionCount":0},"version":"1.64.46-connection-research-human-readable-unknowns","prNumber":4437,"terminal":false,"missionId":"aa521ac5-0272-48d4-b958-ea360bc1e5da","operation":"execute_mission","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":2349,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":2230,"approvedPlanMs":0,"missionSetupMs":433,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":322,"ledgerReconcileMs":0,"lineageReconcileMs":111,"resolvePreflightMs":433,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":322,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"aa521ac5-0272-48d4-b958-ea360bc1e5da"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1524,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-02T01:00:14.280372+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"4437","receipt_type":"execute_mission","idempotency_key":"mission:aa521ac5-0272-48d4-b958-ea360bc1e5da:execute_mission:repair_mission_pr_ready_retryable:current-generation","mission_step_id":"9d8230f6-32fc-4993-b1ce-b10af71497d3","command_center_event_id":"aa521ac5-0272-48d4-b958-ea360bc1e5da"},{"id":"4d06e17c-787f-479f-aeca-e52b2b1bd7e0","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"implementation","branch":"ai/tenant-conversation-workstream-20260817","reason":"pull_request_stale_refresh_required","status":"retryable","metrics":{"receiptBytes":6655,"releaseCount":0,"toolCallCount":5,"repeatedCallCount":3,"ownerInterruptionCount":0},"version":"1.46.17-release-orchestration-guardrails","prNumber":350,"terminal":false,"missionId":"184a8315-3ac5-4d8d-b878-43d5ffc02fa9","operation":"execute_mission","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":null,"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"184a8315-3ac5-4d8d-b878-43d5ffc02fa9"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":6264,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-08-17T20:21:26.421515+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"350","receipt_type":"execute_mission","idempotency_key":"mission:184a8315-3ac5-4d8d-b878-43d5ffc02fa9:execute_mission:repair_mission_pr_ready_retryable","mission_step_id":"d2f8a18f-85d7-4ef0-8f22-66135a41d81a","command_center_event_id":"184a8315-3ac5-4d8d-b878-43d5ffc02fa9"},{"id":"4d0a1bc5-5892-4cb5-9de3-235ec186baab","source":"cc-execution","status":"blocked","payload":{"reason":"orphaned_branch_recovery_scope_mismatch:ai/objective-first-repair-e3478acfa504","fingerprint":"cc620c92f9241e958f1a7d72b402fe7d06d7bcbcb1fea0c009f88f0f600fc629"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-29T03:05:05.910808+00:00","proof_gate":"repository_mutation_intent_deterministic_failure","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent_blocked","idempotency_key":"mission:6ababd0f-0d54-40d7-8503-b39b4c94807b:repository-mutation-intent-blocked:cc620c92f9241e958f1a7d72b402fe7d06d7bcbcb1fea0c009f88f0f600fc629","mission_step_id":"2f18feae-aee7-4f55-bd9a-7cc72e035cc4","command_center_event_id":"6ababd0f-0d54-40d7-8503-b39b4c94807b"},{"id":"4d0ad63c-c700-4eea-9c07-a00c3af0c8e6","source":"cc-execution","status":"waiting","payload":{"sourceTargets":["config/paul-owner-profile.json"],"continuationObjective":"Continue this exact durable-memory update. Add the explicit rule that newly discovered causal blockers inherit execution ownership immediately, must be repaired autonomously when safe, and the mission continues through Gate, merge, release, and live proof without requiring Noel to re-ask. Preserve all safety and live-truth constraints."},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-05T15:36:48.385621+00:00","proof_gate":"mission_continuation_scope_persisted","source_sha":null,"external_id":null,"receipt_type":"mission_continuation_scope_updated","idempotency_key":"mission:f2461bca-30b4-43ab-ab57-5b3d067a46c7:mission_continuation_scope_updated:mission_continuation_scope_persisted:waiting","mission_step_id":"3058491d-2a7f-433b-9229-1e7a29859bb1","command_center_event_id":"f2461bca-30b4-43ab-ab57-5b3d067a46c7"},{"id":"4d0ad71e-a119-4390-882d-3049f2e0bee6","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-41a34e407cae","reason":"retryable_provider_transport:forgejo_provider_read_timeout","status":"retryable","metrics":{"receiptBytes":44781,"releaseCount":0,"toolCallCount":22,"repeatedCallCount":15,"executorlessWaitMs":589457,"firstUsefulResultAt":"2026-09-30T21:52:56.844Z","recoveryAttemptCount":13,"ownerInterruptionCount":0},"version":null,"prNumber":4282,"terminal":false,"missionId":"41a34e40-7cae-41ee-8dac-8a2c04916dca","operation":"automatic_mission_resume","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"prReadinessMs":2221,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"41a34e40-7cae-41ee-8dac-8a2c04916dca"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":819,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-30T22:00:18.831971+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"4282","receipt_type":"automatic_mission_resume","idempotency_key":"mission:41a34e40-7cae-41ee-8dac-8a2c04916dca:automatic-mission-resume:4282:repair_mission_pr_ready_retryable","mission_step_id":"dc54cf00-36e2-4ccb-a2cc-a21b1d8469aa","command_center_event_id":"41a34e40-7cae-41ee-8dac-8a2c04916dca"},{"id":"4d0ae6e9-4998-4eeb-81fa-f070d0e48d78","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-75d1a5978065","reason":"retryable_provider_transport:pr_ready_timeout_budget_exhausted","status":"retryable","metrics":{"receiptBytes":164957,"releaseCount":0,"toolCallCount":15,"repeatedCallCount":7,"executorlessWaitMs":292180,"firstUsefulResultAt":"2026-10-02T00:57:03.873Z","recoveryAttemptCount":6,"ownerInterruptionCount":0},"version":null,"prNumber":4439,"terminal":false,"missionId":"75d1a597-8065-4363-ab05-63bf70d78f3a","operation":"automatic_mission_resume","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"prReadinessMs":3000,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"75d1a597-8065-4363-ab05-63bf70d78f3a"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":827,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-02T01:01:43.527894+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"4439","receipt_type":"automatic_mission_resume","idempotency_key":"mission:75d1a597-8065-4363-ab05-63bf70d78f3a:automatic-mission-resume:4439:repair_mission_pr_ready_retryable","mission_step_id":"9f38fbad-ea97-480b-a5a7-c7dc9031d1d3","command_center_event_id":"75d1a597-8065-4363-ab05-63bf70d78f3a"},{"id":"4d0e1efb-e28c-410d-a37a-4886b10ce83b","source":"cc-execution","status":"recorded","payload":{"requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"rawUtterance":"Change KNOCKLAUNCH canonical Forgejo merge progression so every eligible AI pull request auto-advances immediately after the exact canonical KnockLaunch Gate succeeds, without requiring the legacy <!-- knocklaunch:auto-progress --> marker or manual arming. Preserve safety: PR must be open, non-draft, branch ai/*, target main, exact head identity, canonical gate success/current readiness, and existing stale/conflict protections. Update live control-plane capability truth and the event-driven auto-merge invariant test. Do not create a hosted merge workflow or duplicate merge path. Ship the cc-execution control-plane change through one PR, squash merge, deploy only affected runtime targets, and prove the live runtime identity reflects the new behavior.","wordingChanged":false,"canonicalIntent":"Change KNOCKLAUNCH canonical Forgejo merge progression so every eligible AI pull request auto-advances immediately after the exact canonical KnockLaunch Gate succeeds, without requiring the legacy <!-- knocklaunch:auto-progress --> marker or manual arming. Preserve safety: PR must be open, non-draft, branch ai/*, target main, exact head identity, canonical gate success/current readiness, and existing stale/conflict protections. Update live control-plane capability truth and the event-driven auto-merge invariant test. Do not create a hosted merge workflow or duplicate merge path. Ship the cc-execution control-plane change through one PR, squash merge, deploy only affected runtime targets, and prove the live runtime identity reflects the new behavior.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"auto-merge-green-prs","statement":"Eligible green ai/* pull requests automatically advance through the canonical Forgejo squash-merge path without requiring <!-- knocklaunch:auto-progress --> or manual intervention.","proofConditionIds":["source-policy","merge-proof","runtime-proof"]}],"objective":"Change KNOCKLAUNCH canonical Forgejo merge progression so every eligible AI pull request auto-advances immediately after the exact canonical KnockLaunch Gate succeeds, without requiring the legacy <!-- knocklaunch:auto-progress --> marker or manual arming. Preserve safety: PR must be open, non-draft, branch ai/*, target main, exact head identity, canonical gate success/current readiness, and existing stale/conflict protections. Update live control-plane capability truth and the event-driven auto-merge invariant test. Do not create a hosted merge workflow or duplicate merge path. Ship the cc-execution control-plane change through one PR, squash merge, deploy only affected runtime targets, and prove the live runtime identity reflects the new behavior.","constraints":[{"id":"safety","statement":"Keep eligibility safeguards: open, non-draft, ai/* head, main base, exact head identity, canonical gate success/current readiness, and existing stale/conflict protections.","proofConditionIds":["source-policy"]},{"id":"single-path","statement":"Do not create a hosted auto-merge workflow, duplicate merge path, bypass protected main, or recreate retired merge machinery.","proofConditionIds":["source-policy"]},{"id":"scope","statement":"Change only the governing auto-merge policy/handler and its invariant test plus capability truth required for this control plane behavior.","proofConditionIds":["source-policy"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"source-policy","kind":"repository","claim":"Current Forgejo source and control plane capabilities no longer require the auto-progress marker, declare eligible exact green AI PRs automatically merge-authorized, preserve the existing eligibility/stale/conflict safeguards, and do not add a duplicate merge workflow.","route":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]},{"id":"merge-proof","kind":"repository","claim":"The change PR is squash-merged through Forgejo protected main.","route":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]},{"id":"runtime-proof","kind":"runtime","claim":"Live cc-execution runtime identity matches the merged source containing the new auto-merge behavior.","route":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]}],"validationErrors":[]},"requestContractHash":"2382725219e589f46b84fac56816606c7b4217802890e1a5b5ad40e9c39d41d0","requestContractRevision":2,"previousRequestContractHash":"64bbc75c8a332c6b9c54b50532050628f6f5529ee4b37e774330cd59c9703546"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-27T22:33:15.143955+00:00","proof_gate":"request_contract_revision_recorded","source_sha":null,"external_id":null,"receipt_type":"request_contract_revision","idempotency_key":"mission:eecf2a25-3635-4074-a7bb-327e18708721:request-contract-revision:2:2382725219e589f46b84fac56816606c7b4217802890e1a5b5ad40e9c39d41d0","mission_step_id":"81305a9d-b0c1-4111-99ca-478acef4e41b","command_center_event_id":"eecf2a25-3635-4074-a7bb-327e18708721"},{"id":"4d0e8ea8-d3e0-40a5-8689-7a74237910c1","source":"cc-execution","status":"release_verification_pending","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":null,"reason":null,"status":"release_verification_pending","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.46.8-intent-aware-objectives","prNumber":140,"terminal":false,"missionId":"0b6fb17c-073c-429a-96fc-8b6123fdb245","operation":"ship_and_prove","proofGate":"ship_and_prove_release_pending","sourceSha":"3d1082faa2f3309112ade3f3fd3e45f27098175b","timingsMs":null,"nextAction":null,"receiptRef":{"mode":"full","missionId":"0b6fb17c-073c-429a-96fc-8b6123fdb245"},"performance":null,"deploymentId":"forgejo-main-3d1082faa2f3","workflowRunId":408,"releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":4167,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-08-15T17:02:00.955478+00:00","proof_gate":"ship_and_prove_release_pending","source_sha":"3d1082faa2f3309112ade3f3fd3e45f27098175b","external_id":"forgejo-main-3d1082faa2f3","receipt_type":"ship_and_prove","idempotency_key":"mission:0b6fb17c-073c-429a-96fc-8b6123fdb245:ship_and_prove:ship_and_prove_release_pending:3d1082faa2f3309112ade3f3fd3e45f27098175b:408","mission_step_id":"e77363ad-0291-488a-8c38-c18667ee0646","command_center_event_id":"0b6fb17c-073c-429a-96fc-8b6123fdb245"},{"id":"4d0fa050-06e3-4bea-91bb-899ecaf5d6cb","source":"forgejo","status":"waiting","payload":{"branch":"ai/owner-deal-desk-upload-pcg-seed-v2","prNumber":3369,"nextAction":"Follow the existing canonical release to terminal proof.","mergeCommitSha":"bf1c56ac8f9f9e029a9621095fc14107473cbfcc","branchDeletedAfterMerge":true,"correctiveGenerationCreated":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-21T19:41:45.078845+00:00","proof_gate":"forgejo_merged_pr_is_authoritative_source_lineage","source_sha":"bf1c56ac8f9f9e029a9621095fc14107473cbfcc","external_id":"3369","receipt_type":"source_lineage_merged_pr_authoritative","idempotency_key":"mission:613bea2c-6e51-437e-8962-8ef982673dbf:merged-pr:3369:bf1c56ac8f9f9e029a9621095fc14107473cbfcc","mission_step_id":"826757dc-0989-4bcc-b8a6-f580715a5285","command_center_event_id":"613bea2c-6e51-437e-8962-8ef982673dbf"},{"id":"4d103c84-020b-4358-b556-6ce2e4cd8849","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-e397a802c113","reason":"retryable_provider_transport:forgejo_provider_read_timeout","status":"retryable","metrics":{"receiptBytes":17196,"releaseCount":0,"toolCallCount":6,"repeatedCallCount":3,"executorlessWaitMs":17762,"firstUsefulResultAt":"2026-10-01T03:36:37.070Z","recoveryAttemptCount":4,"ownerInterruptionCount":0},"version":null,"prNumber":4317,"terminal":false,"missionId":"e397a802-c113-4abd-8456-5d4d426943d1","operation":"automatic_mission_resume","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"prReadinessMs":2163,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"e397a802-c113-4abd-8456-5d4d426943d1"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":819,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-01T03:36:49.239505+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"4317","receipt_type":"automatic_mission_resume","idempotency_key":"mission:e397a802-c113-4abd-8456-5d4d426943d1:automatic-mission-resume:4317:repair_mission_pr_ready_retryable","mission_step_id":"b4c8e09a-4aff-4b22-b0aa-e2f3af2695e4","command_center_event_id":"e397a802-c113-4abd-8456-5d4d426943d1"},{"id":"4d11526e-790a-4d3a-b69d-45182730c41c","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in pull request.","nextAction":{"lane":"cc-execution","action":"reconcile_pull_request","reason":"pull_request_exists_without_merged_source","handoff":null,"capability":"light-control-plane","automationAllowed":true,"ownerActionRequired":false,"resumeFromCheckpoint":"preflight"},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"pull_request\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"automatic_mission_resume\",\"status\":\"release_reconciliation_pending\",\"proofGate\":\"canonical_release_reconciliation_pending\"},\"activeStep\":{\"key\":\"pull_request\",\"status\":\"waiting\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"release\",\"status\":\"ready\",\"lane\":\"production-release-conductor\"},\"nextSafeAction\":{\"action\":\"reconcile_pull_request\",\"lane\":\"cc-execution\",\"reason\":\"pull_request_exists_without_merged_source\",\"automationAllowed\":true,\"ownerActionRequired\":false,\"capability\":\"light-control-plane\",\"resumeFromCheckpoint\":\"preflight\",\"handoff\":null},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"cc-execution\",\"nextAction\":\"reconcile_pull_request\",\"recoveryOwner\":\"cc-execution\",\"capability\":\"light-control-plane\",\"resumeFromCheckpoint\":\"preflight\",\"handoff\":null},\"acceptance\":{\"total\":1,\"verified\":0,\"pending\":1,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[\"proof-production\"]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":\"visual_proof\",\"deadlineAt\":\"2026-10-06T20:38:30.030194+00:00\",\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":\"ai/objective-first-repair-68476ba0a3e4\",\"prNumber\":5209,\"sourceSha\":null,\"deploymentId\":null}"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T16:44:56.406147+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:68476ba0-a3e4-49e1-ab5c-1705534676bf:owner-progress-heartbeat:119420339","mission_step_id":"9faf0684-7ccf-4b5c-afb0-20c8eb0b9696","command_center_event_id":"68476ba0-a3e4-49e1-ab5c-1705534676bf"},{"id":"4d13ea19-c988-46c8-ba92-80eb749df125","source":"cc-execution","status":"release_reconciliation_pending","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-5d05c9ccac8c","reason":null,"status":"release_reconciliation_pending","metrics":{"receiptBytes":20367,"releaseCount":0,"toolCallCount":3,"repeatedCallCount":0,"executorlessWaitMs":21675,"firstUsefulResultAt":"2026-10-02T23:58:17.258Z","recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":null,"prNumber":4569,"terminal":false,"missionId":"5d05c9cc-ac8c-4c8f-892a-156e914119d9","operation":"automatic_mission_resume","proofGate":"canonical_release_reconciliation_pending","sourceSha":"f81cdaf0abe6b07a2f0369bfca4da6d65188416d","timingsMs":{"prReadinessMs":715,"approvedPlanMs":0,"shipAndProveMs":281,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"reconcile_release","receiptRef":{"mode":"full","missionId":"5d05c9cc-ac8c-4c8f-892a-156e914119d9"},"performance":null,"deploymentId":"forgejo-main-f81cdaf0abe6","releaseState":null,"workflowRunId":null,"releaseTargets":{"frontend":true,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1799,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-02T23:58:43.989107+00:00","proof_gate":"canonical_release_reconciliation_pending","source_sha":null,"external_id":"4569","receipt_type":"automatic_mission_resume","idempotency_key":"mission:5d05c9cc-ac8c-4c8f-892a-156e914119d9:automatic-mission-resume:4569:canonical_release_reconciliation_pending","mission_step_id":"a7ce6abe-f80b-4c25-8fa6-8e0c09b24469","command_center_event_id":"5d05c9cc-ac8c-4c8f-892a-156e914119d9"},{"id":"4d150d74-3385-4ea7-b853-9169ef27cecb","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"implementation","branch":"ai/seaside-customers-service-directory","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":1469,"releaseCount":0,"toolCallCount":1,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.31.28-visual-witness-backup-fallback","prNumber":null,"terminal":false,"missionId":"e2d7a0c3-ec60-47dd-b90e-636ae550fc73","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":null,"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /repair/continue-mission automatically with this missionId without another owner prompt.","receiptRef":{"mode":"full","missionId":"e2d7a0c3-ec60-47dd-b90e-636ae550fc73"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":11004,"likelyAffectedFiles":["src/pages/seaside/SeasideLaunchRouteCore.tsx","supabase/functions/","supabase/migrations/","supabase/functions/_shared/edgeFunctionRegistry.ts","src/routes/","src/pages/","src/components/","src/index.css"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"c55998b4-82a3-467e-8d35-177bb4785f6e","created_at":"2026-08-10T15:49:10.772772+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:e2d7a0c3-ec60-47dd-b90e-636ae550fc73:execute_mission:repair_mission_synthesis_ready","mission_step_id":"5c05793a-416c-4a66-b15e-489048c1b12e","command_center_event_id":"e2d7a0c3-ec60-47dd-b90e-636ae550fc73"},{"id":"4d1b399a-51c1-48b7-8a5f-999711caa541","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in release.","nextAction":{"lane":"production-release-conductor","action":"reconcile_release","reason":"merged_source_requires_release_proof","automationAllowed":true,"ownerActionRequired":false},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"release\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"source_lineage_merged_pr_authoritative\",\"status\":\"waiting\",\"proofGate\":\"forgejo_merged_pr_is_authoritative_source_lineage\"},\"activeStep\":{\"key\":\"pull_request\",\"status\":\"waiting\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"release\",\"status\":\"waiting\",\"lane\":\"production-release-conductor\"},\"nextSafeAction\":{\"action\":\"reconcile_release\",\"lane\":\"production-release-conductor\",\"reason\":\"merged_source_requires_release_proof\",\"automationAllowed\":true,\"ownerActionRequired\":false},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"cc-execution\",\"nextAction\":\"reconcile_release\",\"recoveryOwner\":\"production-release-conductor\"},\"acceptance\":{\"total\":1,\"verified\":0,\"pending\":1,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[\"proof-production\"]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":\"release\",\"deadlineAt\":\"2026-09-25T14:02:27.208176+00:00\",\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":\"ai/objective-first-repair-33d1d8d56278\",\"prNumber\":3706,\"sourceSha\":\"d6a7a4aa9943631f6171fa0adb8145cda760e9f4\",\"deploymentId\":\"forgejo-main-d6a7a4aa9943\"}"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-25T11:15:10.518056+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:33d1d8d5-6278-49a9-8e8c-ca393444723f:owner-progress-heartbeat:119355660","mission_step_id":"7db64571-f049-4c01-96f6-3d178e9bbaba","command_center_event_id":"33d1d8d5-6278-49a9-8e8c-ca393444723f"},{"id":"4d1bed9b-b678-43c2-b6e0-8aa0064d6759","source":"cc-execution","status":"pending","payload":{"ok":true,"jobId":"af6de904-dfa1-4abc-bcfc-f7f0752baf56","phase":"universal_visual_witness_supervised","branch":"ai/objective-first-repair-f924689dbbf3","reason":null,"status":"pending","metrics":{"receiptBytes":179022,"releaseCount":0,"toolCallCount":24,"repeatedCallCount":8,"executorlessWaitMs":2147813,"firstUsefulResultAt":"2026-09-29T15:44:42.639Z","recoveryAttemptCount":5,"ownerInterruptionCount":0},"version":null,"prNumber":4143,"terminal":false,"missionId":"f924689d-bbf3-4d65-9a92-2f614a4cdd05","operation":"visual_proof_started","proofGate":"universal_visual_witness_pending","sourceSha":"b688914aaab7832af5886b912dbb6f3cb6131c9f","timingsMs":{"queue":362,"total":445,"execution":83},"nextAction":"Execution is pending; poll inspect_route_status only when fresh progress is expected, or cancel with inspect_route_cancel.","receiptRef":{"mode":"full","missionId":"f924689d-bbf3-4d65-9a92-2f614a4cdd05"},"performance":null,"deploymentId":"forgejo-main-b688914aaab7","releaseState":"verified","visualWitness":{"role":"GodMode","jobId":"af6de904-dfa1-4abc-bcfc-f7f0752baf56","tenant":null,"runnerUrl":"https://laptop-witness.knocklaunch.app","runnerLane":"laptop","attemptsUsed":0,"supervisorId":"af6de904-dfa1-4abc-bcfc-f7f0752baf56","failureReason":null,"observedRoute":null,"runnerVersion":null,"attemptLineage":[],"missionOutcome":null,"requestedRoute":"/admin/account?section=settings","runnerSourceSha":null,"selectedViewports":["desktop","mobile"],"checkpointAccounting":null,"correctiveGeneration":0,"restartReplayHistory":[]},"workflowRunId":13091,"releaseTargets":{"frontend":true,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":"verified","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1781,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-29T16:20:32.367879+00:00","proof_gate":"post_release_visual_proof_started","source_sha":"b688914aaab7832af5886b912dbb6f3cb6131c9f","external_id":"af6de904-dfa1-4abc-bcfc-f7f0752baf56","receipt_type":"visual_proof_started","idempotency_key":"mission:f924689d-bbf3-4d65-9a92-2f614a4cdd05:visual-start:af6de904-dfa1-4abc-bcfc-f7f0752baf56","mission_step_id":"2e8f24a8-b923-4968-975e-a600f9b4439c","command_center_event_id":"f924689d-bbf3-4d65-9a92-2f614a4cdd05"},{"id":"4d1cb8b3-3c0f-4404-8c57-255871ebb220","source":"forgejo-exact-source","status":"verified","payload":{"sourceSha":"b2a774e887dde3d31f6d1f4f71aa0795f977a4a8","repository":"noel/KnockLaunchOS","repositoryProofs":[{"id":"proof-repository","path":null,"proof":"forgejo_merged_pr_exact_head_gate","headSha":"28d79684584b7fb5faaac3bd9f065ec1fbb05d6f","prNumber":2480,"gateContext":"KnockLaunch Gate / KnockLaunch Gate (pull_request)","expectedText":null,"gateTargetUrl":"/noel/KnockLaunchOS/actions/runs/7336/jobs/1","mergeCommitSha":"b2a774e887dde3d31f6d1f4f71aa0795f977a4a8"}],"requestContractHash":"45d90c05d411a58b5b89a64312f32e1b802ea8221f885fa65379154a8ed83238"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-12T06:05:47.779387+00:00","proof_gate":"request_contract_repository_verified","source_sha":"b2a774e887dde3d31f6d1f4f71aa0795f977a4a8","external_id":null,"receipt_type":"request_contract_repository_status","idempotency_key":"mission:8d5ed517-bf5a-4cff-bba2-b18ea36536bc:request-contract-repository:45d90c05d411a58b5b89a64312f32e1b802ea8221f885fa65379154a8ed83238:b2a774e887dde3d31f6d1f4f71aa0795f977a4a8","mission_step_id":"3d369417-206a-4ea1-8d65-a94b6e9a0b55","command_center_event_id":"8d5ed517-bf5a-4cff-bba2-b18ea36536bc"},{"id":"4d1d5d3e-22a6-4c24-82f1-c93de70c19f3","source":"cc-execution","status":"waiting","payload":{"body":{"ship":true,"branch":"ai/objective-first-repair-5ffccd520839","approved":true,"missionId":"5ffccd52-0839-46e3-906a-fa0efed11658","objective":"Bootstrap the PAUL auto-synthesis bridge on the existing durable mission. Reuse canonical PAUL inference, bounded source bundles, persisted exact mutation intent, and deterministic supervisor.","sourceSha":"d647e78129ef2460b1b8865503f3d052c709bf44","repository":"noel/KnockLaunchOS","trackMission":true,"ownerApproved":true,"anchored_edits":[{"path":"workers/cc-execution/src/index-mission-control.js","new_content":"import { inferenceProviderReadiness } from \"./model-provider-gateway.js\";\nimport { inferPlatformSidekick } from \"./platform-sidekick-intelligence.js\";\nimport { buildSynthesisSourceBundle } from \"./mcp-synthesis-source-bundle.js\";","old_content":"import { inferenceProviderReadiness } from \"./model-provider-gateway.js\";"},{"path":"workers/cc-execution/src/index-mission-control.js","new_content":"function paulSynthesisTool() {\n  return {\n    type: \"function\",\n    function: {\n      name: \"apply_anchored_edits\",\n      description: \"Return the smallest exact anchored edits needed to advance this durable mission. Every path must be one of the supplied authoritative source files.\",\n      parameters: {\n        type: \"object\",\n        required: [\"edits\"],\n        properties: {\n          edits: {\n            type: \"array\",\n            minItems: 1,\n            maxItems: 12,\n            items: {\n              type: \"object\",\n              required: [\"path\", \"old_content\", \"new_content\"],\n              properties: {\n                path: { type: \"string\", minLength: 1 },\n                old_content: { type: \"string\", minLength: 1 },\n                new_content: { type: \"string\" },\n              },\n              additionalProperties: false,\n            },\n          },\n        },\n        additionalProperties: false,\n      },\n    },\n  };\n}\n\nasync function synthesizeMissingRepositoryMutationIntent(request, env, ctx, mission) {\n  if (!mission || mission.terminal === true || !ctx?.waitUntil) return mission;\n  const context = mission.context && typeof mission.context === \"object\" ? mission.context : {};\n  if (Number(context.prNumber || mission.prNumber || 0) > 0) return mission;\n  const sourceTargets = authoritativeSourceTargets({}, context);\n  if (!sourceTargets.length) return mission;\n  const bundle = await buildSynthesisSourceBundle(env, DEFAULT_REPOSITORY, \"main\", sourceTargets, null);\n  const files = Array.isArray(bundle?.files) ? bundle.files : [];\n  const unusable = bundle?.status !== \"ready\"\n    || files.length === 0\n    || files.some((file) => file?.status !== \"ready\" || file?.truncated === true || !String(file?.content || \"\"));\n  if (unusable) return mission;\n  const allowedPaths = new Set((Array.isArray(bundle?.sourceTargets) ? bundle.sourceTargets : sourceTargets).map((value) => String(value || \"\").trim()).filter(Boolean));\n  const evidence = files.map((file) => `FILE: ${file.path}\\n---\\n${String(file.content || \"\")}\\n---`).join(\"\\n\\n\");\n  const inference = await inferPlatformSidekick({\n    mode: \"conversation\",\n    surface: \"durable-mission-synthesis\",\n    reasoningProfile: \"deep\",\n    messages: [{\n      role: \"user\",\n      content: `Durable mission ${mission.missionId}. Objective: ${String(mission.objective || \"\")}\\n\\nProduce the smallest safe implementation that advances the objective from current main. Use only the authoritative files supplied below. Return exactly one apply_anchored_edits tool call. old_content must be an exact unique substring from the supplied source. Do not widen scope, invent files, or claim completion.\\n\\n${evidence}`,\n    }],\n    tools: [paulSynthesisTool()],\n    scope: {\n      authorization: \"durable_mission_synthesis\",\n      mutationAllowed: true,\n      missionId: mission.missionId,\n      tenantRef: mission.tenantRef || context.tenantRef || null,\n    },\n  }, env);\n  const call = (Array.isArray(inference?.toolCalls) ? inference.toolCalls : []).find((entry) => entry?.name === \"apply_anchored_edits\");\n  const proposed = Array.isArray(call?.arguments?.edits) ? call.arguments.edits : [];\n  const anchoredEdits = proposed.slice(0, 12).flatMap((edit) => {\n    const path = String(edit?.path || \"\").trim();\n    const oldContent = typeof edit?.old_content === \"string\" ? edit.old_content : \"\";\n    const newContent = typeof edit?.new_content === \"string\" ? edit.new_content : \"\";\n    if (!path || !allowedPaths.has(path) || !oldContent) return [];\n    return [{ path, old_content: oldContent, new_content: newContent }];\n  });\n  if (!anchoredEdits.length || anchoredEdits.length !== proposed.length) return mission;\n  const mutationBody = {\n    objective: mission.objective || \"Continue the durable mission.\",\n    missionId: mission.missionId,\n    branch: context.branch || mission.branch || undefined,\n    ship: true,\n    approved: true,\n    ownerApproved: true,\n    sourceTargets,\n    anchored_edits: anchoredEdits,\n  };\n  const dispatched = await dispatchPersistedRepositoryMutation(request, env, ctx, mutationBody, mission);\n  if (!dispatched) return mission;\n  const refreshed = await readMission(env, mission.missionId, false);\n  return refreshed.ok ? refreshed.data : mission;\n}\n\nasync function recoverPersistedRepositoryMutationIntent(request, env, ctx, mission) {\n  if (!mission || mission.terminal === true || !ctx?.waitUntil) return mission;\n  const context = mission.context && typeof mission.context === \"object\" ? mission.context : {};\n  if (Number(context.prNumber || mission.prNumber || 0) > 0) return mission;\n  const intentBody = context.repositoryMutationIntentBody;\n  if (String(context.repositoryMutationIntentState || \"\") !== \"dispatched\"\n      || !intentBody || typeof intentBody !== \"object\" || Array.isArray(intentBody)) {\n    return synthesizeMissingRepositoryMutationIntent(request, env, ctx, mission);\n  }\n  const dispatchedAtMs = Date.parse(String(context.repositoryMutationIntentDispatchedAt || \"\"));\n  if (!Number.isFinite(dispatchedAtMs) || Date.now() - dispatchedAtMs < DURABLE_ASYNC_MUTATION_REPLAY_AFTER_MS) return mission;\n  const replayCount = Number(context.repositoryMutationIntentReplayCount || 0);\n  if (replayCount >= DURABLE_ASYNC_MUTATION_MAX_REPLAYS) return mission;\n  const dispatched = await dispatchPersistedRepositoryMutation(request, env, ctx, intentBody, mission, { recovery: true });\n  if (!dispatched) return mission;\n  const refreshed = await readMission(env, mission.missionId, false);\n  return refreshed.ok ? refreshed.data : mission;\n}","old_content":"async function recoverPersistedRepositoryMutationIntent(request, env, ctx, mission) {\n  if (!mission || mission.terminal === true || !ctx?.waitUntil) return mission;\n  const context = mission.context && typeof mission.context === \"object\" ? mission.context : {};\n  if (Number(context.prNumber || mission.prNumber || 0) > 0) return mission;\n  if (String(context.repositoryMutationIntentState || \"\") !== \"dispatched\") return mission;\n  const intentBody = context.repositoryMutationIntentBody;\n  if (!intentBody || typeof intentBody !== \"object\" || Array.isArray(intentBody)) return mission;\n  const dispatchedAtMs = Date.parse(String(context.repositoryMutationIntentDispatchedAt || \"\"));\n  if (!Number.isFinite(dispatchedAtMs) || Date.now() - dispatchedAtMs < DURABLE_ASYNC_MUTATION_REPLAY_AFTER_MS) return mission;\n  const replayCount = Number(context.repositoryMutationIntentReplayCount || 0);\n  if (replayCount >= DURABLE_ASYNC_MUTATION_MAX_REPLAYS) return mission;\n  const dispatched = await dispatchPersistedRepositoryMutation(request, env, ctx, intentBody, mission, { recovery: true });\n  if (!dispatched) return mission;\n  const refreshed = await readMission(env, mission.missionId, false);\n  return refreshed.ok ? refreshed.data : mission;\n}"},{"path":"workers/cc-execution/src/version.js","new_content":"export const CC_EXECUTION_VERSION = \"1.64.81-paul-auto-synthesis\";","old_content":"export const CC_EXECUTION_VERSION = \"1.64.80-paul-durable-continuation\";"}],"update_strategy":"auto","controlPlaneUnfreeze":true,"durableMutationResume":true,"controlPlaneMaintenance":true,"controlPlaneMaintenanceReason":"Prime structured exact mutation continuation"},"recovery":false,"fingerprint":"3ba4edda4d4c69e89a0e1fcbc0895a7dca6ff188026d0960bf47c1541428285d","replayCount":0,"serializedBytes":8439},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-03T21:36:30.471218+00:00","proof_gate":"repository_mutation_intent_persisted","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent","idempotency_key":"mission:5ffccd52-0839-46e3-906a-fa0efed11658:repository-mutation-intent:3ba4edda4d4c69e89a0e1fcbc0895a7dca6ff188026d0960bf47c1541428285d:0","mission_step_id":"af02cf2a-845b-4484-80ed-f0720d94ec2e","command_center_event_id":"5ffccd52-0839-46e3-906a-fa0efed11658"},{"id":"4d20371d-3952-4790-a89a-35a0d64a2ce7","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"pending","frontend-cloudflare/live":"pending","supabase-edge-production/live":"pending"},"mainSha":"e51e1b674db8900565cd8d1c7f5a13850785208a","missing":[],"pending":["forgejo-release/workflow","supabase-edge-production/live","frontend-cloudflare/live"],"required":["forgejo-main/source","forgejo-release/workflow","supabase-edge-production/live","frontend-cloudflare/live"],"sourceSha":"e51e1b674db8900565cd8d1c7f5a13850785208a","releaseState":"pending","sourceInMain":true,"compareStatus":"identical","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/1524","runId":1524,"status":"running","conclusion":null,"failedJobs":[],"diagnostics":null},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-19T19:16:42.131684+00:00","proof_gate":"canonical_release_pending","source_sha":"e51e1b674db8900565cd8d1c7f5a13850785208a","external_id":"forgejo-main-e51e1b674db8","receipt_type":"canonical_release_status","idempotency_key":"mission:d447bd8f-2664-4fa5-86bc-dd57f6369517:forgejo-release-status:e51e1b674db8900565cd8d1c7f5a13850785208a:pending:forgejo-main/source=success|forgejo-release/workflow=pending|supabase-edge-production/live=pending|frontend-cloudflare/live=pending","mission_step_id":"f405eb4d-0412-406f-9ce3-204f4001f6c8","command_center_event_id":"d447bd8f-2664-4fa5-86bc-dd57f6369517"},{"id":"4d21ae5e-be0e-4921-8c3b-064d5085441f","source":"cc-execution","status":"waiting_for_gate","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-0ab544ced46c","reason":"pull_request_checks_pending","status":"waiting_for_gate","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":null,"prNumber":3415,"terminal":false,"missionId":"0ab544ce-d46c-4bfe-855a-5fa4f9916b50","operation":"automatic_mission_resume","proofGate":"repair_mission_waiting_for_gate","sourceSha":null,"timingsMs":{"prReadinessMs":443,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request after the exact-head KnockLaunch Gate changes state.","receiptRef":{"mode":"full","missionId":"0ab544ce-d46c-4bfe-855a-5fa4f9916b50"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1285,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-22T11:24:27.158768+00:00","proof_gate":"repair_mission_waiting_for_gate","source_sha":null,"external_id":"3415","receipt_type":"automatic_mission_resume","idempotency_key":"mission:0ab544ce-d46c-4bfe-855a-5fa4f9916b50:automatic-mission-resume:3415:repair_mission_waiting_for_gate","mission_step_id":"02aaf3c3-1b1b-4eff-a3f9-d401421cbbe7","command_center_event_id":"0ab544ce-d46c-4bfe-855a-5fa4f9916b50"},{"id":"4d247994-e035-4167-82ba-b1b903322f07","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/release-proof-monotonicity-main-20260825","reason":"The operation was aborted due to timeout","status":"retryable","metrics":{"receiptBytes":6350,"releaseCount":0,"toolCallCount":5,"repeatedCallCount":1,"ownerInterruptionCount":0},"version":"1.50.41-known-release-run-fastpath","prNumber":744,"terminal":false,"missionId":"813e0f13-bf9f-4378-9b70-ed714ae5d85c","operation":"execute_mission","proofGate":"canonical_release_transport_retryable","sourceSha":null,"timingsMs":{"handlerMs":26721,"prReadinessMs":747,"approvedPlanMs":0,"missionSetupMs":651,"shipAndProveMs":25974},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"813e0f13-bf9f-4378-9b70-ed714ae5d85c"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":4878,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-25T14:54:01.947178+00:00","proof_gate":"canonical_release_transport_retryable","source_sha":null,"external_id":"744","receipt_type":"execute_mission","idempotency_key":"mission:813e0f13-bf9f-4378-9b70-ed714ae5d85c:execute_mission:canonical_release_transport_retryable","mission_step_id":"b9f917ee-f0cd-4b95-8ead-c3169579baba","command_center_event_id":"813e0f13-bf9f-4378-9b70-ed714ae5d85c"},{"id":"4d27c53b-6927-4bf1-8bd8-38d27d79ce3a","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in reasoning required.","nextAction":{"lane":"cc-execution","action":"continue_implementation","reason":"synthesis_required","handoff":null,"capability":"heavy-build-gate","automationAllowed":true,"ownerActionRequired":false,"resumeFromCheckpoint":"preflight"},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"reasoning_required\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"execute_mission\",\"status\":\"synthesis_required\",\"proofGate\":\"repair_mission_synthesis_ready\"},\"activeStep\":{\"key\":\"implementation\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"pull_request\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextSafeAction\":{\"action\":\"continue_implementation\",\"lane\":\"cc-execution\",\"reason\":\"synthesis_required\",\"automationAllowed\":true,\"ownerActionRequired\":false,\"capability\":\"heavy-build-gate\",\"resumeFromCheckpoint\":\"preflight\",\"handoff\":null},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"cc-execution\",\"nextAction\":\"continue_implementation\",\"recoveryOwner\":\"cc-execution\",\"capability\":\"heavy-build-gate\",\"resumeFromCheckpoint\":\"preflight\",\"handoff\":null},\"acceptance\":{\"total\":2,\"verified\":0,\"pending\":2,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[\"proof-production\",\"proof-visual\"]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":\"pull_request\",\"deadlineAt\":\"2026-10-06T18:26:16.102101+00:00\",\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":\"ai/objective-first-repair-79923c4e89df\",\"prNumber\":null,\"sourceSha\":null,\"deploymentId\":null}"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T15:56:48.634093+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:79923c4e-89df-4623-ab67-f494ce7fb058:owner-progress-heartbeat:119420147","mission_step_id":"e3d2eaf6-cde9-4e11-bc36-a6c1373bdde7","command_center_event_id":"79923c4e-89df-4623-ab67-f494ce7fb058"},{"id":"4d28e4b2-2a9b-41a8-84a3-d3c6364f1392","source":"forgejo-runtime","status":"verified","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"success","supabase-migrations/live":"success"},"mainSha":"8950e24fca6425fcbb948e5e884d76c8f67c88b5","missing":[],"pending":[],"required":["forgejo-main/source","forgejo-release/workflow","supabase-migrations/live"],"sourceSha":"8950e24fca6425fcbb948e5e884d76c8f67c88b5","releaseState":"verified","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":false,"migrations":true,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"migrations":"success"},"requestContractHash":"e996de22c757ea6ac216d84ed3b0e41e293860e86d3c993571f6061416c28c40","forgejoWorkflowProof":{"runId":14359,"source":"signed_push_receipt","status":"success","results":{},"conclusion":"success","targetStates":{"migrations":"success"},"targetJobCount":7,"observedTargetStates":{"migrations":"success"}},"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-02T15:43:27.71032+00:00","proof_gate":"canonical_release_terminal_verified","source_sha":"8950e24fca6425fcbb948e5e884d76c8f67c88b5","external_id":"forgejo-main-8950e24fca64","receipt_type":"canonical_release_status","idempotency_key":"mission:faf0a200-96d4-4968-9e15-4037862db405:forgejo-release-status:8950e24fca6425fcbb948e5e884d76c8f67c88b5:verified:forgejo-main/source=success|forgejo-release/workflow=success|supabase-migrations/live=success","mission_step_id":"6db8f06f-4b31-4257-9ed6-a81ea671f778","command_center_event_id":"faf0a200-96d4-4968-9e15-4037862db405"},{"id":"4d2b2259-a7a7-4805-846b-16147731566f","source":"cc-execution","status":"waiting_for_gate","payload":{"ok":true,"jobId":null,"phase":"implementation","branch":"ai/objective-first-repair-b10be993a4e0","reason":"provider_verified_auto_progress_owns_gate_merge_release_outside_owner_response","status":"waiting_for_gate","metrics":{"receiptBytes":7881,"releaseCount":0,"toolCallCount":3,"repeatedCallCount":0,"executorlessWaitMs":229669,"firstUsefulResultAt":"2026-09-27T17:55:59.236Z","recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.58.293-scheduler-v2","prNumber":3891,"terminal":false,"missionId":"b10be993-a4e0-4f5c-bd3c-965855d6668a","operation":"execute_mission","proofGate":"repair_mission_pr_handed_off_to_supervisor","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":4379,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":1543,"missionSetupMs":264,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":264,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":264,"repositoryMutationMs":2836,"repositoryProviderMs":2836,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":1843,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":264,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":993},"nextAction":"Canonical KnockLaunch Gate notifier and durable mission supervisor own Gate, merge, release, and proof progression from this exact PR head outside the owner response path.","receiptRef":{"mode":"full","missionId":"b10be993-a4e0-4f5c-bd3c-965855d6668a"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":3398,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-27T17:59:54.232528+00:00","proof_gate":"repair_mission_pr_handed_off_to_supervisor","source_sha":null,"external_id":"3891","receipt_type":"execute_mission","idempotency_key":"mission:b10be993-a4e0-4f5c-bd3c-965855d6668a:execute_mission:repair_mission_pr_handed_off_to_supervisor:current-generation","mission_step_id":"34ac0be8-2ffd-4022-b1fb-5fb4d044ae89","command_center_event_id":"b10be993-a4e0-4f5c-bd3c-965855d6668a"},{"id":"4d2c94f7-ceda-4630-8b8d-964a3acd78ec","source":"owner_authorized_full_backlog_cleanup","status":"recorded","payload":{"category":"platform_reliability","disposition":"superseded_execution_attempt","previousStatus":"blocked","sourcePreserved":true,"noCompletionClaim":true,"recoveryPortfolioId":"ebe6b5df-7f2a-1b6c-69a8-1ad811c9e759"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-11T16:14:39.646808+00:00","proof_gate":"source_objective_preserved_in_existing_mission_ledger","source_sha":null,"external_id":null,"receipt_type":"owner_backlog_disposition","idempotency_key":"owner-full-backlog-cleanup-20261011:16ed4d9d-fbe9-4546-8ff2-db39db9f025b","mission_step_id":null,"command_center_event_id":"16ed4d9d-fbe9-4546-8ff2-db39db9f025b"},{"id":"4d2f1a64-3db6-4f36-ab05-63b08a2a244b","source":"forgejo-runtime","status":"verified","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"success","frontend-cloudflare/live":"success"},"mainSha":"f616b90aa0081785db740a41d4e7c34d5ab037f4","missing":[],"pending":[],"required":["forgejo-main/source","forgejo-release/workflow","frontend-cloudflare/live"],"sourceSha":"f616b90aa0081785db740a41d4e7c34d5ab037f4","releaseState":"verified","sourceInMain":true,"compareStatus":"identical","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/740","runId":740,"status":"success","conclusion":null,"failedJobs":[]},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"766cfaa7-ac42-46c8-bbef-69d13268a29d","created_at":"2026-08-16T15:06:29.434681+00:00","proof_gate":"canonical_release_terminal_verified","source_sha":"f616b90aa0081785db740a41d4e7c34d5ab037f4","external_id":"forgejo-main-f616b90aa008","receipt_type":"canonical_release_status","idempotency_key":"mission:1f16f621-3abb-4e06-8d0e-1a745374395a:forgejo-release-status:f616b90aa0081785db740a41d4e7c34d5ab037f4:verified:forgejo-main/source=success|forgejo-release/workflow=success|frontend-cloudflare/live=success","mission_step_id":"a283860b-4dd7-4638-94d2-4c2c6939db57","command_center_event_id":"1f16f621-3abb-4e06-8d0e-1a745374395a"},{"id":"4d304124-be20-4fa8-9c25-beb71a563382","source":"durable-mission-ledger","status":"verified","payload":{"sourceSha":"eb51d2c10031bdfe42e8f39de014085943a719bc","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"outcome-1","satisfied":true,"statement":"Real PR refresh conflicts become a bounded corrective repair generation instead of generic retry or same-PR refresh loops.","proofConditionIds":["proof-production"]}],"satisfied":true,"constraints":[{"id":"same-pr-routine","satisfied":true,"statement":"Routine protected-main movement without semantic conflict must continue using the same PR refresh/re-gate path.","proofConditionIds":["proof-production"]},{"id":"preserve-safety","satisfied":true,"statement":"Preserve canonical Gate, deterministic failure blocking, dependency classification, durable PR lineage, and queue-hygiene preservation guarantees.","proofConditionIds":["proof-production"]},{"id":"capability-completeness","satisfied":true,"statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","proofConditionIds":["proof-production"]},{"id":"atomic-capability-lifecycle","satisfied":true,"statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","proofConditionIds":["proof-production"]}],"contractHash":"8f43952d3cc7f3ff1692dbaf1c710b01f3b69e934978c54660cbe47a0570a53c","releaseBound":true,"witnessBound":false,"visualRequested":false,"visualSatisfied":true,"conditionResults":[{"id":"proof-production","kind":"runtime","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":false,"releaseTargetStates":{"ccExecution":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["ccExecution"],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"migrationReleaseVerified":null,"releaseRequestContractHash":"8f43952d3cc7f3ff1692dbaf1c710b01f3b69e934978c54660cbe47a0570a53c"},"required":true,"satisfied":true}],"validationErrors":[],"pendingProofKinds":[],"activeReleaseTargets":["ccExecution"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-24T06:43:48.239863+00:00","proof_gate":"request_contract_terminal_verified","source_sha":"eb51d2c10031bdfe42e8f39de014085943a719bc","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:f1a8c3bb-671d-489f-8251-d31ae7b5ede8:request-contract:8f43952d3cc7f3ff1692dbaf1c710b01f3b69e934978c54660cbe47a0570a53c:eb51d2c10031bdfe42e8f39de014085943a719bc:verified:","mission_step_id":"024db456-427b-4d12-bccd-84911601a537","command_center_event_id":"f1a8c3bb-671d-489f-8251-d31ae7b5ede8"},{"id":"4d31303a-1f62-41d2-be79-97aae94c4bfb","source":"cc-execution","status":"blocked","payload":{"ok":false,"jobId":null,"phase":"implementation","branch":"ai/objective-first-repair-6889ffd608d2","reason":"existing_branch_without_open_pr_branch_diverged_or_unproven:ai/objective-first-repair-6889ffd608d2","status":"blocked","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.159-visual-witness-three-attempt-policy","prNumber":null,"terminal":false,"missionId":"6889ffd6-08d2-4815-8551-bbdd4d7562fa","operation":"execute_mission","proofGate":"repair_mission_execution_blocked","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":12117,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":0,"missionSetupMs":291,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":291,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":291,"repositoryMutationMs":12117,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":291,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"6889ffd6-08d2-4815-8551-bbdd4d7562fa"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1582,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-16T07:23:59.328026+00:00","proof_gate":"repair_mission_execution_blocked","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:6889ffd6-08d2-4815-8551-bbdd4d7562fa:execute_mission:repair_mission_execution_blocked:current-generation","mission_step_id":"8a59929e-552f-4f59-a1e8-b37a5254c057","command_center_event_id":"6889ffd6-08d2-4815-8551-bbdd4d7562fa"},{"id":"4d3182cc-53f4-4c5f-bd4e-99908ade4049","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in release.","nextAction":{"lane":"production-release-conductor","action":"reconcile_release","reason":"merged_source_requires_release_proof","automationAllowed":true,"ownerActionRequired":false},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"release\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"canonical_release_status\",\"status\":\"pending\",\"proofGate\":\"canonical_release_ancestry_pending\"},\"activeStep\":{\"key\":\"preflight\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"implementation\",\"status\":\"pending\",\"lane\":\"cc-execution\"},\"nextSafeAction\":{\"action\":\"reconcile_release\",\"lane\":\"production-release-conductor\",\"reason\":\"merged_source_requires_release_proof\",\"automationAllowed\":true,\"ownerActionRequired\":false},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"cc-execution\",\"nextAction\":\"reconcile_release\",\"recoveryOwner\":\"production-release-conductor\"},\"acceptance\":{\"total\":6,\"verified\":0,\"pending\":6,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[\"preflight\",\"implementation\",\"pull_request\",\"release\",\"runtime_proof\",\"visual_proof\"]},\"stall\":{\"stalled\":true,\"reason\":\"step_deadline_exceeded\",\"step\":\"release\",\"deadlineAt\":\"2026-08-05T18:13:13.064344+00:00\",\"recoveryAction\":\"reconcile_release\"},\"blocker\":null,\"terminal\":false,\"branch\":null,\"prNumber\":4058,\"sourceSha\":\"416e03f3dd0f0a709a6dc05f8676d6b4e88a4d5a\",\"deploymentId\":\"canonical-release-416e03f3dd0f\"}"},"tenant_id":"fe5cc9d9-c2fe-4062-84c7-a334663cd63c","created_at":"2026-10-03T21:40:40.404963+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:569db6d2-423e-4923-903d-869ef511f26b:owner-progress-heartbeat:119404242","mission_step_id":"73394132-0d64-413b-9f18-7f3bd8738670","command_center_event_id":"569db6d2-423e-4923-903d-869ef511f26b"},{"id":"4d32e5c0-ee9e-4a3b-9fd0-8797e95ba785","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":"ai/objective-first-repair-c87f43c02a42","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"executorlessWaitMs":0,"firstUsefulResultAt":null,"recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.64.0-platform-sidekick-intelligence","prNumber":null,"terminal":false,"missionId":"c87f43c0-2a42-4912-89e9-29e34ecfd71f","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":1504,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":542,"providerAuthMs":0,"ledgerPrepareMs":542,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":542,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":542,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /mission/execute again automatically with this same missionId without another owner prompt or workflow switch.","receiptRef":{"mode":"full","missionId":"c87f43c0-2a42-4912-89e9-29e34ecfd71f"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":5268,"likelyAffectedFiles":["config/capabilities/platform-sidekick-intelligence.json","config/platform-sidekick-intelligence.json","config/paul-owner-profile.json","supabase/functions/operator-respond/index.ts","supabase/functions/operator-respond/paul-memory.ts","src/components/godmode/LiveEditMode.tsx","src/__tests__/contracts/platform-sidekick-intelligence.contract.test.ts","src/__tests__/contracts/live-edit-sidekick-durable-memory.contract.test.ts",".forgejo/workflows/knocklaunch.yml"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-29T14:08:06.029606+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:c87f43c0-2a42-4912-89e9-29e34ecfd71f:execute_mission:repair_mission_synthesis_ready:current-generation","mission_step_id":"d4e84cd1-555b-4a6f-be75-767b90bc2d00","command_center_event_id":"c87f43c0-2a42-4912-89e9-29e34ecfd71f"},{"id":"4d35bb01-2e41-4fe1-b0f4-cca060f0ac60","source":"github-status","status":"pending","payload":{"failed":[],"states":{"canonical-production-release/verified":"pending"},"missing":["render-onrunner/real-user-canary"],"pending":["canonical-production-release/verified"],"required":["canonical-production-release/verified","render-onrunner/real-user-canary"],"sourceSha":"67d515c221e64915e70d0549d266d860526d7129","releaseState":"pending","exactConductorRun":{"id":31290802108,"status":"pending","headSha":"67d515c221e64915e70d0549d266d860526d7129","conclusion":null,"compareStatus":"identical","sourceMatches":true,"containsSourceSha":true,"reconciliationMode":null},"ccExecutionRuntimeProof":null},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-08-09T02:40:06.445085+00:00","proof_gate":"canonical_release_pending","source_sha":"67d515c221e64915e70d0549d266d860526d7129","external_id":"canonical-release-67d515c221e6","receipt_type":"canonical_release_status","idempotency_key":"mission:3c7dce8e-bc1e-48c9-af55-25861e5227cc:release-status:67d515c221e64915e70d0549d266d860526d7129:31290802108:pending:canonical-production-release/verified=pending|render-onrunner/real-user-canary=missing","mission_step_id":"a6785ecb-de18-416f-8729-45c7736e1ea7","command_center_event_id":"3c7dce8e-bc1e-48c9-af55-25861e5227cc"},{"id":"4d385749-8d7f-4597-939c-48ee46933f79","source":"cc-execution","status":"authorized","payload":{"paths":["config/control-plane-capabilities.json","workers/cc-execution/src/entrypoint-owner-status.js","workers/cc-execution/src/forgejo-provider.js","workers/cc-execution/src/index-mcp.js","workers/cc-execution/src/index-mission-control.js","workers/cc-execution/src/index-release-fast-lane.js","workers/cc-execution/src/version.js","workers/cc-execution/test/forgejo-read-pressure.test.js"],"reason":"Owner-authorized repair of recurring Forgejo provider timeout and repository-read pressure failures; re-freeze after canonical live proof.","baseSha":"b6af7ef22095b528b2f8a36606d29485fd39e738","issuedAt":1789021717778,"expiresAt":1789021897778,"missionId":"a04714d8-6261-46e9-8dd7-7ed0436221b2","authorizationId":"692ae0e7-9096-4696-b4f6-36d4e46c15ad","retryableWithinExactScope":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-10T06:28:38.251481+00:00","proof_gate":"control_plane_maintenance_scope_authorized","source_sha":"b6af7ef22095b528b2f8a36606d29485fd39e738","external_id":null,"receipt_type":"control_plane_maintenance_authorization","idempotency_key":"control-plane-maintenance-authorize:692ae0e7-9096-4696-b4f6-36d4e46c15ad","mission_step_id":"fc4bc6f0-4cbd-448a-99d0-7e87572c2d7a","command_center_event_id":"a04714d8-6261-46e9-8dd7-7ed0436221b2"},{"id":"4d3b6c03-19f6-46f2-bfa8-9bb2ff47da75","source":"forgejo","status":"waiting","payload":{"branch":"ai/objective-first-repair-285944eff62b","prNumber":3421,"nextAction":null,"mergeCommitSha":"8c63f5e74f4a0fc1d243af98dd9334dd90c06cfa","branchDeletedAfterMerge":true,"correctiveGenerationCreated":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-22T18:48:03.06826+00:00","proof_gate":"forgejo_merged_pr_is_authoritative_source_lineage","source_sha":"8c63f5e74f4a0fc1d243af98dd9334dd90c06cfa","external_id":"3421","receipt_type":"source_lineage_merged_pr_authoritative","idempotency_key":"mission:285944ef-f62b-4c50-a0be-04838efe26d6:merged-pr:3421:8c63f5e74f4a0fc1d243af98dd9334dd90c06cfa","mission_step_id":"4cb7248c-3510-4467-b4be-dcb852bf4054","command_center_event_id":"285944ef-f62b-4c50-a0be-04838efe26d6"},{"id":"4d3b9949-36d1-4b62-8399-bdd77a139b68","source":"forgejo-exact-source","status":"verified","payload":{"sourceSha":"48f34865ee086bbd9948476c8de9d13e21b52953","repository":"noel/KnockLaunchOS","repositoryProofs":[{"id":"gate-proof","path":null,"proof":"forgejo_merged_pr_exact_head_gate","headSha":"121bf6480722251b987b45342249a9da82702834","prNumber":3293,"gateRunId":10323,"gateContext":"KnockLaunch Gate / KnockLaunch Gate (pull_request)","expectedText":null,"gateTestPath":"workers/cc-execution/test/release-orchestration-invariants.test.js","gateTargetUrl":"/noel/KnockLaunchOS/actions/runs/10323/jobs/1","gateTestProof":"successful_exact_head_gate_log_contains:workers/cc-execution/test/release-orchestration-invariants.test.js","gateTestPassed":true,"mergeCommitSha":"48f34865ee086bbd9948476c8de9d13e21b52953","gateTestLogLine":"2026-09-20T15:15:50.9131965Z Gate regression: executing workers/cc-execution/test/release-orchestration-invariants.test.js","gateTestExecuted":true}],"requestContractHash":"5b3dfc30e52d7a60ecf29b052bb9438bc1dcb7114cb58749dadd4fde75d6c0a7","namedGateEvidenceReceiptVersion":":named-gate-evidence-v1"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-20T15:17:07.787965+00:00","proof_gate":"request_contract_repository_verified","source_sha":"48f34865ee086bbd9948476c8de9d13e21b52953","external_id":null,"receipt_type":"request_contract_repository_status","idempotency_key":"mission:41d4f2de-c853-49db-a48d-d373298577b0:request-contract-repository:5b3dfc30e52d7a60ecf29b052bb9438bc1dcb7114cb58749dadd4fde75d6c0a7:48f34865ee086bbd9948476c8de9d13e21b52953:named-gate-evidence-v1","mission_step_id":"774cc44f-8633-47ca-855f-43e4b19e2d8a","command_center_event_id":"41d4f2de-c853-49db-a48d-d373298577b0"},{"id":"4d3bfa52-2c38-4f1d-9165-22287bfedca8","source":"forgejo-runtime","status":"failed","payload":{"failed":["render-onrunner/runtime-proof"],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"success","render-onrunner/runtime-proof":"failure"},"mainSha":"710b363912911cd6ef14113f1c6ebded8c252c84","missing":[],"pending":[],"required":["forgejo-main/source","forgejo-release/workflow","render-onrunner/runtime-proof"],"sourceSha":"710b363912911cd6ef14113f1c6ebded8c252c84","releaseState":"failed","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":false,"onrunner":true,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"onrunner":"success"},"requestContractHash":"06a04bbf47bcd2e19b8071570f08c99ce04b5d0ba2fdead9b89fea7125d761aa","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/11512","runId":11512,"status":"running","sourceSha":"710b363912911cd6ef14113f1c6ebded8c252c84","conclusion":null,"failedJobs":[],"diagnostics":null,"exactSource":true,"targetStates":{"onrunner":"success"},"targetJobCount":7,"observedTargetStates":{"onrunner":"pending"}},"onrunnerRuntimeProof":{"reason":"render_onrunner_source_mismatch","hostedUrl":"https://knocklaunchcrm.onrender.com","brokerReady":true,"exactSource":false,"healthStatus":200,"runtimeReady":true,"liveSourceSha":"e1efa7ac76f792ce93365b88233ae35637ab2194","runnerVersion":"onrunner-e1efa7ac76f7","expectedSourceSha":"710b363912911cd6ef14113f1c6ebded8c252c84"},"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"d60e3c27-73ed-4a5f-a49b-c37636455daf","created_at":"2026-09-24T15:14:34.904403+00:00","proof_gate":"canonical_release_terminal_failed","source_sha":"710b363912911cd6ef14113f1c6ebded8c252c84","external_id":"forgejo-main-710b36391291","receipt_type":"canonical_release_status","idempotency_key":"mission:0618a5ff-b7bd-4db6-a975-5b9689bf2c05:forgejo-release-status:710b363912911cd6ef14113f1c6ebded8c252c84:failed:forgejo-main/source=success|forgejo-release/workflow=success|render-onrunner/runtime-proof=failure","mission_step_id":"fa619a83-3c4b-438e-8822-e8e730fcb2ef","command_center_event_id":"0618a5ff-b7bd-4db6-a975-5b9689bf2c05"},{"id":"4d3e186f-17cb-47f6-b9a8-a1ec7ce018df","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/build-my-demo-branded-workspace-info-mailbox-20260830","reason":"The operation was aborted due to timeout","status":"retryable","metrics":{"receiptBytes":8458,"releaseCount":0,"toolCallCount":2,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.56.5-premium-motion-source-targets","prNumber":1164,"terminal":false,"missionId":"dab2c70d-e1f3-4a79-8ad1-9a12db7b0664","operation":"execute_mission","proofGate":"canonical_release_transport_retryable","sourceSha":null,"timingsMs":{"handlerMs":17773,"prReadinessMs":666,"approvedPlanMs":0,"missionSetupMs":1221,"shipAndProveMs":17085},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"dab2c70d-e1f3-4a79-8ad1-9a12db7b0664"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1056,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-30T22:51:36.014724+00:00","proof_gate":"canonical_release_transport_retryable","source_sha":null,"external_id":"1164","receipt_type":"execute_mission","idempotency_key":"mission:dab2c70d-e1f3-4a79-8ad1-9a12db7b0664:execute_mission:canonical_release_transport_retryable:current-generation","mission_step_id":"265b3a39-c444-4827-a0ec-348d4a7f8ef6","command_center_event_id":"dab2c70d-e1f3-4a79-8ad1-9a12db7b0664"},{"id":"4d3e4557-f8ab-4622-a869-15cf37d0f4ee","source":"cc-execution","status":"blocked","payload":{"ok":false,"jobId":null,"phase":"objective_received","branch":null,"reason":"file_write_content_required_use_source_targets","status":"blocked","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.47.2-release-lineage-compare","prNumber":null,"terminal":false,"missionId":"2c6328ab-0a92-439a-84c6-95464cb37296","operation":"execute_mission","proofGate":"repair_mission_execution_blocked","sourceSha":null,"timingsMs":null,"nextAction":null,"receiptRef":{"mode":"full","missionId":"2c6328ab-0a92-439a-84c6-95464cb37296"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":5668,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-08-18T16:50:05.531849+00:00","proof_gate":"repair_mission_execution_blocked","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:2c6328ab-0a92-439a-84c6-95464cb37296:execute_mission:repair_mission_execution_blocked","mission_step_id":"221eed8b-9bf4-4f50-995f-ca8e5af4d2c1","command_center_event_id":"2c6328ab-0a92-439a-84c6-95464cb37296"},{"id":"4d4007ac-2d12-4dcf-8fc9-eab487755e53","source":"forgejo-runtime","status":"failed","payload":{"failed":["forgejo-release/workflow","frontend-cloudflare/live"],"states":{"forgejo-main/source":"pending","forgejo-release/workflow":"failure","frontend-cloudflare/live":"failure"},"mainSha":"bb0884092af6717b5a4bfe983ecc076da167a1dd","missing":[],"pending":["forgejo-main/source"],"required":["forgejo-main/source","forgejo-release/workflow","frontend-cloudflare/live"],"sourceSha":"5c1842708b2b517610873b025a95dc8926473827","releaseState":"failed","sourceInMain":false,"compareStatus":null,"forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/1180","runId":1180,"status":"cancelled","conclusion":null,"failedJobs":[{"id":7548,"name":"Release frontend","status":"cancelled","conclusion":null,"failedSteps":[]}],"diagnostics":{"runId":1180,"logTail":["2026-08-17T21:34:36.9932531Z [2mdist/[22m[2massets/[22m[36museContactLinks-BgHPC7tl.js                               [39m[1m[2m  190.07 kB[22m[1m[22m","2026-08-17T21:34:36.9932750Z [2mdist/[22m[2massets/[22m[36mvendor-xlsx-DVZw9fM0.js                                   [39m[1m[2m  331.58 kB[22m[1m[22m","2026-08-17T21:34:36.9932938Z [2mdist/[22m[2massets/[22m[36mSignedAgreementsViewer-BoQ0Lcak.js                        [39m[1m[2m  376.22 kB[22m[1m[22m","2026-08-17T21:34:36.9933178Z [2mdist/[22m[2massets/[22m[36mvendor-charts-BPEMQSIj.js                                 [39m[1m[2m  426.80 kB[22m[1m[22m","2026-08-17T21:34:36.9933406Z [2mdist/[22m[2massets/[22m[36mConversionWorkflowPage-BHDsTZ0b.js                        [39m[1m[2m  439.10 kB[22m[1m[22m","2026-08-17T21:34:36.9933790Z [2mdist/[22m[2massets/[22m[36mhtml2pdf-BDOTTi25.js                                      [39m[1m[33m  637.97 kB[39m[22m","2026-08-17T21:34:36.9934046Z [2mdist/[22m[2massets/[22m[36mPADocumentVault-iM8h3z_F.js                               [39m[1m[33m  705.65 kB[39m[22m","2026-08-17T21:34:36.9934237Z [2mdist/[22m[2massets/[22m[36mvendor-pdf-46qhKD_Y.js                                    [39m[1m[33m  817.04 kB[39m[22m","2026-08-17T21:34:36.9934487Z [2mdist/[22m[2massets/[22m[36mheic2any-CnI2s7pZ.js                                      [39m[1m[33m1,352.85 kB[39m[22m","2026-08-17T21:34:36.9934789Z [2mdist/[22m[2massets/[22m[36mvendor-mapbox-BhKHIU9f.js                                 [39m[1m[33m1,621.94 kB[39m[22m","2026-08-17T21:34:36.9934981Z [2mdist/[22m[2massets/[22m[36mmain-DLgkLdMy.js                                          [39m[1m[33m2,545.19 kB[39m[22m","2026-08-17T21:34:36.9935202Z [33m","2026-08-17T21:34:36.9935379Z (!) Some chunks are larger than 500 kB after minification. Consider:","2026-08-17T21:34:36.9939517Z - Using dynamic import() to code-split the application","2026-08-17T21:34:36.9939852Z - Use build.rollupOptions.output.manualChunks to improve chunking: https://rollupjs.org/configuration-options/#output-manualchunks","2026-08-17T21:34:36.9940287Z - Adjust chunk size limit for this warning via build.chunkSizeWarningLimit.[39m","2026-08-17T21:34:36.9940954Z [32m✓ built in 1m 55s[39m","2026-08-17T21:34:38.7285471Z ","2026-08-17T21:34:38.7286949Z [36mPWA v1.1.0[39m","2026-08-17T21:34:38.7287231Z Building [35msrc/sw.ts[39m service worker (\"[35mes[39m\" format)...","2026-08-17T21:34:38.7389567Z [36mvite v5.4.19 [32mbuilding for production...[36m[39m","2026-08-17T21:34:38.7494305Z transforming...","2026-08-17T21:34:38.7664033Z [32m✓[39m 1 modules transformed.","2026-08-17T21:34:38.7817646Z rendering chunks...","2026-08-17T21:34:38.7856028Z computing gzip size...","2026-08-17T21:34:38.7899404Z [2mdist/[22m[36msw.mjs  [39m[1m[2m1.91 kB[22m[1m[22m[2m │ gzip: 1.01 kB[22m","2026-08-17T21:34:38.7903510Z [32m✓ built in 50ms[39m","2026-08-17T21:34:39.1524888Z ","2026-08-17T21:34:39.1525609Z [36mPWA v1.1.0[39m","2026-08-17T21:34:39.1525852Z mode      [35minjectManifest[39m","2026-08-17T21:34:39.1526033Z format:   [35mes[39m","2026-08-17T21:34:39.1526275Z precache  [32m389 entries[39m [2m(19793.73 KiB)[22m","2026-08-17T21:34:39.1526505Z files generated","2026-08-17T21:34:39.1526659Z   [2mdist/sw.js[22m","2026-08-17T21:34:39.7471163Z {\"ok\":true,\"deploymentId\":\"cloudflare-native-5c1842708b2b-forgejo-\",\"sourceSha\":\"5c1842708b2b517610873b025a95dc8926473827\",\"assetsPreserved\":0}","2026-08-17T21:34:39.8534297Z {\"ok\":true,\"proofGate\":\"cloudflare_native_artifact_guard_verified\",\"htmlBytes\":615,\"jsFiles\":362,\"cssFiles\":9,\"totalJsBytes\":16245433,\"totalCssBytes\":820494,\"htmlAssetRefs\":4}","2026-08-17T21:34:40.0286435Z ⚙️ [runner]: context canceled\\nunable to copy \"/var/run/act/workflow/SUMMARY.md\" from container to host: Get \"http://%2Fvar%2Frun%2Fdocker.sock/v1.52/containers/d58c46dca1cd1b49f60d7fb16014bd05dd7b2dfef707aaba651a90c68205e7a2/archive?path=%2Fvar%2Frun%2Fact%2Fworkflow%2FSUMMARY.md\": context canceled\\nunable to copy \"/var/run/act/workflow/pathcmd.txt\" from container to host: Get \"http://%2Fvar%2Frun%2Fdocker.sock/v1.52/containers/d58c46dca1cd1b49f60d7fb16014bd05dd7b2dfef707aaba651a90c68205e7a2/archive?path=%2Fvar%2Frun%2Fact%2Fworkflow%2Fpathcmd.txt\": context canceled","2026-08-17T21:34:40.7491408Z 🏁  Job failed","2026-08-17T21:34:46.2223044Z context canceled",""],"proofGate":"forgejo_action_run_logs_verified","truncated":true,"failureLines":["2026-08-17T21:32:41.4407148Z {\"ok\":true,\"proofGate\":\"cloudflare_native_public_env_verified\",\"requiredVariableNames\":[\"VITE_SUPABASE_URL\",\"VITE_SUPABASE_PUBLISHABLE_KEY\"],\"optionalVariableNames\":[\"VITE_MAPBOX_PUBLIC_TOKEN\",\"VITE_PAYMENTS_CLIENT_TOKEN\"],\"explicitOverrideCount\":0,\"publicDefaultCount\":2,\"recoveredCount\":0,\"optionalMissingCount\":2,\"assetsInspected\":0,\"bytesInspected\":0,\"valuesExposed\":false}","2026-08-17T21:34:39.8534297Z {\"ok\":true,\"proofGate\":\"cloudflare_native_artifact_guard_verified\",\"htmlBytes\":615,\"jsFiles\":362,\"cssFiles\":9,\"totalJsBytes\":16245433,\"totalCssBytes\":820494,\"htmlAssetRefs\":4}","2026-08-17T21:34:40.7491408Z 🏁  Job failed"]},"fingerprint":"cancelled|release frontend|2026-08-17t21:32:41.4407148z {\"ok\":true,\"proofgate\":\"cloudflare_native_public_env_verified\",\"requiredvariablenames\":[\"vite_supabase_url\",\"vite_supabase_publishable_key\"],\"optionalvariablenames\":[\"vite_mapbox_public_token\",\"vite_payments_client_token\"],\"explicitoverridecount\":0,\"publicdefaultcount\":2,\"recoveredcount\":0,\"optionalmissingcount\":2,\"assetsinspected\":0,\"bytesinspected\":0,\"valuesexposed\":false}|2026-08-17t21:34:39.8534297z {\"ok\":true,\"proofgate\":\"cloudflare_native_artifact_guard_verified\",\"htmlbytes\":615,\"jsfiles\":362,\"cssfiles\":9,\"totaljsbytes\":16245433,\"totalcssbytes\":820494,\"htmlassetrefs\":4}|2026-08-17t21:34:40.7491408z 🏁  job failed","failureClass":"frontend_release_config_failure","safeAutoRetry":false},"onrunnerRuntimeProof":null,"releaseSourceVerified":false,"ccExecutionRuntimeProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"69c86c8d-c737-439a-8f30-3246af0b3ad1","created_at":"2026-08-17T22:09:00.348666+00:00","proof_gate":"canonical_release_terminal_failed","source_sha":"5c1842708b2b517610873b025a95dc8926473827","external_id":"forgejo-main-5c1842708b2b","receipt_type":"canonical_release_status","idempotency_key":"mission:13eb10a9-0e53-482c-8120-7f481b639777:forgejo-release-status:5c1842708b2b517610873b025a95dc8926473827:failed:forgejo-main/source=pending|forgejo-release/workflow=failure|frontend-cloudflare/live=failure","mission_step_id":"0c51b117-ce6a-4088-b333-7d782ee0c851","command_center_event_id":"13eb10a9-0e53-482c-8120-7f481b639777"},{"id":"4d408c07-3a4b-4665-9fd3-03f081e93092","source":"cc-execution","status":"source_resolution_required","payload":{"ok":true,"jobId":null,"phase":"implementation","branch":"ai/objective-first-repair-ea00007f4122","reason":null,"status":"source_resolution_required","metrics":{"receiptBytes":13192,"releaseCount":0,"toolCallCount":2,"repeatedCallCount":0,"executorlessWaitMs":1249,"firstUsefulResultAt":"2026-09-24T22:26:19.323Z","recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.58.264-paul-optional-runner-topology","prNumber":null,"terminal":false,"missionId":"ea00007f-4122-4aac-b26f-c07765269a86","operation":"execute_mission","proofGate":"repair_mission_source_resolution_required","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":811,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":294,"providerAuthMs":0,"ledgerPrepareMs":294,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":294,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":294,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"Supply exact sourceTargets on the same mission; planner guesses cannot replace missing mission scope.","receiptRef":{"mode":"full","missionId":"ea00007f-4122-4aac-b26f-c07765269a86"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1174,"likelyAffectedFiles":[],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-24T22:26:26.670829+00:00","proof_gate":"repair_mission_source_resolution_required","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:ea00007f-4122-4aac-b26f-c07765269a86:execute_mission:repair_mission_source_resolution_required:current-generation","mission_step_id":"d374b32e-5ed7-4d02-ba3d-5e6fe5d41d92","command_center_event_id":"ea00007f-4122-4aac-b26f-c07765269a86"},{"id":"4d422568-d823-489f-98c2-67bb54054776","source":"durable-mission-ledger","status":"pending","payload":{"sourceSha":"ea87fc279adffac76645573b11534e8e98376427","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"outcome-1","satisfied":false,"statement":"Restore and harden the 321 Auto Unlock public-site hero video immediately. Current main c2c52268 has AutoUnlockPublic rendering the hero video only through brand.videoUrl; the canonical approved asset is AUTO_UNLOCK_VIDEO_URL = https://ymntrajfubicyxwwdxxa.supabase.co/storage/v1/object/public/generated-media/321-auto-unlock/Videos/321AutoUnlockVideo.mp4. Preserve the full live public site and all form behavior. Make the hero video source fail-safe so an empty/stale RPC brand value cannot blank the video: use the canonical AUTO_UNLOCK_VIDEO_URL as the render fallback and preserve autoplay, loop, muted, playsInline, preload. Add a focused frontend regression asserting the video element retains the canonical fallback. One frontend branch, one PR, canonical Gate, squash merge, Cloudflare frontend release, then verify the public 321 page serves the video element/source. Do not touch the private workspace or witness machinery in this repair.","proofConditionIds":["proof-production","proof-visual"]}],"satisfied":false,"constraints":[{"id":"visual-content-truth","satisfied":false,"statement":"Do not present invented names, metrics, prices, dates, services, testimonials, credentials, customer records, or other unknown business facts as real. Omit unknowns or mark them clearly as placeholder/example content.","proofConditionIds":["proof-production","proof-visual"]},{"id":"tenant-visual-isolation","satisfied":false,"statement":"Visual work is isolated to 321-auto-unlock. Do not import another tenant's logo, colors, imagery, copy, shell, customer data, business facts, or visual identity unless explicitly requested.","proofConditionIds":["proof-production","proof-visual"]},{"id":"reference-visual-fidelity","satisfied":false,"statement":"The approved reference owns the material visual composition: hierarchy, major geometry, typography scale, spacing rhythm, image placement/crop, color treatment, radii, shadows/glow, and overall density. Material deviation is a failed visual acceptance, not a stylistic reinterpretation.","proofConditionIds":["proof-visual"]},{"id":"responsive-visual-continuity","satisfied":false,"statement":"Responsive adaptation may reflow for the target viewport, but it must preserve information hierarchy, branding, functionality, and design language. It must not invent a second design.","proofConditionIds":["proof-visual"]},{"id":"reference-visual-authority","satisfied":false,"statement":"The supplied or approved reference visual is immutable acceptance evidence. Generating another mockup, image, or concept cannot satisfy this implementation request; completion requires source implementation, deployment, and reference-matched visual proof.","proofConditionIds":["proof-visual"]},{"id":"capability-completeness","satisfied":true,"statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","proofConditionIds":["proof-production"]},{"id":"atomic-capability-lifecycle","satisfied":true,"statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","proofConditionIds":["proof-production"]}],"contractHash":"8b57797af86459e711e1bfb4e9a77a66e6dfe793f0e31f182ab1a44c01bef43a","releaseBound":true,"witnessBound":false,"visualRequested":true,"visualSatisfied":false,"conditionResults":[{"id":"proof-production","kind":"runtime","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":false,"releaseTargetStates":{"frontend":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["frontend"],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"migrationReleaseVerified":null,"releaseRequestContractHash":"8b57797af86459e711e1bfb4e9a77a66e6dfe793f0e31f182ab1a44c01bef43a"},"required":true,"satisfied":true},{"id":"proof-visual","kind":"visual","evidence":{"modeBound":true,"claimBound":false,"routeBound":false,"witnessMode":null,"witnessRoute":null,"currentSourceSha":"ea87fc279adffac76645573b11534e8e98376427","witnessSourceSha":null,"verificationState":null,"witnessRequestContractHash":null},"required":true,"satisfied":false}],"validationErrors":[],"pendingProofKinds":["visual"],"activeReleaseTargets":["frontend"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"d60e3c27-73ed-4a5f-a49b-c37636455daf","created_at":"2026-09-24T15:49:20.113088+00:00","proof_gate":"request_contract_pending","source_sha":"ea87fc279adffac76645573b11534e8e98376427","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:d4bc57cb-5960-4e02-b0b6-355916d520c0:request-contract:8b57797af86459e711e1bfb4e9a77a66e6dfe793f0e31f182ab1a44c01bef43a:ea87fc279adffac76645573b11534e8e98376427:pending:visual","mission_step_id":"0548b891-2fd0-4f21-967d-e1e7d8ec4ea5","command_center_event_id":"d4bc57cb-5960-4e02-b0b6-355916d520c0"},{"id":"4d42d151-c542-498f-945e-396f80c903ef","source":"cc-execution","status":"waiting","payload":{"body":{"ship":true,"files":[],"branch":"ai/objective-first-repair-3328d67a5c3c","writes":[],"patches":[],"version":1,"approved":true,"missionId":"3328d67a-5c3c-458e-b3b1-865e5e4f8a9f","objective":"Continue the same frontend release repair on current protected main. Apply only three exact single-line edits to the deployer so candidate preview URL is optional and exact zero-traffic candidate canary requests use the production proof domains with Cloudflare-Workers-Version-Overrides. Preserve all prior mission constraints and request contract. Fail closed if any anchor is absent.","repository":"noel/KnockLaunchOS","ownerApproved":true,"releaseIntent":null,"sourceTargets":["scripts/cloudflare-native-version-deploy.mjs"],"anchored_edits":[{"path":"scripts/cloudflare-native-version-deploy.mjs","edits":[{"new_content":"","old_content":"    if (!receipt.previewUrl) throw new Error('wrangler_version_upload_preview_url_missing');"},{"new_content":"  const canaryDomains = proofDomains;","old_content":"  const canaryDomains = useOverride ? [candidateVersionProofUrl(candidatePreviewUrl, candidateVersionId)] : proofDomains;"},{"new_content":"      pragma: 'no-cache',\n      ...(useOverride ? { [VERSION_OVERRIDE_HEADER]: `${WORKER_NAME}=\"${candidateVersionId}\"` } : {}),","old_content":"      pragma: 'no-cache',"}]}],"implementation":{"files":[],"writes":[]},"requestContract":null,"repairGeneration":null,"executionEnvelope":{"ship":true,"version":1,"approved":true,"missionId":"3328d67a-5c3c-458e-b3b1-865e5e4f8a9f","ownerApproved":true,"releaseIntent":null,"sourceTargets":["scripts/cloudflare-native-version-deploy.mjs"],"requestContract":null,"repairGeneration":null,"proofRequirements":null,"controlPlaneUnfreeze":false,"controlPlaneMaintenance":false,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":null},"proofRequirements":null,"controlPlaneUnfreeze":false,"durableMutationResume":true,"controlPlaneMaintenance":false,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":null},"recovery":false,"fingerprint":"183f27215ae9ade62afe0887057a1d692d345e6b6cecad11b15ac867a112bc28","replayCount":0,"serializedBytes":2017},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-30T03:56:25.674182+00:00","proof_gate":"repository_mutation_intent_persisted","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent","idempotency_key":"mission:3328d67a-5c3c-458e-b3b1-865e5e4f8a9f:repository-mutation-intent:183f27215ae9ade62afe0887057a1d692d345e6b6cecad11b15ac867a112bc28:0","mission_step_id":"600787f7-c9fe-4317-aaa1-9f1eb885c085","command_center_event_id":"3328d67a-5c3c-458e-b3b1-865e5e4f8a9f"},{"id":"4d438d75-461e-441d-9ea6-abdd8c26b3ab","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"pending","supabase-migrations/live":"pending","supabase-edge-production/live":"pending"},"mainSha":"e26fee174b0b3c2a7f49e25aa72bccac89e26f1a","missing":[],"pending":["forgejo-release/workflow","supabase-edge-production/live","supabase-migrations/live"],"required":["forgejo-main/source","forgejo-release/workflow","supabase-edge-production/live","supabase-migrations/live"],"sourceSha":"e26fee174b0b3c2a7f49e25aa72bccac89e26f1a","releaseState":"pending","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":false,"onrunner":false,"migrations":true,"ccExecution":false,"supabaseEdge":true,"edgeFunctionSlugs":[]},"releaseTargetStates":{"migrations":"pending","supabaseEdge":"pending"},"requestContractHash":"259148b012728cc8dae0444b1018165c45fdb11252339e4f42daabec26168b01","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/8503","runId":8503,"status":"running","sourceSha":"e26fee174b0b3c2a7f49e25aa72bccac89e26f1a","conclusion":null,"failedJobs":[],"diagnostics":null,"exactSource":true,"targetStates":{"migrations":"pending","supabaseEdge":"pending"},"targetJobCount":7,"observedTargetStates":{"migrations":"pending","supabaseEdge":"pending"}},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-15T20:05:43.491755+00:00","proof_gate":"canonical_release_pending","source_sha":"e26fee174b0b3c2a7f49e25aa72bccac89e26f1a","external_id":"forgejo-main-e26fee174b0b","receipt_type":"canonical_release_status","idempotency_key":"mission:f523f137-8a12-457b-9f00-23f28a089461:forgejo-release-status:e26fee174b0b3c2a7f49e25aa72bccac89e26f1a:pending:forgejo-main/source=success|forgejo-release/workflow=pending|supabase-edge-production/live=pending|supabase-migrations/live=pending","mission_step_id":"32e9ec5b-f7ea-4162-8416-5b48b34c4c39","command_center_event_id":"f523f137-8a12-457b-9f00-23f28a089461"},{"id":"4d499698-de3a-4f9f-8e01-a5d2d83bf4a7","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"pending","cc-execution/runtime-proof":"pending"},"mainSha":"fede15239b9eb3ece9fc6b4b1fbfcb939089d357","missing":[],"pending":["forgejo-release/workflow","cc-execution/runtime-proof"],"required":["forgejo-main/source","forgejo-release/workflow","cc-execution/runtime-proof"],"sourceSha":"fede15239b9eb3ece9fc6b4b1fbfcb939089d357","releaseState":"pending","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":false,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"ccExecution":"pending"},"requestContractHash":"c439b677b036fcc5cf58657e4317377d9dc133ec980262f4a5094484b0f441e5","forgejoWorkflowProof":{"runId":14183,"source":"signed_push_receipt","status":"running","results":{},"conclusion":"running","targetStates":{"ccExecution":"pending"},"targetJobCount":7,"observedTargetStates":{"ccExecution":"pending"}},"releaseSourceVerified":true,"ccExecutionRuntimeProof":{"liveSha":"d40e23c5836f8d445b329b4841b3905a23ea3c62","deploymentId":"forgejo-main-d40e23c5836f8d445b329b4841b3905a23ea3c62","compareStatus":null,"identitySource":"local_build_metadata","runtimeVersion":"1.64.46-connection-research-human-readable-unknowns","containsSourceSha":false},"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-02T01:11:13.270339+00:00","proof_gate":"canonical_release_pending","source_sha":"fede15239b9eb3ece9fc6b4b1fbfcb939089d357","external_id":"forgejo-main-fede15239b9e","receipt_type":"canonical_release_status","idempotency_key":"mission:e71999a8-67bb-4305-a585-836d7e42d807:forgejo-release-status:fede15239b9eb3ece9fc6b4b1fbfcb939089d357:pending:forgejo-main/source=success|forgejo-release/workflow=pending|cc-execution/runtime-proof=pending","mission_step_id":"f0108d5b-3348-429d-b37c-93d41c5407f6","command_center_event_id":"e71999a8-67bb-4305-a585-836d7e42d807"},{"id":"4d4bcab3-dbb0-400c-818d-1a904c282710","source":"durable-mission-ledger","status":"pending","payload":{"sourceSha":"15f689b357e9a63bbe87382e00ced3640d8bc4a7","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"outcome-actions-detection","satisfied":false,"statement":"The Forgejo control plane must not report healthy when the externally reachable KnockLaunchOS Actions-runs API is returning 5xx, timing out, or failing authentication while `/api/healthz` still passes.","proofConditionIds":["proof-repository","proof-control-plane-runtime"]},{"id":"outcome-self-heal","satisfied":false,"statement":"After the existing consecutive degradation threshold, an external Actions-only brownout queues the existing allowlisted Forgejo recovery path when the signed host watchdog still proves base health; existing host restart cooldown and hourly budgets remain authoritative.","proofConditionIds":["proof-repository","proof-control-plane-runtime","proof-host-runtime"]},{"id":"outcome-no-false-hairpin","satisfied":false,"statement":"The host-local watchdog does not use the host-to-public-Cloudflare Actions hairpin as a restart signal and retains its proven bounded base-health probe.","proofConditionIds":["proof-repository","proof-host-runtime"]},{"id":"outcome-live","satisfied":true,"statement":"After release and host refresh, cc-execution self-heal is healthy, the signed host heartbeat is healthy, and a live authenticated KnockLaunchOS Actions-runs read succeeds.","proofConditionIds":["proof-control-plane-runtime","proof-host-runtime","proof-actions-runtime"]}],"satisfied":false,"constraints":[{"id":"constraint-budgets","satisfied":false,"statement":"Preserve the existing automatic, emergency, and operator Forgejo restart cooldown/hourly budgets and do not add a second restart mechanism.","proofConditionIds":["proof-repository"]},{"id":"constraint-scope","satisfied":false,"statement":"Use the same repair mission corrective generation and deploy only cc-execution plus the Forgejo host-agent refresh affected by this repair.","proofConditionIds":["proof-repository"]}],"contractHash":"7042bcffe001ffb92db181389e5fd22674220b1fc1f484941a9800a82f8d9ff2","releaseBound":true,"witnessBound":false,"visualRequested":false,"visualSatisfied":true,"conditionResults":[{"id":"proof-repository","kind":"repository","evidence":{"repositoryProofGate":null,"requestContractHash":"7042bcffe001ffb92db181389e5fd22674220b1fc1f484941a9800a82f8d9ff2","repositoryProofStatus":"required","repositoryProofSourceSha":null},"required":true,"satisfied":false},{"id":"proof-control-plane-runtime","kind":"runtime","evidence":{"releaseState":"verified","activeReleaseTargets":["ccExecution"],"releaseRequestContractHash":"7042bcffe001ffb92db181389e5fd22674220b1fc1f484941a9800a82f8d9ff2"},"required":true,"satisfied":true},{"id":"proof-host-runtime","kind":"runtime","evidence":{"releaseState":"verified","activeReleaseTargets":["ccExecution"],"releaseRequestContractHash":"7042bcffe001ffb92db181389e5fd22674220b1fc1f484941a9800a82f8d9ff2"},"required":true,"satisfied":true},{"id":"proof-actions-runtime","kind":"runtime","evidence":{"releaseState":"verified","activeReleaseTargets":["ccExecution"],"releaseRequestContractHash":"7042bcffe001ffb92db181389e5fd22674220b1fc1f484941a9800a82f8d9ff2"},"required":true,"satisfied":true}],"validationErrors":[],"pendingProofKinds":["repository"],"activeReleaseTargets":["ccExecution"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":2},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-06T18:25:20.55956+00:00","proof_gate":"request_contract_pending","source_sha":"15f689b357e9a63bbe87382e00ced3640d8bc4a7","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:eefb30a0-f136-4476-a59c-0e23c11e6147:request-contract:7042bcffe001ffb92db181389e5fd22674220b1fc1f484941a9800a82f8d9ff2:15f689b357e9a63bbe87382e00ced3640d8bc4a7:pending:repository","mission_step_id":"54833ffa-19b0-474a-8225-b84f57a2793c","command_center_event_id":"eefb30a0-f136-4476-a59c-0e23c11e6147"},{"id":"4d4d54d3-ee46-45d1-b493-31fcfc8902b0","source":"cc-execution","status":"corrective_generation_required","payload":{"ok":true,"jobId":null,"phase":"implementation","branch":"ai/objective-first-repair-8fab9106a8de","reason":"refresh_conflict_requires_corrective_generation","status":"corrective_generation_required","metrics":{"receiptBytes":177352,"releaseCount":0,"toolCallCount":72,"repeatedCallCount":39,"executorlessWaitMs":5072495,"firstUsefulResultAt":"2026-09-28T14:21:48.654Z","recoveryAttemptCount":8,"ownerInterruptionCount":0},"version":null,"prNumber":4005,"terminal":false,"missionId":"8fab9106-a8de-4203-a8a4-2e3f007112f9","operation":"automatic_mission_resume","proofGate":"repair_mission_refresh_conflict_requires_corrective_generation","sourceSha":null,"timingsMs":{"prReadinessMs":3161,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Create exactly one fresh repair generation from current main under the same request contract; preserve this conflicted PR as evidence until the corrective generation proves preservation.","receiptRef":{"mode":"full","missionId":"8fab9106-a8de-4203-a8a4-2e3f007112f9"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1776,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-28T15:42:43.557305+00:00","proof_gate":"repair_mission_refresh_conflict_requires_corrective_generation","source_sha":null,"external_id":"4005","receipt_type":"automatic_mission_resume","idempotency_key":"mission:8fab9106-a8de-4203-a8a4-2e3f007112f9:automatic-mission-resume:4005:repair_mission_refresh_conflict_requires_corrective_generation","mission_step_id":"1507603d-0981-43df-a650-1d30f35b881f","command_center_event_id":"8fab9106-a8de-4203-a8a4-2e3f007112f9"},{"id":"4d5103b6-e0fc-4d4f-b311-eb6b568e7877","source":"cc-execution","status":"release_verification_pending","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":null,"reason":null,"status":"release_verification_pending","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.47.10-forgejo-merge-authority","prNumber":445,"terminal":false,"missionId":"19d6de40-6ebc-4be9-a55e-2c953ca5289c","operation":"ship_and_prove","proofGate":"ship_and_prove_release_pending","sourceSha":"4c4f05c6945e8339f51d25daffa9636687b7993a","timingsMs":null,"nextAction":null,"receiptRef":{"mode":"full","missionId":"19d6de40-6ebc-4be9-a55e-2c953ca5289c"},"performance":null,"deploymentId":"forgejo-main-4c4f05c6945e","workflowRunId":1555,"releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":6764,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-19T20:52:41.04197+00:00","proof_gate":"ship_and_prove_release_pending","source_sha":"4c4f05c6945e8339f51d25daffa9636687b7993a","external_id":"forgejo-main-4c4f05c6945e","receipt_type":"ship_and_prove","idempotency_key":"mission:19d6de40-6ebc-4be9-a55e-2c953ca5289c:ship_and_prove:ship_and_prove_release_pending:4c4f05c6945e8339f51d25daffa9636687b7993a:1555","mission_step_id":"ba8e4ae9-af4e-45e0-9234-e596ca0d6bc7","command_center_event_id":"19d6de40-6ebc-4be9-a55e-2c953ca5289c"},{"id":"4d514a51-32ef-47ca-86b3-ba7b71f31536","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"implementation","branch":"ai/control-plane-hardening","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":1902,"releaseCount":0,"toolCallCount":1,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.46.2-autonomous-forgejo-merge-supervisor","prNumber":null,"terminal":false,"missionId":"0171fad1-ecbd-4103-bb41-ca02202b8fc2","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":null,"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /repair/continue-mission automatically with this missionId without another owner prompt.","receiptRef":{"mode":"full","missionId":"0171fad1-ecbd-4103-bb41-ca02202b8fc2"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":5793,"likelyAffectedFiles":["src/__tests__/commandCenter/deployDetection.test.ts","src/__tests__/contracts/command-center-mission-control.test.ts","src/__tests__/contracts/command-palette-platform-authority.contract.test.ts","src/__tests__/contracts/command-center-mission-preflight.test.ts",".forgejo/workflows/knocklaunch.yml","src/__tests__/contracts/visual-witness-autonomous-mission.contract.test.ts","src/components/admin/TenantUserCommandCenters.tsx","src/components/GlobalCommandPalette.tsx","src/__tests__/godmode/command-center.test.ts","src/__tests__/godmode/GodModeCommandConsole.test.tsx","scripts/validate-command-center-contracts.mjs","scripts/visual-witness-hosted-runner/src/bounded-mission-queue.mjs"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-08-15T12:24:40.034278+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:0171fad1-ecbd-4103-bb41-ca02202b8fc2:execute_mission:repair_mission_synthesis_ready","mission_step_id":"9d374429-a40b-4fcc-b734-7ead6e02587d","command_center_event_id":"0171fad1-ecbd-4103-bb41-ca02202b8fc2"},{"id":"4d52a3de-8356-4007-adca-a61c93335fc1","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in release.","nextAction":{"lane":"production-release-conductor","action":"reconcile_release","reason":"durable_state:release","handoff":null,"capability":"production-release","automationAllowed":true,"ownerActionRequired":false,"resumeFromCheckpoint":null},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"release\",\"ownerFacingState\":null,\"latest\":null,\"activeStep\":null,\"nextStep\":null,\"nextSafeAction\":{\"action\":\"reconcile_release\",\"lane\":\"production-release-conductor\",\"reason\":\"durable_state:release\",\"automationAllowed\":true,\"ownerActionRequired\":false,\"capability\":\"production-release\",\"resumeFromCheckpoint\":null,\"handoff\":null},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"production-release-conductor\",\"nextAction\":\"reconcile_release\",\"recoveryOwner\":\"production-release-conductor\",\"capability\":\"production-release\",\"resumeFromCheckpoint\":null,\"handoff\":null},\"acceptance\":{\"total\":1,\"verified\":0,\"pending\":1,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[\"proof-production\"]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":null,\"deadlineAt\":null,\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":null,\"prNumber\":null,\"sourceSha\":null,\"deploymentId\":null}"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T19:51:02.960427+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:d1a10cbc-98a0-468a-9f09-adb9467626fd:owner-progress-heartbeat:119421084","mission_step_id":"2572c496-3acf-4688-a713-85a2a3f90c12","command_center_event_id":"d1a10cbc-98a0-468a-9f09-adb9467626fd"},{"id":"4d541c7e-38f7-450a-abac-712d1506293d","source":"forgejo","status":"waiting","payload":{"branch":"ai/objective-first-repair-8b66998eaee2","prNumber":4951,"nextAction":"Follow the existing canonical release to terminal proof.","mergeCommitSha":"11d5809c0c1d5544741bb34c7921f28eac35ad18","branchDeletedAfterMerge":true,"correctiveGenerationCreated":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-05T15:35:18.643223+00:00","proof_gate":"forgejo_merged_pr_is_authoritative_source_lineage","source_sha":"11d5809c0c1d5544741bb34c7921f28eac35ad18","external_id":"4951","receipt_type":"source_lineage_merged_pr_authoritative","idempotency_key":"mission:8b66998e-aee2-48dc-9c41-2ccd2cbb7230:merged-pr:4951:11d5809c0c1d5544741bb34c7921f28eac35ad18","mission_step_id":"221ecd96-6c6d-4581-bb9d-1fab44930e32","command_center_event_id":"8b66998e-aee2-48dc-9c41-2ccd2cbb7230"},{"id":"4d546ba9-2b0d-4f4d-8fde-29b151a5ddaf","source":"forgejo-exact-source","status":"verified","payload":{"sourceSha":"69149fd43ce758144cbd7a270ff95d894b7c8f38","repository":"noel/KnockLaunchOS","repositoryProofs":[{"id":"repo-canonical","path":null,"proof":"forgejo_merged_pr_exact_head_gate","headSha":"9814e68c830e90d590c682d4df37196a82f79d25","prNumber":2440,"gateContext":"KnockLaunch Gate / KnockLaunch Gate (pull_request)","expectedText":null,"gateTargetUrl":"/noel/KnockLaunchOS/actions/runs/7229/jobs/1","mergeCommitSha":"69149fd43ce758144cbd7a270ff95d894b7c8f38"}],"requestContractHash":"603982e642330da3b221cb111c96894a47e15bb986dc918eb134e6ec0c66290c"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-11T22:21:12.766841+00:00","proof_gate":"request_contract_repository_verified","source_sha":"69149fd43ce758144cbd7a270ff95d894b7c8f38","external_id":null,"receipt_type":"request_contract_repository_status","idempotency_key":"mission:79cd789f-76be-4061-b05c-9c5d2dcab6e1:request-contract-repository:603982e642330da3b221cb111c96894a47e15bb986dc918eb134e6ec0c66290c:69149fd43ce758144cbd7a270ff95d894b7c8f38","mission_step_id":"9bb40d4d-7130-40a8-8025-8ed7b5d79ab6","command_center_event_id":"79cd789f-76be-4061-b05c-9c5d2dcab6e1"},{"id":"4d54b181-4809-423f-9bf3-bfb25f6bf826","source":"cc-execution","status":"source_resolution_required","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":null,"reason":null,"status":"source_resolution_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"executorlessWaitMs":0,"firstUsefulResultAt":null,"recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.58.301-premium-visual-system","prNumber":null,"terminal":false,"missionId":"73364bb7-6976-4a69-babf-4e8729bea3eb","operation":"execute_mission","proofGate":"repair_mission_source_resolution_required","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":1456,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":451,"providerAuthMs":0,"ledgerPrepareMs":451,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":451,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":451,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"Supply exact sourceTargets on the same mission; planner guesses cannot replace missing mission scope.","receiptRef":{"mode":"full","missionId":"73364bb7-6976-4a69-babf-4e8729bea3eb"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1176,"likelyAffectedFiles":[],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-28T03:07:14.583616+00:00","proof_gate":"repair_mission_source_resolution_required","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:73364bb7-6976-4a69-babf-4e8729bea3eb:execute_mission:repair_mission_source_resolution_required:current-generation","mission_step_id":"7e2e7d93-7e36-43d3-aad1-ef7d53b352db","command_center_event_id":"73364bb7-6976-4a69-babf-4e8729bea3eb"},{"id":"4d558260-fc03-41cb-8c64-d783f88081ef","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in reasoning required.","nextAction":{"lane":"cc-execution","action":"continue_implementation","reason":"synthesis_required","automationAllowed":true,"ownerActionRequired":false},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"reasoning_required\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"execute_mission\",\"status\":\"synthesis_required\",\"proofGate\":\"repair_mission_synthesis_ready\"},\"activeStep\":{\"key\":\"implementation\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"pull_request\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextSafeAction\":{\"action\":\"continue_implementation\",\"lane\":\"cc-execution\",\"reason\":\"synthesis_required\",\"automationAllowed\":true,\"ownerActionRequired\":false},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"cc-execution\",\"nextAction\":\"continue_implementation\",\"recoveryOwner\":\"cc-execution\"},\"acceptance\":{\"total\":2,\"verified\":0,\"pending\":2,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[\"proof-production\",\"proof-visual\"]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":\"pull_request\",\"deadlineAt\":\"2026-10-06T14:45:12.366872+00:00\",\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":null,\"prNumber\":null,\"sourceSha\":null,\"deploymentId\":null}"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T12:16:09.645974+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:e762cbd4-577d-45f4-bbd5-159faaf9cfbb:owner-progress-heartbeat:119419264","mission_step_id":"4058e008-e115-41d6-8676-1e6c27375067","command_center_event_id":"e762cbd4-577d-45f4-bbd5-159faaf9cfbb"},{"id":"4d56e717-05e8-4cf3-8514-8fda016cd01c","source":"cc-execution","status":"recorded","payload":{"objective":"Ship the already-approved existing Forgejo PR #677 (ai/big-papi-flagship-calendar-assets-20260824) exactly as-is. KnockLaunch Gate has passed on head da01a1d4fe723088bad95bd88ebe49636eb74b11. Do not create another branch or pull request and do not change source. Squash-merge PR #677 through Forgejo, deploy only the frontend to Cloudflare, then prove the merged source is live on https://bigpapiscoquitoiceys.com. The public root must remain the Big Papi site; verify production identity for the merged commit and route availability. Visual Witness is not requested.","tenantRef":"big-papis","receivedAt":"2026-08-24T17:58:43.077Z","fingerprint":"8861901e2ab304ac7f1affed3fb39e13bc1fe9c6ad524c094f42fa5cbb36a2cf","workstreamRef":"bigpapis","conversationId":null,"canonicalBranch":"ai/big-papi-flagship-calendar-assets-20260824","requestedBranch":"ai/big-papi-flagship-calendar-assets-20260824","conversationContext":null},"tenant_id":"766cfaa7-ac42-46c8-bbef-69d13268a29d","created_at":"2026-08-24T17:58:43.894243+00:00","proof_gate":"tenant_workstream_contribution_recorded","source_sha":null,"external_id":null,"receipt_type":"tenant_workstream_contribution","idempotency_key":"mission:31ce96a0-85bb-441c-a377-62e233767dd0:tenant-workstream-contribution:8861901e2ab304ac7f1affed3fb39e13bc1fe9c6ad524c094f42fa5cbb36a2cf","mission_step_id":null,"command_center_event_id":"31ce96a0-85bb-441c-a377-62e233767dd0"},{"id":"4d5705c9-130b-44e0-9858-12db91150fba","source":"cc-execution","status":"recorded","payload":{"objective":"Fix the live adaptive MISC legacy-blueprint normalization defect, ship it, and prove the C&C sidebar works.","tenantRef":"385f3582-1b06-5a13-85b5-ad36fa03b397","receivedAt":"2026-08-31T03:37:22.114Z","fingerprint":"26b5c04a69b0bb548cd7a9a88fb03e144cf8524f4dcbbc8a892ea0a6ccb4765b","workstreamRef":"385f35821b065a1385b5ad36fa03b397","conversationId":null,"canonicalBranch":"ai/objective-first-repair-mtgorv8h","requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"rawUtterance":"Fix the live adaptive MISC legacy-blueprint normalization defect, ship it, and prove the C&C sidebar works.","wordingChanged":false,"canonicalIntent":"Fix the live adaptive MISC legacy-blueprint normalization defect, ship it, and prove the C&C sidebar works.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"legacy-vocabulary-normalized","statement":"Legacy generated service-job blueprints use current business-specific vocabulary on adaptive MISC tenants; C&C renders Cleaning Operations and Cleaning Jobs instead of Cleaning Service Operations and Service Jobs.","proofConditionIds":["source","release","live-interaction"]},{"id":"custom-labels-preserved","statement":"Genuinely custom persisted module labels and vocabulary remain unchanged.","proofConditionIds":["source"]},{"id":"sidebar-functional","statement":"The live C&C adaptive sidebar contains its business modules and representative sidebar items actually navigate to tenant-scoped destinations.","proofConditionIds":["source","live-interaction"]}],"objective":"Fix the live adaptive MISC legacy-blueprint normalization defect, ship it, and prove the C&C sidebar works.","constraints":[{"id":"shared-fix","statement":"Repair the shared normalizer, not C&C tenant data directly.","proofConditionIds":["source"]},{"id":"frontend-only-release","statement":"Deploy only the affected frontend production owner.","proofConditionIds":["release"]},{"id":"no-experience-studio","statement":"Do not involve or revive Experience Studio.","proofConditionIds":["source"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"source","kind":"repository","claim":"Current Forgejo source canonicalizes only known generated legacy service-job labels/vocabulary to derived business-specific defaults while preserving custom persisted labels and keeping enabled-app filtering/destination dedupe intact.","route":"https://app.knocklaunch.app/demo-c-c-carpet-cleaning-1b5e576a","required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]},{"id":"release","kind":"runtime","claim":"The exact corrective merged SHA is deployed to the frontend production owner and live on app.knocklaunch.app.","route":"https://app.knocklaunch.app/demo-c-c-carpet-cleaning-1b5e576a","required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]},{"id":"live-interaction","kind":"interaction","claim":"Live C&C renders Cleaning Jobs and the adaptive sidebar click targets work for Cleaning Jobs, Customers, and Schedule without dead clicks or route breakage.","route":"https://app.knocklaunch.app/demo-c-c-carpet-cleaning-1b5e576a","required":true,"expectedText":"Cleaning Jobs","targetedActions":[{"text":"Cleaning Jobs","action":"click"},{"text":"Customers","action":"click"},{"text":"Schedule","action":"click"}],"allowedReleaseTargets":[],"requiredReleaseTargets":[]}],"validationErrors":[]},"requestedBranch":"ai/objective-first-repair-mtgorv8h","conversationContext":null,"requestContractHash":"94b177a28f6d09d6b845ef439f8788a0c22ac915ae3b0e629988740e6beb5ddf","requestContractRevision":1},"tenant_id":"385f3582-1b06-5a13-85b5-ad36fa03b397","created_at":"2026-08-31T03:37:22.626916+00:00","proof_gate":"tenant_workstream_contribution_recorded","source_sha":null,"external_id":null,"receipt_type":"tenant_workstream_contribution","idempotency_key":"mission:7b5b54be-ce31-4304-8315-c5a7b3d4be8e:tenant-workstream-contribution:26b5c04a69b0bb548cd7a9a88fb03e144cf8524f4dcbbc8a892ea0a6ccb4765b","mission_step_id":null,"command_center_event_id":"7b5b54be-ce31-4304-8315-c5a7b3d4be8e"},{"id":"4d57345e-92ff-49e1-83aa-89cd0458f606","source":"durable-mission-ledger","status":"pending","payload":{"sourceSha":"60073fd4b554f1283173ece97e473fa190315576","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"outcome-1","satisfied":false,"statement":"Upgrade the public PCG What'sMyProgress page at https://whatsmyprogress.com/pcg based on the owner's supplied mobile screenshot. Frontend-only. Fix the background composition so the PCG branding/logo in the existing background is intentionally visible on mobile instead of being cropped away; preserve the current PCG artwork, do not replace it. Remove transparent/glassy card treatment from the hero/order lookup UI: use solid or near-solid dark surfaces with premium gold PCG accents and crisp borders/shadows. Eliminate opacity-related text legibility problems: body copy, labels, inputs, badges, and headings must render at strong readable contrast with no washed-out gray text over the artwork. Refine spacing, hierarchy, mobile typography, header/logo treatment, form fields and primary CTA so the page feels premium, clean, compact and unmistakably PCG. Keep the page function and order-lookup behavior unchanged. Responsive desktop/mobile. Use the smallest safe frontend diff, one fresh ai/* branch, one PR, canonical Gate, squash merge, Cloudflare frontend deploy, then verify the live /pcg route visually on mobile and report proof.","proofConditionIds":["proof-production","proof-visual"]}],"satisfied":false,"constraints":[{"id":"visual-artifact-scope","satisfied":false,"statement":"The requested visual artifact type is authoritative: logo only. Do not add unrelated or mixed visual surfaces unless the owner explicitly requested them.","proofConditionIds":["proof-production","proof-visual"]},{"id":"visual-content-truth","satisfied":false,"statement":"Do not present invented names, metrics, prices, dates, services, testimonials, credentials, customer records, or other unknown business facts as real. Omit unknowns or mark them clearly as placeholder/example content.","proofConditionIds":["proof-production","proof-visual"]},{"id":"visual-viewport-authority","satisfied":false,"statement":"The requested mobile viewport/form factor is authoritative. Do not create a mixed-device composite or add another viewport unless explicitly requested.","proofConditionIds":["proof-production","proof-visual"]},{"id":"reference-visual-fidelity","satisfied":false,"statement":"The approved reference owns the material visual composition: hierarchy, major geometry, typography scale, spacing rhythm, image placement/crop, color treatment, radii, shadows/glow, and overall density. Material deviation is a failed visual acceptance, not a stylistic reinterpretation.","proofConditionIds":["proof-visual"]},{"id":"responsive-visual-continuity","satisfied":false,"statement":"Responsive adaptation may reflow for the target viewport, but it must preserve information hierarchy, branding, functionality, and design language. It must not invent a second design.","proofConditionIds":["proof-visual"]},{"id":"reference-visual-authority","satisfied":false,"statement":"The supplied or approved reference visual is immutable acceptance evidence. Generating another mockup, image, or concept cannot satisfy this implementation request; completion requires source implementation, deployment, and reference-matched visual proof.","proofConditionIds":["proof-visual"]},{"id":"capability-completeness","satisfied":true,"statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","proofConditionIds":["proof-production"]},{"id":"atomic-capability-lifecycle","satisfied":true,"statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","proofConditionIds":["proof-production"]}],"contractHash":"b097e7758216d7d7b52cf6d43ebfcc33d62e4f24c32e350cd5704405b4b36fdb","releaseBound":true,"witnessBound":false,"visualRequested":true,"visualSatisfied":false,"conditionResults":[{"id":"proof-production","kind":"runtime","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":false,"releaseTargetStates":{"frontend":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["frontend"],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"migrationReleaseVerified":null,"releaseRequestContractHash":"b097e7758216d7d7b52cf6d43ebfcc33d62e4f24c32e350cd5704405b4b36fdb"},"required":true,"satisfied":true},{"id":"proof-visual","kind":"visual","evidence":{"modeBound":true,"claimBound":true,"routeBound":true,"witnessMode":"observe","witnessRoute":"https://whatsmyprogress.com/pcg","currentSourceSha":"60073fd4b554f1283173ece97e473fa190315576","witnessSourceSha":"60073fd4b554f1283173ece97e473fa190315576","verificationState":null,"witnessRequestContractHash":"b097e7758216d7d7b52cf6d43ebfcc33d62e4f24c32e350cd5704405b4b36fdb"},"required":true,"satisfied":false}],"validationErrors":[],"pendingProofKinds":["visual"],"activeReleaseTargets":["frontend"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-29T12:04:40.326525+00:00","proof_gate":"request_contract_pending","source_sha":"60073fd4b554f1283173ece97e473fa190315576","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:2ad07026-eac6-4e53-b54f-c4ad3d6ba32c:request-contract:b097e7758216d7d7b52cf6d43ebfcc33d62e4f24c32e350cd5704405b4b36fdb:60073fd4b554f1283173ece97e473fa190315576:pending:visual","mission_step_id":"669f78a4-f3f3-4288-bb55-fe95f08d63c1","command_center_event_id":"2ad07026-eac6-4e53-b54f-c4ad3d6ba32c"},{"id":"4d574a78-0fb1-41db-a7cd-9e5db5ede9fc","source":"owner_authorized_full_backlog_cleanup","status":"recorded","payload":{"category":"platform_reliability","disposition":"superseded_execution_attempt","previousStatus":"blocked","sourcePreserved":true,"noCompletionClaim":true,"recoveryPortfolioId":"9dae32f1-f3cf-09ae-7f92-c656f71fb9d5"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-11T16:14:39.646808+00:00","proof_gate":"source_objective_preserved_in_existing_mission_ledger","source_sha":null,"external_id":null,"receipt_type":"owner_backlog_disposition","idempotency_key":"owner-full-backlog-cleanup-20261011:def5e839-59e7-4549-bcfb-d605a6838ee7","mission_step_id":null,"command_center_event_id":"def5e839-59e7-4549-bcfb-d605a6838ee7"},{"id":"4d585eac-eda0-4047-8f52-f286ca08b1eb","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":"ai/fix-canonical-release-dispatch-20260803","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.30.2-deferred-visual-proof","prNumber":null,"terminal":false,"missionId":"c28f9a42-febb-40a6-9150-635f763d186d","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":null,"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and recall /repair/execute-mission automatically without another owner prompt.","receiptRef":{"mode":"full","missionId":"c28f9a42-febb-40a6-9150-635f763d186d"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"sourceReceiptBytes":1982,"likelyAffectedFiles":[],"ownerActionRequired":false},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-08-03T20:49:22.78894+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:c28f9a42-febb-40a6-9150-635f763d186d:execute_mission:repair_mission_synthesis_ready","mission_step_id":"135ac3fd-53a8-46d8-8cb7-bca0bdd65cd6","command_center_event_id":"c28f9a42-febb-40a6-9150-635f763d186d"},{"id":"4d5b32c7-8395-4a22-a24e-78881ff9c312","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"implementation","branch":"ai/objective-first-repair-8f24a58cae54","reason":"retryable_provider_transport:GET:The operation was aborted due to timeout","status":"retryable","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.118-architecture-exclusivity","prNumber":null,"terminal":false,"missionId":"8f24a58c-ae54-41fc-b2bb-bfe2057d8e1f","operation":"execute_mission","proofGate":"repair_mission_execution_retryable","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":25388,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":0,"missionSetupMs":365,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":365,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":365,"repositoryMutationMs":25388,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":365,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"8f24a58c-ae54-41fc-b2bb-bfe2057d8e1f"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1569,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-12T03:29:42.620965+00:00","proof_gate":"repair_mission_execution_retryable","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:8f24a58c-ae54-41fc-b2bb-bfe2057d8e1f:execute_mission:repair_mission_execution_retryable:current-generation","mission_step_id":"2098ac77-6a5c-4fba-92ea-e3acdd0866ad","command_center_event_id":"8f24a58c-ae54-41fc-b2bb-bfe2057d8e1f"},{"id":"4d5efa2c-c2c9-4c7c-adb8-6a305b015dd8","source":"durable-mission-ledger","status":"verified","payload":{"sourceSha":"650b12d47ef67466d4fff645d8aee318f03ee2e3","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"canonical-settings-owner","satisfied":true,"statement":"Profile, Settings, Notifications, Connections, account preferences, and tenant/company settings resolve through one existing universal tenant Settings/Profile surface; tenant differences are presentation/configuration only.","proofConditionIds":["repo-settings-proof","standard-shell-proof","modes-shell-proof"]},{"id":"tenant-safe-account-routing","satisfied":true,"statement":"With an active tenant, every tenant account/avatar menu resolves Profile, Settings, Notifications, and Connections inside that tenant and never to tenant selection, /owner, or obsolete global account routes; /admin remains available only where platform-admin access already permits it.","proofConditionIds":["repo-settings-proof","standard-shell-proof","modes-shell-proof"]},{"id":"single-account-menu-owner","satisfied":true,"statement":"Each shell has one effective avatar/account menu owner through existing singleton/ownership primitives; duplicate avatar/account menu ownership in the bounded Settings/Profile capability is removed without adding a second notification or preference model.","proofConditionIds":["repo-settings-proof"]},{"id":"settings-deletion-map","satisfied":true,"statement":"Touched Settings/Profile elements are classified as canonical owner, presentation-only, redirect/adapter, migration source, or deletion; duplicate frontend owners are deleted or reduced to explicit compatibility redirects.","proofConditionIds":["repo-settings-proof"]}],"satisfied":true,"constraints":[{"id":"frontend-only","satisfied":true,"statement":"This pass is frontend-only. Do not change database schema/data, authentication contracts, Edge Functions, workers, provider configuration, or release architecture.","proofConditionIds":["repo-settings-proof"]},{"id":"reuse-existing-owner","satisfied":true,"statement":"Reuse src/lib/tenants/tenantAvatarMenuContract.ts and the strongest existing universal Settings/Profile implementation. Do not create a new settings product, registry, orchestration layer, parallel write path, or tenant-specific settings implementation.","proofConditionIds":["repo-settings-proof"]},{"id":"universal-routes","satisfied":true,"statement":"Canonical relative routes remain settings, settings?section=profile, settings/notifications, and settings/connections, resolved through the active tenant's canonical navigation base.","proofConditionIds":["repo-settings-proof","standard-shell-proof","modes-shell-proof"]},{"id":"compatibility-only","satisfied":true,"statement":"Legacy tenant-specific account/profile/settings entry points may remain only as thin frontend redirects/adapters where compatibility requires them; otherwise delete/demote them.","proofConditionIds":["repo-settings-proof"]},{"id":"capability-completeness","satisfied":true,"statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","proofConditionIds":["repo-settings-proof","standard-shell-proof","modes-shell-proof"]},{"id":"atomic-capability-lifecycle","satisfied":true,"statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","proofConditionIds":["repo-settings-proof","standard-shell-proof","modes-shell-proof"]}],"contractHash":"822ad252d2fb0069de9115940bdffedb0780220f2767fde9b2df3357e69a9877","releaseBound":true,"witnessBound":false,"visualRequested":false,"visualSatisfied":true,"conditionResults":[{"id":"repo-settings-proof","kind":"repository","evidence":{"reason":null,"gateRunId":9320,"satisfied":true,"gateTestProof":null,"gateTestPassed":false,"missingTargets":[],"gateTestExecuted":false,"disallowedTargets":[],"migrationRequired":false,"namedGateTestPath":null,"releaseTargetStates":{"frontend":"success"},"repositoryProofGate":"request_contract_repository_verified","repositoryProofPath":null,"requestContractHash":"822ad252d2fb0069de9115940bdffedb0780220f2767fde9b2df3357e69a9877","unsuccessfulTargets":[],"activeReleaseTargets":["frontend"],"allowedReleaseTargets":["frontend"],"repositoryProofStatus":"verified","expectedRepositoryPath":null,"namedGateTestSatisfied":true,"requiredReleaseTargets":["frontend"],"migrationReleaseVerified":null,"repositoryConditionBound":true,"repositoryProofSourceSha":"650b12d47ef67466d4fff645d8aee318f03ee2e3"},"required":true,"satisfied":true},{"id":"standard-shell-proof","kind":"runtime","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":false,"releaseTargetStates":{"frontend":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["frontend"],"allowedReleaseTargets":["frontend"],"requiredReleaseTargets":["frontend"],"migrationReleaseVerified":null,"releaseRequestContractHash":"822ad252d2fb0069de9115940bdffedb0780220f2767fde9b2df3357e69a9877"},"required":true,"satisfied":true},{"id":"modes-shell-proof","kind":"runtime","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":false,"releaseTargetStates":{"frontend":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["frontend"],"allowedReleaseTargets":["frontend"],"requiredReleaseTargets":["frontend"],"migrationReleaseVerified":null,"releaseRequestContractHash":"822ad252d2fb0069de9115940bdffedb0780220f2767fde9b2df3357e69a9877"},"required":true,"satisfied":true}],"validationErrors":[],"pendingProofKinds":[],"activeReleaseTargets":["frontend"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-17T21:05:42.801998+00:00","proof_gate":"request_contract_terminal_verified","source_sha":"650b12d47ef67466d4fff645d8aee318f03ee2e3","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:786ea34c-da53-4b4c-8634-96ca6c310fdf:request-contract:822ad252d2fb0069de9115940bdffedb0780220f2767fde9b2df3357e69a9877:650b12d47ef67466d4fff645d8aee318f03ee2e3:verified:","mission_step_id":"963fccee-0142-48f0-99f8-27d7fca9d43a","command_center_event_id":"786ea34c-da53-4b4c-8634-96ca6c310fdf"},{"id":"4d61d8ec-3304-4437-b785-95ab557a74cc","source":"cc-execution","status":"waiting_for_gate","payload":{"ok":true,"jobId":null,"phase":"implementation","branch":"ai/objective-first-repair-db5062cb6d15","reason":"provider_verified_auto_progress_owns_gate_merge_release_outside_owner_response","status":"waiting_for_gate","metrics":{"receiptBytes":4929,"releaseCount":0,"toolCallCount":4,"repeatedCallCount":1,"executorlessWaitMs":21002,"firstUsefulResultAt":"2026-10-04T15:11:25.283Z","recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.64.91-virtual-witness-cold-standby","prNumber":4802,"terminal":false,"missionId":"db5062cb-6d15-4902-9418-c93056f44b5a","operation":"execute_mission","proofGate":"repair_mission_pr_handed_off_to_supervisor","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":4579,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":598,"missionSetupMs":275,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":275,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":275,"repositoryMutationMs":3981,"repositoryProviderMs":3981,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":2345,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":275,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":1636},"nextAction":"Canonical KnockLaunch Gate notifier and durable mission supervisor own Gate, merge, release, and proof progression from this exact PR head outside the owner response path.","receiptRef":{"mode":"full","missionId":"db5062cb-6d15-4902-9418-c93056f44b5a"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime","visual"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":3747,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"9602e177-0cbb-496c-bdf5-2fbc93f1b859","created_at":"2026-10-04T15:11:52.75313+00:00","proof_gate":"repair_mission_pr_handed_off_to_supervisor","source_sha":null,"external_id":"4802","receipt_type":"execute_mission","idempotency_key":"mission:db5062cb-6d15-4902-9418-c93056f44b5a:execute_mission:repair_mission_pr_handed_off_to_supervisor:current-generation","mission_step_id":"23d2002a-6ce9-47ed-869e-c41f5e7f6755","command_center_event_id":"db5062cb-6d15-4902-9418-c93056f44b5a"},{"id":"4d62e745-b059-4f17-b09e-2543b6c2adf7","source":"cc-execution","status":"deployment_dispatched","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/watchdog-v4-regression-eaaa-g1","reason":null,"status":"deployment_dispatched","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.137-release-reentry-run-id-propagation","prNumber":2674,"terminal":false,"missionId":"eaaa6005-2aeb-4d20-97a2-bcd8584f09ee","operation":"execute_mission","proofGate":"canonical_release_dispatched","sourceSha":"111f6002c650e32422c80276f6a5811d66603aae","timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":13262,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":1516,"approvedPlanMs":0,"missionSetupMs":977,"providerAuthMs":0,"shipAndProveMs":11380,"ledgerPrepareMs":282,"ledgerReconcileMs":0,"lineageReconcileMs":695,"resolvePreflightMs":977,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":282,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"eaaa6005-2aeb-4d20-97a2-bcd8584f09ee"},"performance":null,"deploymentId":"forgejo-main-111f6002c650","workflowRunId":null,"releaseTargets":{"frontend":false,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":2588,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-13T19:39:09.665774+00:00","proof_gate":"canonical_release_dispatched","source_sha":"111f6002c650e32422c80276f6a5811d66603aae","external_id":"forgejo-main-111f6002c650","receipt_type":"execute_mission","idempotency_key":"mission:eaaa6005-2aeb-4d20-97a2-bcd8584f09ee:execute_mission:canonical_release_dispatched:current-generation","mission_step_id":"79becff5-6af0-48d6-81e9-d89184babcf4","command_center_event_id":"eaaa6005-2aeb-4d20-97a2-bcd8584f09ee"},{"id":"4d63680d-a93d-423a-a62d-522cb74c74a3","source":"cc-execution","status":"blocked","payload":{"reason":"existing_branch_without_open_pr_branch_diverged_or_unproven:ai/big-papis-hero-video-swap","fingerprint":"fd54fd6c3a10d36c989a7bbdee25402ab75d647df5cc4e311b54f3e18b087718"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-02T22:27:08.869641+00:00","proof_gate":"repository_mutation_intent_deterministic_failure","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent_blocked","idempotency_key":"mission:7926cfd6-3310-45a6-8588-5fcbe5d8d848:repository-mutation-intent-blocked:fd54fd6c3a10d36c989a7bbdee25402ab75d647df5cc4e311b54f3e18b087718","mission_step_id":"496f8c8b-e6b0-44a5-94aa-5581251c4a38","command_center_event_id":"7926cfd6-3310-45a6-8588-5fcbe5d8d848"},{"id":"4d638abb-63f5-4cd5-aa38-eff149f3441b","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-mtlm3p46","reason":"retryable_provider_transport:The operation was aborted due to timeout","status":"retryable","metrics":{"receiptBytes":8519,"releaseCount":0,"toolCallCount":5,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.5-merge-queue-operators","prNumber":1560,"terminal":false,"missionId":"e4043d01-86d4-48a1-9bd9-881f762e4fc2","operation":"execute_mission","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"handlerMs":7026,"prReadinessMs":6208,"approvedPlanMs":0,"missionSetupMs":867,"shipAndProveMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"e4043d01-86d4-48a1-9bd9-881f762e4fc2"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1075,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"9602e177-0cbb-496c-bdf5-2fbc93f1b859","created_at":"2026-09-03T14:24:21.955422+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"1560","receipt_type":"execute_mission","idempotency_key":"mission:e4043d01-86d4-48a1-9bd9-881f762e4fc2:execute_mission:repair_mission_pr_ready_retryable:current-generation","mission_step_id":"602ddb61-957d-4441-b451-fab940cc5c1a","command_center_event_id":"e4043d01-86d4-48a1-9bd9-881f762e4fc2"},{"id":"4d645f88-0f03-4e7b-b597-99625b946947","source":"forgejo","status":"waiting","payload":{"branch":"","prNumber":4796,"nextAction":"Follow the existing canonical release to terminal proof.","mergeCommitSha":"35e5d05882313d60bba3ec5230690f67df250c6b","branchDeletedAfterMerge":true,"correctiveGenerationCreated":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-05T13:59:39.208527+00:00","proof_gate":"forgejo_merged_pr_is_authoritative_source_lineage","source_sha":"35e5d05882313d60bba3ec5230690f67df250c6b","external_id":"4796","receipt_type":"source_lineage_merged_pr_authoritative","idempotency_key":"mission:be8a69d0-997d-4e18-a1d4-635a092257c9:merged-pr:4796:35e5d05882313d60bba3ec5230690f67df250c6b","mission_step_id":"f60be740-a31e-40a7-88f1-a6f9a9afdc4e","command_center_event_id":"be8a69d0-997d-4e18-a1d4-635a092257c9"},{"id":"4d6619cf-ee15-4dac-bc7e-cd160e12c2f7","source":"cc-execution","status":"waiting","payload":{"body":{"ship":true,"branch":"ai/objective-first-repair-79923c4e89df","approved":true,"missionId":"79923c4e-89df-4623-ab67-f494ce7fb058","objective":"Continue the existing durable mission using exact structured edits.","ownerApproved":true,"sourceTargets":["src/App.tsx","src/App.css","src/PcgAppShell.tsx","src/PublicAppShell.tsx"],"anchored_edits":[{"path":"src/App.tsx","new_content":"import BigPapisBookingReferralPage from \"@/pages/mobile-vendor/BigPapisBookingReferralPage\";","old_content":"import BigPapisBookingReferralPage from \"@/pages/mobile-vendor/BigPapisBookingR\";"}],"durableMutationResume":true},"recovery":false,"fingerprint":"bbf301424ab05d4df3b8741e77accc36ec15ae9d7ce4a78f5fcbf2c233303aea","replayCount":0,"serializedBytes":608},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T15:57:15.804729+00:00","proof_gate":"repository_mutation_intent_persisted","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent","idempotency_key":"mission:79923c4e-89df-4623-ab67-f494ce7fb058:repository-mutation-intent:bbf301424ab05d4df3b8741e77accc36ec15ae9d7ce4a78f5fcbf2c233303aea:0","mission_step_id":"e3d2eaf6-cde9-4e11-bc36-a6c1373bdde7","command_center_event_id":"79923c4e-89df-4623-ab67-f494ce7fb058"},{"id":"4d6716a4-1e9a-4e3e-beef-93626253cd98","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":null,"reason":"auto_progress_pr_read_failed:404","status":"retryable","metrics":{"receiptBytes":752,"releaseCount":0,"toolCallCount":1,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":null,"prNumber":3921,"terminal":false,"missionId":"42444de8-a7b9-4b89-9ab9-2e54dcfe5b63","operation":"automatic_mission_resume","proofGate":"repair_mission_auto_progress_authorization_retryable","sourceSha":null,"timingsMs":{"prReadinessMs":0,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"42444de8-a7b9-4b89-9ab9-2e54dcfe5b63"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":711,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":null},"tenant_id":"c55998b4-82a3-467e-8d35-177bb4785f6e","created_at":"2026-09-20T21:55:42.659809+00:00","proof_gate":"repair_mission_auto_progress_authorization_retryable","source_sha":null,"external_id":"3921","receipt_type":"automatic_mission_resume","idempotency_key":"mission:42444de8-a7b9-4b89-9ab9-2e54dcfe5b63:automatic-mission-resume:3921:repair_mission_auto_progress_authorization_retryable","mission_step_id":"6634d4ef-88ff-4a44-bf31-aa4669f59ae8","command_center_event_id":"42444de8-a7b9-4b89-9ab9-2e54dcfe5b63"},{"id":"4d695af8-4895-46ff-b547-0f8fbd834ef8","source":"cc-execution","status":"waiting","payload":{"body":{"ship":true,"files":[],"branch":"ai/objective-first-repair-9c619be0b3b4","writes":[],"patches":[],"pr_body":"Make Tennex a native private-workspace route owner before generic tenant-integrated application wrapping, and add focused contract coverage for Tennex root/dashboard/deep routes.","version":1,"approved":true,"pr_title":"fix: keep Tennex route family under Tennex shell","missionId":"9c619be0-b3b4-4982-bb1d-5c218a155771","objective":"Repair the remaining Tennex route-family precedence defect on current main: make /tennex-tax-solutions and /tennex route families native tenant route owners in privateWorkspaceCompatibility so generic tenant-integrated application routing cannot intercept /dashboard or other Tennex-owned routes before TennexShell. Preserve canonical /workspace behavior, add focused regression coverage for native ownership/dashboard precedence, then Gate, squash merge, release frontend, and prove live that /tennex-tax-solutions/dashboard normalizes into the Tennex workspace route family and representative Tennex deep routes remain healthy.","sourceSha":"a835252376b2c250b0cb8ce12f0750fd9cd72fa1","repository":"noel/KnockLaunchOS","ownerApproved":true,"releaseIntent":null,"sourceTargets":["src/routes/privateWorkspaceCompatibility.ts","src/__tests__/contracts/generatedTenantRouteFamily.contract.test.ts"],"anchored_edits":[{"path":"src/routes/privateWorkspaceCompatibility.ts","edits":[{"new_content":"  const isCallCenterPrivateWorkspace = matchesBase(normalizedPath, '/call-center');\n  const isKnockLaunchOsPrivateWorkspace = matchesBase(normalizedPath, '/knock-launch-os')\n    || matchesBase(normalizedPath, '/knock-launch-crm');\n  const isTennexPrivateWorkspace = (tenantSlug === 'tennex' || tenantSlug === 'tennex-tax-solutions')\n    && (matchesBase(normalizedPath, '/tennex') || matchesBase(normalizedPath, '/tennex-tax-solutions'));\n\n  const nativeTenantRouteOwner = isTennexPrivateWorkspace\n    || isBookMeDirectlyPrivateWorkspace","old_content":"  const isCallCenterPrivateWorkspace = matchesBase(normalizedPath, '/call-center');\n  const isKnockLaunchOsPrivateWorkspace = matchesBase(normalizedPath, '/knock-launch-os')\n    || matchesBase(normalizedPath, '/knock-launch-crm');\n\n  const nativeTenantRouteOwner = isBookMeDirectlyPrivateWorkspace"},{"new_content":"    isKnockLaunchOsPrivateWorkspace,\n    isTennexPrivateWorkspace,\n    isBigPapisPrivateWorkspace,","old_content":"    isKnockLaunchOsPrivateWorkspace,\n    isBigPapisPrivateWorkspace,"}]},{"path":"src/__tests__/contracts/generatedTenantRouteFamily.contract.test.ts","edits":[{"new_content":"import { resolveTenantWorkspaceTargetPath } from '@/routes/tenantApplicationRouteResolver';\nimport { resolvePrivateWorkspaceCompatibility } from '@/routes/privateWorkspaceCompatibility';\n","old_content":"import { resolveTenantWorkspaceTargetPath } from '@/routes/tenantApplicationRouteResolver';\n"},{"new_content":"  it('keeps Tennex launch-card routes tenant-scoped and application-owned',()=>{const cases=[['marketing','marketing'],['contacts','contacts'],['mail','mail'],['calendar','calendar'],['documents','documents']] as const;for(const [path,appId] of cases){const scoped=`/tennex-tax-solutions/${path}`;expect(getTenantApplicationByTenantScopedPath(scoped)?.tenantSlug).toBe('tennex-tax-solutions');expect(getTenantApplicationByTenantScopedPath(scoped)?.app.id).toBe(appId);expect(resolveTenantWorkspaceTargetPath(scoped)).toBe(path)}});\n  it('keeps the Tennex route family native-owned before generic application routing',()=>{const tenant={id:'tennex-contract',company_slug:'tennex-tax-solutions',name:'Tennex Tax Solutions',tenant_type:'MISC'};for(const path of ['/tennex-tax-solutions','/tennex-tax-solutions/dashboard','/tennex-tax-solutions/contacts','/tennex/dashboard']){expect(resolvePrivateWorkspaceCompatibility(path,tenant).isTennexPrivateWorkspace).toBe(true);expect(resolvePrivateWorkspaceCompatibility(path,tenant).nativeTenantRouteOwner).toBe(true)}expect(resolvePrivateWorkspaceCompatibility('/other/dashboard',tenant).isTennexPrivateWorkspace).toBe(false)});\n","old_content":"  it('keeps Tennex launch-card routes tenant-scoped and application-owned',()=>{const cases=[['marketing','marketing'],['contacts','contacts'],['mail','mail'],['calendar','calendar'],['documents','documents']] as const;for(const [path,appId] of cases){const scoped=`/tennex-tax-solutions/${path}`;expect(getTenantApplicationByTenantScopedPath(scoped)?.tenantSlug).toBe('tennex-tax-solutions');expect(getTenantApplicationByTenantScopedPath(scoped)?.app.id).toBe(appId);expect(resolveTenantWorkspaceTargetPath(scoped)).toBe(path)}});\n"}]}],"implementation":{"files":[],"writes":[]},"requestContract":null,"update_strategy":"fresh_branch","repairGeneration":null,"executionEnvelope":{"ship":true,"version":1,"approved":true,"missionId":"9c619be0-b3b4-4982-bb1d-5c218a155771","ownerApproved":true,"releaseIntent":null,"sourceTargets":["src/routes/privateWorkspaceCompatibility.ts","src/__tests__/contracts/generatedTenantRouteFamily.contract.test.ts"],"requestContract":null,"repairGeneration":null,"proofRequirements":null,"controlPlaneUnfreeze":false,"controlPlaneMaintenance":false,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":null},"proofRequirements":null,"likelyAffectedFiles":["src/routes/privateWorkspaceCompatibility.ts","src/__tests__/contracts/generatedTenantRouteFamily.contract.test.ts"],"controlPlaneUnfreeze":false,"durableMutationResume":true,"controlPlaneMaintenance":false,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":null},"recovery":false,"fingerprint":"ea1c2b435bcf8954bd83692e9d661908f411cac703651c56021562fdc04429fc","replayCount":0,"serializedBytes":5599},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-02T17:58:27.828626+00:00","proof_gate":"repository_mutation_intent_persisted","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent","idempotency_key":"mission:9c619be0-b3b4-4982-bb1d-5c218a155771:repository-mutation-intent:ea1c2b435bcf8954bd83692e9d661908f411cac703651c56021562fdc04429fc:0","mission_step_id":"33e13e6e-1268-4996-af3c-6cd725ddc3cb","command_center_event_id":"9c619be0-b3b4-4982-bb1d-5c218a155771"},{"id":"4d6ce5cb-4bd3-49df-b737-1545413e01d2","source":"cc-execution","status":"release_reconciliation_pending","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-a22f48e4411f","reason":null,"status":"release_reconciliation_pending","metrics":{"receiptBytes":12919,"releaseCount":0,"toolCallCount":5,"repeatedCallCount":1,"executorlessWaitMs":37614,"firstUsefulResultAt":"2026-09-25T10:31:53.459Z","recoveryAttemptCount":2,"ownerInterruptionCount":0},"version":null,"prNumber":3703,"terminal":false,"missionId":"a22f48e4-411f-4e2c-a36b-06e9e05cec76","operation":"automatic_mission_resume","proofGate":"canonical_release_reconciliation_pending","sourceSha":"0b1ff26426618b96116bdcbbcdf1053337c35aa0","timingsMs":{"prReadinessMs":417,"approvedPlanMs":0,"shipAndProveMs":2397,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"reconcile_release","receiptRef":{"mode":"full","missionId":"a22f48e4-411f-4e2c-a36b-06e9e05cec76"},"performance":null,"deploymentId":"forgejo-main-0b1ff2642661","releaseState":null,"workflowRunId":null,"releaseTargets":{"frontend":false,"onrunner":true,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1838,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-25T10:32:47.40487+00:00","proof_gate":"canonical_release_reconciliation_pending","source_sha":null,"external_id":"3703","receipt_type":"automatic_mission_resume","idempotency_key":"mission:a22f48e4-411f-4e2c-a36b-06e9e05cec76:automatic-mission-resume:3703:canonical_release_reconciliation_pending","mission_step_id":"0d1f4e39-707e-4ef8-bcf7-49000bc2e471","command_center_event_id":"a22f48e4-411f-4e2c-a36b-06e9e05cec76"},{"id":"4d6fa3ff-ed6a-410a-85ba-3647d4017a06","source":"durable-mission-ledger","status":"pending","payload":{"sourceSha":"e4f1407cdc55726ff83019b83c7ee50781d9987d","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"correct-expectation","satisfied":false,"statement":"The Big Papi ownerRoutes regression expectation exactly matches the already-merged dedicated Start Pop-Up lazy import.","proofConditionIds":["repo-proof"]}],"satisfied":false,"constraints":[{"id":"test-only","satisfied":false,"statement":"Change only the stale test expectation.","proofConditionIds":["repo-proof"]},{"id":"capability-completeness","satisfied":false,"statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","proofConditionIds":["repo-proof"]},{"id":"atomic-capability-lifecycle","satisfied":false,"statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","proofConditionIds":["repo-proof"]}],"contractHash":"84f90bc0d44cc354da97c81bdd03bac13c79a2fe201704769ca64597309a20bf","releaseBound":true,"witnessBound":false,"visualRequested":false,"visualSatisfied":true,"conditionResults":[{"id":"repo-proof","kind":"repository","evidence":{"reason":null,"gateRunId":null,"satisfied":true,"gateTestProof":null,"gateTestPassed":false,"missingTargets":[],"gateTestExecuted":false,"disallowedTargets":[],"migrationRequired":false,"namedGateTestPath":null,"releaseTargetStates":{},"repositoryProofGate":null,"repositoryProofPath":null,"requestContractHash":"84f90bc0d44cc354da97c81bdd03bac13c79a2fe201704769ca64597309a20bf","unsuccessfulTargets":[],"activeReleaseTargets":[],"allowedReleaseTargets":[],"repositoryProofStatus":"required","expectedRepositoryPath":null,"namedGateTestSatisfied":true,"requiredReleaseTargets":[],"migrationReleaseVerified":null,"repositoryConditionBound":false,"repositoryProofSourceSha":null},"required":true,"satisfied":false}],"validationErrors":[],"pendingProofKinds":["repository"],"activeReleaseTargets":[]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-23T15:57:09.647998+00:00","proof_gate":"request_contract_pending","source_sha":"e4f1407cdc55726ff83019b83c7ee50781d9987d","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:0eab102c-20ee-4951-8729-3e71a799eae2:request-contract:84f90bc0d44cc354da97c81bdd03bac13c79a2fe201704769ca64597309a20bf:e4f1407cdc55726ff83019b83c7ee50781d9987d:pending:repository","mission_step_id":"a1e94bc7-7113-4efe-9139-2c2c0612d3e2","command_center_event_id":"0eab102c-20ee-4951-8729-3e71a799eae2"},{"id":"4d70a546-900b-4e84-8a72-803275b4d186","source":"forgejo-runtime","status":"failed","payload":{"failed":["forgejo-release/workflow"],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"failure","frontend-cloudflare/live":"pending","supabase-migrations/live":"success"},"mainSha":"dc667c57ca137ae288652a96134b0040f8ad55bd","missing":[],"pending":["frontend-cloudflare/live"],"required":["forgejo-main/source","forgejo-release/workflow","frontend-cloudflare/live","supabase-migrations/live"],"sourceSha":"f9de6bbfb26c6e995d6a1c0e36a837425323c857","releaseState":"failed","sourceInMain":true,"compareStatus":"known_exact_protected_main_push_history","releaseTargets":{"frontend":true,"onrunner":false,"migrations":true,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"frontend":"pending","migrations":"success"},"requestContractHash":"6a2d3990415fdf35b1b933f823b025a7074ae4bec319f863b057bf6ae0948a79","forgejoWorkflowProof":{"runId":9907,"source":"signed_push_receipt","status":"cancelled","results":{},"conclusion":"cancelled","fingerprint":"cancelled||","failureClass":"release_cancelled_transient","targetStates":{"frontend":"pending","migrations":"success"},"safeAutoRetry":true,"targetJobCount":7,"observedTargetStates":{"frontend":"pending","migrations":"success"}},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-19T11:30:58.884316+00:00","proof_gate":"canonical_release_terminal_failed","source_sha":"f9de6bbfb26c6e995d6a1c0e36a837425323c857","external_id":"forgejo-main-f9de6bbfb26c","receipt_type":"canonical_release_status","idempotency_key":"mission:74346618-b2fb-41e1-8bc7-bfede250da18:forgejo-release-status:f9de6bbfb26c6e995d6a1c0e36a837425323c857:failed:forgejo-main/source=success|forgejo-release/workflow=failure|frontend-cloudflare/live=pending|supabase-migrations/live=success","mission_step_id":"46e612ad-9e82-4b88-a5e3-32a7b1a190cf","command_center_event_id":"74346618-b2fb-41e1-8bc7-bfede250da18"},{"id":"4d712dcd-73ac-46ac-a68f-f69588c8b921","source":"cc-execution","status":"waiting","payload":{"sourceTargets":["workers/cc-execution/src/index-release-fast-lane.js"],"continuationObjective":null},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-05T23:32:35.135601+00:00","proof_gate":"mission_continuation_scope_persisted","source_sha":null,"external_id":null,"receipt_type":"mission_continuation_scope_updated","idempotency_key":"mission:16ed4d9d-fbe9-4546-8ff2-db39db9f025b:mission_continuation_scope_updated:mission_continuation_scope_persisted:waiting","mission_step_id":"304e1fed-48f5-4e23-b3b1-835f45381fb0","command_center_event_id":"16ed4d9d-fbe9-4546-8ff2-db39db9f025b"},{"id":"4d71cac0-070d-4d4b-90fc-24a9cf9e4e8e","source":"cc-execution","status":"recorded","payload":{"requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"compilation":{"stages":["owner_intent","conversation_context","scope","live_state","mutation_authority","affected_systems","dependencies","risk_and_blast_radius","execution_tactics","required_proof","release_plan","recovery_plan"],"version":2,"explicit":true,"objective":"Continue the authorized full-stack drift audit convergence mission. Inspect only the exact current main source target supplied for reconciliation; do not mutate until the complete exact source required for the proven drift repair is available.","proofKinds":["repository"],"adaptiveDomains":["intent","tenant_route_role_viewport","urgency_deadline","dependency_scope","risk_blast_radius","runner_capacity","queue_active_work","provider_failure_circuits","qa_scope","retry_recovery","release_ownership","proof_depth"],"expansionPolicy":"later_stages_may_only_narrow_or_expand_with_machine_readable_dependency_evidence","dynamicStatePolicy":"live_state_may_change_execution_tactics_but_never_owner_outcome_or_explicit_constraints","dynamicRefreshStages":["preflight","gate","release","runtime_proof"],"adaptiveCompilerVersion":"paul-adaptive-objective-v1","inheritedContextBlockingAuthority":false},"rawUtterance":"Continue the authorized full-stack drift audit convergence mission. Inspect only the exact current main source target supplied for reconciliation; do not mutate until the complete exact source required for the proven drift repair is available.","wordingChanged":false,"canonicalIntent":"Continue the authorized full-stack drift audit convergence mission. Inspect only the exact current main source target supplied for reconciliation; do not mutate until the complete exact source required for the proven drift repair is available.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"outcome-source","statement":"The exact current main source required for the authorized drift repair is inspected without broadening scope.","provenance":{"reason":null,"source":"explicit_request_contract","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-repository"]}],"objective":"Continue the authorized full-stack drift audit convergence mission. Inspect only the exact current main source target supplied for reconciliation; do not mutate until the complete exact source required for the proven drift repair is available.","constraints":[{"id":"constraint-read","statement":"Do not mutate from incomplete or stale source.","provenance":{"reason":null,"source":"explicit_request_contract","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-repository"]},{"id":"capability-completeness","statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","provenance":{"reason":null,"source":"hard_safety_invariant","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-repository"]},{"id":"atomic-capability-lifecycle","statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","provenance":{"reason":null,"source":"hard_safety_invariant","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-repository"]}],"adaptivePolicy":{"risk":{"tier":"standard","blastRadius":"scoped"},"proof":{"requiredKinds":["repository"],"visualProofScope":"none","interactionRequired":false,"runtimeProofRequired":true},"scope":{"route":null,"roleRef":null,"tenantRef":null,"sourceTargets":["config/capabilities/knocklaunch-owner-os-revenue-refactor.json"]},"dynamic":{"variables":["main_and_runtime_lineage","runner_capacity","queue_and_active_work","provider_health","failure_clusters_and_circuits","release_target_state","current_pr_and_gate_state"],"refreshStages":["preflight","gate","release","runtime_proof"],"refreshMayChange":["runner_selection","parallelism","retry_path","qa_depth","release_recovery","proof_timing"],"refreshMayNotChange":["owner_outcome","explicit_no_go_constraints","tenant_identity","credential_boundary","hard_safety_invariants"]},"urgency":{"priority":"normal","deadlineSignals":[],"deadlineExplicit":false},"version":"paul-adaptive-objective-v1","recovery":{"transient":"one_bounded_retry_then_alternate_eligible_pool_or_provider_path","deterministic":"repair_source_or_contract_do_not_blind_rerun","mutationDependencyFailure":"prerequisite_required_or_targeted_recovery_never_invent","readOnlyDependencyFailure":"degrade_to_available_grounded_context_and_keep_conversation_alive"},"unknowns":["tenant","route","release_targets_until_changed_paths","deadline"],"authority":{"outcome":"current_explicit_owner_request","tactics":"live_prime_truth","unknownPolicy":"preserve_unknown_never_invent","historicalContext":"advisory_unless_current_request_confirms"},"execution":{"mutation":true,"concurrency":"parallel_non_overlapping_work","scopePolicy":"start_bounded_expand_only_with_machine_readable_dependency_evidence","staleStatePolicy":"refresh_dynamic_state_before_irreversible_or_acceptance_stage","conversationIsolation":true,"ownerOutcomeMayBeChangedByAdaptation":false},"experience":{"visual":false,"viewports":["desktop","mobile"],"behavioral":false,"visualProofScope":"none"},"dependencies":{"requiredDomains":["backend_runtime"],"capabilityDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"releaseTargetHints":[]},"inputSignals":{"rawUtterance":"Continue the authorized full-stack drift audit convergence mission. Inspect only the exact current main source target supplied for reconciliation; do not mutate until the complete exact source required for the proven drift repair is available.","canonicalIntent":"Continue the authorized full-stack drift audit convergence mission. Inspect only the exact current main source target supplied for reconciliation; do not mutate until the complete exact source required for the proven drift repair is available.","conversationContextPresent":false}},"terminalPolicy":"all_required_proof_conditions_satisfied","proofConditions":[{"id":"proof-repository","kind":"repository","claim":"Exact current main source is resolved.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false}],"validationErrors":[],"capabilityManifest":{"id":"Continue-the-authorized-full-stack-drift-audit-convergence-mission.-Inspect-only-the-exact-current-m","driftPolicy":"exact_manifest_source_release_dependency_or_runtime_identity_mismatch_is_nonterminal","proofLedger":"command_center_mission_ledger_request_contract_hash_bound","schemaVersion":1,"releaseTargets":[],"lifecycleStates":["prepare","deploy","verify","activate"],"activationPolicy":"dependencies_and_claim_matched_live_proof_before_exposure","dependencyDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_required_not_runtime_failures","compatibilityWindow":["N","N-1"],"failureIsolationPolicy":"quarantine_or_rollback_affected_capability_only_preserve_unrelated_working_capabilities","canaryProofConditionIds":["proof-repository"]},"capabilityCompleteness":{"domains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"required":true,"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_states_not_runtime_failures"}},"requestContractHash":"e8b8da55c78e797c298f3f00862ae523cac283b3e891db4bcdd6056f005dfc89","requestContractRevision":4,"previousRequestContractHash":"4b155a2f142703c5793201a08bbf29833c2ab5a8543e21a3346b432e0e5a787b"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-02T15:19:17.006292+00:00","proof_gate":"request_contract_revision_recorded","source_sha":null,"external_id":null,"receipt_type":"request_contract_revision","idempotency_key":"mission:36c8c7a2-9d26-44be-b83b-3d15fc348073:request-contract:e8b8da55c78e797c298f3f00862ae523cac283b3e891db4bcdd6056f005dfc89","mission_step_id":"c31bbb10-8259-4160-ba09-a64a9f877ad3","command_center_event_id":"36c8c7a2-9d26-44be-b83b-3d15fc348073"},{"id":"4d78882f-15ed-404d-81e2-ae02e38d7d9b","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-879ed861a57d","reason":"retryable_provider_transport:forgejo_provider_read_timeout","status":"retryable","metrics":{"receiptBytes":22927,"releaseCount":0,"toolCallCount":6,"repeatedCallCount":2,"executorlessWaitMs":21195,"firstUsefulResultAt":"2026-10-02T21:53:21.831Z","recoveryAttemptCount":3,"ownerInterruptionCount":0},"version":null,"prNumber":4537,"terminal":false,"missionId":"879ed861-a57d-48c8-a465-6a203ebd84d0","operation":"automatic_mission_resume","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"prReadinessMs":2199,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"879ed861-a57d-48c8-a465-6a203ebd84d0"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":819,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-02T21:53:34.385111+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"4537","receipt_type":"automatic_mission_resume","idempotency_key":"mission:879ed861-a57d-48c8-a465-6a203ebd84d0:automatic-mission-resume:4537:repair_mission_pr_ready_retryable","mission_step_id":"e6c47bd1-62aa-496d-9df9-16130f801bb1","command_center_event_id":"879ed861-a57d-48c8-a465-6a203ebd84d0"},{"id":"4d78e076-e349-434b-94d6-15bb48e65676","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in pull request.","nextAction":{"lane":"cc-execution","action":"reconcile_pull_request","reason":"pull_request_exists_without_merged_source","automationAllowed":true,"ownerActionRequired":false},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"pull_request\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"execute_mission\",\"status\":\"repair_prepared\",\"proofGate\":\"repair_mission_prepared\"},\"activeStep\":{\"key\":\"preflight\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"pull_request\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextSafeAction\":{\"action\":\"reconcile_pull_request\",\"lane\":\"cc-execution\",\"reason\":\"pull_request_exists_without_merged_source\",\"automationAllowed\":true,\"ownerActionRequired\":false},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"cc-execution\",\"nextAction\":\"reconcile_pull_request\",\"recoveryOwner\":\"cc-execution\"},\"acceptance\":{\"total\":6,\"verified\":1,\"pending\":5,\"percent\":17,\"satisfied\":false,\"verifiedIds\":[\"implementation\"],\"pendingIds\":[\"preflight\",\"pull_request\",\"release\",\"runtime_proof\",\"visual_proof\"]},\"stall\":{\"stalled\":true,\"reason\":\"step_deadline_exceeded\",\"step\":\"pull_request\",\"deadlineAt\":\"2026-08-07T01:07:22.715656+00:00\",\"recoveryAction\":\"reconcile_pull_request\"},\"blocker\":null,\"terminal\":false,\"branch\":\"ai/fix-core-edge-config-duplicate\",\"prNumber\":4164,\"sourceSha\":null,\"deploymentId\":null}"},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-10-04T13:29:17.997021+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:f9ebd1a5-5de1-4e1b-a201-6dfc8e5dd4cb:owner-progress-heartbeat:119408037","mission_step_id":"738de3fb-4f3a-41a3-859d-ab89dc6228ba","command_center_event_id":"f9ebd1a5-5de1-4e1b-a201-6dfc8e5dd4cb"},{"id":"4d7ba4b2-3ab7-4c95-8e43-7c0b391d2d1e","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in reasoning required.","nextAction":{"lane":"cc-execution","action":"continue_implementation","reason":"synthesis_required","automationAllowed":true,"ownerActionRequired":false},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"reasoning_required\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"execute_mission\",\"status\":\"synthesis_required\",\"proofGate\":\"repair_mission_synthesis_ready\"},\"activeStep\":{\"key\":\"implementation\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"pull_request\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextSafeAction\":{\"action\":\"continue_implementation\",\"lane\":\"cc-execution\",\"reason\":\"synthesis_required\",\"automationAllowed\":true,\"ownerActionRequired\":false},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"cc-execution\",\"nextAction\":\"continue_implementation\",\"recoveryOwner\":\"cc-execution\"},\"acceptance\":{\"total\":1,\"verified\":0,\"pending\":1,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[\"proof-production\"]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":\"visual_proof\",\"deadlineAt\":\"2026-10-05T15:06:02.948416+00:00\",\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":\"ai/objective-first-repair-3c193377914c\",\"prNumber\":null,\"sourceSha\":null,\"deploymentId\":null}"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-05T14:08:36.080036+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:3c193377-914c-4359-ad57-84a91fa7c540:owner-progress-heartbeat:119413954","mission_step_id":"a67c8e9b-60ce-41dc-849b-9ee5a566b086","command_center_event_id":"3c193377-914c-4359-ad57-84a91fa7c540"},{"id":"4d7c1eb7-d662-44f4-9d01-4b3cd27124da","source":"cc-execution","status":"deployment_dispatched","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-8864807e2acb","reason":null,"status":"deployment_dispatched","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.91-forgejo-repository-reliability","prNumber":2291,"terminal":false,"missionId":"8864807e-2acb-42ba-bab1-fb0177785f2a","operation":"execute_mission","proofGate":"canonical_release_dispatched","sourceSha":"c28d30e7345ee9d94d49febf2f9b295810e72308","timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":24667,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":1078,"approvedPlanMs":0,"missionSetupMs":923,"providerAuthMs":0,"shipAndProveMs":6356,"ledgerPrepareMs":380,"ledgerReconcileMs":0,"lineageReconcileMs":543,"resolvePreflightMs":923,"repositoryMutationMs":17228,"repositoryProviderMs":15015,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":6121,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":380,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":8894},"nextAction":null,"receiptRef":{"mode":"full","missionId":"8864807e-2acb-42ba-bab1-fb0177785f2a"},"performance":null,"deploymentId":"forgejo-main-c28d30e7345e","workflowRunId":null,"releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":4547,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-10T07:45:15.84163+00:00","proof_gate":"canonical_release_dispatched","source_sha":"c28d30e7345ee9d94d49febf2f9b295810e72308","external_id":"forgejo-main-c28d30e7345e","receipt_type":"execute_mission","idempotency_key":"mission:8864807e-2acb-42ba-bab1-fb0177785f2a:execute_mission:canonical_release_dispatched:current-generation","mission_step_id":"a0230596-dabf-44c0-8ce5-cc68ba64e7ff","command_center_event_id":"8864807e-2acb-42ba-bab1-fb0177785f2a"},{"id":"4d7e3984-8bb3-4c96-b350-dab007d780ed","source":"forgejo-runtime","status":"failed","payload":{"failed":["forgejo-release/workflow","cc-execution/runtime-proof"],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"failure","cc-execution/runtime-proof":"failure"},"mainSha":"0426ba6e9e34b7e4439ed264a927c1c643cdf5f7","missing":[],"pending":[],"required":["forgejo-main/source","forgejo-release/workflow","cc-execution/runtime-proof"],"sourceSha":"0426ba6e9e34b7e4439ed264a927c1c643cdf5f7","releaseState":"failed","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":false,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"ccExecution":"failure"},"requestContractHash":"26e23630637b8ee2dda476bec82c15311d0e5a7a3c7fcb31e17397c0286fbde2","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/15681","runId":15681,"status":"failure","sourceSha":"0426ba6e9e34b7e4439ed264a927c1c643cdf5f7","conclusion":null,"failedJobs":[{"id":105668,"name":"Release cc-execution","status":"failure","conclusion":null,"failedSteps":[]}],"diagnostics":{"runId":15681,"logTail":["2026-10-05T15:02:10.2393927Z Need to get 34.8 MB of archives.","2026-10-05T15:02:10.2394066Z After this operation, 121 MB of additional disk space will be used.","2026-10-05T15:02:10.2394242Z Get:1 https://download.docker.com/linux/debian bookworm/stable amd64 docker-buildx-plugin amd64 0.37.1-1~debian.12~bookworm [17.3 MB]","2026-10-05T15:02:10.4172127Z Get:2 https://download.docker.com/linux/debian bookworm/stable amd64 docker-ce-cli amd64 5:29.8.2-1~debian.12~bookworm [17.6 MB]","2026-10-05T15:02:10.8388912Z debconf: delaying package configuration, since apt-utils is not installed","2026-10-05T15:02:10.9168036Z Fetched 34.8 MB in 0s (91.1 MB/s)","2026-10-05T15:02:10.9618059Z Selecting previously unselected package docker-buildx-plugin.","2026-10-05T15:02:11.0843944Z (Reading database ... \r(Reading database ... 5%\r(Reading database ... 10%\r(Reading database ... 15%\r(Reading database ... 20%\r(Reading database ... 25%\r(Reading database ... 30%\r(Reading database ... 35%\r(Reading database ... 40%\r(Reading database ... 45%\r(Reading database ... 50%\r(Reading database ... 55%\r(Reading database ... 60%\r(Reading database ... 65%\r(Reading database ... 70%\r(Reading database ... 75%\r(Reading database ... 80%\r(Reading database ... 85%\r(Reading database ... 90%\r(Reading database ... 95%\r(Reading database ... 100%\r(Reading database ... 23264 files and directories currently installed.)","2026-10-05T15:02:11.0865548Z Preparing to unpack .../docker-buildx-plugin_0.37.1-1~debian.12~bookworm_amd64.deb ...","2026-10-05T15:02:11.0906416Z Unpacking docker-buildx-plugin (0.37.1-1~debian.12~bookworm) ...","2026-10-05T15:02:12.1480996Z Selecting previously unselected package docker-ce-cli.","2026-10-05T15:02:12.1508447Z Preparing to unpack .../docker-ce-cli_5%3a29.8.2-1~debian.12~bookworm_amd64.deb ...","2026-10-05T15:02:12.1544017Z Unpacking docker-ce-cli (5:29.8.2-1~debian.12~bookworm) ...","2026-10-05T15:02:13.0045071Z Setting up docker-buildx-plugin (0.37.1-1~debian.12~bookworm) ...","2026-10-05T15:02:13.0163414Z Setting up docker-ce-cli (5:29.8.2-1~debian.12~bookworm) ...","2026-10-05T15:02:13.0921505Z Docker version 29.8.2, build 7fc2dff","2026-10-05T15:02:13.2409452Z github.com/docker/buildx v0.37.1 0b265a9f62db554fa9aba6dd19e1bd5704bc7d8a","2026-10-05T15:02:13.7730483Z (node:419) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.","2026-10-05T15:02:13.7730792Z (Use `node --trace-deprecation ...` to show where the warning was created)","2026-10-05T15:02:14.0938707Z Cache Size: ~58 MB (60330087 B)","2026-10-05T15:02:14.0979876Z [command]/usr/bin/tar -xf /tmp/d140b5c6-12ae-4aab-8a28-c95d52cf1d0b/cache.tgz -P -C /workspace/noel/KnockLaunchOS -z","2026-10-05T15:02:15.8275735Z Cache restored successfully","2026-10-05T15:02:15.8671867Z Cache restored from key: cc-execution-runtime-v2-node22.18.0-c3f85fe60ecaaf2eed3e72c45104105a4924aa580269d73e2bf5fa95b5854792","2026-10-05T15:02:16.9722189Z {\"ok\":true,\"status\":\"already_healthy\",\"proofGate\":\"cloudflare_deployment_credential_already_authorized\",\"deploymentTokenId\":\"72ab0ca4e14263d09f8a37a6a78c7f12\",\"deploymentTokenKind\":\"user\",\"deploymentTokenStatus\":\"active\",\"containersAuthorized\":true,\"ownerActionRequired\":false}","2026-10-05T15:02:28.6957479Z [31m✘ [41;31m[[41;97mERROR[41;31m][0m [1mSecret edit failed. You attempted to modify a secret, but the latest version of your Worker isn't currently deployed.[0m","2026-10-05T15:02:28.6958314Z ","2026-10-05T15:02:28.6958472Z   This limitation exists to prevent accidental deployment when using Worker versions and secrets together.","2026-10-05T15:02:28.6958625Z   To resolve this, you have two options:","2026-10-05T15:02:28.6958767Z   (1) use the `wrangler versions secret put` instead, which allows you to update secrets without deploying; or","2026-10-05T15:02:28.6959048Z   (2) deploy the latest version first, then modify secrets.","2026-10-05T15:02:28.6959172Z   Alternatively, you can use the Cloudflare dashboard to modify secrets and deploy the version.","2026-10-05T15:02:28.6959345Z ","2026-10-05T15:02:28.6959443Z ","2026-10-05T15:02:28.7322436Z 🪵  Logs were written to \"/root/.config/.wrangler/logs/wrangler-2026-10-05_15-02-23_887.log\"","2026-10-05T15:02:28.7986613Z ⚙️ [runner]: exitcode '1': failure","2026-10-05T15:02:28.8046376Z   🐳  docker exec cmd=[node /var/run/act/workflow/hashfiles/index.js] user= workdir=","2026-10-05T15:02:28.9449075Z Skipping step 'Restore exact cc-execution runtime dependency tree' due to 'success()'","2026-10-05T15:02:28.9622079Z 🏁  Job failed","2026-10-05T15:02:29.5291115Z Job 'Release cc-execution' failed",""],"proofGate":"forgejo_action_run_logs_verified","truncated":false,"failureLines":[{"line":85,"content":"2026-10-05T15:02:28.6957479Z [31m✘ [41;31m[[41;97mERROR[41;31m][0m [1mSecret edit failed. You attempted to modify a secret, but the latest version of your Worker isn't currently deployed.[0m"},{"line":95,"content":"2026-10-05T15:02:28.7986613Z ⚙️ [runner]: exitcode '1': failure"},{"line":98,"content":"2026-10-05T15:02:28.9622079Z 🏁  Job failed"},{"line":99,"content":"2026-10-05T15:02:29.5291115Z Job 'Release cc-execution' failed"}]},"exactSource":true,"fingerprint":"failure|release cc-execution|2026-10-05t15:02:28.6957479z [31m✘ [41;31m[[41;97merror[41;31m][0m [1msecret edit failed. you attempted to modify a secret, but the latest version of your worker isn't currently deployed.[0m|2026-10-05t15:02:28.7986613z ⚙️ [runner]: exitcode '1': failure|2026-10-05t15:02:28.9622079z 🏁  job failed|2026-10-05t15:02:29.5291115z job 'release cc-execution' failed|2026-10-05t15:02:10.2393927z need to get 34.8 mb of archives.|2026-10-05t15:02:10.2394066z after this operation, 121 mb of additional disk space will be used.|2026-10-05t15:02:10.2394242z get:1 https://download.docker.com/linux/debian bookworm/stable amd64 docker-buildx-plugin amd64 0.37.1-1~debian.12~bookworm [17.3 mb]|2026-10-05t15:02:10.4172127z get:2 https://download.docker.com/linux/debian bookworm/stable amd64 docker-ce-cli amd64 5:29.8.2-1~debian.12~bookworm [17.6 mb]|2026-10-05t15:02:10.8388912z debconf: delaying package configuration, since apt-utils is not installed|2026-10-05t15:02:10.916803","failureClass":"code_failure","targetStates":{"ccExecution":"failure"},"safeAutoRetry":false,"targetJobCount":7,"observedTargetStates":{"ccExecution":"failure"}},"releaseSourceVerified":true,"ccExecutionRuntimeProof":{"liveSha":"064230c0cabef4cc7ce30bfbf12d3b8460ae1825","compareStatus":null,"workflowRunId":15681,"workflowFailed":true,"containsSourceSha":false,"forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/15681","runId":15681,"status":"failure","sourceSha":"0426ba6e9e34b7e4439ed264a927c1c643cdf5f7","conclusion":null,"failedJobs":[{"id":105668,"name":"Release cc-execution","status":"failure","conclusion":null,"failedSteps":[]}],"diagnostics":{"runId":15681,"logTail":["2026-10-05T15:02:10.2393927Z Need to get 34.8 MB of archives.","2026-10-05T15:02:10.2394066Z After this operation, 121 MB of additional disk space will be used.","2026-10-05T15:02:10.2394242Z Get:1 https://download.docker.com/linux/debian bookworm/stable amd64 docker-buildx-plugin amd64 0.37.1-1~debian.12~bookworm [17.3 MB]","2026-10-05T15:02:10.4172127Z Get:2 https://download.docker.com/linux/debian bookworm/stable amd64 docker-ce-cli amd64 5:29.8.2-1~debian.12~bookworm [17.6 MB]","2026-10-05T15:02:10.8388912Z debconf: delaying package configuration, since apt-utils is not installed","2026-10-05T15:02:10.9168036Z Fetched 34.8 MB in 0s (91.1 MB/s)","2026-10-05T15:02:10.9618059Z Selecting previously unselected package docker-buildx-plugin.","2026-10-05T15:02:11.0843944Z (Reading database ... \r(Reading database ... 5%\r(Reading database ... 10%\r(Reading database ... 15%\r(Reading database ... 20%\r(Reading database ... 25%\r(Reading database ... 30%\r(Reading database ... 35%\r(Reading database ... 40%\r(Reading database ... 45%\r(Reading database ... 50%\r(Reading database ... 55%\r(Reading database ... 60%\r(Reading database ... 65%\r(Reading database ... 70%\r(Reading database ... 75%\r(Reading database ... 80%\r(Reading database ... 85%\r(Reading database ... 90%\r(Reading database ... 95%\r(Reading database ... 100%\r(Reading database ... 23264 files and directories currently installed.)","2026-10-05T15:02:11.0865548Z Preparing to unpack .../docker-buildx-plugin_0.37.1-1~debian.12~bookworm_amd64.deb ...","2026-10-05T15:02:11.0906416Z Unpacking docker-buildx-plugin (0.37.1-1~debian.12~bookworm) ...","2026-10-05T15:02:12.1480996Z Selecting previously unselected package docker-ce-cli.","2026-10-05T15:02:12.1508447Z Preparing to unpack .../docker-ce-cli_5%3a29.8.2-1~debian.12~bookworm_amd64.deb ...","2026-10-05T15:02:12.1544017Z Unpacking docker-ce-cli (5:29.8.2-1~debian.12~bookworm) ...","2026-10-05T15:02:13.0045071Z Setting up docker-buildx-plugin (0.37.1-1~debian.12~bookworm) ...","2026-10-05T15:02:13.0163414Z Setting up docker-ce-cli (5:29.8.2-1~debian.12~bookworm) ...","2026-10-05T15:02:13.0921505Z Docker version 29.8.2, build 7fc2dff","2026-10-05T15:02:13.2409452Z github.com/docker/buildx v0.37.1 0b265a9f62db554fa9aba6dd19e1bd5704bc7d8a","2026-10-05T15:02:13.7730483Z (node:419) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.","2026-10-05T15:02:13.7730792Z (Use `node --trace-deprecation ...` to show where the warning was created)","2026-10-05T15:02:14.0938707Z Cache Size: ~58 MB (60330087 B)","2026-10-05T15:02:14.0979876Z [command]/usr/bin/tar -xf /tmp/d140b5c6-12ae-4aab-8a28-c95d52cf1d0b/cache.tgz -P -C /workspace/noel/KnockLaunchOS -z","2026-10-05T15:02:15.8275735Z Cache restored successfully","2026-10-05T15:02:15.8671867Z Cache restored from key: cc-execution-runtime-v2-node22.18.0-c3f85fe60ecaaf2eed3e72c45104105a4924aa580269d73e2bf5fa95b5854792","2026-10-05T15:02:16.9722189Z {\"ok\":true,\"status\":\"already_healthy\",\"proofGate\":\"cloudflare_deployment_credential_already_authorized\",\"deploymentTokenId\":\"72ab0ca4e14263d09f8a37a6a78c7f12\",\"deploymentTokenKind\":\"user\",\"deploymentTokenStatus\":\"active\",\"containersAuthorized\":true,\"ownerActionRequired\":false}","2026-10-05T15:02:28.6957479Z [31m✘ [41;31m[[41;97mERROR[41;31m][0m [1mSecret edit failed. You attempted to modify a secret, but the latest version of your Worker isn't currently deployed.[0m","2026-10-05T15:02:28.6958314Z ","2026-10-05T15:02:28.6958472Z   This limitation exists to prevent accidental deployment when using Worker versions and secrets together.","2026-10-05T15:02:28.6958625Z   To resolve this, you have two options:","2026-10-05T15:02:28.6958767Z   (1) use the `wrangler versions secret put` instead, which allows you to update secrets without deploying; or","2026-10-05T15:02:28.6959048Z   (2) deploy the latest version first, then modify secrets.","2026-10-05T15:02:28.6959172Z   Alternatively, you can use the Cloudflare dashboard to modify secrets and deploy the version.","2026-10-05T15:02:28.6959345Z ","2026-10-05T15:02:28.6959443Z ","2026-10-05T15:02:28.7322436Z 🪵  Logs were written to \"/root/.config/.wrangler/logs/wrangler-2026-10-05_15-02-23_887.log\"","2026-10-05T15:02:28.7986613Z ⚙️ [runner]: exitcode '1': failure","2026-10-05T15:02:28.8046376Z   🐳  docker exec cmd=[node /var/run/act/workflow/hashfiles/index.js] user= workdir=","2026-10-05T15:02:28.9449075Z Skipping step 'Restore exact cc-execution runtime dependency tree' due to 'success()'","2026-10-05T15:02:28.9622079Z 🏁  Job failed","2026-10-05T15:02:29.5291115Z Job 'Release cc-execution' failed",""],"proofGate":"forgejo_action_run_logs_verified","truncated":false,"failureLines":[{"line":85,"content":"2026-10-05T15:02:28.6957479Z [31m✘ [41;31m[[41;97mERROR[41;31m][0m [1mSecret edit failed. You attempted to modify a secret, but the latest version of your Worker isn't currently deployed.[0m"},{"line":95,"content":"2026-10-05T15:02:28.7986613Z ⚙️ [runner]: exitcode '1': failure"},{"line":98,"content":"2026-10-05T15:02:28.9622079Z 🏁  Job failed"},{"line":99,"content":"2026-10-05T15:02:29.5291115Z Job 'Release cc-execution' failed"}]},"exactSource":true,"fingerprint":"failure|release cc-execution|2026-10-05t15:02:28.6957479z [31m✘ [41;31m[[41;97merror[41;31m][0m [1msecret edit failed. you attempted to modify a secret, but the latest version of your worker isn't currently deployed.[0m|2026-10-05t15:02:28.7986613z ⚙️ [runner]: exitcode '1': failure|2026-10-05t15:02:28.9622079z 🏁  job failed|2026-10-05t15:02:29.5291115z job 'release cc-execution' failed|2026-10-05t15:02:10.2393927z need to get 34.8 mb of archives.|2026-10-05t15:02:10.2394066z after this operation, 121 mb of additional disk space will be used.|2026-10-05t15:02:10.2394242z get:1 https://download.docker.com/linux/debian bookworm/stable amd64 docker-buildx-plugin amd64 0.37.1-1~debian.12~bookworm [17.3 mb]|2026-10-05t15:02:10.4172127z get:2 https://download.docker.com/linux/debian bookworm/stable amd64 docker-ce-cli amd64 5:29.8.2-1~debian.12~bookworm [17.6 mb]|2026-10-05t15:02:10.8388912z debconf: delaying package configuration, since apt-utils is not installed|2026-10-05t15:02:10.916803","failureClass":"code_failure","targetStates":{"ccExecution":"failure"},"safeAutoRetry":false,"targetJobCount":7,"observedTargetStates":{"ccExecution":"failure"}}},"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-05T15:02:37.872434+00:00","proof_gate":"canonical_release_terminal_failed","source_sha":"0426ba6e9e34b7e4439ed264a927c1c643cdf5f7","external_id":"forgejo-main-0426ba6e9e34","receipt_type":"canonical_release_status","idempotency_key":"mission:a1f21b78-72ee-42c7-8f03-196c8c7467eb:forgejo-release-status:0426ba6e9e34b7e4439ed264a927c1c643cdf5f7:failed:forgejo-main/source=success|forgejo-release/workflow=failure|cc-execution/runtime-proof=failure","mission_step_id":"82f60c2a-a41e-470e-98af-700becd805dd","command_center_event_id":"a1f21b78-72ee-42c7-8f03-196c8c7467eb"},{"id":"4d7f49e9-932c-4c67-85e2-a419a7bced87","source":"forgejo-runtime","status":"verified","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"success","frontend-cloudflare/live":"success"},"mainSha":"7cac3072e0e0c42d39832849f6acc6f68a03da79","missing":[],"pending":[],"required":["forgejo-main/source","forgejo-release/workflow","frontend-cloudflare/live"],"sourceSha":"47624cf6e8bb36ed0147b3693eb80fa4af25730d","releaseState":"verified","sourceInMain":true,"compareStatus":"known_exact_protected_main_push_history","releaseTargets":{"frontend":true,"migrations":false,"ccExecution":false,"supabaseEdge":false},"releaseTargetStates":{"frontend":"success"},"requestContractHash":"4c82220115532222aa49cfbead0ef0ebf065ceabd893646b267f50720cfbc35c","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/15647","runId":15647,"status":"success","sourceSha":"47624cf6e8bb36ed0147b3693eb80fa4af25730d","conclusion":null,"failedJobs":[],"diagnostics":null,"exactSource":true,"targetStates":{"frontend":"success"},"targetJobCount":7,"observedTargetStates":{"frontend":"success"}},"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"releaseTargetRecoveryProof":{"exact":true,"source":"exact_source_parent_diff_shared_release_owner_mapping","parentSha":"a4b615e7bf85001af9b5a7bbe81ced0f54ea2072","sourceSha":"47624cf6e8bb36ed0147b3693eb80fa4af25730d","changedPaths":["config/cloudflare-native-frontend-build.json","scripts/cloudflare-native-version-deploy.mjs"],"changedPathCount":2,"independentOfCurrentMainCompare":true},"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-05T23:53:00.530876+00:00","proof_gate":"canonical_release_terminal_verified","source_sha":"47624cf6e8bb36ed0147b3693eb80fa4af25730d","external_id":null,"receipt_type":"canonical_release_status","idempotency_key":"mission:4627c277-fff3-49da-91a1-f00e4c9fb118:forgejo-release-status:47624cf6e8bb36ed0147b3693eb80fa4af25730d:verified:forgejo-main/source=success|forgejo-release/workflow=success|frontend-cloudflare/live=success","mission_step_id":"098069dd-a051-4c64-85dd-7d2dd23bc965","command_center_event_id":"4627c277-fff3-49da-91a1-f00e4c9fb118"},{"id":"4d80a7a1-5704-44c3-90e9-4bfc28339eae","source":"cc-execution","status":"waiting","payload":{"body":{"ship":true,"files":[],"route":"/pcg/DASHBOARD?mode=grading&tool=certs","branch":"ai/objective-first-repair-cd208b1a0630","writes":[],"patches":[],"roleRef":"GodMode","version":1,"approved":true,"missionId":"cd208b1a-0630-4a9c-9049-815789811505","objective":"Apply and ship this focused PCG repair from current protected main.\n\nCertificates: replace the oversized gallery with a compact certificate list on desktop and mobile. Each row uses a real slab/front thumbnail when available and a neutral ShieldCheck thumbnail when absent, plus card identity, cert number, official PCG grade when available, chevron, search, and existing submission click-through. Eliminate the static PCG_CARD_IMAGE fallback from this surface.\n\nCompletion handoff: remove the staff-side Open customer portal control, rename the completion heading to Review & notify customer, retain the WMP link inside the customer email body, and reduce handoff row vertical spacing.\n\nPCG mode/admin header: raise both Back to PCG work queue controls to 44x44.\n\nPublisher authorization: keep authenticated user_tenant_access membership authorization and add authenticated global GodMode, PlatformAdmin, and Admin authorization from user_roles where tenant_id is null. Preserve anonymous denial and tenant isolation.\n\nScope exclusions: Readiness, uploaded PCG background, logo, grading scale, Receive, Grade, Customers, Payments, Migration, Settings, Capture, and the compact dashboard are unchanged.\n\nCreate one fresh focused PR, Gate it, squash merge it, release the frontend and pcg-commerce-publisher Supabase Edge Function, and prove the live Certificates route.","tenantRef":"pcg","repository":"noel/KnockLaunchOS","visualProof":true,"ownerApproved":true,"releaseIntent":null,"sourceTargets":["src/pages/crm/PcgWorkspace.tsx","src/pages/card-grading/PCGCompletionCenter.tsx","src/pages/card-grading/PCGModesWorkspace.tsx","supabase/functions/pcg-commerce-publisher/index.ts"],"anchored_edits":[{"path":"src/pages/crm/PcgWorkspace.tsx","edits":[{"new_content":"const tiers={two_weeks:{label:'2 Weeks',price:12,days:14},one_week:{label:'1 Week',price:15,days:7},three_days:{label:'3 Days',price:20,days:3},same_day:{label:'Same Day',price:25,days:0}} as const;const statuses=['received','intake_imaging','authentication','grading','encapsulation','qa','ready','shipped','picked_up'] as const;const terminalStatuses=new Set(['shipped','picked_up']);const PCG_STRIPE_FALLBACK='https://buy.stripe.com/3clbJ05UQc3w9KLcBR5Ne00';const PCG_LOGO='https://images.squarespace-cdn.com/content/v1/6853034cd711cc2240276cf3/2c2615b1-2fab-4ba1-8cff-8d8e49b6b184/diamond%2Blogo.png';const PCG_STORE_IMAGE='https://images.squarespace-cdn.com/content/v1/6853034cd711cc2240276cf3/83d3ec70-169f-4d22-8916-15e422fb0e52/IMG_8156%2B%281%29.jpeg';const pretty=(value:string)=>value.replaceAll('_',' ').replace(/\\b\\w/g,char=>char.toUpperCase());","old_content":"const tiers={two_weeks:{label:'2 Weeks',price:12,days:14},one_week:{label:'1 Week',price:15,days:7},three_days:{label:'3 Days',price:20,days:3},same_day:{label:'Same Day',price:25,days:0}} as const;const statuses=['received','intake_imaging','authentication','grading','encapsulation','qa','ready','shipped','picked_up'] as const;const terminalStatuses=new Set(['shipped','picked_up']);const PCG_STRIPE_FALLBACK='https://buy.stripe.com/3clbJ05UQc3w9KLcBR5Ne00';const PCG_LOGO='https://images.squarespace-cdn.com/content/v1/6853034cd711cc2240276cf3/2c2615b1-2fab-4ba1-8cff-8d8e49b6b184/diamond%2Blogo.png';const PCG_STORE_IMAGE='https://images.squarespace-cdn.com/content/v1/6853034cd711cc2240276cf3/83d3ec70-169f-4d22-8916-15e422fb0e52/IMG_8156%2B%281%29.jpeg';const PCG_CARD_IMAGE='https://images.squarespace-cdn.com/content/v1/6853034cd711cc2240276cf3/7fd5d898-1ff3-4bc2-9f7d-c7f2f2d6ee07/IMG_8111.jpg';const pretty=(value:string)=>value.replaceAll('_',' ').replace(/\\b\\w/g,char=>char.toUpperCase());"},{"new_content":"{tab==='certs'?<section><div className=\"border-b border-white/[0.08] pb-3\"><div className=\"text-[10px] font-black uppercase tracking-[.20em] text-[#d0ae61]\">Card lookup</div><h1 className=\"mt-1 text-2xl font-black sm:text-3xl\">Certificates</h1></div><div className=\"relative mt-3 max-w-2xl\"><Search className=\"absolute left-4 top-3.5 h-4 w-4 text-white/28\"/><input value={certQuery} onChange={event=>setCertQuery(event.target.value)} placeholder=\"Search certificate, card, player, or set\" className={`${inputClass} pl-11`}/></div>{filteredCards.length?<div className=\"mt-3 overflow-hidden border border-white/[0.08] bg-black/20\">{filteredCards.map(card=>{const image=card.slab_image_url||card.front_image_url;const title=[card.year,card.brand_set,card.player_character,card.card_description||card.variation,card.card_number?`#${card.card_number}`:null].filter(Boolean).join(' · ')||`Card #${card.sequence_number}`;const grade=hasCanonicalGrade(card)?formatPCGGrade(card.grade,card.grade_label):'';return <button key={card.id} onClick={()=>{const sub=subs.find(item=>item.id===card.submission_id);if(sub)openSubmission(sub)}} className=\"grid min-h-[68px] w-full grid-cols-[44px_minmax(0,1fr)_auto] items-center gap-3 border-b border-white/[0.07] px-3 py-2 text-left transition last:border-b-0 hover:bg-white/[0.025]\"><div className=\"grid h-14 w-11 shrink-0 place-items-center overflow-hidden border border-white/[0.08] bg-black/45\">{image?<img src={image} alt=\"Graded card\" className=\"h-full w-full object-cover\"/>:<ShieldCheck className=\"h-5 w-5 text-[#d8bb78]/55\"/>}</div><div className=\"min-w-0\"><div className=\"truncate text-sm font-black leading-tight\">{title}</div><div className=\"mt-1 flex flex-wrap items-center gap-x-3 gap-y-1 text-[10px] text-white/35\"><span>{card.cert_number||'Cert pending'}</span>{grade?<span className=\"font-black text-[#e8cc8d]/75\">{grade}</span>:null}</div></div><ChevronRight className=\"h-4 w-4 shrink-0 text-white/20\"/></button>})}</div>:<div className=\"mt-4\">{empty('No certificates yet','Certificate records appear here as grading is completed.')}</div>}</section>:null}","old_content":"{tab==='certs'?<section><div className=\"border-b border-white/[0.08] pb-5\"><div className=\"text-[10px] font-black uppercase tracking-[.20em] text-[#d0ae61]\">Card lookup</div><h1 className=\"mt-1.5 text-2xl font-black sm:text-3xl\">Certificates</h1></div><div className=\"relative mt-5 max-w-2xl\"><Search className=\"absolute left-4 top-3.5 h-4 w-4 text-white/28\"/><input value={certQuery} onChange={event=>setCertQuery(event.target.value)} placeholder=\"Search certificate, card, player, or set\" className={`${inputClass} pl-11`}/></div>{filteredCards.length?<div className=\"mt-6 grid grid-cols-2 gap-px overflow-hidden border border-white/[0.07] bg-white/[0.07] sm:grid-cols-3 xl:grid-cols-4\">{filteredCards.map(card=>{const image=card.slab_image_url||card.front_image_url||PCG_CARD_IMAGE;return <button key={card.id} onClick={()=>{const sub=subs.find(item=>item.id===card.submission_id);if(sub)openSubmission(sub)}} className=\"bg-[#09090a]/96 p-3 text-left\"><div className=\"relative aspect-[3/4] overflow-hidden bg-black\"><img src={image} alt=\"Graded card\" className=\"h-full w-full object-cover opacity-82\"/>{hasCanonicalGrade(card)?<div className=\"absolute right-2 top-2 max-w-[82%] bg-black/80 px-2 py-1 text-right text-[9px] font-black leading-tight text-[#e8cc8d]\">{formatPCGGrade(card.grade,card.grade_label)}</div>:null}</div><div className=\"pt-3\"><div className=\"text-sm font-black leading-tight\">{[card.year,card.brand_set,card.player_character,card.card_description||card.variation,card.card_number?`#${card.card_number}`:null].filter(Boolean).join(' · ')||`Card #${card.sequence_number}`}</div><div className=\"mt-1 text-[10px] text-white/30\">{card.cert_number||'Cert pending'}</div></div></button>})}</div>:<div className=\"mt-6\">{empty('No certificates yet','Certificate records appear here as grading is completed.')}</div>}</section>:null}"}]},{"path":"src/pages/card-grading/PCGCompletionCenter.tsx","edits":[{"new_content":"import {AlertTriangle,CheckCircle2,Mail,Truck} from 'lucide-react';","old_content":"import {AlertTriangle,CheckCircle2,ExternalLink,Mail,Truck} from 'lucide-react';"},{"new_content":"return <section className=\"mx-auto max-w-[1600px] px-4 pt-4 sm:px-6 lg:px-8\"><div className=\"border border-white/10 bg-[#09090a]/94 p-4\"><div className=\"flex items-center gap-3\">{mode==='mailed'?<Truck className=\"h-5 w-5 text-[#d8bb78]\"/>:<CheckCircle2 className=\"h-5 w-5 text-[#d8bb78]\"/>}<div><div className=\"text-[10px] font-black uppercase tracking-[.17em] text-[#d8bb78]\">{mode==='mailed'?'Shipment handoff':'Completion handoff'}</div><h2 className=\"mt-1 text-xl font-black\">{mode==='mailed'?'Tracking + customer update':'Review & notify customer'}</h2></div></div>","old_content":"return <section className=\"mx-auto max-w-[1600px] px-4 pt-5 sm:px-6 lg:px-8\"><div className=\"border border-white/10 bg-[#09090a]/94 p-5\"><div className=\"flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between\"><div className=\"flex items-center gap-3\">{mode==='mailed'?<Truck className=\"h-5 w-5 text-[#d8bb78]\"/>:<CheckCircle2 className=\"h-5 w-5 text-[#d8bb78]\"/>}<div><div className=\"text-[10px] font-black uppercase tracking-[.17em] text-[#d8bb78]\">{mode==='mailed'?'Shipment handoff':'Completion handoff'}</div><h2 className=\"mt-1 text-xl font-black\">{mode==='mailed'?'Tracking + customer update':'Review → notify → customer portal'}</h2></div></div><a href={wmpUrl} target=\"_blank\" rel=\"noreferrer\" className=\"inline-flex min-h-10 items-center justify-center gap-2 border border-[#d8bb78]/25 px-3 text-xs font-black text-[#ead49d]\">Open customer portal <ExternalLink className=\"h-3.5 w-3.5\"/></a></div>"},{"new_content":"return <div key={sub.id} className=\"py-3\">","old_content":"return <div key={sub.id} className=\"py-5\">"}]},{"path":"src/pages/card-grading/PCGModesWorkspace.tsx","edits":[{"new_content":"<button type=\"button\" onClick={()=>setMode(null)} aria-label=\"Back to PCG work queue\" className=\"grid h-11 w-11 shrink-0 place-items-center rounded-xl border border-white/[.10] bg-white/[.04] text-white/70\"><ArrowLeft className=\"h-4 w-4\"/></button>","old_content":"<button type=\"button\" onClick={()=>setMode(null)} aria-label=\"Back to PCG work queue\" className=\"grid h-10 w-10 shrink-0 place-items-center rounded-xl border border-white/[.10] bg-white/[.04] text-white/70\"><ArrowLeft className=\"h-4 w-4\"/></button>"},{"new_content":"<button type=\"button\" onClick={closeAdminTool} aria-label=\"Back to PCG work queue\" className=\"grid h-11 w-11 place-items-center rounded-xl border border-white/[.10] bg-white/[.04] text-white/70\"><ArrowLeft className=\"h-4 w-4\"/></button>","old_content":"<button type=\"button\" onClick={closeAdminTool} aria-label=\"Back to PCG work queue\" className=\"grid h-10 w-10 place-items-center rounded-xl border border-white/[.10] bg-white/[.04] text-white/70\"><ArrowLeft className=\"h-4 w-4\"/></button>"}]},{"path":"supabase/functions/pcg-commerce-publisher/index.ts","edits":[{"new_content":"async function authorize(req:Request,supabase:any,tenantId:string){\n  const token=clean(req.headers.get('authorization')).replace(/^Bearer\\s+/i,'');if(!token)return false;\n  const {data}=await supabase.auth.getUser(token);const userId=data?.user?.id;if(!userId)return false;\n  const {data:membership}=await supabase.from('user_tenant_access').select('tenant_id').eq('user_id',userId).eq('tenant_id',tenantId).maybeSingle();\n  if(membership)return true;\n  const {data:platformRole}=await supabase.from('user_roles').select('role').eq('user_id',userId).is('tenant_id',null).in('role',['GodMode','PlatformAdmin','Admin']).limit(1).maybeSingle();\n  return Boolean(platformRole);\n}","old_content":"async function authorize(req:Request,supabase:any,tenantId:string){\n  const token=clean(req.headers.get('authorization')).replace(/^Bearer\\s+/i,'');if(!token)return false;\n  const {data}=await supabase.auth.getUser(token);const userId=data?.user?.id;if(!userId)return false;\n  const {data:membership}=await supabase.from('user_tenant_access').select('tenant_id').eq('user_id',userId).eq('tenant_id',tenantId).maybeSingle();\n  return Boolean(membership);\n}"}]}],"implementation":{"files":[],"writes":[]},"requestContract":{"outcomes":[{"id":"outcome-pcg-repair","statement":"PCG Certificates is compact and uses only real card imagery when present; the staff completion handoff no longer promotes the customer portal; PCG back controls meet the mobile touch target; and authorized platform support can load the PCG commerce publisher while tenant isolation remains intact.","proofConditionIds":["proof-live","proof-certificates-visual"]}],"objective":"Apply and ship this focused PCG repair from current protected main.\n\nCertificates: replace the oversized gallery with a compact certificate list on desktop and mobile. Each row uses a real slab/front thumbnail when available and a neutral ShieldCheck thumbnail when absent, plus card identity, cert number, official PCG grade when available, chevron, search, and existing submission click-through. Eliminate the static PCG_CARD_IMAGE fallback from this surface.\n\nCompletion handoff: remove the staff-side Open customer portal control, rename the completion heading to Review & notify customer, retain the WMP link inside the customer email body, and reduce handoff row vertical spacing.\n\nPCG mode/admin header: raise both Back to PCG work queue controls to 44x44.\n\nPublisher authorization: keep authenticated user_tenant_access membership authorization and add authenticated global GodMode, PlatformAdmin, and Admin authorization from user_roles where tenant_id is null. Preserve anonymous denial and tenant isolation.\n\nScope exclusions: Readiness, uploaded PCG background, logo, grading scale, Receive, Grade, Customers, Payments, Migration, Settings, Capture, and the compact dashboard are unchanged.\n\nCreate one fresh focused PR, Gate it, squash merge it, release the frontend and pcg-commerce-publisher Supabase Edge Function, and prove the live Certificates route.","constraints":[{"id":"scope-four-files","statement":"The repair is limited to PcgWorkspace, PCGCompletionCenter, PCGModesWorkspace, and pcg-commerce-publisher.","proofConditionIds":["proof-live"]},{"id":"preserve-pcg-surfaces","statement":"Readiness, the uploaded PCG background and logo, grading scale, Receive, Grade, Customers, Payments, Migration, Settings, Capture, and the compact dashboard remain unchanged.","proofConditionIds":["proof-live"]},{"id":"authorization-boundary","statement":"Anonymous callers and authenticated users lacking either tenant access or an approved global platform role remain unauthorized.","proofConditionIds":["proof-live"]},{"id":"visual-artifact-scope","statement":"The visual change is limited to the PCG Certificates surface.","proofConditionIds":["proof-certificates-visual"]},{"id":"visual-content-truth","statement":"Certificates uses only real card data and real card imagery when present; absent imagery is represented by a neutral icon rather than invented content.","proofConditionIds":["proof-certificates-visual"]},{"id":"tenant-visual-isolation","statement":"The visual repair remains isolated to PCG and preserves PCG branding.","proofConditionIds":["proof-certificates-visual"]},{"id":"visual-viewport-authority","statement":"The Certificates repair is accepted on both desktop and mobile.","proofConditionIds":["proof-certificates-visual"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"proof-live","kind":"runtime","claim":"The PCG repair is live with frontend and pcg-commerce-publisher as the affected production release targets.","route":"/pcg/DASHBOARD?mode=grading&tool=certs","required":true,"requiredReleaseTargets":["frontend","supabaseEdge"]},{"id":"proof-certificates-visual","kind":"visual","claim":"On desktop and mobile, PCG Certificates renders compact certificate rows, uses real slab/front thumbnails only when available, and has no repeated static fallback card image.","route":"/pcg/DASHBOARD?mode=grading&tool=certs","roleRef":"GodMode","required":true}]},"repairGeneration":null,"executionEnvelope":{"ship":true,"version":1,"approved":true,"missionId":null,"ownerApproved":true,"releaseIntent":null,"sourceTargets":["src/pages/crm/PcgWorkspace.tsx","src/pages/card-grading/PCGCompletionCenter.tsx","src/pages/card-grading/PCGModesWorkspace.tsx","supabase/functions/pcg-commerce-publisher/index.ts"],"requestContract":{"outcomes":[{"id":"outcome-pcg-repair","statement":"PCG Certificates is compact and uses only real card imagery when present; the staff completion handoff no longer promotes the customer portal; PCG back controls meet the mobile touch target; and authorized platform support can load the PCG commerce publisher while tenant isolation remains intact.","proofConditionIds":["proof-live","proof-certificates-visual"]}],"objective":"Apply and ship this focused PCG repair from current protected main.\n\nCertificates: replace the oversized gallery with a compact certificate list on desktop and mobile. Each row uses a real slab/front thumbnail when available and a neutral ShieldCheck thumbnail when absent, plus card identity, cert number, official PCG grade when available, chevron, search, and existing submission click-through. Eliminate the static PCG_CARD_IMAGE fallback from this surface.\n\nCompletion handoff: remove the staff-side Open customer portal control, rename the completion heading to Review & notify customer, retain the WMP link inside the customer email body, and reduce handoff row vertical spacing.\n\nPCG mode/admin header: raise both Back to PCG work queue controls to 44x44.\n\nPublisher authorization: keep authenticated user_tenant_access membership authorization and add authenticated global GodMode, PlatformAdmin, and Admin authorization from user_roles where tenant_id is null. Preserve anonymous denial and tenant isolation.\n\nScope exclusions: Readiness, uploaded PCG background, logo, grading scale, Receive, Grade, Customers, Payments, Migration, Settings, Capture, and the compact dashboard are unchanged.\n\nCreate one fresh focused PR, Gate it, squash merge it, release the frontend and pcg-commerce-publisher Supabase Edge Function, and prove the live Certificates route.","constraints":[{"id":"scope-four-files","statement":"The repair is limited to PcgWorkspace, PCGCompletionCenter, PCGModesWorkspace, and pcg-commerce-publisher.","proofConditionIds":["proof-live"]},{"id":"preserve-pcg-surfaces","statement":"Readiness, the uploaded PCG background and logo, grading scale, Receive, Grade, Customers, Payments, Migration, Settings, Capture, and the compact dashboard remain unchanged.","proofConditionIds":["proof-live"]},{"id":"authorization-boundary","statement":"Anonymous callers and authenticated users lacking either tenant access or an approved global platform role remain unauthorized.","proofConditionIds":["proof-live"]},{"id":"visual-artifact-scope","statement":"The visual change is limited to the PCG Certificates surface.","proofConditionIds":["proof-certificates-visual"]},{"id":"visual-content-truth","statement":"Certificates uses only real card data and real card imagery when present; absent imagery is represented by a neutral icon rather than invented content.","proofConditionIds":["proof-certificates-visual"]},{"id":"tenant-visual-isolation","statement":"The visual repair remains isolated to PCG and preserves PCG branding.","proofConditionIds":["proof-certificates-visual"]},{"id":"visual-viewport-authority","statement":"The Certificates repair is accepted on both desktop and mobile.","proofConditionIds":["proof-certificates-visual"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"proof-live","kind":"runtime","claim":"The PCG repair is live with frontend and pcg-commerce-publisher as the affected production release targets.","route":"/pcg/DASHBOARD?mode=grading&tool=certs","required":true,"requiredReleaseTargets":["frontend","supabaseEdge"]},{"id":"proof-certificates-visual","kind":"visual","claim":"On desktop and mobile, PCG Certificates renders compact certificate rows, uses real slab/front thumbnails only when available, and has no repeated static fallback card image.","route":"/pcg/DASHBOARD?mode=grading&tool=certs","roleRef":"GodMode","required":true}]},"repairGeneration":null,"proofRequirements":null,"controlPlaneUnfreeze":false,"controlPlaneMaintenance":false,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":null},"proofRequirements":null,"controlPlaneUnfreeze":false,"durableMutationResume":true,"controlPlaneMaintenance":false,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":null},"recovery":false,"fingerprint":"2301ed004b82b011244e096faddcb0eaf46bb4c8081a22921e386bc449f397e1","replayCount":0,"serializedBytes":20909},"tenant_id":"9602e177-0cbb-496c-bdf5-2fbc93f1b859","created_at":"2026-09-29T16:08:00.788305+00:00","proof_gate":"repository_mutation_intent_persisted","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent","idempotency_key":"mission:cd208b1a-0630-4a9c-9049-815789811505:repository-mutation-intent:2301ed004b82b011244e096faddcb0eaf46bb4c8081a22921e386bc449f397e1:0","mission_step_id":"b4e510ae-2c95-4289-b8ee-c628cee139e4","command_center_event_id":"cd208b1a-0630-4a9c-9049-815789811505"},{"id":"4d82f38b-61be-448c-a2c7-6290334e6c8d","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":"ai/redfish-scope-resolver-live-20260902","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":5199,"releaseCount":0,"toolCallCount":1,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.4-refresh-fastpath","prNumber":null,"terminal":false,"missionId":"c274504c-21a5-4e63-b32d-01bf7f517ab2","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":{"handlerMs":12,"missionSetupMs":3580},"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /mission/execute again automatically with this same missionId without another owner prompt or workflow switch.","receiptRef":{"mode":"full","missionId":"c274504c-21a5-4e63-b32d-01bf7f517ab2"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":5263,"likelyAffectedFiles":["scripts/supabase-migration-release.mjs","scripts/validate-supabase-migration-integrity.mjs","scripts/__tests__/supabase-migration-release.test.mjs","src/components/CallFlow/WorkflowLiveCoachingFocus.tsx","src/components/ReleaseAllLeadsButton.tsx","src/components/ReleaseLeadButton.tsx","src/components/GlobalCommandPalette.tsx","src/components/academy/RoleplayFeedbackPanel.tsx","src/components/AdaptiveBusinessDashboard.tsx","src/components/admin/AdminPage.tsx","src/components/admin/AdminPageContext.tsx","src/components/admin/InvoicePermissionsManager.tsx"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"de8369b6-a78f-40bb-ae1f-28ffca62bc7e","created_at":"2026-09-02T18:26:10.198136+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:c274504c-21a5-4e63-b32d-01bf7f517ab2:execute_mission:repair_mission_synthesis_ready:current-generation","mission_step_id":"6ad74322-854f-46ad-9ece-d31cf0200eb7","command_center_event_id":"c274504c-21a5-4e63-b32d-01bf7f517ab2"},{"id":"4d83996d-603a-4b2c-922f-d9218dd80f43","source":"cc-execution","status":"deployment_dispatched","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/cloudflare-containers-user-ci-fallback","reason":null,"status":"deployment_dispatched","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":null,"prNumber":1754,"terminal":false,"missionId":"1f4343b6-833e-42d5-9d6e-03736cca5e02","operation":"automatic_mission_resume","proofGate":"canonical_release_dispatched","sourceSha":"202f728a155097211da74d4a344882bd066a5110","timingsMs":{"prReadinessMs":920,"approvedPlanMs":0,"shipAndProveMs":5393,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"1f4343b6-833e-42d5-9d6e-03736cca5e02"},"performance":null,"deploymentId":"forgejo-main-202f728a1550","workflowRunId":null,"releaseTargets":{"frontend":false,"onrunner":false,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":2088,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-04T21:12:55.049784+00:00","proof_gate":"canonical_release_dispatched","source_sha":null,"external_id":"1754","receipt_type":"automatic_mission_resume","idempotency_key":"mission:1f4343b6-833e-42d5-9d6e-03736cca5e02:automatic-mission-resume:1754:canonical_release_dispatched","mission_step_id":"88284b5b-21b6-49e6-a600-fbad7a169a81","command_center_event_id":"1f4343b6-833e-42d5-9d6e-03736cca5e02"},{"id":"4d845c35-b781-44a4-9016-960e4a169473","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"pending","frontend-cloudflare/live":"pending","supabase-edge-production/live":"pending"},"mainSha":"dc2391590646c3fb02ff43aa5730ff272530676d","missing":[],"pending":["forgejo-release/workflow","supabase-edge-production/live","frontend-cloudflare/live"],"required":["forgejo-main/source","forgejo-release/workflow","supabase-edge-production/live","frontend-cloudflare/live"],"sourceSha":"dc2391590646c3fb02ff43aa5730ff272530676d","releaseState":"pending","sourceInMain":true,"compareStatus":"identical","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/1401","runId":1401,"status":"running","conclusion":null,"failedJobs":[],"diagnostics":null},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-19T03:52:24.809909+00:00","proof_gate":"canonical_release_pending","source_sha":"dc2391590646c3fb02ff43aa5730ff272530676d","external_id":"forgejo-main-dc2391590646","receipt_type":"canonical_release_status","idempotency_key":"mission:c8ef33b0-1224-452f-a654-7279b00c298e:forgejo-release-status:dc2391590646c3fb02ff43aa5730ff272530676d:pending:forgejo-main/source=success|forgejo-release/workflow=pending|supabase-edge-production/live=pending|frontend-cloudflare/live=pending","mission_step_id":"19aa37fb-afe3-4404-aacf-ab2d8f250ed8","command_center_event_id":"c8ef33b0-1224-452f-a654-7279b00c298e"},{"id":"4d84a348-de04-4eef-a622-4295dd158fff","source":"forgejo-runtime","status":"verified","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"success","frontend-cloudflare/live":"success"},"mainSha":"2aefb8e5f6d1457937180d356c03ffcaa0c3e790","missing":[],"pending":[],"required":["forgejo-main/source","forgejo-release/workflow","frontend-cloudflare/live"],"sourceSha":"2aefb8e5f6d1457937180d356c03ffcaa0c3e790","releaseState":"verified","sourceInMain":true,"compareStatus":"identical","releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"frontend":"success"},"requestContractHash":"0acea9ab70ae91f8d5b571c5c5169061b33665c048f832f3b36075292bcbe6eb","forgejoWorkflowProof":{"error":"workflow_run_id_missing","runId":null},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-27T14:31:19.220043+00:00","proof_gate":"canonical_release_terminal_verified","source_sha":"2aefb8e5f6d1457937180d356c03ffcaa0c3e790","external_id":"forgejo-main-2aefb8e5f6d1","receipt_type":"canonical_release_status","idempotency_key":"mission:5ab1065a-8e19-468f-963e-af12f207c069:forgejo-release-status:2aefb8e5f6d1457937180d356c03ffcaa0c3e790:verified:forgejo-main/source=success|forgejo-release/workflow=success|frontend-cloudflare/live=success","mission_step_id":"4efe8afe-bf14-45e5-9930-9c466c886fd9","command_center_event_id":"5ab1065a-8e19-468f-963e-af12f207c069"},{"id":"4d866aee-c47d-4d25-b403-42d6d176d95c","source":"forgejo","status":"waiting","payload":{"branch":"ai/big-papis-calendar-doubleclick","prNumber":3406,"nextAction":null,"mergeCommitSha":"8886dcb005cc223c091bb80ff16e00a7bbb9d574","branchDeletedAfterMerge":true,"correctiveGenerationCreated":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-22T10:46:13.157769+00:00","proof_gate":"forgejo_merged_pr_is_authoritative_source_lineage","source_sha":"8886dcb005cc223c091bb80ff16e00a7bbb9d574","external_id":"3406","receipt_type":"source_lineage_merged_pr_authoritative","idempotency_key":"mission:e1c12577-4e1e-4d8c-b1a8-1dfefd7dd6f6:merged-pr:3406:8886dcb005cc223c091bb80ff16e00a7bbb9d574","mission_step_id":"190c84f8-01c4-482c-a79f-c7a21a996162","command_center_event_id":"e1c12577-4e1e-4d8c-b1a8-1dfefd7dd6f6"},{"id":"4d86c7ed-1d63-4b35-a013-0d5535ffabd4","source":"paul-scheduler:compiler-recovery-v1","status":"started","payload":{"attempt":1,"retryable":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-12T20:28:01.245209+00:00","proof_gate":"compiler_scheduler_exact_mission_claimed","source_sha":null,"external_id":null,"receipt_type":"bounded_compiler_scheduler_recovery","idempotency_key":"mission:62adfd14-ade6-4cae-b542-10b019d33f4d:compiler-scheduler-recovery:1:started","mission_step_id":null,"command_center_event_id":"62adfd14-ade6-4cae-b542-10b019d33f4d"},{"id":"4d876c49-a529-4377-824a-64ec3a0fb0fe","source":"cc-execution","status":"deployment_dispatched","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":null,"reason":null,"status":"deployment_dispatched","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.43.0-control-plane-efficiency-iii","prNumber":83,"terminal":false,"missionId":"f1063950-7071-42ee-a826-81d12e0decec","operation":"ship_and_prove","proofGate":"canonical_release_dispatched","sourceSha":"0917f973b746779a52cc6f686c7d400e5c16045f","timingsMs":null,"nextAction":null,"receiptRef":{"mode":"full","missionId":"f1063950-7071-42ee-a826-81d12e0decec"},"performance":null,"deploymentId":"forgejo-main-0917f973b746","workflowRunId":229,"releaseTargets":{"frontend":false,"onrunner":false,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1283,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-08-15T02:37:47.8637+00:00","proof_gate":"canonical_release_dispatched","source_sha":"0917f973b746779a52cc6f686c7d400e5c16045f","external_id":"forgejo-main-0917f973b746","receipt_type":"ship_and_prove","idempotency_key":"mission:f1063950-7071-42ee-a826-81d12e0decec:ship_and_prove:canonical_release_dispatched:0917f973b746779a52cc6f686c7d400e5c16045f:229","mission_step_id":"d054e37c-63fa-4dcb-aba8-3dc23fb7f3e4","command_center_event_id":"f1063950-7071-42ee-a826-81d12e0decec"},{"id":"4d8871a3-c9f1-4e13-a027-f3b87ebc3d27","source":"cc-execution","status":"waiting_for_gate","payload":{"ok":true,"jobId":null,"phase":"implementation","branch":"ai/objective-first-repair-3cc620944e5e","reason":"provider_verified_auto_progress_owns_gate_merge_release_outside_owner_response","status":"waiting_for_gate","metrics":{"receiptBytes":7447,"releaseCount":0,"toolCallCount":1,"repeatedCallCount":0,"executorlessWaitMs":0,"firstUsefulResultAt":"2026-10-01T18:56:31.743Z","recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.64.38-paul-owner-velocity","prNumber":4388,"terminal":false,"missionId":"3cc62094-4e5e-4485-b47a-85d29e68afcd","operation":"execute_mission","proofGate":"repair_mission_pr_handed_off_to_supervisor","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":3871,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":664,"missionSetupMs":329,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":329,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":329,"repositoryMutationMs":3207,"repositoryProviderMs":3207,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":2015,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":329,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":1192},"nextAction":"Canonical KnockLaunch Gate notifier and durable mission supervisor own Gate, merge, release, and proof progression from this exact PR head outside the owner response path.","receiptRef":{"mode":"full","missionId":"3cc62094-4e5e-4485-b47a-85d29e68afcd"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":3254,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-01T18:56:36.626274+00:00","proof_gate":"repair_mission_pr_handed_off_to_supervisor","source_sha":null,"external_id":"4388","receipt_type":"execute_mission","idempotency_key":"mission:3cc62094-4e5e-4485-b47a-85d29e68afcd:execute_mission:repair_mission_pr_handed_off_to_supervisor:current-generation","mission_step_id":"9ac50784-dde4-4976-9f80-412bfd7ff7d7","command_center_event_id":"3cc62094-4e5e-4485-b47a-85d29e68afcd"},{"id":"4d8aa81b-3d60-40cb-a3e4-cf9498603372","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"release","branch":null,"reason":"pull_request_already_merged","status":"retryable","metrics":{"receiptBytes":2771,"releaseCount":1,"toolCallCount":4,"repeatedCallCount":2,"ownerInterruptionCount":0},"version":"1.36.7-explicit-route-proof-intent","prNumber":4721,"terminal":false,"missionId":"2b77df48-75b0-4b6a-8970-9ef995337f1d","operation":"execute_mission","proofGate":"repair_mission_pr_ready_retryable","sourceSha":"c157cee53cb5a4c1458352abff3e5ae4c6bc0b5b","timingsMs":null,"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"2b77df48-75b0-4b6a-8970-9ef995337f1d"},"performance":null,"deploymentId":"canonical-release-c157cee53cb5","workflowRunId":31672767850,"releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":488,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-08-13T06:11:16.631911+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":"c157cee53cb5a4c1458352abff3e5ae4c6bc0b5b","external_id":"canonical-release-c157cee53cb5","receipt_type":"execute_mission","idempotency_key":"mission:2b77df48-75b0-4b6a-8970-9ef995337f1d:execute_mission:repair_mission_pr_ready_retryable","mission_step_id":"39dadc15-46a3-4de5-aff5-e4c434a4ac79","command_center_event_id":"2b77df48-75b0-4b6a-8970-9ef995337f1d"},{"id":"4d8ce717-338f-43f3-b07e-6b9e4054f87d","source":"forgejo-runtime","status":"verified","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"success","frontend-cloudflare/live":"success"},"mainSha":"427c3b7a0e8dacadc76f69cd9d96dede59098858","missing":[],"pending":[],"required":["forgejo-main/source","forgejo-release/workflow","frontend-cloudflare/live"],"sourceSha":"427c3b7a0e8dacadc76f69cd9d96dede59098858","releaseState":"verified","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":true,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"frontend":"success"},"requestContractHash":"a5c2fb5b0a470a29ab4cb9cf8afe11a5c56f43a6b7ce3aa70be310f8d5ee170e","forgejoWorkflowProof":{"runId":14547,"source":"signed_push_receipt","status":"success","results":{},"conclusion":"success","targetStates":{"frontend":"success"},"targetJobCount":7,"observedTargetStates":{"frontend":"success"}},"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-02T22:32:02.812655+00:00","proof_gate":"canonical_release_terminal_verified","source_sha":"427c3b7a0e8dacadc76f69cd9d96dede59098858","external_id":"forgejo-main-427c3b7a0e8d","receipt_type":"canonical_release_status","idempotency_key":"mission:7926cfd6-3310-45a6-8588-5fcbe5d8d848:forgejo-release-status:427c3b7a0e8dacadc76f69cd9d96dede59098858:verified:forgejo-main/source=success|forgejo-release/workflow=success|frontend-cloudflare/live=success","mission_step_id":"dddfbc9c-4c87-4654-84c3-b2ab6682545d","command_center_event_id":"7926cfd6-3310-45a6-8588-5fcbe5d8d848"},{"id":"4d8d7dc6-38c5-4691-9aa9-68e531b4504a","source":"cc-execution","status":"blocked","payload":{"ok":false,"jobId":null,"phase":"implementation","branch":"ai/gate-notifier-host-native-20260904","reason":"forgejo_release_source_not_contained_in_current_main","status":"blocked","metrics":{"receiptBytes":0,"releaseCount":1,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.40-gate-shallow-history-refreeze","prNumber":1687,"terminal":false,"missionId":"f9dd3f2d-3cd6-422a-8487-c33a0a1bc9f4","operation":"execute_mission","proofGate":"canonical_release_blocked","sourceSha":"52eb9b032130c4d0fdabdf400b2945d033ac02bf","timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":9815,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":1027,"approvedPlanMs":0,"missionSetupMs":1073,"providerAuthMs":0,"shipAndProveMs":8482,"ledgerPrepareMs":1073,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":1073,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":1073,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"f9dd3f2d-3cd6-422a-8487-c33a0a1bc9f4"},"performance":null,"deploymentId":"forgejo-main-52eb9b032130","workflowRunId":5159,"releaseTargets":{"frontend":false,"onrunner":false,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1428,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-04T12:57:33.911969+00:00","proof_gate":"canonical_release_blocked","source_sha":"52eb9b032130c4d0fdabdf400b2945d033ac02bf","external_id":"forgejo-main-52eb9b032130","receipt_type":"execute_mission","idempotency_key":"mission:f9dd3f2d-3cd6-422a-8487-c33a0a1bc9f4:execute_mission:canonical_release_blocked:current-generation","mission_step_id":"d569a507-22f7-4a3c-a017-11112380f8c7","command_center_event_id":"f9dd3f2d-3cd6-422a-8487-c33a0a1bc9f4"},{"id":"4d8f3dba-f9ac-4273-a90e-35513778d957","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":"ai/forgejo-permanent-hardening-0908","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.77-mcp-oauth-es256","prNumber":null,"terminal":false,"missionId":"a78a1407-c466-450c-b0bd-a05990918dff","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":406,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":635,"providerAuthMs":0,"ledgerPrepareMs":635,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":635,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":635,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /mission/execute again automatically with this same missionId without another owner prompt or workflow switch.","receiptRef":{"mode":"full","missionId":"a78a1407-c466-450c-b0bd-a05990918dff"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":8225,"likelyAffectedFiles":["config/control-plane-capabilities.json","config/control-plane-restore-point.json","scripts/command-center-host-agent/forgejo-watchdog.sh","scripts/command-center-host-agent/install-forgejo-watchdog.sh","scripts/command-center-host-agent/knocklaunch-forgejo-watchdog.service","scripts/command-center-host-agent/knocklaunch-forgejo-watchdog.timer","scripts/command-center-host-agent/verify-forgejo-watchdog.sh",".forgejo/workflows/knocklaunch.yml","src/__tests__/contracts/control-plane-restore-point.contract.test.ts","src/__tests__/contracts/control-plane-routing.contract.test.ts","src/__tests__/contracts/control-plane-speed.contract.test.ts","scripts/validate-command-center-contracts.mjs"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-08T19:17:14.405552+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:a78a1407-c466-450c-b0bd-a05990918dff:execute_mission:repair_mission_synthesis_ready:current-generation","mission_step_id":"8566a47a-ae2a-4bf8-88eb-39c0c1c985b0","command_center_event_id":"a78a1407-c466-450c-b0bd-a05990918dff"},{"id":"4d92a7ec-2bdd-4c97-b270-2d8953d0212f","source":"cc-execution","status":"waiting_for_gate","payload":{"ok":true,"jobId":null,"phase":"implementation","branch":"ai/objective-first-repair-0270bdd55fff","reason":"provider_verified_auto_progress_owns_gate_merge_release_outside_owner_response","status":"waiting_for_gate","metrics":{"receiptBytes":19267,"releaseCount":0,"toolCallCount":6,"repeatedCallCount":4,"executorlessWaitMs":807812,"firstUsefulResultAt":"2026-10-02T16:26:26.763Z","recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.64.50-onepath-source-domain","prNumber":4496,"terminal":false,"missionId":"0270bdd5-5fff-46f3-bc11-c1481e103f21","operation":"execute_mission","proofGate":"repair_mission_pr_handed_off_to_supervisor","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":4474,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":538,"missionSetupMs":279,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":279,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":279,"repositoryMutationMs":3936,"repositoryProviderMs":3936,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":2369,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":279,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":1567},"nextAction":"Canonical KnockLaunch Gate notifier and durable mission supervisor own Gate, merge, release, and proof progression from this exact PR head outside the owner response path.","receiptRef":{"mode":"full","missionId":"0270bdd5-5fff-46f3-bc11-c1481e103f21"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":3575,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-02T16:40:00.880997+00:00","proof_gate":"repair_mission_pr_handed_off_to_supervisor","source_sha":null,"external_id":"4496","receipt_type":"execute_mission","idempotency_key":"mission:0270bdd5-5fff-46f3-bc11-c1481e103f21:execute_mission:repair_mission_pr_handed_off_to_supervisor:current-generation","mission_step_id":"4427ad63-763a-4d54-a0ed-85de5899a772","command_center_event_id":"0270bdd5-5fff-46f3-bc11-c1481e103f21"},{"id":"4d948c6d-900d-4686-b243-009006e9f799","source":"cc-execution","status":"waiting","payload":{"body":{"ship":true,"files":[],"branch":"ai/objective-first-repair-b223b0879cc6","writes":[],"patches":[],"version":1,"approved":true,"missionId":"b223b087-9cc6-40ab-91f1-a98655fe0203","objective":"Force the current protected main PAUL semantic-composition runtime live now. Current main already contains the intended PAUL semantic changes and version 1.64.79-paul-semantic-composition-release, while production is still 1.64.77. Make only the cc-execution release-marker bump needed to trigger a fresh canonical cc-execution release from current main, then Gate, squash merge, deploy cc-execution, and prove production runtime identity. Do not touch frontend, migrations, Supabase Edge, or Visual Witness.","repository":"noel/KnockLaunchOS","ownerApproved":true,"releaseIntent":null,"sourceTargets":["workers/cc-execution/src/version.js"],"anchored_edits":[{"find":"export const CC_EXECUTION_VERSION = \"1.64.79-paul-semantic-composition-release\";","path":"workers/cc-execution/src/version.js","replace":"export const CC_EXECUTION_VERSION = \"1.64.80-paul-semantic-composition-live\";"}],"implementation":{"files":[],"writes":[]},"requestContract":{"intent":{"rawUtterance":"Force the current protected main PAUL semantic-composition runtime live now. Current main already contains the intended PAUL semantic changes and version 1.64.79-paul-semantic-composition-release, while production is still 1.64.77. Make only the cc-execution release-marker bump needed to trigger a fresh canonical cc-execution release from current main, then Gate, squash merge, deploy cc-execution, and prove production runtime identity. Do not touch frontend, migrations, Supabase Edge, or Visual Witness.","wordingChanged":false,"canonicalIntent":"Force the current protected main PAUL semantic-composition runtime live now. Current main already contains the intended PAUL semantic changes and version 1.64.79-paul-semantic-composition-release, while production is still 1.64.77. Make only the cc-execution release-marker bump needed to trigger a fresh canonical cc-execution release from current main, then Gate, squash merge, deploy cc-execution, and prove production runtime identity. Do not touch frontend, migrations, Supabase Edge, or Visual Witness.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"push","statement":"Force the current protected main PAUL semantic-composition runtime live now. Current main already contains the intended PAUL semantic changes and version 1.64.79-paul-semantic-composition-release, while production is still 1.64.77. Make only the cc-execution release-marker bump needed to trigger a fresh canonical cc-execution release from current main, then Gate, squash merge, deploy cc-execution, and prove production runtime identity. Do not touch frontend, migrations, Supabase Edge, or Visual Witness.","provenance":{"reason":null,"source":"current_explicit_owner_request","inherited":false,"blockingAuthority":true},"proofConditionIds":["runtime"]}],"objective":"Force the current protected main PAUL semantic-composition runtime live now. Current main already contains the intended PAUL semantic changes and version 1.64.79-paul-semantic-composition-release, while production is still 1.64.77. Make only the cc-execution release-marker bump needed to trigger a fresh canonical cc-execution release from current main, then Gate, squash merge, deploy cc-execution, and prove production runtime identity. Do not touch frontend, migrations, Supabase Edge, or Visual Witness.","constraints":[{"id":"cc-only","statement":"Release cc-execution only; no frontend, migrations, Supabase Edge, or Visual Witness.","provenance":{"reason":null,"source":"current_explicit_owner_request","inherited":false,"blockingAuthority":true},"proofConditionIds":["runtime"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"runtime","kind":"runtime","claim":"Production cc-execution runs the fresh current-main PAUL semantic-composition release.","required":true}]},"repairGeneration":null,"executionEnvelope":{"ship":true,"version":1,"approved":true,"missionId":null,"ownerApproved":true,"releaseIntent":null,"sourceTargets":["workers/cc-execution/src/version.js"],"requestContract":{"intent":{"rawUtterance":"Force the current protected main PAUL semantic-composition runtime live now. Current main already contains the intended PAUL semantic changes and version 1.64.79-paul-semantic-composition-release, while production is still 1.64.77. Make only the cc-execution release-marker bump needed to trigger a fresh canonical cc-execution release from current main, then Gate, squash merge, deploy cc-execution, and prove production runtime identity. Do not touch frontend, migrations, Supabase Edge, or Visual Witness.","wordingChanged":false,"canonicalIntent":"Force the current protected main PAUL semantic-composition runtime live now. Current main already contains the intended PAUL semantic changes and version 1.64.79-paul-semantic-composition-release, while production is still 1.64.77. Make only the cc-execution release-marker bump needed to trigger a fresh canonical cc-execution release from current main, then Gate, squash merge, deploy cc-execution, and prove production runtime identity. Do not touch frontend, migrations, Supabase Edge, or Visual Witness.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"push","statement":"Force the current protected main PAUL semantic-composition runtime live now. Current main already contains the intended PAUL semantic changes and version 1.64.79-paul-semantic-composition-release, while production is still 1.64.77. Make only the cc-execution release-marker bump needed to trigger a fresh canonical cc-execution release from current main, then Gate, squash merge, deploy cc-execution, and prove production runtime identity. Do not touch frontend, migrations, Supabase Edge, or Visual Witness.","provenance":{"reason":null,"source":"current_explicit_owner_request","inherited":false,"blockingAuthority":true},"proofConditionIds":["runtime"]}],"objective":"Force the current protected main PAUL semantic-composition runtime live now. Current main already contains the intended PAUL semantic changes and version 1.64.79-paul-semantic-composition-release, while production is still 1.64.77. Make only the cc-execution release-marker bump needed to trigger a fresh canonical cc-execution release from current main, then Gate, squash merge, deploy cc-execution, and prove production runtime identity. Do not touch frontend, migrations, Supabase Edge, or Visual Witness.","constraints":[{"id":"cc-only","statement":"Release cc-execution only; no frontend, migrations, Supabase Edge, or Visual Witness.","provenance":{"reason":null,"source":"current_explicit_owner_request","inherited":false,"blockingAuthority":true},"proofConditionIds":["runtime"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"runtime","kind":"runtime","claim":"Production cc-execution runs the fresh current-main PAUL semantic-composition release.","required":true}]},"repairGeneration":null,"proofRequirements":null,"controlPlaneUnfreeze":true,"controlPlaneMaintenance":true,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":"Owner explicitly ordered the blocked PAUL release pushed through from current protected main."},"proofRequirements":null,"controlPlaneUnfreeze":true,"durableMutationResume":true,"controlPlaneMaintenance":true,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":"Owner explicitly ordered the blocked PAUL release pushed through from current protected main."},"recovery":false,"fingerprint":"6df5673aff40244258309fbcfa11d23d6054d9a1cc7a6127617b428651a0dd11","replayCount":0,"serializedBytes":7801},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-03T12:57:26.07011+00:00","proof_gate":"repository_mutation_intent_persisted","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent","idempotency_key":"mission:b223b087-9cc6-40ab-91f1-a98655fe0203:repository-mutation-intent:6df5673aff40244258309fbcfa11d23d6054d9a1cc7a6127617b428651a0dd11:0","mission_step_id":"a22abfe9-c7f5-4c28-9edc-c5d134024287","command_center_event_id":"b223b087-9cc6-40ab-91f1-a98655fe0203"},{"id":"4d984248-4b9a-44c0-8fdc-e87fc682e5b6","source":"cc-execution","status":"waiting","payload":{"body":{"ship":true,"branch":"ai/objective-first-repair-8457c7f4d1ed","approved":true,"missionId":"8457c7f4-d1ed-4372-bb14-8a2b0e1a1557","objective":"Owner screenshot correction for PCG Card Vault. Work from current protected main and target the actual dedicated PCG workspace route chain (src/PcgAppShell.tsx -> src/pages/card-grading/PCGCanonicalWorkspaceRoute.tsx and whichever exact child renders the visible toolbar). The visible in-page toolbar in the screenshot — back arrow, PCG/Card Vault title, global workspace search/avatar area, and Receive Cards / Website Upload / Card Vault / Batch Upload / Customers buttons — is the header the owner means. Make that toolbar and the complete Card Vault Controls deck immediately below it one non-scrolling sticky stack at the top of the SAME workspace scroll container. Row 1 = existing visible PCG toolbar unchanged. Row 2 = Card Vault Controls, edge-to-edge directly under row 1 with zero gap. The card vault body/results alone scroll beneath them. Do NOT use CRMShell header slots, document.body portals, fixed pixel top offsets, fake spacers, or the outer dedicated app shell as the anchor. Remove/supersede any prior shell-subrow/body-portal implementation if present. Preserve all existing vault search, filters, 5,665+ counts, pagination, upload workflows, navigation, branding, and mobile behavior. No Visual Witness. Gate, squash merge, release frontend.","ownerApproved":true,"sourceTargets":["src/PcgAppShell.tsx","src/pages/card-grading/PCGCanonicalWorkspaceRoute.tsx","src/pages/card-grading/PCGModesWorkspace.tsx","src/pages/card-grading/PCGWorkspace.tsx","src/pages/crm/PcgWorkspace.tsx","src/shells/pcg/PCGTenantShell.tsx"],"anchored_edits":[{"path":"src/pages/card-grading/PCGModesWorkspace.tsx","new_content":"<div className=\"flex flex-wrap gap-1 pb-0.5\">{modeTools.map(item=>{const active=activeTab===item.id&&(item.id!=='vault'||vaultMode===(item.vault||'overview'));return <button key={`${item.id}:${item.vault||'default'}`} type=\"button\" onClick={()=>openTool(mode,item.id,item.vault)} className={`whitespace-nowrap rounded-xl border px-3 py-2 text-[10px] font-black uppercase tracking-[.08em] transition ${active?'border-[#d8bb78]/40 bg-[#d8bb78]/[.12] text-[#f2d99f]':'border-white/[.09] bg-white/[.035] text-white/52 hover:bg-white/[.08] hover:text-white/82'}`}>{item.label}</button>})}</div>","old_content":"<div className=\"mt-2 flex flex-wrap gap-1 pb-0.5\">{modeTools.map(item=>{const active=activeTab===item.id&&(item.id!=='vault'||vaultMode===(item.vault||'overview'));return <button key={`${item.id}:${item.vault||'default'}`} type=\"button\" onClick={()=>openTool(mode,item.id,item.vault)} className={`whitespace-nowrap rounded-xl border px-3 py-2 text-[10px] font-black uppercase tracking-[.08em] transition ${active?'border-[#d8bb78]/40 bg-[#d8bb78]/[.12] text-[#f2d99f]':'border-white/[.09] bg-white/[.035] text-white/52 hover:bg-white/[.08] hover:text-white/82'}`}>{item.label}</button>})}</div>"}],"durableMutationResume":true},"recovery":false,"fingerprint":"d370c4cb741f3488743ba9b1904bd9ccbaeb4bf638059741aa4d89fbac408e05","replayCount":0,"serializedBytes":3017},"tenant_id":"9602e177-0cbb-496c-bdf5-2fbc93f1b859","created_at":"2026-10-04T15:50:52.724954+00:00","proof_gate":"repository_mutation_intent_persisted","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent","idempotency_key":"mission:8457c7f4-d1ed-4372-bb14-8a2b0e1a1557:repository-mutation-intent:d370c4cb741f3488743ba9b1904bd9ccbaeb4bf638059741aa4d89fbac408e05:0","mission_step_id":"e6a3fa25-2d92-42f2-b5f6-97738929736e","command_center_event_id":"8457c7f4-d1ed-4372-bb14-8a2b0e1a1557"},{"id":"4d9949ca-8cbf-49e8-8545-3bbc4f1a38ec","source":"cc-execution","status":"authorized","payload":{"paths":["workers/cc-execution/src/index-scoped-repo-patch.js"],"reason":"Owner-approved maintenance for this exact protected file and exact receipt lookup only.","baseSha":"e861640fe28411f64b205ce36586a0565eb007d9","issuedAt":1787856291440,"expiresAt":1787856471440,"missionId":"926a0009-18d5-4390-9f53-1f9c51a063a1","singleUse":true,"authorizationId":"49ecf2b8-8a19-4f88-bb3e-29530429a9bd"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-27T18:44:52.429428+00:00","proof_gate":"control_plane_maintenance_scope_authorized","source_sha":"e861640fe28411f64b205ce36586a0565eb007d9","external_id":null,"receipt_type":"control_plane_maintenance_authorization","idempotency_key":"control-plane-maintenance-authorize:49ecf2b8-8a19-4f88-bb3e-29530429a9bd","mission_step_id":"81809d64-92f5-4cbc-b942-124f3f076ffd","command_center_event_id":"926a0009-18d5-4390-9f53-1f9c51a063a1"},{"id":"4d99a76d-7631-4ce5-898f-035d79cda9a5","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"implementation","branch":"ai/roofhelpfinder-root-simple-20260828","reason":"retryable_provider_transport:GET:The operation was aborted due to timeout","status":"retryable","metrics":{"receiptBytes":4273,"releaseCount":0,"toolCallCount":3,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.55.0-godmode-restore-points","prNumber":null,"terminal":false,"missionId":"e663119a-57bc-4408-a831-f2e7b49c8f7c","operation":"execute_mission","proofGate":"repair_mission_execution_retryable","sourceSha":null,"timingsMs":{"handlerMs":7633,"prReadinessMs":0,"approvedPlanMs":7633,"missionSetupMs":560,"shipAndProveMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"e663119a-57bc-4408-a831-f2e7b49c8f7c"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":5027,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-28T14:38:08.987259+00:00","proof_gate":"repair_mission_execution_retryable","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:e663119a-57bc-4408-a831-f2e7b49c8f7c:execute_mission:repair_mission_execution_retryable:current-generation","mission_step_id":"f48adaac-3eb2-4651-96af-e3a537d8cc43","command_center_event_id":"e663119a-57bc-4408-a831-f2e7b49c8f7c"},{"id":"4d9a203a-3af3-4a7c-8330-cc0ab46a2752","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in pull request.","nextAction":{"lane":"cc-execution","action":"continue_implementation","reason":"synthesis_required","automationAllowed":true,"ownerActionRequired":false},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"pull_request\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"execute_mission\",\"status\":\"synthesis_required\",\"proofGate\":\"repair_mission_synthesis_ready\"},\"activeStep\":{\"key\":\"pull_request\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"release\",\"status\":\"ready\",\"lane\":\"production-release-conductor\"},\"nextSafeAction\":{\"action\":\"continue_implementation\",\"lane\":\"cc-execution\",\"reason\":\"synthesis_required\",\"automationAllowed\":true,\"ownerActionRequired\":false},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"cc-execution\",\"nextAction\":\"continue_implementation\",\"recoveryOwner\":\"cc-execution\"},\"acceptance\":{\"total\":6,\"verified\":2,\"pending\":4,\"percent\":33,\"satisfied\":false,\"verifiedIds\":[\"preflight\",\"implementation\"],\"pendingIds\":[\"pull_request\",\"release\",\"runtime_proof\",\"visual_proof\"]},\"stall\":{\"stalled\":true,\"reason\":\"step_deadline_exceeded\",\"step\":\"visual_proof\",\"deadlineAt\":\"2026-08-06T20:08:33.233135+00:00\",\"recoveryAction\":\"continue_implementation\"},\"blocker\":null,\"terminal\":false,\"branch\":\"ai/experience-editor-premium-v2\",\"prNumber\":4147,\"sourceSha\":null,\"deploymentId\":null}"},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-10-04T11:31:31.572613+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:fec79fc6-2ac3-4206-816c-f41570e83c9a:owner-progress-heartbeat:119407566","mission_step_id":"12f443c1-d4a7-4b1a-8445-a08117a63843","command_center_event_id":"fec79fc6-2ac3-4206-816c-f41570e83c9a"},{"id":"4d9ae067-95d3-46ec-b1ca-1bf50fbd16f3","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":"ai/objective-first-repair","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.46.2-autonomous-forgejo-merge-supervisor","prNumber":null,"terminal":false,"missionId":"d47602e1-44f6-4445-8b21-96855dc3b855","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":null,"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /repair/continue-mission automatically with this missionId without another owner prompt.","receiptRef":{"mode":"full","missionId":"d47602e1-44f6-4445-8b21-96855dc3b855"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":7379,"likelyAffectedFiles":[".forgejo/workflows/knocklaunch.yml","src/__tests__/contracts/canonical-deploy-dispatchers.test.ts","src/__tests__/contracts/canonical-production-release-status.test.ts","src/components/CallFlow/WorkflowCallCockpit.tsx","src/components/CallFlow/WorkflowLiveCoachingFocus.tsx","src/components/CallFlow/WorkflowTabs.tsx","src/components/PreWorkflowScreen.tsx","src/components/ReleaseAllLeadsButton.tsx","src/components/ReleaseLeadButton.tsx","src/components/WorkflowRouter.tsx","src/__tests__/commandCenter/deployDetection.test.ts","src/__tests__/contracts/cc-deploy-controller-liveness.test.ts"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-08-15T12:23:07.795744+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:d47602e1-44f6-4445-8b21-96855dc3b855:execute_mission:repair_mission_synthesis_ready","mission_step_id":"69470aba-1e10-452d-92a0-924c29fe06a0","command_center_event_id":"d47602e1-44f6-4445-8b21-96855dc3b855"},{"id":"4d9b6f0b-ee0e-42db-bb38-6d1cb4d6e494","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in implementation.","nextAction":{"lane":"cc-execution","action":"reconcile_pull_request","reason":"durable_state:pull_request","handoff":null,"capability":"light-control-plane","automationAllowed":true,"ownerActionRequired":false,"resumeFromCheckpoint":"preflight"},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"implementation\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"owner_progress_heartbeat\",\"status\":\"waiting\",\"proofGate\":\"owner_progress_heartbeat\"},\"activeStep\":{\"key\":\"pull_request\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"release\",\"status\":\"ready\",\"lane\":\"production-release-conductor\"},\"nextSafeAction\":{\"action\":\"reconcile_pull_request\",\"lane\":\"cc-execution\",\"reason\":\"durable_state:pull_request\",\"automationAllowed\":true,\"ownerActionRequired\":false,\"capability\":\"light-control-plane\",\"resumeFromCheckpoint\":\"preflight\",\"handoff\":null},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"cc-execution\",\"nextAction\":\"reconcile_pull_request\",\"recoveryOwner\":\"cc-execution\",\"capability\":\"light-control-plane\",\"resumeFromCheckpoint\":\"preflight\",\"handoff\":null},\"acceptance\":{\"total\":1,\"verified\":0,\"pending\":1,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[\"proof-production\"]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":\"runtime_proof\",\"deadlineAt\":\"2026-10-06T14:54:20.947247+00:00\",\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":null,\"prNumber\":null,\"sourceSha\":null,\"deploymentId\":null}"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T14:29:08.270139+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:8461f374-86b0-422f-bb81-3fb39febaab9:owner-progress-heartbeat:119419796","mission_step_id":"a036e1a4-6bb7-4248-b530-a16b22bcaaa4","command_center_event_id":"8461f374-86b0-422f-bb81-3fb39febaab9"},{"id":"4d9ba436-b092-4505-851d-be059139e0f7","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"implementation","branch":"ai/standalone-app-routes-bootstrap-0907","reason":"pull_request_stale_refresh_required","status":"retryable","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.70-forgejo-source-discovery-retry-window","prNumber":2084,"terminal":false,"missionId":"bc8b7d18-a45c-473d-939b-531ae27c4450","operation":"execute_mission","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":17216,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":16253,"approvedPlanMs":0,"missionSetupMs":1730,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":859,"ledgerReconcileMs":0,"lineageReconcileMs":871,"resolvePreflightMs":1730,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":859,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"bc8b7d18-a45c-473d-939b-531ae27c4450"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":2254,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-07T17:14:08.129265+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"2084","receipt_type":"execute_mission","idempotency_key":"mission:bc8b7d18-a45c-473d-939b-531ae27c4450:execute_mission:repair_mission_pr_ready_retryable:current-generation","mission_step_id":"70ca9ebc-92a3-4168-ad06-b30a2d332696","command_center_event_id":"bc8b7d18-a45c-473d-939b-531ae27c4450"},{"id":"4d9e25e4-ad56-41d7-a089-42388303c045","source":"cc-execution","status":"waiting_for_gate","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-38bd10a5e097","reason":"pull_request_checks_pending","status":"waiting_for_gate","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":null,"prNumber":2688,"terminal":false,"missionId":"38bd10a5-e097-4eea-b999-07c62cbabefa","operation":"automatic_mission_resume","proofGate":"repair_mission_waiting_for_gate","sourceSha":null,"timingsMs":{"prReadinessMs":906,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request after the exact-head KnockLaunch Gate changes state.","receiptRef":{"mode":"full","missionId":"38bd10a5-e097-4eea-b999-07c62cbabefa"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1283,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-13T23:36:54.336707+00:00","proof_gate":"repair_mission_waiting_for_gate","source_sha":null,"external_id":"2688","receipt_type":"automatic_mission_resume","idempotency_key":"mission:38bd10a5-e097-4eea-b999-07c62cbabefa:automatic-mission-resume:2688:repair_mission_waiting_for_gate","mission_step_id":"26c5bb46-cc6f-4b81-b3da-0f2421a63be2","command_center_event_id":"38bd10a5-e097-4eea-b999-07c62cbabefa"},{"id":"4d9ec874-30ea-4e83-895c-e126d14d7d0e","source":"cc-execution","status":"verified","payload":{"ownerWaitSloMs":{"merge_to_live_ms":75791,"owner_action_to_pr_ms":65164,"green_gate_to_merge_ms":null,"owner_action_to_useful_response_ms":60906},"ownerWaitLiveAt":"2026-09-27T20:31:16.791Z"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-27T20:31:17.122908+00:00","proof_gate":"owner_wait_live_milestone_recorded","source_sha":null,"external_id":null,"receipt_type":"owner_wait_live_milestone","idempotency_key":"mission:3bd6deb2-07c2-44f3-a32b-54074f260b25:owner-wait-live","mission_step_id":"64d7ddb0-2863-4999-ac47-ca4cab7eacd3","command_center_event_id":"3bd6deb2-07c2-44f3-a32b-54074f260b25"},{"id":"4d9f970e-d43b-4740-8b16-c2f2ea8119c0","source":"cc-execution","status":"deployment_dispatched","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":null,"reason":null,"status":"deployment_dispatched","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.46.8-intent-aware-objectives","prNumber":196,"terminal":false,"missionId":"49c1390a-f236-4fba-9db3-25a53ff4fa71","operation":"ship_and_prove","proofGate":"canonical_release_dispatched","sourceSha":"c91614dcb4bb6da7e8eec2749470a2505bb78abd","timingsMs":null,"nextAction":null,"receiptRef":{"mode":"full","missionId":"49c1390a-f236-4fba-9db3-25a53ff4fa71"},"performance":null,"deploymentId":"forgejo-main-c91614dcb4bb","workflowRunId":602,"releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":3965,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"766cfaa7-ac42-46c8-bbef-69d13268a29d","created_at":"2026-08-15T23:47:14.472292+00:00","proof_gate":"canonical_release_dispatched","source_sha":"c91614dcb4bb6da7e8eec2749470a2505bb78abd","external_id":"forgejo-main-c91614dcb4bb","receipt_type":"ship_and_prove","idempotency_key":"mission:49c1390a-f236-4fba-9db3-25a53ff4fa71:ship_and_prove:canonical_release_dispatched:c91614dcb4bb6da7e8eec2749470a2505bb78abd:602","mission_step_id":"c0d57da6-140d-40e8-8ec0-9406959fbb58","command_center_event_id":"49c1390a-f236-4fba-9db3-25a53ff4fa71"},{"id":"4d9feec8-cc2a-45cc-99a6-6d7ae81f3030","source":"cc-execution","status":"waiting_for_gate","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":null,"reason":"pull_request_checks_pending","status":"waiting_for_gate","metrics":{"receiptBytes":2185,"releaseCount":0,"toolCallCount":2,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.50.15-unrebaseable-generation-rotation","prNumber":582,"terminal":false,"missionId":"eff60862-125a-4840-9b75-9766eb0ef104","operation":"execute_mission","proofGate":"repair_mission_waiting_for_gate","sourceSha":null,"timingsMs":null,"nextAction":"Reconcile this same mission and pull request after the exact-head KnockLaunch Gate changes state.","receiptRef":{"mode":"full","missionId":"eff60862-125a-4840-9b75-9766eb0ef104"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":5531,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-22T01:20:59.751021+00:00","proof_gate":"repair_mission_waiting_for_gate","source_sha":null,"external_id":"582","receipt_type":"execute_mission","idempotency_key":"mission:eff60862-125a-4840-9b75-9766eb0ef104:execute_mission:repair_mission_waiting_for_gate","mission_step_id":"a47268be-e038-4d43-b593-55f36889406a","command_center_event_id":"eff60862-125a-4840-9b75-9766eb0ef104"},{"id":"4da22f2a-57d0-44ed-8f4c-2e85a9d2b250","source":"cc-execution","status":"waiting","payload":{"sourceTargets":["src/pages/card-grading/PCGWorkspace.tsx"],"continuationObjective":"In PCGWorkspace.tsx, make Card Vault counting use Supabase exact head count rather than paging all card IDs, and make its catch block extract useful text from object-shaped errors instead of String(error). Suppress consecutive duplicate vault failure notifications. Preserve tenant filters and permissions."},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T11:48:52.868095+00:00","proof_gate":"mission_continuation_scope_persisted","source_sha":null,"external_id":null,"receipt_type":"mission_continuation_scope_updated","idempotency_key":"mission:b5f44bcf-e851-4fce-a6c9-54ab17d5805e:mission_continuation_scope_updated:mission_continuation_scope_persisted:waiting","mission_step_id":"e69da860-7e1f-426e-b8c0-4a0caeb18d8e","command_center_event_id":"b5f44bcf-e851-4fce-a6c9-54ab17d5805e"},{"id":"4da39d34-fe17-4888-ad2d-e71dcc990837","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-dfd765bf4818","reason":"retryable_provider_transport:forgejo_provider_read_timeout","status":"retryable","metrics":{"receiptBytes":24038,"releaseCount":0,"toolCallCount":7,"repeatedCallCount":0,"executorlessWaitMs":59388,"firstUsefulResultAt":"2026-09-27T23:46:17.049Z","recoveryAttemptCount":1,"ownerInterruptionCount":0},"version":null,"prNumber":3928,"terminal":false,"missionId":"dfd765bf-4818-4c40-9fd3-fc335ab83aab","operation":"automatic_mission_resume","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"prReadinessMs":5455,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"dfd765bf-4818-4c40-9fd3-fc335ab83aab"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":819,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-27T23:47:16.462579+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"3928","receipt_type":"automatic_mission_resume","idempotency_key":"mission:dfd765bf-4818-4c40-9fd3-fc335ab83aab:automatic-mission-resume:3928:repair_mission_pr_ready_retryable","mission_step_id":"4a986d0e-915e-40f7-8b0c-4b48d90e718b","command_center_event_id":"dfd765bf-4818-4c40-9fd3-fc335ab83aab"},{"id":"4da51c23-5ba9-40ef-8dc9-4a7f6ce8aca9","source":"cc-execution","status":"verified","payload":{"ownerWaitSloMs":{"merge_to_live_ms":null,"owner_action_to_pr_ms":null,"green_gate_to_merge_ms":null,"owner_action_to_useful_response_ms":null},"ownerWaitLiveAt":"2026-09-22T14:04:26.382Z"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-22T14:04:12.29846+00:00","proof_gate":"owner_wait_live_milestone_recorded","source_sha":null,"external_id":null,"receipt_type":"owner_wait_live_milestone","idempotency_key":"mission:ff52aeb8-b69f-4b90-9f40-277597e5e54c:owner-wait-live","mission_step_id":"317f8759-6493-4244-b94c-3ee98247d3af","command_center_event_id":"ff52aeb8-b69f-4b90-9f40-277597e5e54c"},{"id":"4da566aa-af97-41d3-9de3-ee9d2517e64d","source":"cc-execution","status":"waiting_for_gate","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-96c3698e86e9","reason":"pull_request_checks_pending","status":"waiting_for_gate","metrics":{"receiptBytes":1322581,"releaseCount":0,"toolCallCount":853,"repeatedCallCount":846,"executorlessWaitMs":14254741,"firstUsefulResultAt":"2026-10-06T11:39:59.801Z","recoveryAttemptCount":37,"ownerInterruptionCount":0},"version":null,"prNumber":5168,"terminal":false,"missionId":"96c3698e-86e9-4f19-92c7-b49846a35450","operation":"automatic_mission_resume","proofGate":"repair_mission_waiting_for_gate","sourceSha":null,"timingsMs":{"prReadinessMs":4000,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request after the exact-head KnockLaunch Gate changes state.","receiptRef":{"mode":"full","missionId":"96c3698e-86e9-4f19-92c7-b49846a35450"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1006,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T11:44:12.544539+00:00","proof_gate":"repair_mission_waiting_for_gate","source_sha":null,"external_id":"5168","receipt_type":"automatic_mission_resume","idempotency_key":"mission:96c3698e-86e9-4f19-92c7-b49846a35450:automatic-mission-resume:5168:repair_mission_waiting_for_gate","mission_step_id":"8d8b2fd6-c02f-4fec-8a21-6c9e3f4d0be9","command_center_event_id":"96c3698e-86e9-4f19-92c7-b49846a35450"},{"id":"4daa11de-5798-4901-8827-132a25d6019a","source":"durable-mission-ledger","status":"pending","payload":{"sourceSha":"02f3245ccc326456533ccb73731a618c0ed491f6","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"outcome-1","satisfied":false,"statement":"Big Papi Next Stop Club mobile presentation repair on current main. The /loyalty standalone App.tsx interception is already gone on current main, so do not touch App.tsx. Update only src/components/mobile-vendor/BigPapisNextStopClub.tsx: make the unauthenticated mobile experience branded-first and compact by placing the intro card before the membership form, shrinking the animated logo/headline/body on mobile, hiding the three explanatory step cards below sm, preserving the referral qualification note, then showing the membership form immediately after. Preserve all join, sign-in, referral, rewards, QR, photo-claim, and member portal logic. Desktop remains the existing two-column layout. One focused PR, Gate, squash merge, frontend release, then verify https://bigpapiscoquitoiceys.com/loyalty at 390px and desktop with the normal Big Papi header already provided by the canonical public route.","proofConditionIds":["proof-production","proof-visual"]}],"satisfied":false,"constraints":[{"id":"visual-artifact-scope","satisfied":false,"statement":"The requested visual artifact type is authoritative: logo only. Do not add unrelated or mixed visual surfaces unless the owner explicitly requested them.","proofConditionIds":["proof-production","proof-visual"]},{"id":"visual-content-truth","satisfied":false,"statement":"Do not present invented names, metrics, prices, dates, services, testimonials, credentials, customer records, or other unknown business facts as real. Omit unknowns or mark them clearly as placeholder/example content.","proofConditionIds":["proof-production","proof-visual"]},{"id":"visual-viewport-authority","satisfied":false,"statement":"The requested mobile viewport/form factor is authoritative. Do not create a mixed-device composite or add another viewport unless explicitly requested.","proofConditionIds":["proof-production","proof-visual"]},{"id":"capability-completeness","satisfied":true,"statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","proofConditionIds":["proof-production"]},{"id":"atomic-capability-lifecycle","satisfied":true,"statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","proofConditionIds":["proof-production"]}],"contractHash":"7f858eef13de14af4fc72649a4ced2faee56661d995012037182b0f67f83b7c8","releaseBound":true,"witnessBound":false,"visualRequested":true,"visualSatisfied":false,"conditionResults":[{"id":"proof-production","kind":"runtime","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":false,"releaseTargetStates":{"frontend":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["frontend"],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"migrationReleaseVerified":null,"releaseRequestContractHash":"7f858eef13de14af4fc72649a4ced2faee56661d995012037182b0f67f83b7c8"},"required":true,"satisfied":true},{"id":"proof-visual","kind":"visual","evidence":{"modeBound":true,"claimBound":false,"routeBound":false,"witnessMode":null,"witnessRoute":null,"currentSourceSha":"02f3245ccc326456533ccb73731a618c0ed491f6","witnessSourceSha":null,"verificationState":null,"witnessRequestContractHash":null},"required":true,"satisfied":false}],"validationErrors":[],"pendingProofKinds":["visual"],"activeReleaseTargets":["frontend"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-01T12:33:45.030999+00:00","proof_gate":"request_contract_pending","source_sha":"02f3245ccc326456533ccb73731a618c0ed491f6","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:cf2d48fe-9093-470e-8a89-540d6d33e934:request-contract:7f858eef13de14af4fc72649a4ced2faee56661d995012037182b0f67f83b7c8:02f3245ccc326456533ccb73731a618c0ed491f6:pending:visual","mission_step_id":"f8507d96-e66d-40e8-82dc-4f712d650364","command_center_event_id":"cf2d48fe-9093-470e-8a89-540d6d33e934"},{"id":"4dab99ac-899c-401c-b017-7b24dc134a9f","source":"cc-execution","status":"waiting_for_gate","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-2a43b688984b","reason":"fresh_pr_provider_receipt_already_proves_auto_progress_gate_notifier_owns_next_state","status":"waiting_for_gate","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.90-mission-terminalization","prNumber":2272,"terminal":false,"missionId":"2a43b688-984b-4938-bc75-5733aea968a6","operation":"execute_mission","proofGate":"repair_mission_fresh_pr_handed_off_to_gate","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":5194,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":0,"missionSetupMs":477,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":356,"ledgerReconcileMs":0,"lineageReconcileMs":121,"resolvePreflightMs":477,"repositoryMutationMs":5194,"repositoryProviderMs":3790,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":2335,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":356,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":1455},"nextAction":"Canonical KnockLaunch Gate notifier and mission supervisor own progression from this exact PR head; do not synchronously poll Forgejo from the owner request.","receiptRef":{"mode":"full","missionId":"2a43b688-984b-4938-bc75-5733aea968a6"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":4035,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-10T04:16:42.820025+00:00","proof_gate":"repair_mission_fresh_pr_handed_off_to_gate","source_sha":null,"external_id":"2272","receipt_type":"execute_mission","idempotency_key":"mission:2a43b688-984b-4938-bc75-5733aea968a6:execute_mission:repair_mission_fresh_pr_handed_off_to_gate:current-generation","mission_step_id":"1d09e341-bc1a-40c5-8230-bd52b894daa5","command_center_event_id":"2a43b688-984b-4938-bc75-5733aea968a6"},{"id":"4dac99a1-2e0a-4bd2-a158-395c975e79bc","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in release.","nextAction":{"lane":"production-release-conductor","action":"reconcile_release","reason":"merged_source_requires_release_proof","automationAllowed":true,"ownerActionRequired":false},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"release\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"canonical_release_status\",\"status\":\"pending\",\"proofGate\":\"canonical_release_pending\"},\"activeStep\":{\"key\":\"preflight\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"implementation\",\"status\":\"pending\",\"lane\":\"cc-execution\"},\"nextSafeAction\":{\"action\":\"reconcile_release\",\"lane\":\"production-release-conductor\",\"reason\":\"merged_source_requires_release_proof\",\"automationAllowed\":true,\"ownerActionRequired\":false},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"cc-execution\",\"nextAction\":\"reconcile_release\",\"recoveryOwner\":\"production-release-conductor\"},\"acceptance\":{\"total\":1,\"verified\":0,\"pending\":1,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[\"proof-production\"]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":\"release\",\"deadlineAt\":\"2026-09-24T17:04:44.530515+00:00\",\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":null,\"prNumber\":null,\"sourceSha\":\"ab7962b64eea03be0ebfcf9894c0f7ba0f682378\",\"deploymentId\":\"forgejo-main-ab7962b64eea\"}"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-24T14:08:29.896234+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:7da530ec-da67-4d23-8d74-7715e3a073f2:owner-progress-heartbeat:119350593","mission_step_id":"4cb2ad53-1eed-4537-98ee-f07859111381","command_center_event_id":"7da530ec-da67-4d23-8d74-7715e3a073f2"},{"id":"4daf74c2-87b9-464c-ab30-78252d2ad014","source":"cc-execution","status":"recorded","payload":{"objective":"Correct the stale-base Gate generation for existing PR #2072 only. Main advanced from 026f0829fde1f7cbfb477f647ac638e81bad68d9 to 68aac425e255b2e8e812806a642a50aefd2e2182 while the otherwise-green Gate was running. Refresh the SAME branch ai/objective-first-repair-mtre8wjw onto current main, preserve the exact two-file redesign below, update the SAME PR #2072, then re-run the canonical Gate and continue through squash merge, frontend release and route proof. Do not create a new branch or PR. This is a stale-base refresh only; no product redesign expansion.","tenantRef":"Big Papi's Iceys","receivedAt":"2026-09-07T15:35:23.545Z","fingerprint":"42ef3581c22cbd89512cdb4393a56d50040396bc5e74db69ff124388062ba4e0","workstreamRef":"bigpapisiceys","conversationId":null,"canonicalBranch":"ai/objective-first-repair-mtre8wjw","requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"rawUtterance":"Correct the stale-base Gate generation for existing PR #2072 only. Main advanced from 026f0829fde1f7cbfb477f647ac638e81bad68d9 to 68aac425e255b2e8e812806a642a50aefd2e2182 while the otherwise-green Gate was running. Refresh the SAME branch ai/objective-first-repair-mtre8wjw onto current main, preserve the exact two-file redesign below, update the SAME PR #2072, then re-run the canonical Gate and continue through squash merge, frontend release and route proof. Do not create a new branch or PR. This is a stale-base refresh only; no product redesign expansion.","wordingChanged":false,"canonicalIntent":"Correct the stale-base Gate generation for existing PR #2072 only. Main advanced from 026f0829fde1f7cbfb477f647ac638e81bad68d9 to 68aac425e255b2e8e812806a642a50aefd2e2182 while the otherwise-green Gate was running. Refresh the SAME branch ai/objective-first-repair-mtre8wjw onto current main, preserve the exact two-file redesign below, update the SAME PR #2072, then re-run the canonical Gate and continue through squash merge, frontend release and route proof. Do not create a new branch or PR. This is a stale-base refresh only; no product redesign expansion.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"cohesive-route-family","statement":"Will's /big-papis/owner/* tenant is redesigned so its major routes read and behave as one cohesive product on desktop and mobile.","proofConditionIds":["repo-contract","live-routes"]}],"objective":"Correct the stale-base Gate generation for existing PR #2072 only. Main advanced from 026f0829fde1f7cbfb477f647ac638e81bad68d9 to 68aac425e255b2e8e812806a642a50aefd2e2182 while the otherwise-green Gate was running. Refresh the SAME branch ai/objective-first-repair-mtre8wjw onto current main, preserve the exact two-file redesign below, update the SAME PR #2072, then re-run the canonical Gate and continue through squash merge, frontend release and route proof. Do not create a new branch or PR. This is a stale-base refresh only; no product redesign expansion.","constraints":[{"id":"constraint-1","statement":"Preserve business functionality, data, auth, routes and branding.","proofConditionIds":["repo-contract"]},{"id":"constraint-2","statement":"Keep one existing branch and PR #2072; do not open another PR.","proofConditionIds":["repo-contract"]},{"id":"constraint-3","statement":"Keep Mail focused mobile reader behavior.","proofConditionIds":["repo-contract"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"repo-contract","kind":"repository","claim":"Big Papi owns a shared cohesive route contract and embedded OwnerLayout pages explicitly inherit its frame.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":"data-big-papis-route-contract=\"cohesive-v2\"","targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]},{"id":"live-routes","kind":"visual","claim":"Representative Big Papi routes are cohesive on desktop and mobile without legacy shell leakage or viewport breaks.","route":"/big-papis/owner/dashboard","roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]}],"validationErrors":[]},"requestedBranch":"ai/objective-first-repair-mtre8wjw","conversationContext":"{\"existingPr\":2072,\"existingHead\":\"e5e937d507700c69cecf12f4bdcae663b3727660\",\"refreshBase\":\"68aac425e255b2e8e812806a642a50aefd2e2182\",\"failureClass\":\"stale_main_advanced_during_gate\",\"finishLine\":\"Same PR #2072 refreshed to current main, green Gate, squash merged, frontend live, representative Big Papi desktop/mobile route proof passes.\"}","requestContractHash":"91ca5adb07b1cc9b5bd9938f848a2632f67e9285e438e27471f7b014595ff4ac","requestContractRevision":2},"tenant_id":"766cfaa7-ac42-46c8-bbef-69d13268a29d","created_at":"2026-09-07T15:35:24.117689+00:00","proof_gate":"tenant_workstream_contribution_recorded","source_sha":null,"external_id":null,"receipt_type":"tenant_workstream_contribution","idempotency_key":"mission:93895101-067f-4898-bbe5-e9844a68c6b0:tenant-workstream-contribution:42ef3581c22cbd89512cdb4393a56d50040396bc5e74db69ff124388062ba4e0","mission_step_id":null,"command_center_event_id":"93895101-067f-4898-bbe5-e9844a68c6b0"},{"id":"4db096f0-ef2e-407d-a8a7-b24c9ba7b0ff","source":"github-status","status":"pending","payload":{"failed":[],"states":{"canonical-production-release/verified":"pending"},"missing":[],"pending":["canonical-production-release/verified"],"required":["canonical-production-release/verified"],"sourceSha":"de010c28d4974438af07508837fc6e4c2e15053f","releaseState":"pending","exactConductorRun":{"id":31506047308,"status":"pending","headSha":"de010c28d4974438af07508837fc6e4c2e15053f","conclusion":null,"compareStatus":"identical","sourceMatches":true,"containsSourceSha":true,"reconciliationMode":null},"ccExecutionRuntimeProof":null},"tenant_id":"fe5cc9d9-c2fe-4062-84c7-a334663cd63c","created_at":"2026-08-11T15:15:50.276719+00:00","proof_gate":"canonical_release_pending","source_sha":"de010c28d4974438af07508837fc6e4c2e15053f","external_id":"canonical-release-de010c28d497","receipt_type":"canonical_release_status","idempotency_key":"mission:41f3e8bf-91ea-4abd-acaa-a6ade13493bf:release-status:de010c28d4974438af07508837fc6e4c2e15053f:31506047308:pending:canonical-production-release/verified=pending","mission_step_id":"ddf04833-9d42-4fbe-8b3f-0f8f597891a0","command_center_event_id":"41f3e8bf-91ea-4abd-acaa-a6ade13493bf"},{"id":"4db49b92-12ff-43ec-bc48-8897eb2d15cf","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/hide-default-notification-control-985b7759","reason":"retryable_provider_transport:GET:The operation was aborted due to timeout","status":"retryable","metrics":{"receiptBytes":0,"releaseCount":1,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.123-modes-storage-validated-oauth","prNumber":null,"terminal":false,"missionId":"985b7759-0812-44de-ae30-94145fb73c42","operation":"execute_mission","proofGate":"repair_mission_execution_retryable","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":23390,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":0,"missionSetupMs":1570,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":431,"ledgerReconcileMs":0,"lineageReconcileMs":1139,"resolvePreflightMs":1570,"repositoryMutationMs":23390,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":431,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"985b7759-0812-44de-ae30-94145fb73c42"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1566,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-13T03:16:08.686097+00:00","proof_gate":"repair_mission_execution_retryable","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:985b7759-0812-44de-ae30-94145fb73c42:execute_mission:repair_mission_execution_retryable:generation-1","mission_step_id":"d2b89601-0f31-4124-b5bf-94d7577f92a4","command_center_event_id":"985b7759-0812-44de-ae30-94145fb73c42"},{"id":"4db56b8e-82d3-467f-82f0-9a1f8a2a2244","source":"cc-execution","status":"waiting","payload":{"body":{"ship":false,"files":[{"path":"src/lib/godmodeTenantDemoStore.ts","content":"export type GodModeTenantDemoScope = {\n  tenantId: string;\n  tenantName?: string | null;\n  tenantSlug?: string | null;\n  operatorId: string;\n  operatorEmail?: string | null;\n};\n\nexport const GODMODE_TENANT_DEMO_VERSION = 3 as const;\nexport const GODMODE_TENANT_DEMO_EVENT = 'knocklaunch:godmode-tenant-demo-change';\nexport const GODMODE_TENANT_DEMO_ACTIVE_KEY = 'knocklaunch:godmode-tenant-demo-active:v1';\n\nexport const GODMODE_TENANT_DEMO_COLLECTIONS = [\n  'contacts',\n  'notes',\n  'tasks',\n  'events',\n  'proposals',\n  'agreements',\n  'invoices',\n  'estimates',\n  'payments',\n  'documents',\n  'jobs',\n  'workOrders',\n  'bookings',\n  'opportunities',\n  'teamMembers',\n  'invitations',\n  'activities',\n  'notifications',\n  'messages',\n  'inventory',\n  'orders',\n  'campaigns',\n  'forms',\n] as const;\n\nexport type GodModeTenantDemoCollection = typeof GODMODE_TENANT_DEMO_COLLECTIONS[number];\n\nexport type GodModeTenantDemoState = {\n  version: typeof GODMODE_TENANT_DEMO_VERSION;\n  tenantId: string;\n  tenantName: string;\n  contacts: any[];\n  notes: any[];\n  tasks: any[];\n  events: any[];\n  proposals: any[];\n  agreements: any[];\n  invoices: any[];\n  estimates: any[];\n  payments: any[];\n  documents: any[];\n  jobs: any[];\n  workOrders: any[];\n  bookings: any[];\n  opportunities: any[];\n  teamMembers: any[];\n  invitations: any[];\n  activities: any[];\n  notifications: any[];\n  messages: any[];\n  inventory: any[];\n  orders: any[];\n  campaigns: any[];\n  forms: any[];\n  mailFolders: any[];\n  mailMessages: any[];\n  mailBodies: Record<string, string>;\n  updatedAt: string;\n};\n\nexport type DemoImportStrategy = 'merge' | 'replace';\nexport type DemoImportReceipt = {\n  collection?: GodModeTenantDemoCollection;\n  strategy: DemoImportStrategy;\n  accepted: number;\n  rejected: number;\n  rejectedRows: Array<{ row: number; reason: string }>;\n  updatedAt: string;\n};\n\nconst PREFIX = 'knocklaunch:godmode-tenant-demo:v3';\nconst LEGACY_PREFIX = 'knocklaunch:godmode-tenant-demo:v2';\n\nfunction key(scope: GodModeTenantDemoScope) { return \\`\\${PREFIX}:\\${scope.operatorId}:\\${scope.tenantId}\\`; }\nfunction legacyKey(scope: GodModeTenantDemoScope) { return \\`\\${LEGACY_PREFIX}:\\${scope.operatorId}:\\${scope.tenantId}\\`; }\nfunction nowIso() { return new Date().toISOString(); }\nfunction at(days: number, hour: number, minute = 0) {\n  const d = new Date();\n  d.setDate(d.getDate() + days);\n  d.setHours(hour, minute, 0, 0);\n  return d.toISOString();\n}\nfunction day(days: number) { return at(days, 12).slice(0, 10); }\nfunction money(value: number) { return Number(value.toFixed(2)); }\nfunction demoMeta(extra: Record<string, any> = {}) { return { ...extra, godmode_demo: true, synthetic: true }; }\nfunction idFor(collection: string, index: number) {\n  return \\`demo-\\${collection}-\\${String(index).padStart(4, '0')}\\`;\n}\nfunction collectionId(row: any) {\n  return String(row?.id || row?.contact_id || row?.messageId || row?.source_id || row?.proposal_id || '').trim();\n}\nfunction withDemoMarker(row: any) {\n  return {\n    ...row,\n    _godmode_demo: true,\n    metadata: row?.metadata && typeof row.metadata === 'object' ? demoMeta(row.metadata) : demoMeta(),\n  };\n}\n\nfunction seed(scope: GodModeTenantDemoScope): GodModeTenantDemoState {\n  const tenantName = scope.tenantName || 'Demo Workspace';\n  const owner = scope.operatorId;\n  const ownerEmail = scope.operatorEmail || 'owner@example.test';\n\n  const contacts = [\n    { id:'d0000001-0000-4000-8000-000000000001',contact_id:'d0000001-0000-4000-8000-000000000001',tenant_org_id:scope.tenantId,route_contact_number:'DEMO-1001',contact_ref:'DEMO-1001',name:'Jamie Rivera',first_name:'Jamie',last_name:'Rivera',phone:'(321) 555-0101',email:'jamie.rivera@example.test',address:'1840 Harbor Point Dr',city:'Palm Bay',state:'FL',zip:'32905',status:'Active',contact_status:'Active',priority:'high',source:'Website',assigned_to:owner,assigned_user:owner,assigned_rep:ownerEmail,notes:'Demo customer: requested help and uploaded documents. Follow up before end of day.',lead_stage:'Qualified',graduated_at:at(-18,10),jobs_stage:'Investigation',claim_stage:'New Claim',last_touched_at:at(-1,15,30),appt_date:day(1),appt_time:'10:00',created_at:at(-18,10),updated_at:at(-1,15,30),lead_origin:'personal',created_by_user_id:owner,assignment_display:'Owner',_godmode_demo:true,metadata:demoMeta() },\n    { id:'d0000002-0000-4000-8000-000000000002',contact_id:'d0000002-0000-4000-8000-000000000002',tenant_org_id:scope.tenantId,route_contact_number:'DEMO-1002',contact_ref:'DEMO-1002',name:'Morgan Lee',first_name:'Morgan',last_name:'Lee',phone:'(321) 555-0102',email:'morgan.lee@example.test',address:'725 Malabar Rd SE',city:'Palm Bay',state:'FL',zip:'32907',status:'Active',contact_status:'Active',priority:'medium',source:'Referral',assigned_to:owner,assigned_user:owner,assigned_rep:ownerEmail,notes:'Demo customer: consultation completed. Waiting on supporting paperwork.',lead_stage:'Appointment Set',graduated_at:at(-10,13),jobs_stage:'Results',claim_stage:'Review',last_touched_at:at(-2,11),appt_date:day(2),appt_time:'13:30',created_at:at(-10,13),updated_at:at(-2,11),lead_origin:'personal',created_by_user_id:owner,assignment_display:'Owner',_godmode_demo:true,metadata:demoMeta() },\n    { id:'d0000003-0000-4000-8000-000000000003',contact_id:'d0000003-0000-4000-8000-000000000003',tenant_org_id:scope.tenantId,route_contact_number:'DEMO-1003',contact_ref:'DEMO-1003',name:'Casey Brooks',first_name:'Casey',last_name:'Brooks',phone:'(321) 555-0103',email:'casey.brooks@example.test',address:'4100 Babcock St NE',city:'Palm Bay',state:'FL',zip:'32905',status:'Follow Up',contact_status:'Follow Up',priority:'medium',source:'Existing Client',assigned_to:owner,assigned_user:owner,assigned_rep:ownerEmail,notes:'Demo customer: returning client. Schedule results review and document next steps.',lead_stage:'Follow Up',graduated_at:at(-35,9),jobs_stage:'Second Trade',claim_stage:'Open',last_touched_at:at(-3,16),appt_date:day(3),appt_time:'15:00',created_at:at(-35,9),updated_at:at(-3,16),lead_origin:'personal',created_by_user_id:owner,assignment_display:'Owner',_godmode_demo:true,metadata:demoMeta() },\n    { id:'d0000004-0000-4000-8000-000000000004',contact_id:'d0000004-0000-4000-8000-000000000004',tenant_org_id:scope.tenantId,route_contact_number:'DEMO-1004',contact_ref:'DEMO-1004',name:'Taylor Nguyen',first_name:'Taylor',last_name:'Nguyen',phone:'(321) 555-0104',email:'taylor.nguyen@example.test',address:'1260 Emerson Dr NE',city:'Palm Bay',state:'FL',zip:'32907',status:'New',contact_status:'Lead',priority:'high',source:'Campaign',assigned_to:owner,assigned_user:owner,assigned_rep:ownerEmail,notes:'Demo lead: responded to campaign and asked for a callback.',lead_stage:'New Lead',graduated_at:null,jobs_stage:'New',claim_stage:'New Claim',last_touched_at:at(0,9),created_at:at(-1,17),updated_at:at(0,9),lead_origin:'system',created_by_user_id:owner,assignment_display:'Owner',_godmode_demo:true,metadata:demoMeta() },\n    { id:'d0000005-0000-4000-8000-000000000005',contact_id:'d0000005-0000-4000-8000-000000000005',tenant_org_id:scope.tenantId,route_contact_number:'DEMO-1005',contact_ref:'DEMO-1005',name:'Alex Johnson',first_name:'Alex',last_name:'Johnson',phone:'(321) 555-0105',email:'alex.johnson@example.test',address:'2050 Palm Bay Rd NE',city:'Palm Bay',state:'FL',zip:'32905',status:'Working',contact_status:'Lead',priority:'medium',source:'Phone',assigned_to:owner,assigned_user:owner,assigned_rep:ownerEmail,notes:'Demo lead: needs follow-up after initial phone conversation.',lead_stage:'Contacted',graduated_at:null,jobs_stage:'New',claim_stage:'New Claim',last_touched_at:at(0,8,30),created_at:at(-2,14),updated_at:at(0,8,30),lead_origin:'personal',created_by_user_id:owner,assignment_display:'Owner',_godmode_demo:true,metadata:demoMeta() },\n  ];\n\n  const notes = [\n    { id:'demo-note-0001',tenant_org_id:scope.tenantId,contact_id:contacts[0].id,user_id:owner,user_name:ownerEmail,content:'Jamie uploaded the requested documents. Verify notice dates and prepare next-step call.',note_type:'internal',created_at:at(-1,15),updated_at:at(-1,15),metadata:demoMeta() },\n    { id:'demo-note-0002',tenant_org_id:scope.tenantId,contact_id:contacts[1].id,user_id:owner,user_name:ownerEmail,content:'Morgan prefers afternoon calls. Waiting on one remaining supporting document.',note_type:'internal',created_at:at(-2,11),updated_at:at(-2,11),metadata:demoMeta() },\n  ];\n\n  const tasks = [\n    { id:'demo-task-0001',tenant_id:scope.tenantId,user_id:owner,assigned_to:owner,title:'Review Jamie Rivera documents',description:'Customer-bound demo task. Review the uploaded documents and record the next step.',priority:'high',status:'pending',due_date:at(0,17),completed_at:null,reminder_at:at(0,16),metadata:demoMeta({kind:'task',contact_id:contacts[0].id}),created_at:at(-1,9),updated_at:at(-1,9) },\n    { id:'demo-task-0002',tenant_id:scope.tenantId,user_id:owner,assigned_to:owner,title:'Call Morgan Lee',description:'Demo follow-up call after consultation.',priority:'medium',status:'pending',due_date:at(1,11),completed_at:null,reminder_at:at(1,10,30),metadata:demoMeta({kind:'task',contact_id:contacts[1].id}),created_at:at(-1,10),updated_at:at(-1,10) },\n    { id:'demo-task-0003',tenant_id:scope.tenantId,user_id:owner,assigned_to:owner,title:'Results checklist',description:'Demo jot for the back office. Confirm paperwork, result notes, and customer follow-up.',priority:'medium',status:'pending',due_date:null,completed_at:null,reminder_at:null,metadata:demoMeta({kind:'jot'}),created_at:at(-2,12),updated_at:at(-2,12) },\n    { id:'demo-task-0004',tenant_id:scope.tenantId,user_id:owner,assigned_to:owner,title:'Send Casey Brooks recap',description:'Completed demo task.',priority:'medium',status:'completed',due_date:at(-1,14),completed_at:at(-1,14,20),reminder_at:null,metadata:demoMeta({kind:'task',contact_id:contacts[2].id}),created_at:at(-3,9),updated_at:at(-1,14,20) },\n  ];\n\n  const events = [\n    { id:'demo-event-0001',source_id:'demo-event-0001',source_kind:'calendar',source_provider:'knocklaunch',source_scope:'business',connection_id:null,title:'Jamie Rivera — Consultation',event_type:'Appointment',start_time:at(1,10),end_time:at(1,10,45),location:'Video',description:'Demo appointment tied to Jamie Rivera.',assigned_to:ownerEmail,contact_id:contacts[0].id,read_only:false,blocks_availability:true,recurrence_rule:null,series_id:null,metadata:demoMeta() },\n    { id:'demo-event-0002',source_id:'demo-event-0002',source_kind:'calendar',source_provider:'knocklaunch',source_scope:'business',connection_id:null,title:'Morgan Lee — Results Review',event_type:'Appointment',start_time:at(2,13,30),end_time:at(2,14),location:'Phone',description:'Demo results review.',assigned_to:ownerEmail,contact_id:contacts[1].id,read_only:false,blocks_availability:true,recurrence_rule:null,series_id:null,metadata:demoMeta() },\n    { id:'demo-event-0003',source_id:'demo-event-0003',source_kind:'calendar',source_provider:'knocklaunch',source_scope:'business',connection_id:null,title:'Casey Brooks — Follow-up',event_type:'Follow Up',start_time:at(3,15),end_time:at(3,15,30),location:'Office',description:'Demo customer follow-up.',assigned_to:ownerEmail,contact_id:contacts[2].id,read_only:false,blocks_availability:true,recurrence_rule:null,series_id:null,metadata:demoMeta() },\n  ];\n\n  const proposals = [\n    { id:'demo-proposal-0001',tenant_id:scope.tenantId,profile_id:'demo-profile',proposal_number:'DEMO-P-1001',status:'sent',current_version:2,source_contact_id:contacts[0].id,source_event_id:events[0].id,source_opportunity_id:'demo-opportunity-0001',offer_key:'standard',selected_option_key:'standard',pricing_mode:'fixed',currency:'USD',recipient_snapshot:{name:contacts[0].name,email:contacts[0].email,phone:contacts[0].phone,address:contacts[0].address},context_snapshot:{eventName:'Jamie Rivera engagement',scheduledDate:day(1)},line_items:[{id:'demo-line-1',kind:'service',label:'Professional service',description:'Demo scoped service',quantity:1,unitLabel:'project',unitPrice:500}],subtotal_amount:500,adjustment_amount:0,tax_amount:0,total_amount:500,deposit_amount:250,balance_amount:250,terms:'Demo terms: payment due according to the selected plan.',internal_notes:'Synthetic proposal for GodMode QA.',profile_snapshot:{},brand_snapshot:{businessName:tenantName},commercial_snapshot:{},render_bucket:null,render_path:null,render_hash:null,render_content_fingerprint:null,rendered_at:null,approved_at:null,sent_at:at(-1,10),metadata:demoMeta({workflow:'shadow-tenant'}),created_at:at(-3,11),updated_at:at(-1,10) },\n    { id:'demo-proposal-0002',tenant_id:scope.tenantId,profile_id:'demo-profile',proposal_number:'DEMO-P-1002',status:'approved',current_version:1,source_contact_id:contacts[1].id,source_event_id:events[1].id,source_opportunity_id:'demo-opportunity-0002',offer_key:'standard',selected_option_key:'standard',pricing_mode:'fixed',currency:'USD',recipient_snapshot:{name:contacts[1].name,email:contacts[1].email,phone:contacts[1].phone,address:contacts[1].address},context_snapshot:{eventName:'Morgan Lee service agreement'},line_items:[{id:'demo-line-2',kind:'service',label:'Professional service',description:'Demo approved service',quantity:1,unitLabel:'project',unitPrice:750}],subtotal_amount:750,adjustment_amount:0,tax_amount:0,total_amount:750,deposit_amount:375,balance_amount:375,terms:'Demo approved terms.',internal_notes:'Synthetic approved proposal.',profile_snapshot:{},brand_snapshot:{businessName:tenantName},commercial_snapshot:{},render_bucket:null,render_path:null,render_hash:null,render_content_fingerprint:null,rendered_at:null,approved_at:at(-4,14),sent_at:at(-6,9),metadata:demoMeta({workflow:'shadow-tenant'}),created_at:at(-7,10),updated_at:at(-4,14) },\n  ];\n\n  const agreements = [\n    { id:'demo-agreement-0001',tenant_id:scope.tenantId,proposal_id:proposals[0].id,proposal_version:2,contact_id:contacts[0].id,agreement_type:'service_agreement',title:'Jamie Rivera Service Agreement',status:'sent',lifecycle_status:'sent',signer_name:contacts[0].name,signer_email:contacts[0].email,signer_phone:contacts[0].phone,sent_at:at(-1,10),signed_at:null,accepted_at:null,expires_at:at(6,23,59),signature_url:'demo://agreement/demo-agreement-0001',signed_pdf_path:null,created_at:at(-1,10),updated_at:at(-1,10),metadata:demoMeta({proposal_number:proposals[0].proposal_number}) },\n    { id:'demo-agreement-0002',tenant_id:scope.tenantId,proposal_id:proposals[1].id,proposal_version:1,contact_id:contacts[1].id,agreement_type:'service_agreement',title:'Morgan Lee Signed Service Agreement',status:'signed',lifecycle_status:'accepted',signer_name:contacts[1].name,signer_email:contacts[1].email,signer_phone:contacts[1].phone,sent_at:at(-6,9),signed_at:at(-4,14),accepted_at:at(-4,14),expires_at:null,signature_url:'demo://agreement/demo-agreement-0002',signed_pdf_path:'demo://signed/demo-agreement-0002.pdf',created_at:at(-6,9),updated_at:at(-4,14),metadata:demoMeta({proposal_number:proposals[1].proposal_number}) },\n  ];\n\n  const invoices = [\n    { id:'demo-invoice-0001',tenant_id:scope.tenantId,tenant_org_id:scope.tenantId,contact_id:contacts[0].id,proposal_id:proposals[0].id,invoice_number:'DEMO-INV-1001',document_subtype:'settlement',status:'unpaid',payment_status:'partial',customer_name:contacts[0].name,customer_email:contacts[0].email,issue_date:day(-1),due_date:day(14),subtotal:500,tax_amount:0,total_amount:500,amount_paid:250,balance_due:250,currency:'USD',notes:'Demo invoice linked to Jamie Rivera.',created_at:at(-1,12),updated_at:at(-1,12),metadata:demoMeta() },\n    { id:'demo-invoice-0002',tenant_id:scope.tenantId,tenant_org_id:scope.tenantId,contact_id:contacts[1].id,proposal_id:proposals[1].id,invoice_number:'DEMO-INV-1002',document_subtype:'settlement',status:'paid',payment_status:'paid',customer_name:contacts[1].name,customer_email:contacts[1].email,issue_date:day(-5),due_date:day(5),subtotal:750,tax_amount:0,total_amount:750,amount_paid:750,balance_due:0,currency:'USD',notes:'Paid demo invoice.',created_at:at(-5,9),updated_at:at(-3,16),metadata:demoMeta() },\n  ];\n\n  const estimates = [\n    { id:'demo-estimate-0001',tenant_id:scope.tenantId,contact_id:contacts[2].id,estimate_number:'DEMO-EST-1001',status:'draft',customer_name:contacts[2].name,total_amount:925,currency:'USD',created_at:at(-2,10),updated_at:at(-2,10),metadata:demoMeta() },\n  ];\n\n  const payments = [\n    { id:'demo-payment-0001',tenant_id:scope.tenantId,contact_id:contacts[0].id,invoice_id:invoices[0].id,amount:250,currency:'USD',status:'succeeded',method:'card',provider:'demo',provider_reference:'DEMO-PAY-1001',paid_at:at(-1,12,15),created_at:at(-1,12,15),metadata:demoMeta() },\n    { id:'demo-payment-0002',tenant_id:scope.tenantId,contact_id:contacts[1].id,invoice_id:invoices[1].id,amount:750,currency:'USD',status:'succeeded',method:'ach',provider:'demo',provider_reference:'DEMO-PAY-1002',paid_at:at(-3,16),created_at:at(-3,16),metadata:demoMeta() },\n  ];\n\n  const documents = [\n    { id:'demo-document-0001',tenant_id:scope.tenantId,tenant_org_id:scope.tenantId,contact_id:contacts[0].id,name:'Jamie Rivera - Intake Documents.pdf',file_name:'Jamie-Rivera-Intake.pdf',document_type:'intake',mime_type:'application/pdf',status:'ready',storage_provider:'demo',storage_path:'demo://documents/jamie-intake.pdf',created_at:at(-1,14),updated_at:at(-1,14),metadata:demoMeta() },\n    { id:'demo-document-0002',tenant_id:scope.tenantId,tenant_org_id:scope.tenantId,contact_id:contacts[1].id,agreement_id:agreements[1].id,name:'Morgan Lee - Signed Agreement.pdf',file_name:'Morgan-Lee-Signed-Agreement.pdf',document_type:'signed_agreement',mime_type:'application/pdf',status:'signed',storage_provider:'demo',storage_path:'demo://documents/morgan-signed-agreement.pdf',created_at:at(-4,14),updated_at:at(-4,14),metadata:demoMeta() },\n    { id:'demo-document-0003',tenant_id:scope.tenantId,tenant_org_id:scope.tenantId,contact_id:contacts[0].id,invoice_id:invoices[0].id,name:'DEMO-INV-1001.pdf',file_name:'DEMO-INV-1001.pdf',document_type:'invoice',mime_type:'application/pdf',status:'ready',storage_provider:'demo',storage_path:'demo://documents/demo-inv-1001.pdf',created_at:at(-1,12),updated_at:at(-1,12),metadata:demoMeta() },\n  ];\n\n  const jobs = [\n    { id:'demo-job-0001',tenant_id:scope.tenantId,tenant_org_id:scope.tenantId,contact_id:contacts[0].id,title:'Jamie Rivera Service Job',job_number:'DEMO-JOB-1001',status:'in_progress',stage:'Investigation',priority:'high',address:contacts[0].address,city:contacts[0].city,state:contacts[0].state,zip:contacts[0].zip,scheduled_start:at(1,10),scheduled_end:at(1,12),assigned_to:owner,invoice_id:invoices[0].id,proposal_id:proposals[0].id,created_at:at(-2,8),updated_at:at(0,9),metadata:demoMeta() },\n    { id:'demo-job-0002',tenant_id:scope.tenantId,tenant_org_id:scope.tenantId,contact_id:contacts[1].id,title:'Morgan Lee Completed Job',job_number:'DEMO-JOB-1002',status:'completed',stage:'Completed',priority:'medium',address:contacts[1].address,city:contacts[1].city,state:contacts[1].state,zip:contacts[1].zip,scheduled_start:at(-4,9),scheduled_end:at(-4,12),assigned_to:owner,invoice_id:invoices[1].id,proposal_id:proposals[1].id,created_at:at(-6,8),updated_at:at(-3,16),metadata:demoMeta() },\n  ];\n\n  const workOrders = [\n    { id:'demo-workorder-0001',tenant_id:scope.tenantId,job_id:jobs[0].id,contact_id:contacts[0].id,title:'Document review and customer follow-up',status:'open',assigned_to:owner,due_at:at(1,12),created_at:at(-1,8),updated_at:at(-1,8),metadata:demoMeta() },\n  ];\n\n  const bookings = [\n    { id:'demo-booking-0001',tenant_id:scope.tenantId,contact_id:contacts[0].id,event_name:'Jamie Rivera Appointment',status:'confirmed',start_time:events[0].start_time,end_time:events[0].end_time,location:'Video',quote_amount:500,deposit_amount:250,balance_due:250,source:'demo',source_ref:proposals[0].id,created_at:at(-3,10),updated_at:at(-1,10),metadata:demoMeta() },\n  ];\n\n  const opportunities = [\n    { id:'demo-opportunity-0001',tenant_id:scope.tenantId,contact_id:contacts[0].id,name:'Jamie Rivera Opportunity',status:'qualified',stage:'Investigation',value:500,score:88,source:'Website',assigned_to:owner,created_at:at(-18,10),updated_at:at(-1,15),metadata:demoMeta() },\n    { id:'demo-opportunity-0002',tenant_id:scope.tenantId,contact_id:contacts[1].id,name:'Morgan Lee Opportunity',status:'won',stage:'Completed',value:750,score:96,source:'Referral',assigned_to:owner,created_at:at(-10,13),updated_at:at(-3,16),metadata:demoMeta() },\n    { id:'demo-opportunity-0003',tenant_id:scope.tenantId,contact_id:contacts[3].id,name:'Taylor Nguyen New Opportunity',status:'new',stage:'New Lead',value:1200,score:71,source:'Campaign',assigned_to:owner,created_at:at(-1,17),updated_at:at(0,9),metadata:demoMeta() },\n  ];\n\n  const teamMembers = [\n    { id:owner,user_id:owner,tenant_id:scope.tenantId,name:'Demo Owner',email:ownerEmail,role:'Tenant Owner',status:'active',is_owner:true,created_at:at(-90,9),updated_at:at(0,8),metadata:demoMeta({operator:true}) },\n    { id:'demo-user-0002',user_id:'demo-user-0002',tenant_id:scope.tenantId,name:'Jordan Ellis',email:'jordan.ellis@example.test',role:'Assistant',status:'active',is_owner:false,created_at:at(-30,9),updated_at:at(-2,9),metadata:demoMeta() },\n    { id:'demo-user-0003',user_id:'demo-user-0003',tenant_id:scope.tenantId,name:'Riley Carter',email:'riley.carter@example.test',role:'Rep',status:'active',is_owner:false,created_at:at(-20,9),updated_at:at(-1,9),metadata:demoMeta() },\n  ];\n\n  const invitations = [\n    { id:'demo-invitation-0001',tenant_id:scope.tenantId,email:'new.rep@example.test',name:'Avery Parker',role:'Rep',status:'sent',invited_at:at(-1,13),expires_at:at(6,23),accepted_at:null,email_opens_count:1,invitation_token:'demo-token-0001',metadata:demoMeta({subject:\\`Invitation to \\${tenantName}\\`}) },\n  ];\n\n  const activities = [\n    { id:'demo-activity-0001',tenant_id:scope.tenantId,contact_id:contacts[0].id,actor_id:owner,actor_name:'Demo Owner',action:'contact_updated',description:'Updated Jamie Rivera and reviewed uploaded documents.',created_at:at(0,8,45),metadata:demoMeta() },\n    { id:'demo-activity-0002',tenant_id:scope.tenantId,contact_id:contacts[0].id,actor_id:owner,actor_name:'Demo Owner',action:'proposal_sent',description:'Sent DEMO-P-1001 for signature.',created_at:at(-1,10),metadata:demoMeta({proposal_id:proposals[0].id}) },\n    { id:'demo-activity-0003',tenant_id:scope.tenantId,contact_id:contacts[1].id,actor_id:owner,actor_name:'Demo Owner',action:'payment_received',description:'Received payment for DEMO-INV-1002.',created_at:at(-3,16),metadata:demoMeta({invoice_id:invoices[1].id}) },\n  ];\n\n  const notifications = [\n    { id:'demo-notification-0001',tenant_id:scope.tenantId,user_id:owner,title:'Documents ready for review',body:'Jamie Rivera uploaded the requested documents.',status:'unread',category:'customer',created_at:at(0,8,42),metadata:demoMeta({contact_id:contacts[0].id}) },\n    { id:'demo-notification-0002',tenant_id:scope.tenantId,user_id:owner,title:'Appointment tomorrow',body:'Morgan Lee has a results review scheduled.',status:'unread',category:'calendar',created_at:at(-1,16),metadata:demoMeta({event_id:events[1].id}) },\n  ];\n\n  const messages = [\n    { id:'demo-message-0001',tenant_id:scope.tenantId,channel:'team',sender_id:'demo-user-0002',sender_name:'Jordan Ellis',body:'Jamie Rivera documents are in and ready for review.',created_at:at(0,8,35),metadata:demoMeta() },\n  ];\n\n  const inventory = [\n    { id:'demo-inventory-0001',tenant_id:scope.tenantId,name:'Demo Inventory Item',sku:'DEMO-SKU-001',quantity:12,unit:'ea',reorder_level:4,status:'available',created_at:at(-14,9),updated_at:at(-1,9),metadata:demoMeta() },\n  ];\n\n  const orders = [\n    { id:'demo-order-0001',tenant_id:scope.tenantId,contact_id:contacts[2].id,order_number:'DEMO-ORD-1001',status:'open',total_amount:125,currency:'USD',created_at:at(-1,11),updated_at:at(-1,11),metadata:demoMeta() },\n  ];\n\n  const campaigns = [\n    { id:'demo-campaign-0001',tenant_id:scope.tenantId,name:'Demo Retention Campaign',status:'draft',channel:'email',audience_count:3,sent_count:0,opened_count:0,created_at:at(-2,9),updated_at:at(-2,9),metadata:demoMeta() },\n  ];\n\n  const forms = [\n    { id:'demo-form-0001',tenant_id:scope.tenantId,name:'Demo Intake Form',status:'published',submission_count:2,created_at:at(-30,9),updated_at:at(-3,9),metadata:demoMeta() },\n  ];\n\n  const mailFolders = [\n    {folderId:'inbox',folderName:'Inbox',folderType:'inbox',path:'Inbox',unreadCount:2},\n    {folderId:'sent',folderName:'Sent',folderType:'sent',path:'Sent',unreadCount:0},\n    {folderId:'drafts',folderName:'Drafts',folderType:'drafts',path:'Drafts',unreadCount:0},\n    {folderId:'archive',folderName:'Archive',folderType:'archive',path:'Archive',unreadCount:0},\n  ];\n\n  const mailMessages = [\n    {messageId:'demo-mail-0001',threadId:'demo-thread-0001',folderId:'inbox',subject:'Documents uploaded',fromAddress:contacts[0].email,sender:contacts[0].email,senderName:contacts[0].name,toAddress:ownerEmail,summary:'I uploaded the documents we discussed. Can you confirm you can see everything?',receivedTime:at(0,8,42),status:'unread',isRead:false,hasAttachment:false,flagid:'important',metadata:demoMeta()},\n    {messageId:'demo-mail-0002',threadId:'demo-thread-0002',folderId:'inbox',subject:'Appointment confirmation',fromAddress:contacts[1].email,sender:contacts[1].email,senderName:contacts[1].name,toAddress:ownerEmail,summary:'Thanks. I will be available for the appointment tomorrow afternoon.',receivedTime:at(-1,16,10),status:'unread',isRead:false,hasAttachment:false,flagid:'flag_not_set',metadata:demoMeta()},\n    {messageId:'demo-mail-0003',threadId:'demo-thread-0003',folderId:'inbox',subject:'Question before our follow-up',fromAddress:contacts[2].email,sender:contacts[2].email,senderName:contacts[2].name,toAddress:ownerEmail,summary:'I had one more question before our follow-up. Please call when you get a chance.',receivedTime:at(-2,11,25),status:'read',isRead:true,hasAttachment:false,flagid:'flag_not_set',metadata:demoMeta()},\n    {messageId:'demo-mail-0004',threadId:'demo-thread-0001',folderId:'sent',subject:'Re: Documents uploaded',fromAddress:ownerEmail,sender:ownerEmail,senderName:tenantName,toAddress:contacts[0].email,summary:'Got them. I will review everything and follow up today.',sentDateInGMT:at(0,9,5),status:'read',isRead:true,hasAttachment:false,flagid:'flag_not_set',metadata:demoMeta()},\n  ];\n  const mailBodies: Record<string,string> = {\n    'demo-mail-0001':'<p>Hi,</p><p>I uploaded the documents we discussed. Can you confirm you can see everything?</p><p>Thanks,<br>Jamie</p>',\n    'demo-mail-0002':'<p>Thanks for confirming the appointment. I will be available tomorrow afternoon.</p><p>Morgan</p>',\n    'demo-mail-0003':'<p>I had one more question before our follow-up. Please call when you get a chance.</p><p>Casey</p>',\n    'demo-mail-0004':'<p>Got them. I will review everything and follow up today.</p>',\n  };\n\n  return {\n    version:GODMODE_TENANT_DEMO_VERSION,\n    tenantId:scope.tenantId,\n    tenantName,\n    contacts,notes,tasks,events,proposals,agreements,invoices,estimates,payments,documents,jobs,workOrders,bookings,\n    opportunities,teamMembers,invitations,activities,notifications,messages,inventory,orders,campaigns,forms,\n    mailFolders,mailMessages,mailBodies,\n    updatedAt:nowIso(),\n  };\n}\n\nfunction mergeLegacyState(scope: GodModeTenantDemoScope, baseline: GodModeTenantDemoState, parsed: any): GodModeTenantDemoState {\n  if (!parsed || typeof parsed !== 'object') return baseline;\n  const next: GodModeTenantDemoState = { ...baseline };\n  for (const collection of GODMODE_TENANT_DEMO_COLLECTIONS) {\n    if (Array.isArray(parsed[collection])) (next as any)[collection] = parsed[collection].map(withDemoMarker);\n  }\n  if (Array.isArray(parsed.mailFolders)) next.mailFolders = parsed.mailFolders;\n  if (Array.isArray(parsed.mailMessages)) next.mailMessages = parsed.mailMessages.map(withDemoMarker);\n  if (parsed.mailBodies && typeof parsed.mailBodies === 'object') next.mailBodies = { ...baseline.mailBodies, ...parsed.mailBodies };\n  next.tenantId = scope.tenantId;\n  next.tenantName = scope.tenantName || parsed.tenantName || baseline.tenantName;\n  next.version = GODMODE_TENANT_DEMO_VERSION;\n  next.updatedAt = nowIso();\n  return next;\n}\n\nexport function readGodModeTenantDemoState(scope: GodModeTenantDemoScope): GodModeTenantDemoState {\n  const baseline = seed(scope);\n  if (typeof window === 'undefined') return baseline;\n  try {\n    const raw = window.localStorage.getItem(key(scope));\n    if (raw) return mergeLegacyState(scope, baseline, JSON.parse(raw));\n    const legacy = window.localStorage.getItem(legacyKey(scope));\n    const upgraded = legacy ? mergeLegacyState(scope, baseline, JSON.parse(legacy)) : baseline;\n    window.localStorage.setItem(key(scope), JSON.stringify(upgraded));\n    return upgraded;\n  } catch {\n    return baseline;\n  }\n}\n\nexport function writeGodModeTenantDemoState(scope: GodModeTenantDemoScope, state: GodModeTenantDemoState) {\n  const next: GodModeTenantDemoState = {\n    ...state,\n    version:GODMODE_TENANT_DEMO_VERSION,\n    tenantId:scope.tenantId,\n    tenantName:scope.tenantName || state.tenantName || 'Demo Workspace',\n    updatedAt:nowIso(),\n  };\n  if (typeof window !== 'undefined') {\n    try { window.localStorage.setItem(key(scope), JSON.stringify(next)); } catch {}\n    window.dispatchEvent(new CustomEvent(GODMODE_TENANT_DEMO_EVENT, { detail: { tenantId:scope.tenantId, operatorId:scope.operatorId } }));\n  }\n  return next;\n}\n\nexport function setGodModeTenantDemoActiveScope(scope: GodModeTenantDemoScope | null) {\n  if (typeof window === 'undefined') return;\n  try {\n    if (!scope) window.localStorage.removeItem(GODMODE_TENANT_DEMO_ACTIVE_KEY);\n    else window.localStorage.setItem(GODMODE_TENANT_DEMO_ACTIVE_KEY, JSON.stringify(scope));\n  } catch {}\n}\n\nexport function readActiveGodModeTenantDemoScope(tenantId?: string | null): GodModeTenantDemoScope | null {\n  if (typeof window === 'undefined') return null;\n  try {\n    const raw = window.localStorage.getItem(GODMODE_TENANT_DEMO_ACTIVE_KEY);\n    if (!raw) return null;\n    const parsed = JSON.parse(raw) as GodModeTenantDemoScope;\n    if (!parsed?.tenantId || !parsed?.operatorId) return null;\n    if (tenantId && String(parsed.tenantId) !== String(tenantId)) return null;\n    return parsed;\n  } catch { return null; }\n}\n\nexport function resetGodModeTenantDemo(scope: GodModeTenantDemoScope) {\n  const next = seed(scope);\n  return writeGodModeTenantDemoState(scope, next);\n}\n\nexport function listDemoCollection(scope: GodModeTenantDemoScope, collection: GodModeTenantDemoCollection) {\n  return [...(readGodModeTenantDemoState(scope)[collection] || [])];\n}\n\nexport function getDemoRecord(scope: GodModeTenantDemoScope, collection: GodModeTenantDemoCollection, id: string) {\n  return listDemoCollection(scope, collection).find((row:any) => collectionId(row) === String(id)) || null;\n}\n\nexport function createDemoRecord(scope: GodModeTenantDemoScope, collection: GodModeTenantDemoCollection, input: any) {\n  const state = readGodModeTenantDemoState(scope);\n  const current = state[collection] || [];\n  const suppliedId = collectionId(input);\n  const id = suppliedId || idFor(collection, current.length + 1 + Date.now() % 1000);\n  const now = nowIso();\n  const row = withDemoMarker({\n    ...input,\n    id,\n    tenant_id: input?.tenant_id || scope.tenantId,\n    tenant_org_id: input?.tenant_org_id || scope.tenantId,\n    created_at: input?.created_at || now,\n    updated_at: now,\n  });\n  writeGodModeTenantDemoState(scope, { ...state, [collection]: [row, ...current] } as GodModeTenantDemoState);\n  return row;\n}\n\nexport function updateDemoRecord(scope: GodModeTenantDemoScope, collection: GodModeTenantDemoCollection, id: string, updates: any) {\n  const state = readGodModeTenantDemoState(scope);\n  let updated: any = null;\n  const rows = (state[collection] || []).map((row:any) => {\n    if (collectionId(row) !== String(id)) return row;\n    updated = withDemoMarker({ ...row, ...updates, id:row.id || id, updated_at:nowIso() });\n    return updated;\n  });\n  writeGodModeTenantDemoState(scope, { ...state, [collection]: rows } as GodModeTenantDemoState);\n  return updated;\n}\n\nexport function deleteDemoRecord(scope: GodModeTenantDemoScope, collection: GodModeTenantDemoCollection, id: string) {\n  const state = readGodModeTenantDemoState(scope);\n  const rows = (state[collection] || []).filter((row:any) => collectionId(row) !== String(id));\n  writeGodModeTenantDemoState(scope, { ...state, [collection]: rows } as GodModeTenantDemoState);\n}\n\nexport function bulkUpdateDemoRecords(scope: GodModeTenantDemoScope, collection: GodModeTenantDemoCollection, ids: string[], updates: any) {\n  const idSet = new Set(ids.map(String));\n  const state = readGodModeTenantDemoState(scope);\n  const rows = (state[collection] || []).map((row:any) => idSet.has(collectionId(row)) ? withDemoMarker({ ...row, ...updates, updated_at:nowIso() }) : row);\n  writeGodModeTenantDemoState(scope, { ...state, [collection]: rows } as GodModeTenantDemoState);\n  return ids.length;\n}\nexport function bulkDeleteDemoRecords(scope: GodModeTenantDemoScope, collection: GodModeTenantDemoCollection, ids: string[]) {\n  const idSet = new Set(ids.map(String));\n  const state = readGodModeTenantDemoState(scope);\n  const rows = (state[collection] || []).filter((row:any) => !idSet.has(collectionId(row)));\n  writeGodModeTenantDemoState(scope, { ...state, [collection]: rows } as GodModeTenantDemoState);\n  return ids.length;\n}\nexport function archiveDemoRecords(scope: GodModeTenantDemoScope, collection: GodModeTenantDemoCollection, ids: string[]) {\n  return bulkUpdateDemoRecords(scope, collection, ids, { archived_at:nowIso(), status:'archived' });\n}\nexport function restoreDemoRecords(scope: GodModeTenantDemoScope, collection: GodModeTenantDemoCollection, ids: string[]) {\n  return bulkUpdateDemoRecords(scope, collection, ids, { archived_at:null, deleted_at:null, status:'active' });\n}\nexport function assignDemoRecords(scope: GodModeTenantDemoScope, collection: GodModeTenantDemoCollection, ids: string[], assignedTo: string | null, assignedUser?: string | null) {\n  return bulkUpdateDemoRecords(scope, collection, ids, { assigned_to:assignedTo, assigned_user:assignedUser || assignedTo, assigned_rep:assignedTo });\n}\n\nexport function createDemoContact(scope:GodModeTenantDemoScope,input:any) {\n  const row = createDemoRecord(scope,'contacts',input);\n  return { ...row, contact_id:row.contact_id || row.id, assignment_display:row.assignment_display || 'Owner' };\n}\nexport function updateDemoContact(scope:GodModeTenantDemoScope,id:string,updates:any) { return updateDemoRecord(scope,'contacts',id,updates); }\nexport function deleteDemoContact(scope:GodModeTenantDemoScope,id:string) { return deleteDemoRecord(scope,'contacts',id); }\nexport function createDemoTask(scope:GodModeTenantDemoScope,input:any) { return createDemoRecord(scope,'tasks',input); }\nexport function updateDemoTask(scope:GodModeTenantDemoScope,id:string,updates:any) { return updateDemoRecord(scope,'tasks',id,updates); }\nexport function deleteDemoTask(scope:GodModeTenantDemoScope,id:string) { return deleteDemoRecord(scope,'tasks',id); }\nexport function createDemoEvent(scope:GodModeTenantDemoScope,input:any) {\n  const row = createDemoRecord(scope,'events',input);\n  return updateDemoRecord(scope,'events',row.id,{ source_id:row.source_id || row.id, source_kind:row.source_kind || 'calendar', source_provider:row.source_provider || 'knocklaunch', source_scope:row.source_scope || 'business', read_only:false, blocks_availability:row.blocks_availability !== false });\n}\nexport function updateDemoEvent(scope:GodModeTenantDemoScope,id:string,updates:any) { return updateDemoRecord(scope,'events',id,updates); }\nexport function deleteDemoEvent(scope:GodModeTenantDemoScope,id:string) { return deleteDemoRecord(scope,'events',id); }\n\nfunction csvEscape(value: unknown) {\n  if (value === null || value === undefined) return '';\n  const raw = typeof value === 'object' ? JSON.stringify(value) : String(value);\n  return /[\",\\r\\n]/.test(raw) ? \\`\"\\${raw.replace(/\"/g, '\"\"')}\"\\` : raw;\n}\nfunction flattenCsvValue(value: any) {\n  if (value === null || value === undefined) return '';\n  return typeof value === 'object' ? JSON.stringify(value) : value;\n}\nexport function exportDemoCollectionCsv(scope: GodModeTenantDemoScope, collection: GodModeTenantDemoCollection) {\n  const rows = listDemoCollection(scope, collection);\n  const headers = Array.from(rows.reduce((set, row:any) => {\n    Object.keys(row || {}).filter((key) => !key.startsWith('_')).forEach((key) => set.add(key));\n    return set;\n  }, new Set<string>())).sort();\n  const lines = [headers.map(csvEscape).join(',')];\n  for (const row of rows) lines.push(headers.map((header) => csvEscape(flattenCsvValue(row?.[header]))).join(','));\n  return lines.join('\\r\\n');\n}\nexport function exportDemoTenantJson(scope: GodModeTenantDemoScope) {\n  const state = readGodModeTenantDemoState(scope);\n  return JSON.stringify({\n    kind:'knocklaunch-shadow-tenant',\n    schemaVersion:GODMODE_TENANT_DEMO_VERSION,\n    exportedAt:nowIso(),\n    tenant:{ id:scope.tenantId, name:state.tenantName, slug:scope.tenantSlug || null },\n    data:state,\n  }, null, 2);\n}\nfunction parseCsv(text: string) {\n  const rows: string[][] = [];\n  let row: string[] = [], cell = '', quoted = false;\n  for (let i=0;i<text.length;i++) {\n    const ch=text[i], next=text[i+1];\n    if (ch === '\"' && quoted && next === '\"') { cell += '\"'; i++; continue; }\n    if (ch === '\"') { quoted = !quoted; continue; }\n    if (ch === ',' && !quoted) { row.push(cell); cell=''; continue; }\n    if ((ch === '\\n' || ch === '\\r') && !quoted) {\n      if (ch === '\\r' && next === '\\n') i++;\n      row.push(cell); cell='';\n      if (row.some((value) => value.trim() !== '')) rows.push(row);\n      row=[];\n      continue;\n    }\n    cell += ch;\n  }\n  row.push(cell);\n  if (row.some((value) => value.trim() !== '')) rows.push(row);\n  return rows;\n}\nfunction normalizeHeader(value: string) {\n  return String(value || '').trim().replace(/^\\uFEFF/, '').replace(/([a-z0-9])([A-Z])/g,'$1_$2').replace(/[^a-zA-Z0-9]+/g,'_').replace(/^_+|_+$/g,'').toLowerCase();\n}\nfunction parseMaybeJson(value: string) {\n  const trimmed=String(value||'').trim();\n  if (!trimmed) return '';\n  if ((trimmed.startsWith('{') && trimmed.endsWith('}')) || (trimmed.startsWith('[') && trimmed.endsWith(']'))) {\n    try { return JSON.parse(trimmed); } catch {}\n  }\n  if (/^-?\\d+(?:\\.\\d+)?$/.test(trimmed)) return Number(trimmed);\n  if (trimmed === 'true') return true;\n  if (trimmed === 'false') return false;\n  return trimmed;\n}\nfunction mergeRows(existing:any[], incoming:any[]) {\n  const map = new Map<string, any>();\n  for (const row of existing) map.set(collectionId(row) || JSON.stringify(row), row);\n  for (const row of incoming) {\n    const rowId = collectionId(row) || JSON.stringify(row);\n    map.set(rowId, map.has(rowId) ? { ...map.get(rowId), ...row } : row);\n  }\n  return [...map.values()];\n}\nexport function importDemoCollectionCsv(scope: GodModeTenantDemoScope, collection: GodModeTenantDemoCollection, text: string, strategy: DemoImportStrategy = 'merge'): DemoImportReceipt {\n  const matrix=parseCsv(text);\n  const headers=(matrix.shift()||[]).map(normalizeHeader);\n  if (!headers.length || headers.every((header)=>!header)) throw new Error('CSV header row is required.');\n  const accepted:any[]=[]; const rejectedRows:Array<{row:number;reason:string}>=[];\n  matrix.forEach((values,index)=>{\n    try {\n      const row:any={};\n      headers.forEach((header,column)=>{ if (header) row[header]=parseMaybeJson(values[column] ?? ''); });\n      const id=collectionId(row) || idFor(collection,index+1+Date.now()%1000);\n      accepted.push(withDemoMarker({ ...row, id, tenant_id:row.tenant_id || scope.tenantId, tenant_org_id:row.tenant_org_id || scope.tenantId, created_at:row.created_at || nowIso(), updated_at:nowIso() }));\n    } catch (error:any) { rejectedRows.push({row:index+2,reason:error?.message || 'Invalid row'}); }\n  });\n  const state=readGodModeTenantDemoState(scope);\n  const rows = strategy === 'replace' ? accepted : mergeRows(state[collection] || [], accepted);\n  writeGodModeTenantDemoState(scope,{...state,[collection]:rows} as GodModeTenantDemoState);\n  return {collection,strategy,accepted:accepted.length,rejected:rejectedRows.length,rejectedRows,updatedAt:nowIso()};\n}\nexport function importDemoTenantJson(scope: GodModeTenantDemoScope, text: string, strategy: DemoImportStrategy = 'merge'): DemoImportReceipt {\n  const parsed=JSON.parse(text);\n  if (parsed?.kind && parsed.kind !== 'knocklaunch-shadow-tenant') throw new Error('Unsupported shadow tenant export.');\n  const data=parsed?.data || parsed;\n  if (!data || typeof data !== 'object') throw new Error('Shadow tenant JSON is invalid.');\n  const state=readGodModeTenantDemoState(scope);\n  let accepted=0; const rejectedRows:Array<{row:number;reason:string}>=[];\n  const next={...state};\n  for (const collection of GODMODE_TENANT_DEMO_COLLECTIONS) {\n    if (!Array.isArray(data[collection])) continue;\n    const normalized=data[collection].map((row:any,index:number)=>{\n      try { accepted++; return withDemoMarker({ ...row, tenant_id:row?.tenant_id || scope.tenantId, tenant_org_id:row?.tenant_org_id || scope.tenantId, updated_at:row?.updated_at || nowIso() }); }\n      catch (error:any) { rejectedRows.push({row:index+1,reason:\\`\\${collection}: \\${error?.message || 'Invalid row'}\\`}); return null; }\n    }).filter(Boolean);\n    (next as any)[collection]=strategy==='replace' ? normalized : mergeRows((next as any)[collection] || [], normalized);\n  }\n  if (data.mailBodies && typeof data.mailBodies === 'object') next.mailBodies = strategy==='replace' ? {...data.mailBodies} : {...next.mailBodies,...data.mailBodies};\n  if (Array.isArray(data.mailFolders)) next.mailFolders = strategy==='replace' ? data.mailFolders : mergeRows(next.mailFolders,data.mailFolders);\n  if (Array.isArray(data.mailMessages)) next.mailMessages = strategy==='replace' ? data.mailMessages.map(withDemoMarker) : mergeRows(next.mailMessages,data.mailMessages.map(withDemoMarker));\n  writeGodModeTenantDemoState(scope,next);\n  return {strategy,accepted,rejected:rejectedRows.length,rejectedRows,updatedAt:nowIso()};\n}\n\nexport function getDemoCollectionCounts(scope: GodModeTenantDemoScope) {\n  const state=readGodModeTenantDemoState(scope);\n  return Object.fromEntries(GODMODE_TENANT_DEMO_COLLECTIONS.map((collection)=>[collection,(state[collection]||[]).length])) as Record<GodModeTenantDemoCollection,number>;\n}\n\nexport function getDemoAnalytics(scope: GodModeTenantDemoScope) {\n  const state=readGodModeTenantDemoState(scope);\n  const revenue=state.payments.filter((p:any)=>p.status==='succeeded').reduce((sum:number,p:any)=>sum+Number(p.amount||0),0);\n  const receivables=state.invoices.reduce((sum:number,i:any)=>sum+Number(i.balance_due||0),0);\n  return {\n    contacts:state.contacts.length,\n    activeContacts:state.contacts.filter((c:any)=>!c.deleted_at&&!c.archived_at).length,\n    openTasks:state.tasks.filter((t:any)=>t.status!=='completed').length,\n    upcomingEvents:state.events.filter((e:any)=>new Date(e.start_time).getTime()>=Date.now()).length,\n    proposals:state.proposals.length,\n    agreements:state.agreements.length,\n    invoices:state.invoices.length,\n    revenue:money(revenue),\n    receivables:money(receivables),\n    openJobs:state.jobs.filter((j:any)=>!['completed','cancelled'].includes(String(j.status))).length,\n    opportunities:state.opportunities.length,\n  };\n}\n\nfunction mailRows(state:GodModeTenantDemoState,folderId:string){return state.mailMessages.filter(message=>String(message.folderId||'')===folderId);}\nexport async function godModeTenantDemoMailInvoke(scope:GodModeTenantDemoScope,action:string,extra:Record<string,any>={}){\n  let state=readGodModeTenantDemoState(scope);\n  const mailboxId='godmode-demo-mailbox';\n  const provider={configured:true,setupRequired:false,mailboxes:[{id:mailboxId,emailAddress:scope.operatorEmail||'owner@example.test',displayName:state.tenantName,status:'connected',isDefault:true,mailboxKind:'demo'}],defaultMailboxId:mailboxId,outboundOnly:false,providerLabel:'Demo Mail'};\n  if(action==='bootstrap') return {ok:true,provider,mailboxId,folders:state.mailFolders,folderId:'inbox',messages:mailRows(state,'inbox')};\n  if(action==='folders') return {ok:true,data:state.mailFolders};\n  if(action==='messages'||action==='drafts'){const target=String(extra.folderId||(action==='drafts'?'drafts':'inbox'));return {ok:true,data:mailRows(state,target)};}\n  if(action==='search'){const q=String(extra.query||'').toLowerCase();return {ok:true,data:state.mailMessages.filter(m=>[m.subject,m.fromAddress,m.senderName,m.summary].some(v=>String(v||'').toLowerCase().includes(q)))};}\n  const ids=(extra.messageIds||[extra.messageId]).map(String).filter(Boolean);\n  if(action==='message'){const id=String(extra.messageId||'');const meta=state.mailMessages.find(m=>String(m.messageId)===id)||{};return {ok:true,data:{meta,content:{content:state.mailBodies[id]||meta.summary||''}}};}\n  if(action==='thread'){const id=String(extra.threadId||'');return {ok:true,data:state.mailMessages.filter(m=>String(m.threadId||'')===id)};}\n  if(action==='attachments') return {ok:true,data:{attachments:[],inline:[]}};\n  if(action==='mark_read'||action==='mark_unread'||action==='flag'){state={...state,mailMessages:state.mailMessages.map(m=>ids.includes(String(m.messageId))?{...m,...(action==='mark_read'?{isRead:true,status:'read'}:action==='mark_unread'?{isRead:false,status:'unread'}:{flagid:extra.flagged===false?'flag_not_set':'important'})}:m)};writeGodModeTenantDemoState(scope,state);return {ok:true,data:true};}\n  if(action==='archive'||action==='move_message'||action==='move'){const target=String(extra.targetFolderId||extra.destinationFolderId||'archive');state={...state,mailMessages:state.mailMessages.map(m=>ids.includes(String(m.messageId))?{...m,folderId:target}:m)};writeGodModeTenantDemoState(scope,state);return {ok:true,data:true};}\n  if(action==='delete_message'||action==='delete_messages'){state={...state,mailMessages:state.mailMessages.filter(m=>!ids.includes(String(m.messageId)))};writeGodModeTenantDemoState(scope,state);return {ok:true,data:true};}\n  if(action==='send_message'||action==='reply'||action==='save_draft'){const id=\\`demo-mail-\\${Date.now()}\\`;const folderId=action==='save_draft'?'drafts':'sent';const message=withDemoMarker({messageId:id,threadId:extra.threadId||id,folderId,subject:String(extra.subject||'(no subject)'),fromAddress:scope.operatorEmail||'owner@example.test',senderName:state.tenantName,toAddress:extra.to||'',ccAddress:extra.cc||'',summary:String(extra.content||'').replace(/<[^>]+>/g,' ').trim().slice(0,180),sentDateInGMT:nowIso(),status:'read',isRead:true,hasAttachment:false,flagid:'flag_not_set'});state={...state,mailMessages:[message,...state.mailMessages],mailBodies:{...state.mailBodies,[id]:String(extra.content||'')}};writeGodModeTenantDemoState(scope,state);return {ok:true,data:{messageId:id}};}\n  return {ok:true,data:{}};\n}\n"},{"path":"src/hooks/useGodModeTenantDemo.ts","content":"import { useCallback, useEffect, useMemo, useState } from 'react';\nimport { useAuth } from '@/contexts/AuthContext';\nimport { useMultiTenant } from '@/contexts/MultiTenantContext';\nimport { useUserImpersonation } from '@/contexts/UserImpersonationContext';\nimport { readGodModeAccessContext } from '@/lib/godmodeAccess';\nimport {\n  GODMODE_TENANT_DEMO_EVENT,\n  assignDemoRecords,\n  bulkDeleteDemoRecords,\n  bulkUpdateDemoRecords,\n  createDemoContact,\n  createDemoEvent,\n  createDemoRecord,\n  createDemoTask,\n  deleteDemoContact,\n  deleteDemoEvent,\n  deleteDemoRecord,\n  deleteDemoTask,\n  exportDemoCollectionCsv,\n  exportDemoTenantJson,\n  getDemoAnalytics,\n  godModeTenantDemoMailInvoke,\n  importDemoCollectionCsv,\n  importDemoTenantJson,\n  listDemoCollection,\n  readGodModeTenantDemoState,\n  resetGodModeTenantDemo,\n  setGodModeTenantDemoActiveScope,\n  updateDemoContact,\n  updateDemoEvent,\n  updateDemoRecord,\n  updateDemoTask,\n  type DemoImportStrategy,\n  type GodModeTenantDemoCollection,\n  type GodModeTenantDemoScope,\n} from '@/lib/godmodeTenantDemoStore';\n\nexport function useGodModeTenantDemo() {\n  const { user } = useAuth();\n  const { activeTenant, hasGodModeAnywhere } = useMultiTenant();\n  const { isImpersonating } = useUserImpersonation();\n  const [, setRevision] = useState(0);\n  const access = readGodModeAccessContext();\n  const explicitSupport = access?.mode === 'read_only_support_access';\n  const enabled = Boolean(user?.id && activeTenant?.id && hasGodModeAnywhere() && !isImpersonating && !explicitSupport);\n  const scope = useMemo<GodModeTenantDemoScope | null>(() => {\n    if (!user?.id || !activeTenant?.id) return null;\n    const tenant = activeTenant as any;\n    return {\n      tenantId:String(activeTenant.id),\n      tenantName:tenant.name || tenant.company_dba_name || tenant.company_legal_name || 'Workspace',\n      tenantSlug:tenant.company_slug || null,\n      operatorId:user.id,\n      operatorEmail:user.email || null,\n    };\n  }, [activeTenant, user?.email, user?.id]);\n\n  useEffect(() => {\n    setGodModeTenantDemoActiveScope(enabled && scope ? scope : null);\n    return () => {\n      if (enabled) setGodModeTenantDemoActiveScope(null);\n    };\n  }, [enabled, scope?.operatorId, scope?.tenantId, scope?.tenantName, scope?.tenantSlug, scope?.operatorEmail]);\n\n  useEffect(() => {\n    if (typeof window === 'undefined') return;\n    const onChange = (event: Event) => {\n      const detail = (event as CustomEvent)?.detail || {};\n      if (!scope || (detail.tenantId === scope.tenantId && detail.operatorId === scope.operatorId)) setRevision(value => value + 1);\n    };\n    window.addEventListener(GODMODE_TENANT_DEMO_EVENT, onChange);\n    return () => window.removeEventListener(GODMODE_TENANT_DEMO_EVENT, onChange);\n  }, [scope?.operatorId, scope?.tenantId]);\n\n  const state = enabled && scope ? readGodModeTenantDemoState(scope) : null;\n  const requireScope = useCallback(() => {\n    if (!enabled || !scope) throw new Error('GodMode tenant demo mode is not active');\n    return scope;\n  }, [enabled, scope]);\n\n  return {\n    enabled, scope, state,\n    reset: () => resetGodModeTenantDemo(requireScope()),\n    list: (collection:GodModeTenantDemoCollection) => listDemoCollection(requireScope(), collection),\n    create: (collection:GodModeTenantDemoCollection,input:any) => createDemoRecord(requireScope(),collection,input),\n    update: (collection:GodModeTenantDemoCollection,id:string,updates:any) => updateDemoRecord(requireScope(),collection,id,updates),\n    remove: (collection:GodModeTenantDemoCollection,id:string) => deleteDemoRecord(requireScope(),collection,id),\n    bulkUpdate: (collection:GodModeTenantDemoCollection,ids:string[],updates:any) => bulkUpdateDemoRecords(requireScope(),collection,ids,updates),\n    bulkDelete: (collection:GodModeTenantDemoCollection,ids:string[]) => bulkDeleteDemoRecords(requireScope(),collection,ids),\n    assign: (collection:GodModeTenantDemoCollection,ids:string[],assignedTo:string|null,assignedUser?:string|null) => assignDemoRecords(requireScope(),collection,ids,assignedTo,assignedUser),\n    exportJson: () => exportDemoTenantJson(requireScope()),\n    exportCsv: (collection:GodModeTenantDemoCollection) => exportDemoCollectionCsv(requireScope(),collection),\n    importJson: (text:string,strategy:DemoImportStrategy='merge') => importDemoTenantJson(requireScope(),text,strategy),\n    importCsv: (collection:GodModeTenantDemoCollection,text:string,strategy:DemoImportStrategy='merge') => importDemoCollectionCsv(requireScope(),collection,text,strategy),\n    analytics: () => getDemoAnalytics(requireScope()),\n    createContact: (input:any) => createDemoContact(requireScope(), input),\n    updateContact: (id:string, updates:any) => updateDemoContact(requireScope(), id, updates),\n    deleteContact: (id:string) => deleteDemoContact(requireScope(), id),\n    createTask: (input:any) => createDemoTask(requireScope(), input),\n    updateTask: (id:string, updates:any) => updateDemoTask(requireScope(), id, updates),\n    deleteTask: (id:string) => deleteDemoTask(requireScope(), id),\n    createEvent: (input:any) => createDemoEvent(requireScope(), input),\n    updateEvent: (id:string, updates:any) => updateDemoEvent(requireScope(), id, updates),\n    deleteEvent: (id:string) => deleteDemoEvent(requireScope(), id),\n    mailInvoke: (action:string, extra:Record<string,any>={}) => godModeTenantDemoMailInvoke(requireScope(), action, extra),\n  };\n}\n"},{"path":"src/components/godmode/GodModeTenantDemoDataManager.tsx","content":"import { useMemo, useRef, useState } from 'react';\nimport { Download, FileJson2, FileSpreadsheet, RefreshCw, Upload, X } from 'lucide-react';\nimport { useGodModeTenantDemo } from '@/hooks/useGodModeTenantDemo';\nimport {\n  GODMODE_TENANT_DEMO_COLLECTIONS,\n  type DemoImportStrategy,\n  type GodModeTenantDemoCollection,\n} from '@/lib/godmodeTenantDemoStore';\n\nfunction downloadText(fileName:string, text:string, mimeType:string) {\n  const blob=new Blob([text],{type:mimeType});\n  const url=URL.createObjectURL(blob);\n  const link=document.createElement('a');\n  link.href=url; link.download=fileName; document.body.appendChild(link); link.click(); link.remove();\n  URL.revokeObjectURL(url);\n}\nfunction label(value:string) {\n  return value.replace(/([a-z])([A-Z])/g,'$1 $2').replace(/[-_]+/g,' ').replace(/\\b\\w/g,(c)=>c.toUpperCase());\n}\n\nexport function GodModeTenantDemoDataManager({ open, onClose }:{open:boolean;onClose:()=>void}) {\n  const demo=useGodModeTenantDemo();\n  const [collection,setCollection]=useState<GodModeTenantDemoCollection>('contacts');\n  const [strategy,setStrategy]=useState<DemoImportStrategy>('merge');\n  const [receipt,setReceipt]=useState<string>('');\n  const fileRef=useRef<HTMLInputElement>(null);\n  const counts=useMemo(()=>Object.fromEntries(GODMODE_TENANT_DEMO_COLLECTIONS.map((key)=>[key,demo.state?.[key]?.length||0])),[demo.state?.updatedAt]);\n\n  if(!open||!demo.enabled||!demo.scope||!demo.state)return null;\n  const tenantSlug=(demo.scope.tenantSlug||demo.scope.tenantName||'tenant').toLowerCase().replace(/[^a-z0-9]+/g,'-').replace(/^-+|-+$/g,'');\n\n  const exportJson=()=>downloadText(\\`\\${tenantSlug}-shadow-tenant.json\\`,demo.exportJson(),'application/json');\n  const exportCsv=()=>downloadText(\\`\\${tenantSlug}-\\${collection}.csv\\`,demo.exportCsv(collection),'text/csv;charset=utf-8');\n  const importFile=async(file:File|null)=>{\n    if(!file)return;\n    try{\n      const text=await file.text();\n      const result=file.name.toLowerCase().endsWith('.json')?demo.importJson(text,strategy):demo.importCsv(collection,text,strategy);\n      setReceipt(\\`Imported \\${result.accepted} row\\${result.accepted===1?'':'s'}\\${result.rejected?\\`; \\${result.rejected} rejected\\`:''}.\\`);\n    }catch(error:any){setReceipt(error?.message||'Import failed.');}\n    if(fileRef.current)fileRef.current.value='';\n  };\n\n  return <div className=\"fixed inset-0 z-[130] flex items-start justify-end bg-black/35 p-2 backdrop-blur-sm sm:p-4\" data-godmode-shadow-data-manager=\"true\">\n    <section className=\"h-full w-full max-w-xl overflow-y-auto rounded-3xl border border-amber-300/25 bg-[#100d08]/95 text-white shadow-2xl\">\n      <header className=\"sticky top-0 z-10 flex items-center justify-between border-b border-white/10 bg-[#100d08]/95 px-5 py-4 backdrop-blur\">\n        <div><div className=\"text-[10px] font-black uppercase tracking-[.18em] text-amber-200\">GodMode shadow tenant</div><h2 className=\"mt-1 text-xl font-semibold\">{demo.scope.tenantName}</h2><p className=\"mt-1 text-xs text-white/45\">Synthetic only · import/export never touches production records or providers.</p></div>\n        <button type=\"button\" onClick={onClose} className=\"grid h-10 w-10 place-items-center rounded-full border border-white/10 text-white/65 hover:bg-white/10\" aria-label=\"Close demo data manager\"><X className=\"h-4 w-4\"/></button>\n      </header>\n\n      <div className=\"space-y-5 p-5\">\n        <section className=\"rounded-2xl border border-white/10 bg-white/[0.035] p-4\">\n          <div className=\"flex flex-wrap gap-2\">\n            <button type=\"button\" onClick={exportJson} className=\"inline-flex min-h-10 items-center gap-2 rounded-xl bg-amber-300 px-4 text-sm font-black text-slate-950\"><FileJson2 className=\"h-4 w-4\"/>Export entire tenant JSON</button>\n            <button type=\"button\" onClick={()=>{demo.reset();setReceipt('Shadow tenant reseeded.');}} className=\"inline-flex min-h-10 items-center gap-2 rounded-xl border border-white/12 px-4 text-sm font-semibold text-white/75\"><RefreshCw className=\"h-4 w-4\"/>Reset / reseed</button>\n          </div>\n        </section>\n\n        <section className=\"grid grid-cols-2 gap-2 sm:grid-cols-3\">\n          {GODMODE_TENANT_DEMO_COLLECTIONS.map((key)=><button type=\"button\" key={key} onClick={()=>setCollection(key)} className={\\`rounded-xl border p-3 text-left transition \\${collection===key?'border-amber-300/40 bg-amber-300/10':'border-white/8 bg-white/[0.025] hover:bg-white/[0.05]'}\\`}>\n            <div className=\"text-[10px] font-black uppercase tracking-[.12em] text-white/45\">{label(key)}</div>\n            <div className=\"mt-1 text-2xl font-black text-white\">{counts[key]||0}</div>\n          </button>)}\n        </section>\n\n        <section className=\"rounded-2xl border border-white/10 bg-white/[0.035] p-4\">\n          <div className=\"flex flex-wrap items-center justify-between gap-3\"><div><div className=\"font-semibold\">{label(collection)}</div><div className=\"text-xs text-white/45\">CSV operations target only this shadow collection.</div></div>\n            <select value={strategy} onChange={(e)=>setStrategy(e.target.value as DemoImportStrategy)} className=\"h-10 rounded-xl border border-white/10 bg-black/30 px-3 text-sm text-white\"><option value=\"merge\">Merge import</option><option value=\"replace\">Replace collection</option></select>\n          </div>\n          <div className=\"mt-4 flex flex-wrap gap-2\">\n            <button type=\"button\" onClick={exportCsv} className=\"inline-flex min-h-10 items-center gap-2 rounded-xl border border-white/12 px-4 text-sm font-semibold text-white/80\"><Download className=\"h-4 w-4\"/>Export CSV</button>\n            <button type=\"button\" onClick={()=>fileRef.current?.click()} className=\"inline-flex min-h-10 items-center gap-2 rounded-xl border border-white/12 px-4 text-sm font-semibold text-white/80\"><Upload className=\"h-4 w-4\"/>Import JSON / CSV</button>\n            <input ref={fileRef} type=\"file\" accept=\".csv,.json,text/csv,application/json\" className=\"hidden\" onChange={(e)=>void importFile(e.target.files?.[0]||null)}/>\n          </div>\n          {receipt?<div className=\"mt-3 rounded-xl border border-white/10 bg-black/20 px-3 py-2 text-xs text-white/70\">{receipt}</div>:null}\n        </section>\n\n        <section className=\"rounded-2xl border border-white/10 bg-white/[0.025] p-4 text-xs leading-6 text-white/50\">\n          <div className=\"flex items-center gap-2 font-semibold text-white/70\"><FileSpreadsheet className=\"h-4 w-4\"/>Import rules</div>\n          <p className=\"mt-1\">CSV headers are normalized to snake_case. Existing IDs are preserved; missing IDs get deterministic demo IDs. JSON exports are versioned and can be merged or replaced. Imported rows are forced back into this tenant’s synthetic namespace.</p>\n        </section>\n      </div>\n    </section>\n  </div>;\n}\n"},{"path":"src/components/godmode/GodModeTenantDemoIndicator.tsx","content":"import { useState } from 'react';\nimport { DatabaseZap, RotateCcw } from 'lucide-react';\nimport { useGodModeTenantDemo } from '@/hooks/useGodModeTenantDemo';\nimport { GodModeTenantDemoDataManager } from '@/components/godmode/GodModeTenantDemoDataManager';\n\nexport function GodModeTenantDemoIndicator() {\n  const demo=useGodModeTenantDemo();\n  const [open,setOpen]=useState(false);\n  if(!demo.enabled||!demo.scope)return null;\n  return <>\n    <div\n      data-godmode-tenant-demo=\"true\"\n      data-godmode-tenant-demo-tenant-id={demo.scope.tenantId}\n      className=\"fixed right-3 top-[calc(var(--comm-banner-h,0px)+0.75rem)] z-[120] flex items-center gap-2 rounded-full border border-amber-300/35 bg-[#1c1504]/90 px-2 py-1.5 text-[10px] font-black uppercase tracking-[0.13em] text-amber-100 shadow-xl backdrop-blur\"\n      title=\"GodMode is using the synthetic shadow tenant. Production customer/provider records are not used by covered demo surfaces.\"\n    >\n      <button type=\"button\" onClick={()=>setOpen(true)} className=\"inline-flex items-center gap-2 rounded-full px-1.5 py-0.5\" aria-label=\"Open shadow tenant data manager\"><span className=\"h-2 w-2 rounded-full bg-amber-300\"/><DatabaseZap className=\"h-3.5 w-3.5\"/>Demo data</button>\n      <button type=\"button\" onClick={()=>demo.reset()} className=\"grid h-6 w-6 place-items-center rounded-full border border-amber-100/15 text-amber-100/75 hover:bg-amber-100/10 hover:text-amber-50\" aria-label=\"Reset tenant demo data\" title=\"Reset tenant demo data\"><RotateCcw className=\"h-3.5 w-3.5\"/></button>\n    </div>\n    <GodModeTenantDemoDataManager open={open} onClose={()=>setOpen(false)}/>\n  </>;\n}\n"}],"branch":"ai/objective-first-repair-c43209cbca72","writes":[],"patches":[],"version":1,"approved":true,"missionId":"c43209cb-ca72-4870-9e03-5fc4e41d1eaa","objective":"Build KNOCKLAUNCH GodMode Shadow Tenant Data v3 as a platform primitive.\n\nOwner outcome: when a GodMode operator enters any tenant without explicit real-user impersonation/support projection, the tenant must behave like a fully populated real workspace using synthetic data. Nothing data-bearing should fall short of the real tenant owner/user experience.\n\nRequired platform behavior:\n1. Upgrade the current GodMode tenant demo store from contacts/tasks/calendar/mail only to a versioned shadow tenant dataset with linked realistic records for at least:\n   - contacts/leads/customers and notes\n   - proposals/agreements/contracts/e-sign state\n   - invoices/estimates/payments/receivables\n   - documents/files/evidence\n   - jobs/work orders/bookings\n   - opportunities/pipeline state\n   - tasks/jots/notes\n   - calendar/appointments/events\n   - mail inbox/sent/drafts/threads\n   - team members/invitations/roles\n   - notifications/activity/history\n   - reports/analytics source facts derived from the above\n2. All seeded records must be internally marked synthetic and relationally linked (contact -> proposal/agreement -> invoice/payment -> document/job/appointment/activity) so detail views and cross-navigation work.\n3. Add one generic shadow-data repository API supporting list/get/create/update/delete, bulk update/delete/archive/restore/assign, merge/replace import, reseed/reset, and relationship-safe ID preservation.\n4. Add import/export:\n   - export entire shadow tenant as versioned JSON\n   - export any collection as CSV\n   - import versioned JSON with merge or replace\n   - import CSV into a selected collection with field/header normalization and deterministic IDs\n   - imports must validate tenant/demo schema, preserve links where possible, report accepted/rejected rows, and never mutate production/provider data\n5. The existing GodMode Demo Data badge becomes a compact shadow-data control drawer/modal (not a separate app) showing collection counts and controls for reset, JSON export/import, and per-collection CSV import/export.\n6. Actual tenant app workflows must use the shadow repository in demo mode, with no provider/database writes, for the current shared data owners:\n   - Contacts/UnifiedManagement including import and bulk actions\n   - UniversalProposalWorkspace/proposalEngine including draft/edit/send-for-signature/approve/decline and demo operating contracts/agreements\n   - Documents/agreements and signed/pending agreement views\n   - Invoices/Payments via InvoicesTab/documents API boundary\n   - Jobs/Work Orders via JobTracker\n   - Opportunity Radar\n   - Team members/invitations\n   - existing Tasks, Calendar, Mail adapters\n7. Explicit real-user impersonation/read_only_support_access and ordinary tenant users must retain real production paths. Demo mode must never call production write endpoints/providers for covered actions.\n8. Reports/analytics in demo mode must see populated synthetic source data or derived demo metrics rather than empty production queries.\n9. Add a demo coverage registry/contract for first-class data-bearing application IDs. If a new data-bearing first-class tenant app is added without a shadow-data adapter, Gate must fail. Non-data creative/config-only surfaces may be explicitly exempted.\n10. Preserve the real tenant UI, routes, branding, search/filter/sort/detail navigation. This is data substitution, not a parallel demo application.\n11. Preserve existing tenant isolation, protected route behavior, and legitimate explicit support access.\n\nAcceptance:\n- Canonical Gate passes.\n- Auto-merge and release affected frontend.\n- Prove live in Tennex normal GodMode tenant mode (NOT read_only_support_access): Contacts populated; Proposals has seeded proposal/agreement; Documents/Agreements has seeded pending/signed agreement or linked contract; Invoices has seeded invoice/payment; Tasks and Calendar remain populated; demo manager can export JSON and CSV and import a CSV contact row that appears in Contacts.\n- Prove explicit","repository":"noel/KnockLaunchOS","ownerApproved":true,"releaseIntent":null,"sourceTargets":[],"implementation":{"files":[],"writes":[]},"requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"compilation":{"stages":["owner_intent","conversation_context","scope","live_state","mutation_authority","affected_systems","dependencies","risk_and_blast_radius","execution_tactics","required_proof","release_plan","recovery_plan"],"version":2,"explicit":true,"objective":"Build KNOCKLAUNCH GodMode Shadow Tenant Data v3 as a platform primitive.\n\nOwner outcome: when a GodMode operator enters any tenant without explicit real-user impersonation/support projection, the tenant must behave like a fully populated real workspace using synthetic data. Nothing data-bearing should fall short of the real tenant owner/user experience.\n\nRequired platform behavior:\n1. Upgrade the current GodMode tenant demo store from contacts/tasks/calendar/mail only to a versioned shadow tenant dataset with linked realistic records for at least:\n   - contacts/leads/customers and notes\n   - proposals/agreements/contracts/e-sign state\n   - invoices/estimates/payments/receivables\n   - documents/files/evidence\n   - jobs/work orders/bookings\n   - opportunities/pipeline state\n   - tasks/jots/notes\n   - calendar/appointments/events\n   - mail inbox/sent/drafts/threads\n   - team members/invitations/roles\n   - notifications/activity/history\n   - reports/analytics source facts derived from the above\n2. All seeded records must be internally marked synthetic and relationally linked (contact -> proposal/agreement -> invoice/payment -> document/job/appointment/activity) so detail views and cross-navigation work.\n3. Add one generic shadow-data repository API supporting list/get/create/update/delete, bulk update/delete/archive/restore/assign, merge/replace import, reseed/reset, and relationship-safe ID preservation.\n4. Add import/export:\n   - export entire shadow tenant as versioned JSON\n   - export any collection as CSV\n   - import versioned JSON with merge or replace\n   - import CSV into a selected collection with field/header normalization and deterministic IDs\n   - imports must validate tenant/demo schema, preserve links where possible, report accepted/rejected rows, and never mutate production/provider data\n5. The existing GodMode Demo Data badge becomes a compact shadow-data control drawer/modal (not a separate app) showing collection counts and controls for reset, JSON export/import, and per-collection CSV import/export.\n6. Actual tenant app workflows must use the shadow repository in demo mode, with no provider/database writes, for the current shared data owners:\n   - Contacts/UnifiedManagement including import and bulk actions\n   - UniversalProposalWorkspace/proposalEngine including draft/edit/send-for-signature/approve/decline and demo operating contracts/agreements\n   - Documents/agreements and signed/pending agreement views\n   - Invoices/Payments via InvoicesTab/documents API boundary\n   - Jobs/Work Orders via JobTracker\n   - Opportunity Radar\n   - Team members/invitations\n   - existing Tasks, Calendar, Mail adapters\n7. Explicit real-user impersonation/read_only_support_access and ordinary tenant users must retain real production paths. Demo mode must never call production write endpoints/providers for covered actions.\n8. Reports/analytics in demo mode must see populated synthetic source data or derived demo metrics rather than empty production queries.\n9. Add a demo coverage registry/contract for first-class data-bearing application IDs. If a new data-bearing first-class tenant app is added without a shadow-data adapter, Gate must fail. Non-data creative/config-only surfaces may be explicitly exempted.\n10. Preserve the real tenant UI, routes, branding, search/filter/sort/detail navigation. This is data substitution, not a parallel demo application.\n11. Preserve existing tenant isolation, protected route behavior, and legitimate explicit support access.\n\nAcceptance:\n- Canonical Gate passes.\n- Auto-merge and release affected frontend.\n- Prove live in Tennex normal GodMode tenant mode (NOT read_only_support_access): Contacts populated; Proposals has seeded proposal/agreement; Documents/Agreements has seeded pending/signed agreement or linked contract; Invoices has seeded invoice/payment; Tasks and Calendar remain populated; demo manager can export JSON and CSV and import a CSV contact row that appears in Contacts.\n- Prove explicit","proofKinds":["runtime"],"adaptiveDomains":["intent","tenant_route_role_viewport","urgency_deadline","dependency_scope","risk_blast_radius","runner_capacity","queue_active_work","provider_failure_circuits","qa_scope","retry_recovery","release_ownership","proof_depth"],"expansionPolicy":"later_stages_may_only_narrow_or_expand_with_machine_readable_dependency_evidence","dynamicStatePolicy":"live_state_may_change_execution_tactics_but_never_owner_outcome_or_explicit_constraints","dynamicRefreshStages":["preflight","gate","release","runtime_proof"],"adaptiveCompilerVersion":"paul-adaptive-objective-v1","inheritedContextBlockingAuthority":false},"rawUtterance":"Build KNOCKLAUNCH GodMode Shadow Tenant Data v3 as a platform primitive.\n\nOwner outcome: when a GodMode operator enters any tenant without explicit real-user impersonation/support projection, the tenant must behave like a fully populated real workspace using synthetic data. Nothing data-bearing should fall short of the real tenant owner/user experience.\n\nRequired platform behavior:\n1. Upgrade the current GodMode tenant demo store from contacts/tasks/calendar/mail only to a versioned shadow tenant dataset with linked realistic records for at least:\n   - contacts/leads/customers and notes\n   - proposals/agreements/contracts/e-sign state\n   - invoices/estimates/payments/receivables\n   - documents/files/evidence\n   - jobs/work orders/bookings\n   - opportunities/pipeline state\n   - tasks/jots/notes\n   - calendar/appointments/events\n   - mail inbox/sent/drafts/threads\n   - team members/invitations/roles\n   - notifications/activity/history\n   - reports/analytics source facts derived from the above\n2. All seeded records must be internally marked synthetic and relationally linked (contact -> proposal/agreement -> invoice/payment -> document/job/appointment/activity) so detail views and cross-navigation work.\n3. Add one generic shadow-data repository API supporting list/get/create/update/delete, bulk update/delete/archive/restore/assign, merge/replace import, reseed/reset, and relationship-safe ID preservation.\n4. Add import/export:\n   - export entire shadow tenant as versioned JSON\n   - export any collection as CSV\n   - import versioned JSON with merge or replace\n   - import CSV into a selected collection with field/header normalization and deterministic IDs\n   - imports must validate tenant/demo schema, preserve links where possible, report accepted/rejected rows, and never mutate production/provider data\n5. The existing GodMode Demo Data badge becomes a compact shadow-data control drawer/modal (not a separate app) showing collection counts and controls for reset, JSON export/import, and per-collection CSV import/export.\n6. Actual tenant app workflows must use the shadow repository in demo mode, with no provider/database writes, for the current shared data owners:\n   - Contacts/UnifiedManagement including import and bulk actions\n   - UniversalProposalWorkspace/proposalEngine including draft/edit/send-for-signature/approve/decline and demo operating contracts/agreements\n   - Documents/agreements and signed/pending agreement views\n   - Invoices/Payments via InvoicesTab/documents API boundary\n   - Jobs/Work Orders via JobTracker\n   - Opportunity Radar\n   - Team members/invitations\n   - existing Tasks, Calendar, Mail adapters\n7. Explicit real-user impersonation/read_only_support_access and ordinary tenant users must retain real production paths. Demo mode must never call production write endpoints/providers for covered actions.\n8. Reports/analytics in demo mode must see populated synthetic source data or derived demo metrics rather than empty production queries.\n9. Add a demo coverage registry/contract for first-class data-bearing application IDs. If a new data-bearing first-class tenant app is added without a shadow-data adapter, Gate must fail. Non-data creative/config-only surfaces may be explicitly exempted.\n10. Preserve the real tenant UI, routes, branding, search/filter/sort/detail navigation. This is data substitution, not a parallel demo application.\n11. Preserve existing tenant isolation, protected route behavior, and legitimate explicit support access.\n\nAcceptance:\n- Canonical Gate passes.\n- Auto-merge and release affected frontend.\n- Prove live in Tennex normal GodMode tenant mode (NOT read_only_support_access): Contacts populated; Proposals has seeded proposal/agreement; Documents/Agreements has seeded pending/signed agreement or linked contract; Invoices has seeded invoice/payment; Tasks and Calendar remain populated; demo manager can export JSON and CSV and import a CSV contact row that appears in Contacts.\n- Prove explicit","wordingChanged":false,"canonicalIntent":"Build KNOCKLAUNCH GodMode Shadow Tenant Data v3 as a platform primitive.\n\nOwner outcome: when a GodMode operator enters any tenant without explicit real-user impersonation/support projection, the tenant must behave like a fully populated real workspace using synthetic data. Nothing data-bearing should fall short of the real tenant owner/user experience.\n\nRequired platform behavior:\n1. Upgrade the current GodMode tenant demo store from contacts/tasks/calendar/mail only to a versioned shadow tenant dataset with linked realistic records for at least:\n   - contacts/leads/customers and notes\n   - proposals/agreements/contracts/e-sign state\n   - invoices/estimates/payments/receivables\n   - documents/files/evidence\n   - jobs/work orders/bookings\n   - opportunities/pipeline state\n   - tasks/jots/notes\n   - calendar/appointments/events\n   - mail inbox/sent/drafts/threads\n   - team members/invitations/roles\n   - notifications/activity/history\n   - reports/analytics source facts derived from the above\n2. All seeded records must be internally marked synthetic and relationally linked (contact -> proposal/agreement -> invoice/payment -> document/job/appointment/activity) so detail views and cross-navigation work.\n3. Add one generic shadow-data repository API supporting list/get/create/update/delete, bulk update/delete/archive/restore/assign, merge/replace import, reseed/reset, and relationship-safe ID preservation.\n4. Add import/export:\n   - export entire shadow tenant as versioned JSON\n   - export any collection as CSV\n   - import versioned JSON with merge or replace\n   - import CSV into a selected collection with field/header normalization and deterministic IDs\n   - imports must validate tenant/demo schema, preserve links where possible, report accepted/rejected rows, and never mutate production/provider data\n5. The existing GodMode Demo Data badge becomes a compact shadow-data control drawer/modal (not a separate app) showing collection counts and controls for reset, JSON export/import, and per-collection CSV import/export.\n6. Actual tenant app workflows must use the shadow repository in demo mode, with no provider/database writes, for the current shared data owners:\n   - Contacts/UnifiedManagement including import and bulk actions\n   - UniversalProposalWorkspace/proposalEngine including draft/edit/send-for-signature/approve/decline and demo operating contracts/agreements\n   - Documents/agreements and signed/pending agreement views\n   - Invoices/Payments via InvoicesTab/documents API boundary\n   - Jobs/Work Orders via JobTracker\n   - Opportunity Radar\n   - Team members/invitations\n   - existing Tasks, Calendar, Mail adapters\n7. Explicit real-user impersonation/read_only_support_access and ordinary tenant users must retain real production paths. Demo mode must never call production write endpoints/providers for covered actions.\n8. Reports/analytics in demo mode must see populated synthetic source data or derived demo metrics rather than empty production queries.\n9. Add a demo coverage registry/contract for first-class data-bearing application IDs. If a new data-bearing first-class tenant app is added without a shadow-data adapter, Gate must fail. Non-data creative/config-only surfaces may be explicitly exempted.\n10. Preserve the real tenant UI, routes, branding, search/filter/sort/detail navigation. This is data substitution, not a parallel demo application.\n11. Preserve existing tenant isolation, protected route behavior, and legitimate explicit support access.\n\nAcceptance:\n- Canonical Gate passes.\n- Auto-merge and release affected frontend.\n- Prove live in Tennex normal GodMode tenant mode (NOT read_only_support_access): Contacts populated; Proposals has seeded proposal/agreement; Documents/Agreements has seeded pending/signed agreement or linked contract; Invoices has seeded invoice/payment; Tasks and Calendar remain populated; demo manager can export JSON and CSV and import a CSV contact row that appears in Contacts.\n- Prove explicit","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"shadow-tenant-v3","statement":"Build KNOCKLAUNCH GodMode Shadow Tenant Data v3 as a platform primitive.\n\nOwner outcome: when a GodMode operator enters any tenant without explicit real-user impersonation/support projection, the tenant must behave like a fully populated real workspace using synthetic data. Nothing data-bearing should fall short of the real tenant owner/user experience.\n\nRequired platform behavior:\n1. Upgrade the current GodMode tenant demo store from contacts/tasks/calendar/mail only to a versioned shadow tenant dataset with linked realistic records for at least:\n   - contacts/leads/customers and notes\n   - proposals/agreements/contracts/e-sign state\n   - invoices/estimates/payments/receivables\n   - documents/files/evidence\n   - jobs/work orders/bookings\n   - opportunities/pipeline state\n   - tasks/jots/notes\n   - calendar/appointments/events\n   - mail inbox/sent/drafts/threads\n   - team members/invitations/roles\n   - notifications/activity/history\n   - reports/analytics source facts derived from the above\n2. All seeded records must be internally marked synthetic and relationally linked (contact -> proposal/agreement -> invoice/payment -> document/job/appointment/activity) so detail views and cros","provenance":{"reason":null,"source":"current_explicit_owner_request","inherited":false,"blockingAuthority":true},"proofConditionIds":["contacts","proposal","agreement","invoice","import-export","support"]}],"objective":"Build KNOCKLAUNCH GodMode Shadow Tenant Data v3 as a platform primitive.\n\nOwner outcome: when a GodMode operator enters any tenant without explicit real-user impersonation/support projection, the tenant must behave like a fully populated real workspace using synthetic data. Nothing data-bearing should fall short of the real tenant owner/user experience.\n\nRequired platform behavior:\n1. Upgrade the current GodMode tenant demo store from contacts/tasks/calendar/mail only to a versioned shadow tenant dataset with linked realistic records for at least:\n   - contacts/leads/customers and notes\n   - proposals/agreements/contracts/e-sign state\n   - invoices/estimates/payments/receivables\n   - documents/files/evidence\n   - jobs/work orders/bookings\n   - opportunities/pipeline state\n   - tasks/jots/notes\n   - calendar/appointments/events\n   - mail inbox/sent/drafts/threads\n   - team members/invitations/roles\n   - notifications/activity/history\n   - reports/analytics source facts derived from the above\n2. All seeded records must be internally marked synthetic and relationally linked (contact -> proposal/agreement -> invoice/payment -> document/job/appointment/activity) so detail views and cross-navigation work.\n3. Add one generic shadow-data repository API supporting list/get/create/update/delete, bulk update/delete/archive/restore/assign, merge/replace import, reseed/reset, and relationship-safe ID preservation.\n4. Add import/export:\n   - export entire shadow tenant as versioned JSON\n   - export any collection as CSV\n   - import versioned JSON with merge or replace\n   - import CSV into a selected collection with field/header normalization and deterministic IDs\n   - imports must validate tenant/demo schema, preserve links where possible, report accepted/rejected rows, and never mutate production/provider data\n5. The existing GodMode Demo Data badge becomes a compact shadow-data control drawer/modal (not a separate app) showing collection counts and controls for reset, JSON export/import, and per-collection CSV import/export.\n6. Actual tenant app workflows must use the shadow repository in demo mode, with no provider/database writes, for the current shared data owners:\n   - Contacts/UnifiedManagement including import and bulk actions\n   - UniversalProposalWorkspace/proposalEngine including draft/edit/send-for-signature/approve/decline and demo operating contracts/agreements\n   - Documents/agreements and signed/pending agreement views\n   - Invoices/Payments via InvoicesTab/documents API boundary\n   - Jobs/Work Orders via JobTracker\n   - Opportunity Radar\n   - Team members/invitations\n   - existing Tasks, Calendar, Mail adapters\n7. Explicit real-user impersonation/read_only_support_access and ordinary tenant users must retain real production paths. Demo mode must never call production write endpoints/providers for covered actions.\n8. Reports/analytics in demo mode must see populated synthetic source data or derived demo metrics rather than empty production queries.\n9. Add a demo coverage registry/contract for first-class data-bearing application IDs. If a new data-bearing first-class tenant app is added without a shadow-data adapter, Gate must fail. Non-data creative/config-only surfaces may be explicitly exempted.\n10. Preserve the real tenant UI, routes, branding, search/filter/sort/detail navigation. This is data substitution, not a parallel demo application.\n11. Preserve existing tenant isolation, protected route behavior, and legitimate explicit support access.\n\nAcceptance:\n- Canonical Gate passes.\n- Auto-merge and release affected frontend.\n- Prove live in Tennex normal GodMode tenant mode (NOT read_only_support_access): Contacts populated; Proposals has seeded proposal/agreement; Documents/Agreements has seeded pending/signed agreement or linked contract; Invoices has seeded invoice/payment; Tasks and Calendar remain populated; demo manager can export JSON and CSV and import a CSV contact row that appears in Contacts.\n- Prove explicit","constraints":[{"id":"no-production-demo-writes","statement":"Shadow tenant operations must never write production tenant/provider data.","provenance":{"reason":null,"source":"hard_safety_invariant","inherited":false,"blockingAuthority":true},"proofConditionIds":["contacts","proposal","agreement","invoice","import-export","support"]},{"id":"real-user-projection","statement":"Explicit real-user impersonation/support projection and ordinary tenant users retain production data paths.","provenance":{"reason":null,"source":"hard_safety_invariant","inherited":false,"blockingAuthority":true},"proofConditionIds":["support"]},{"id":"same-ui","statement":"Use real tenant routes/UI; do not create a parallel demo app.","provenance":{"reason":null,"source":"current_explicit_owner_request","inherited":false,"blockingAuthority":true},"proofConditionIds":["contacts","proposal","agreement","invoice","import-export","support"]},{"id":"coverage-enforced","statement":"First-class data-bearing apps require declared shadow-data coverage or Gate fails.","provenance":{"reason":null,"source":"current_explicit_owner_request","inherited":false,"blockingAuthority":true},"proofConditionIds":["contacts","proposal","agreement","invoice","import-export","support"]},{"id":"atomic","statement":"Do not claim complete until Gate, merge, release, and claim-matched live proof pass.","provenance":{"reason":null,"source":"hard_safety_invariant","inherited":false,"blockingAuthority":true},"proofConditionIds":["contacts","proposal","agreement","invoice","import-export","support"]},{"id":"capability-completeness","statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","provenance":{"reason":null,"source":"hard_safety_invariant","inherited":false,"blockingAuthority":true},"proofConditionIds":["contacts","proposal","agreement","invoice","import-export","support"]},{"id":"atomic-capability-lifecycle","statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","provenance":{"reason":null,"source":"hard_safety_invariant","inherited":false,"blockingAuthority":true},"proofConditionIds":["contacts","proposal","agreement","invoice","import-export","support"]}],"adaptivePolicy":{"risk":{"tier":"high","blastRadius":"sensitive"},"proof":{"requiredKinds":["runtime"],"visualProofScope":"targeted","interactionRequired":true,"runtimeProofRequired":true},"scope":{"route":null,"roleRef":null,"tenantRef":null,"sourceTargets":["src/lib/godmodeTenantDemoStore.ts","src/hooks/useGodModeTenantDemo.ts","src/components/godmode/GodModeTenantDemoIndicator.tsx","src/components/management/UnifiedManagement.tsx","src/components/management/UnifiedManagementDialogs.tsx","src/components/management/useBulkActions.ts","src/lib/proposals/proposalEngine.ts","src/pages/proposals/UniversalProposalWorkspace.tsx","src/pages/owner/OwnerDocuments.tsx","src/pages/crm/DocumentsPage.tsx","src/components/documents/InvoicesTab.tsx","src/components/JobTracker/JobTracker.tsx","src/components/opportunity-radar/OpportunityRadarSurface.tsx","src/pages/applications/TeamApplicationRoute.tsx","src/components/shared/CondensedUserManagement.tsx","src/components/admin/onboarding/UserInvitationPanel.tsx","src/pages/Analytics.tsx","src/pages/owner/OwnerReports.tsx","src/__tests__/contracts/godmode-tenant-demo-mode.contract.test.ts"]},"dynamic":{"variables":["main_and_runtime_lineage","runner_capacity","queue_and_active_work","provider_health","failure_clusters_and_circuits","release_target_state","current_pr_and_gate_state"],"refreshStages":["preflight","gate","release","runtime_proof"],"refreshMayChange":["runner_selection","parallelism","retry_path","qa_depth","release_recovery","proof_timing"],"refreshMayNotChange":["owner_outcome","explicit_no_go_constraints","tenant_identity","credential_boundary","hard_safety_invariants"]},"urgency":{"priority":"normal","deadlineSignals":[],"deadlineExplicit":false},"version":"paul-adaptive-objective-v1","recovery":{"transient":"one_bounded_retry_then_alternate_eligible_pool_or_provider_path","deterministic":"repair_source_or_contract_do_not_blind_rerun","mutationDependencyFailure":"prerequisite_required_or_targeted_recovery_never_invent","readOnlyDependencyFailure":"degrade_to_available_grounded_context_and_keep_conversation_alive"},"unknowns":["tenant","route","deadline"],"authority":{"outcome":"current_explicit_owner_request","tactics":"live_prime_truth","unknownPolicy":"preserve_unknown_never_invent","historicalContext":"advisory_unless_current_request_confirms"},"execution":{"mutation":true,"concurrency":"serialize_overlapping_mutations","scopePolicy":"start_bounded_expand_only_with_machine_readable_dependency_evidence","staleStatePolicy":"refresh_dynamic_state_before_irreversible_or_acceptance_stage","conversationIsolation":true,"ownerOutcomeMayBeChangedByAdaptation":false},"experience":{"visual":true,"viewports":["desktop","mobile"],"behavioral":true,"visualProofScope":"targeted"},"dependencies":{"requiredDomains":["frontend","backend_runtime","schema_data_storage","provider_configuration","release_ownership","live_production_proof"],"capabilityDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"releaseTargetHints":["frontend"]},"inputSignals":{"rawUtterance":"Build KNOCKLAUNCH GodMode Shadow Tenant Data v3 as a platform primitive.\n\nOwner outcome: when a GodMode operator enters any tenant without explicit real-user impersonation/support projection, the tenant must behave like a fully populated real workspace using synthetic data. Nothing data-bearing should fall short of the real tenant owner/user experience.\n\nRequired platform behavior:\n1. Upgrade the current GodMode tenant demo store from contacts/tasks/calendar/mail only to a versioned shadow tenant dataset with linked realistic records for at least:\n   - contacts/leads/customers and notes\n   - proposals/agreements/contracts/e-sign state\n   - invoices/estimates/payments/receivables\n   - documents/files/evidence\n   - jobs/work orders/bookings\n   - opportunities/pipeline state\n   - tasks/jots/notes\n   - calendar/appointments/events\n   - mail inbox/sent/drafts/threads\n   - team members/invitations/roles\n   - notifications/activity/history\n   - reports/analytics source facts derived from the above\n2. All seeded records must be internally marked synthetic and relationally linked (contact -> proposal/agreement -> invoice/payment -> document/job/appointment/activity) so detail views and cross-navigation work.\n3. Add one generic shadow-data repository API supporting list/get/create/update/delete, bulk update/delete/archive/restore/assign, merge/replace import, reseed/reset, and relationship-safe ID preservation.\n4. Add import/export:\n   - export entire shadow tenant as versioned JSON\n   - export any collection as CSV\n   - import versioned JSON with merge or replace\n   - import CSV into a selected collection with field/header normalization and deterministic IDs\n   - imports must validate tenant/demo schema, preserve links where possible, report accepted/rejected rows, and never mutate production/provider data\n5. The existing GodMode Demo Data badge becomes a compact shadow-data control drawer/modal (not a separate app) showing collection counts and controls for reset, JSON export/import, and per-collection CSV import/export.\n6. Actual tenant app workflows must use the shadow repository in demo mode, with no provider/database writes, for the current shared data owners:\n   - Contacts/UnifiedManagement including import and bulk actions\n   - UniversalProposalWorkspace/proposalEngine including draft/edit/send-for-signature/approve/decline and demo operating contracts/agreements\n   - Documents/agreements and signed/pending agreement views\n   - Invoices/Payments via InvoicesTab/documents API boundary\n   - Jobs/Work Orders via JobTracker\n   - Opportunity Radar\n   - Team members/invitations\n   - existing Tasks, Calendar, Mail adapters\n7. Explicit real-user impersonation/read_only_support_access and ordinary tenant users must retain real production paths. Demo mode must never call production write endpoints/providers for covered actions.\n8. Reports/analytics in demo mode must see populated synthetic source data or derived demo metrics rather than empty production queries.\n9. Add a demo coverage registry/contract for first-class data-bearing application IDs. If a new data-bearing first-class tenant app is added without a shadow-data adapter, Gate must fail. Non-data creative/config-only surfaces may be explicitly exempted.\n10. Preserve the real tenant UI, routes, branding, search/filter/sort/detail navigation. This is data substitution, not a parallel demo application.\n11. Preserve existing tenant isolation, protected route behavior, and legitimate explicit support access.\n\nAcceptance:\n- Canonical Gate passes.\n- Auto-merge and release affected frontend.\n- Prove live in Tennex normal GodMode tenant mode (NOT read_only_support_access): Contacts populated; Proposals has seeded proposal/agreement; Documents/Agreements has seeded pending/signed agreement or linked contract; Invoices has seeded invoice/payment; Tasks and Calendar remain populated; demo manager can export JSON and CSV and import a CSV contact row that appears in Contacts.\n- Prove explicit","canonicalIntent":"Build KNOCKLAUNCH GodMode Shadow Tenant Data v3 as a platform primitive.\n\nOwner outcome: when a GodMode operator enters any tenant without explicit real-user impersonation/support projection, the tenant must behave like a fully populated real workspace using synthetic data. Nothing data-bearing should fall short of the real tenant owner/user experience.\n\nRequired platform behavior:\n1. Upgrade the current GodMode tenant demo store from contacts/tasks/calendar/mail only to a versioned shadow tenant dataset with linked realistic records for at least:\n   - contacts/leads/customers and notes\n   - proposals/agreements/contracts/e-sign state\n   - invoices/estimates/payments/receivables\n   - documents/files/evidence\n   - jobs/work orders/bookings\n   - opportunities/pipeline state\n   - tasks/jots/notes\n   - calendar/appointments/events\n   - mail inbox/sent/drafts/threads\n   - team members/invitations/roles\n   - notifications/activity/history\n   - reports/analytics source facts derived from the above\n2. All seeded records must be internally marked synthetic and relationally linked (contact -> proposal/agreement -> invoice/payment -> document/job/appointment/activity) so detail views and cross-navigation work.\n3. Add one generic shadow-data repository API supporting list/get/create/update/delete, bulk update/delete/archive/restore/assign, merge/replace import, reseed/reset, and relationship-safe ID preservation.\n4. Add import/export:\n   - export entire shadow tenant as versioned JSON\n   - export any collection as CSV\n   - import versioned JSON with merge or replace\n   - import CSV into a selected collection with field/header normalization and deterministic IDs\n   - imports must validate tenant/demo schema, preserve links where possible, report accepted/rejected rows, and never mutate production/provider data\n5. The existing GodMode Demo Data badge becomes a compact shadow-data control drawer/modal (not a separate app) showing collection counts and controls for reset, JSON export/import, and per-collection CSV import/export.\n6. Actual tenant app workflows must use the shadow repository in demo mode, with no provider/database writes, for the current shared data owners:\n   - Contacts/UnifiedManagement including import and bulk actions\n   - UniversalProposalWorkspace/proposalEngine including draft/edit/send-for-signature/approve/decline and demo operating contracts/agreements\n   - Documents/agreements and signed/pending agreement views\n   - Invoices/Payments via InvoicesTab/documents API boundary\n   - Jobs/Work Orders via JobTracker\n   - Opportunity Radar\n   - Team members/invitations\n   - existing Tasks, Calendar, Mail adapters\n7. Explicit real-user impersonation/read_only_support_access and ordinary tenant users must retain real production paths. Demo mode must never call production write endpoints/providers for covered actions.\n8. Reports/analytics in demo mode must see populated synthetic source data or derived demo metrics rather than empty production queries.\n9. Add a demo coverage registry/contract for first-class data-bearing application IDs. If a new data-bearing first-class tenant app is added without a shadow-data adapter, Gate must fail. Non-data creative/config-only surfaces may be explicitly exempted.\n10. Preserve the real tenant UI, routes, branding, search/filter/sort/detail navigation. This is data substitution, not a parallel demo application.\n11. Preserve existing tenant isolation, protected route behavior, and legitimate explicit support access.\n\nAcceptance:\n- Canonical Gate passes.\n- Auto-merge and release affected frontend.\n- Prove live in Tennex normal GodMode tenant mode (NOT read_only_support_access): Contacts populated; Proposals has seeded proposal/agreement; Documents/Agreements has seeded pending/signed agreement or linked contract; Invoices has seeded invoice/payment; Tasks and Calendar remain populated; demo manager can export JSON and CSV and import a CSV contact row that appears in Contacts.\n- Prove explicit","conversationContextPresent":false}},"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"contacts","kind":"runtime","claim":"Tennex GodMode Contacts uses populated shadow records.","route":"/tennex-tax-solutions/contacts","roleRef":"GodMode","userRef":null,"required":true,"expectedText":"Jamie Rivera","targetedActions":[],"allowedReleaseTargets":["frontend"],"requiredReleaseTargets":["frontend"],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false},{"id":"proposal","kind":"runtime","claim":"Tennex GodMode proposal workspace contains a seeded synthetic proposal and editable/send-for-signature actions remain synthetic.","route":null,"roleRef":"GodMode","userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":["frontend"],"requiredReleaseTargets":["frontend"],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false},{"id":"agreement","kind":"runtime","claim":"Tennex GodMode documents/agreements surface contains linked synthetic agreement/contract data.","route":null,"roleRef":"GodMode","userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":["frontend"],"requiredReleaseTargets":["frontend"],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false},{"id":"invoice","kind":"runtime","claim":"Tennex GodMode invoices/payments surface contains linked synthetic invoice/payment data.","route":null,"roleRef":"GodMode","userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":["frontend"],"requiredReleaseTargets":["frontend"],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false},{"id":"import-export","kind":"runtime","claim":"GodMode shadow-data manager exports JSON/CSV and imports a CSV contact row into the same tenant shadow dataset.","route":"/tennex-tax-solutions/contacts","roleRef":"GodMode","userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":["frontend"],"requiredReleaseTargets":["frontend"],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false},{"id":"support","kind":"runtime","claim":"Explicit real-user support projection disables shadow data and uses the real-data path.","route":null,"roleRef":"GodMode","userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":["frontend"],"requiredReleaseTargets":["frontend"],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false}],"validationErrors":[],"capabilityManifest":{"id":"Build-KNOCKLAUNCH-GodMode-Shadow-Tenant-Data-v3-as-a-platform-primitive.-Owner-outcome:-when-a-GodMo","driftPolicy":"exact_manifest_source_release_dependency_or_runtime_identity_mismatch_is_nonterminal","proofLedger":"command_center_mission_ledger_request_contract_hash_bound","schemaVersion":1,"releaseTargets":["frontend"],"lifecycleStates":["prepare","deploy","verify","activate"],"activationPolicy":"dependencies_and_claim_matched_live_proof_before_exposure","dependencyDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_required_not_runtime_failures","compatibilityWindow":["N","N-1"],"failureIsolationPolicy":"quarantine_or_rollback_affected_capability_only_preserve_unrelated_working_capabilities","canaryProofConditionIds":["contacts","proposal","agreement","invoice","import-export","support"]},"capabilityCompleteness":{"domains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"required":true,"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_states_not_runtime_failures"}},"repairGeneration":null,"executionEnvelope":{"ship":false,"version":1,"approved":true,"missionId":"c43209cb-ca72-4870-9e03-5fc4e41d1eaa","ownerApproved":true,"releaseIntent":null,"sourceTargets":[],"requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"compilation":{"stages":["owner_intent","conversation_context","scope","live_state","mutation_authority","affected_systems","dependencies","risk_and_blast_radius","execution_tactics","required_proof","release_plan","recovery_plan"],"version":2,"explicit":true,"objective":"Build KNOCKLAUNCH GodMode Shadow Tenant Data v3 as a platform primitive.\n\nOwner outcome: when a GodMode operator enters any tenant without explicit real-user impersonation/support projection, the tenant must behave like a fully populated real workspace using synthetic data. Nothing data-bearing should fall short of the real tenant owner/user experience.\n\nRequired platform behavior:\n1. Upgrade the current GodMode tenant demo store from contacts/tasks/calendar/mail only to a versioned shadow tenant dataset with linked realistic records for at least:\n   - contacts/leads/customers and notes\n   - proposals/agreements/contracts/e-sign state\n   - invoices/estimates/payments/receivables\n   - documents/files/evidence\n   - jobs/work orders/bookings\n   - opportunities/pipeline state\n   - tasks/jots/notes\n   - calendar/appointments/events\n   - mail inbox/sent/drafts/threads\n   - team members/invitations/roles\n   - notifications/activity/history\n   - reports/analytics source facts derived from the above\n2. All seeded records must be internally marked synthetic and relationally linked (contact -> proposal/agreement -> invoice/payment -> document/job/appointment/activity) so detail views and cross-navigation work.\n3. Add one generic shadow-data repository API supporting list/get/create/update/delete, bulk update/delete/archive/restore/assign, merge/replace import, reseed/reset, and relationship-safe ID preservation.\n4. Add import/export:\n   - export entire shadow tenant as versioned JSON\n   - export any collection as CSV\n   - import versioned JSON with merge or replace\n   - import CSV into a selected collection with field/header normalization and deterministic IDs\n   - imports must validate tenant/demo schema, preserve links where possible, report accepted/rejected rows, and never mutate production/provider data\n5. The existing GodMode Demo Data badge becomes a compact shadow-data control drawer/modal (not a separate app) showing collection counts and controls for reset, JSON export/import, and per-collection CSV import/export.\n6. Actual tenant app workflows must use the shadow repository in demo mode, with no provider/database writes, for the current shared data owners:\n   - Contacts/UnifiedManagement including import and bulk actions\n   - UniversalProposalWorkspace/proposalEngine including draft/edit/send-for-signature/approve/decline and demo operating contracts/agreements\n   - Documents/agreements and signed/pending agreement views\n   - Invoices/Payments via InvoicesTab/documents API boundary\n   - Jobs/Work Orders via JobTracker\n   - Opportunity Radar\n   - Team members/invitations\n   - existing Tasks, Calendar, Mail adapters\n7. Explicit real-user impersonation/read_only_support_access and ordinary tenant users must retain real production paths. Demo mode must never call production write endpoints/providers for covered actions.\n8. Reports/analytics in demo mode must see populated synthetic source data or derived demo metrics rather than empty production queries.\n9. Add a demo coverage registry/contract for first-class data-bearing application IDs. If a new data-bearing first-class tenant app is added without a shadow-data adapter, Gate must fail. Non-data creative/config-only surfaces may be explicitly exempted.\n10. Preserve the real tenant UI, routes, branding, search/filter/sort/detail navigation. This is data substitution, not a parallel demo application.\n11. Preserve existing tenant isolation, protected route behavior, and legitimate explicit support access.\n\nAcceptance:\n- Canonical Gate passes.\n- Auto-merge and release affected frontend.\n- Prove live in Tennex normal GodMode tenant mode (NOT read_only_support_access): Contacts populated; Proposals has seeded proposal/agreement; Documents/Agreements has seeded pending/signed agreement or linked contract; Invoices has seeded invoice/payment; Tasks and Calendar remain populated; demo manager can export JSON and CSV and import a CSV contact row that appears in Contacts.\n- Prove explicit","proofKinds":["runtime"],"adaptiveDomains":["intent","tenant_route_role_viewport","urgency_deadline","dependency_scope","risk_blast_radius","runner_capacity","queue_active_work","provider_failure_circuits","qa_scope","retry_recovery","release_ownership","proof_depth"],"expansionPolicy":"later_stages_may_only_narrow_or_expand_with_machine_readable_dependency_evidence","dynamicStatePolicy":"live_state_may_change_execution_tactics_but_never_owner_outcome_or_explicit_constraints","dynamicRefreshStages":["preflight","gate","release","runtime_proof"],"adaptiveCompilerVersion":"paul-adaptive-objective-v1","inheritedContextBlockingAuthority":false},"rawUtterance":"Build KNOCKLAUNCH GodMode Shadow Tenant Data v3 as a platform primitive.\n\nOwner outcome: when a GodMode operator enters any tenant without explicit real-user impersonation/support projection, the tenant must behave like a fully populated real workspace using synthetic data. Nothing data-bearing should fall short of the real tenant owner/user experience.\n\nRequired platform behavior:\n1. Upgrade the current GodMode tenant demo store from contacts/tasks/calendar/mail only to a versioned shadow tenant dataset with linked realistic records for at least:\n   - contacts/leads/customers and notes\n   - proposals/agreements/contracts/e-sign state\n   - invoices/estimates/payments/receivables\n   - documents/files/evidence\n   - jobs/work orders/bookings\n   - opportunities/pipeline state\n   - tasks/jots/notes\n   - calendar/appointments/events\n   - mail inbox/sent/drafts/threads\n   - team members/invitations/roles\n   - notifications/activity/history\n   - reports/analytics source facts derived from the above\n2. All seeded records must be internally marked synthetic and relationally linked (contact -> proposal/agreement -> invoice/payment -> document/job/appointment/activity) so detail views and cross-navigation work.\n3. Add one generic shadow-data repository API supporting list/get/create/update/delete, bulk update/delete/archive/restore/assign, merge/replace import, reseed/reset, and relationship-safe ID preservation.\n4. Add import/export:\n   - export entire shadow tenant as versioned JSON\n   - export any collection as CSV\n   - import versioned JSON with merge or replace\n   - import CSV into a selected collection with field/header normalization and deterministic IDs\n   - imports must validate tenant/demo schema, preserve links where possible, report accepted/rejected rows, and never mutate production/provider data\n5. The existing GodMode Demo Data badge becomes a compact shadow-data control drawer/modal (not a separate app) showing collection counts and controls for reset, JSON export/import, and per-collection CSV import/export.\n6. Actual tenant app workflows must use the shadow repository in demo mode, with no provider/database writes, for the current shared data owners:\n   - Contacts/UnifiedManagement including import and bulk actions\n   - UniversalProposalWorkspace/proposalEngine including draft/edit/send-for-signature/approve/decline and demo operating contracts/agreements\n   - Documents/agreements and signed/pending agreement views\n   - Invoices/Payments via InvoicesTab/documents API boundary\n   - Jobs/Work Orders via JobTracker\n   - Opportunity Radar\n   - Team members/invitations\n   - existing Tasks, Calendar, Mail adapters\n7. Explicit real-user impersonation/read_only_support_access and ordinary tenant users must retain real production paths. Demo mode must never call production write endpoints/providers for covered actions.\n8. Reports/analytics in demo mode must see populated synthetic source data or derived demo metrics rather than empty production queries.\n9. Add a demo coverage registry/contract for first-class data-bearing application IDs. If a new data-bearing first-class tenant app is added without a shadow-data adapter, Gate must fail. Non-data creative/config-only surfaces may be explicitly exempted.\n10. Preserve the real tenant UI, routes, branding, search/filter/sort/detail navigation. This is data substitution, not a parallel demo application.\n11. Preserve existing tenant isolation, protected route behavior, and legitimate explicit support access.\n\nAcceptance:\n- Canonical Gate passes.\n- Auto-merge and release affected frontend.\n- Prove live in Tennex normal GodMode tenant mode (NOT read_only_support_access): Contacts populated; Proposals has seeded proposal/agreement; Documents/Agreements has seeded pending/signed agreement or linked contract; Invoices has seeded invoice/payment; Tasks and Calendar remain populated; demo manager can export JSON and CSV and import a CSV contact row that appears in Contacts.\n- Prove explicit","wordingChanged":false,"canonicalIntent":"Build KNOCKLAUNCH GodMode Shadow Tenant Data v3 as a platform primitive.\n\nOwner outcome: when a GodMode operator enters any tenant without explicit real-user impersonation/support projection, the tenant must behave like a fully populated real workspace using synthetic data. Nothing data-bearing should fall short of the real tenant owner/user experience.\n\nRequired platform behavior:\n1. Upgrade the current GodMode tenant demo store from contacts/tasks/calendar/mail only to a versioned shadow tenant dataset with linked realistic records for at least:\n   - contacts/leads/customers and notes\n   - proposals/agreements/contracts/e-sign state\n   - invoices/estimates/payments/receivables\n   - documents/files/evidence\n   - jobs/work orders/bookings\n   - opportunities/pipeline state\n   - tasks/jots/notes\n   - calendar/appointments/events\n   - mail inbox/sent/drafts/threads\n   - team members/invitations/roles\n   - notifications/activity/history\n   - reports/analytics source facts derived from the above\n2. All seeded records must be internally marked synthetic and relationally linked (contact -> proposal/agreement -> invoice/payment -> document/job/appointment/activity) so detail views and cross-navigation work.\n3. Add one generic shadow-data repository API supporting list/get/create/update/delete, bulk update/delete/archive/restore/assign, merge/replace import, reseed/reset, and relationship-safe ID preservation.\n4. Add import/export:\n   - export entire shadow tenant as versioned JSON\n   - export any collection as CSV\n   - import versioned JSON with merge or replace\n   - import CSV into a selected collection with field/header normalization and deterministic IDs\n   - imports must validate tenant/demo schema, preserve links where possible, report accepted/rejected rows, and never mutate production/provider data\n5. The existing GodMode Demo Data badge becomes a compact shadow-data control drawer/modal (not a separate app) showing collection counts and controls for reset, JSON export/import, and per-collection CSV import/export.\n6. Actual tenant app workflows must use the shadow repository in demo mode, with no provider/database writes, for the current shared data owners:\n   - Contacts/UnifiedManagement including import and bulk actions\n   - UniversalProposalWorkspace/proposalEngine including draft/edit/send-for-signature/approve/decline and demo operating contracts/agreements\n   - Documents/agreements and signed/pending agreement views\n   - Invoices/Payments via InvoicesTab/documents API boundary\n   - Jobs/Work Orders via JobTracker\n   - Opportunity Radar\n   - Team members/invitations\n   - existing Tasks, Calendar, Mail adapters\n7. Explicit real-user impersonation/read_only_support_access and ordinary tenant users must retain real production paths. Demo mode must never call production write endpoints/providers for covered actions.\n8. Reports/analytics in demo mode must see populated synthetic source data or derived demo metrics rather than empty production queries.\n9. Add a demo coverage registry/contract for first-class data-bearing application IDs. If a new data-bearing first-class tenant app is added without a shadow-data adapter, Gate must fail. Non-data creative/config-only surfaces may be explicitly exempted.\n10. Preserve the real tenant UI, routes, branding, search/filter/sort/detail navigation. This is data substitution, not a parallel demo application.\n11. Preserve existing tenant isolation, protected route behavior, and legitimate explicit support access.\n\nAcceptance:\n- Canonical Gate passes.\n- Auto-merge and release affected frontend.\n- Prove live in Tennex normal GodMode tenant mode (NOT read_only_support_access): Contacts populated; Proposals has seeded proposal/agreement; Documents/Agreements has seeded pending/signed agreement or linked contract; Invoices has seeded invoice/payment; Tasks and Calendar remain populated; demo manager can export JSON and CSV and import a CSV contact row that appears in Contacts.\n- Prove explicit","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"shadow-tenant-v3","statement":"Build KNOCKLAUNCH GodMode Shadow Tenant Data v3 as a platform primitive.\n\nOwner outcome: when a GodMode operator enters any tenant without explicit real-user impersonation/support projection, the tenant must behave like a fully populated real workspace using synthetic data. Nothing data-bearing should fall short of the real tenant owner/user experience.\n\nRequired platform behavior:\n1. Upgrade the current GodMode tenant demo store from contacts/tasks/calendar/mail only to a versioned shadow tenant dataset with linked realistic records for at least:\n   - contacts/leads/customers and notes\n   - proposals/agreements/contracts/e-sign state\n   - invoices/estimates/payments/receivables\n   - documents/files/evidence\n   - jobs/work orders/bookings\n   - opportunities/pipeline state\n   - tasks/jots/notes\n   - calendar/appointments/events\n   - mail inbox/sent/drafts/threads\n   - team members/invitations/roles\n   - notifications/activity/history\n   - reports/analytics source facts derived from the above\n2. All seeded records must be internally marked synthetic and relationally linked (contact -> proposal/agreement -> invoice/payment -> document/job/appointment/activity) so detail views and cros","provenance":{"reason":null,"source":"current_explicit_owner_request","inherited":false,"blockingAuthority":true},"proofConditionIds":["contacts","proposal","agreement","invoice","import-export","support"]}],"objective":"Build KNOCKLAUNCH GodMode Shadow Tenant Data v3 as a platform primitive.\n\nOwner outcome: when a GodMode operator enters any tenant without explicit real-user impersonation/support projection, the tenant must behave like a fully populated real workspace using synthetic data. Nothing data-bearing should fall short of the real tenant owner/user experience.\n\nRequired platform behavior:\n1. Upgrade the current GodMode tenant demo store from contacts/tasks/calendar/mail only to a versioned shadow tenant dataset with linked realistic records for at least:\n   - contacts/leads/customers and notes\n   - proposals/agreements/contracts/e-sign state\n   - invoices/estimates/payments/receivables\n   - documents/files/evidence\n   - jobs/work orders/bookings\n   - opportunities/pipeline state\n   - tasks/jots/notes\n   - calendar/appointments/events\n   - mail inbox/sent/drafts/threads\n   - team members/invitations/roles\n   - notifications/activity/history\n   - reports/analytics source facts derived from the above\n2. All seeded records must be internally marked synthetic and relationally linked (contact -> proposal/agreement -> invoice/payment -> document/job/appointment/activity) so detail views and cross-navigation work.\n3. Add one generic shadow-data repository API supporting list/get/create/update/delete, bulk update/delete/archive/restore/assign, merge/replace import, reseed/reset, and relationship-safe ID preservation.\n4. Add import/export:\n   - export entire shadow tenant as versioned JSON\n   - export any collection as CSV\n   - import versioned JSON with merge or replace\n   - import CSV into a selected collection with field/header normalization and deterministic IDs\n   - imports must validate tenant/demo schema, preserve links where possible, report accepted/rejected rows, and never mutate production/provider data\n5. The existing GodMode Demo Data badge becomes a compact shadow-data control drawer/modal (not a separate app) showing collection counts and controls for reset, JSON export/import, and per-collection CSV import/export.\n6. Actual tenant app workflows must use the shadow repository in demo mode, with no provider/database writes, for the current shared data owners:\n   - Contacts/UnifiedManagement including import and bulk actions\n   - UniversalProposalWorkspace/proposalEngine including draft/edit/send-for-signature/approve/decline and demo operating contracts/agreements\n   - Documents/agreements and signed/pending agreement views\n   - Invoices/Payments via InvoicesTab/documents API boundary\n   - Jobs/Work Orders via JobTracker\n   - Opportunity Radar\n   - Team members/invitations\n   - existing Tasks, Calendar, Mail adapters\n7. Explicit real-user impersonation/read_only_support_access and ordinary tenant users must retain real production paths. Demo mode must never call production write endpoints/providers for covered actions.\n8. Reports/analytics in demo mode must see populated synthetic source data or derived demo metrics rather than empty production queries.\n9. Add a demo coverage registry/contract for first-class data-bearing application IDs. If a new data-bearing first-class tenant app is added without a shadow-data adapter, Gate must fail. Non-data creative/config-only surfaces may be explicitly exempted.\n10. Preserve the real tenant UI, routes, branding, search/filter/sort/detail navigation. This is data substitution, not a parallel demo application.\n11. Preserve existing tenant isolation, protected route behavior, and legitimate explicit support access.\n\nAcceptance:\n- Canonical Gate passes.\n- Auto-merge and release affected frontend.\n- Prove live in Tennex normal GodMode tenant mode (NOT read_only_support_access): Contacts populated; Proposals has seeded proposal/agreement; Documents/Agreements has seeded pending/signed agreement or linked contract; Invoices has seeded invoice/payment; Tasks and Calendar remain populated; demo manager can export JSON and CSV and import a CSV contact row that appears in Contacts.\n- Prove explicit","constraints":[{"id":"no-production-demo-writes","statement":"Shadow tenant operations must never write production tenant/provider data.","provenance":{"reason":null,"source":"hard_safety_invariant","inherited":false,"blockingAuthority":true},"proofConditionIds":["contacts","proposal","agreement","invoice","import-export","support"]},{"id":"real-user-projection","statement":"Explicit real-user impersonation/support projection and ordinary tenant users retain production data paths.","provenance":{"reason":null,"source":"hard_safety_invariant","inherited":false,"blockingAuthority":true},"proofConditionIds":["support"]},{"id":"same-ui","statement":"Use real tenant routes/UI; do not create a parallel demo app.","provenance":{"reason":null,"source":"current_explicit_owner_request","inherited":false,"blockingAuthority":true},"proofConditionIds":["contacts","proposal","agreement","invoice","import-export","support"]},{"id":"coverage-enforced","statement":"First-class data-bearing apps require declared shadow-data coverage or Gate fails.","provenance":{"reason":null,"source":"current_explicit_owner_request","inherited":false,"blockingAuthority":true},"proofConditionIds":["contacts","proposal","agreement","invoice","import-export","support"]},{"id":"atomic","statement":"Do not claim complete until Gate, merge, release, and claim-matched live proof pass.","provenance":{"reason":null,"source":"hard_safety_invariant","inherited":false,"blockingAuthority":true},"proofConditionIds":["contacts","proposal","agreement","invoice","import-export","support"]},{"id":"capability-completeness","statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","provenance":{"reason":null,"source":"hard_safety_invariant","inherited":false,"blockingAuthority":true},"proofConditionIds":["contacts","proposal","agreement","invoice","import-export","support"]},{"id":"atomic-capability-lifecycle","statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","provenance":{"reason":null,"source":"hard_safety_invariant","inherited":false,"blockingAuthority":true},"proofConditionIds":["contacts","proposal","agreement","invoice","import-export","support"]}],"adaptivePolicy":{"risk":{"tier":"high","blastRadius":"sensitive"},"proof":{"requiredKinds":["runtime"],"visualProofScope":"targeted","interactionRequired":true,"runtimeProofRequired":true},"scope":{"route":null,"roleRef":null,"tenantRef":null,"sourceTargets":["src/lib/godmodeTenantDemoStore.ts","src/hooks/useGodModeTenantDemo.ts","src/components/godmode/GodModeTenantDemoIndicator.tsx","src/components/management/UnifiedManagement.tsx","src/components/management/UnifiedManagementDialogs.tsx","src/components/management/useBulkActions.ts","src/lib/proposals/proposalEngine.ts","src/pages/proposals/UniversalProposalWorkspace.tsx","src/pages/owner/OwnerDocuments.tsx","src/pages/crm/DocumentsPage.tsx","src/components/documents/InvoicesTab.tsx","src/components/JobTracker/JobTracker.tsx","src/components/opportunity-radar/OpportunityRadarSurface.tsx","src/pages/applications/TeamApplicationRoute.tsx","src/components/shared/CondensedUserManagement.tsx","src/components/admin/onboarding/UserInvitationPanel.tsx","src/pages/Analytics.tsx","src/pages/owner/OwnerReports.tsx","src/__tests__/contracts/godmode-tenant-demo-mode.contract.test.ts"]},"dynamic":{"variables":["main_and_runtime_lineage","runner_capacity","queue_and_active_work","provider_health","failure_clusters_and_circuits","release_target_state","current_pr_and_gate_state"],"refreshStages":["preflight","gate","release","runtime_proof"],"refreshMayChange":["runner_selection","parallelism","retry_path","qa_depth","release_recovery","proof_timing"],"refreshMayNotChange":["owner_outcome","explicit_no_go_constraints","tenant_identity","credential_boundary","hard_safety_invariants"]},"urgency":{"priority":"normal","deadlineSignals":[],"deadlineExplicit":false},"version":"paul-adaptive-objective-v1","recovery":{"transient":"one_bounded_retry_then_alternate_eligible_pool_or_provider_path","deterministic":"repair_source_or_contract_do_not_blind_rerun","mutationDependencyFailure":"prerequisite_required_or_targeted_recovery_never_invent","readOnlyDependencyFailure":"degrade_to_available_grounded_context_and_keep_conversation_alive"},"unknowns":["tenant","route","deadline"],"authority":{"outcome":"current_explicit_owner_request","tactics":"live_prime_truth","unknownPolicy":"preserve_unknown_never_invent","historicalContext":"advisory_unless_current_request_confirms"},"execution":{"mutation":true,"concurrency":"serialize_overlapping_mutations","scopePolicy":"start_bounded_expand_only_with_machine_readable_dependency_evidence","staleStatePolicy":"refresh_dynamic_state_before_irreversible_or_acceptance_stage","conversationIsolation":true,"ownerOutcomeMayBeChangedByAdaptation":false},"experience":{"visual":true,"viewports":["desktop","mobile"],"behavioral":true,"visualProofScope":"targeted"},"dependencies":{"requiredDomains":["frontend","backend_runtime","schema_data_storage","provider_configuration","release_ownership","live_production_proof"],"capabilityDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"releaseTargetHints":["frontend"]},"inputSignals":{"rawUtterance":"Build KNOCKLAUNCH GodMode Shadow Tenant Data v3 as a platform primitive.\n\nOwner outcome: when a GodMode operator enters any tenant without explicit real-user impersonation/support projection, the tenant must behave like a fully populated real workspace using synthetic data. Nothing data-bearing should fall short of the real tenant owner/user experience.\n\nRequired platform behavior:\n1. Upgrade the current GodMode tenant demo store from contacts/tasks/calendar/mail only to a versioned shadow tenant dataset with linked realistic records for at least:\n   - contacts/leads/customers and notes\n   - proposals/agreements/contracts/e-sign state\n   - invoices/estimates/payments/receivables\n   - documents/files/evidence\n   - jobs/work orders/bookings\n   - opportunities/pipeline state\n   - tasks/jots/notes\n   - calendar/appointments/events\n   - mail inbox/sent/drafts/threads\n   - team members/invitations/roles\n   - notifications/activity/history\n   - reports/analytics source facts derived from the above\n2. All seeded records must be internally marked synthetic and relationally linked (contact -> proposal/agreement -> invoice/payment -> document/job/appointment/activity) so detail views and cross-navigation work.\n3. Add one generic shadow-data repository API supporting list/get/create/update/delete, bulk update/delete/archive/restore/assign, merge/replace import, reseed/reset, and relationship-safe ID preservation.\n4. Add import/export:\n   - export entire shadow tenant as versioned JSON\n   - export any collection as CSV\n   - import versioned JSON with merge or replace\n   - import CSV into a selected collection with field/header normalization and deterministic IDs\n   - imports must validate tenant/demo schema, preserve links where possible, report accepted/rejected rows, and never mutate production/provider data\n5. The existing GodMode Demo Data badge becomes a compact shadow-data control drawer/modal (not a separate app) showing collection counts and controls for reset, JSON export/import, and per-collection CSV import/export.\n6. Actual tenant app workflows must use the shadow repository in demo mode, with no provider/database writes, for the current shared data owners:\n   - Contacts/UnifiedManagement including import and bulk actions\n   - UniversalProposalWorkspace/proposalEngine including draft/edit/send-for-signature/approve/decline and demo operating contracts/agreements\n   - Documents/agreements and signed/pending agreement views\n   - Invoices/Payments via InvoicesTab/documents API boundary\n   - Jobs/Work Orders via JobTracker\n   - Opportunity Radar\n   - Team members/invitations\n   - existing Tasks, Calendar, Mail adapters\n7. Explicit real-user impersonation/read_only_support_access and ordinary tenant users must retain real production paths. Demo mode must never call production write endpoints/providers for covered actions.\n8. Reports/analytics in demo mode must see populated synthetic source data or derived demo metrics rather than empty production queries.\n9. Add a demo coverage registry/contract for first-class data-bearing application IDs. If a new data-bearing first-class tenant app is added without a shadow-data adapter, Gate must fail. Non-data creative/config-only surfaces may be explicitly exempted.\n10. Preserve the real tenant UI, routes, branding, search/filter/sort/detail navigation. This is data substitution, not a parallel demo application.\n11. Preserve existing tenant isolation, protected route behavior, and legitimate explicit support access.\n\nAcceptance:\n- Canonical Gate passes.\n- Auto-merge and release affected frontend.\n- Prove live in Tennex normal GodMode tenant mode (NOT read_only_support_access): Contacts populated; Proposals has seeded proposal/agreement; Documents/Agreements has seeded pending/signed agreement or linked contract; Invoices has seeded invoice/payment; Tasks and Calendar remain populated; demo manager can export JSON and CSV and import a CSV contact row that appears in Contacts.\n- Prove explicit","canonicalIntent":"Build KNOCKLAUNCH GodMode Shadow Tenant Data v3 as a platform primitive.\n\nOwner outcome: when a GodMode operator enters any tenant without explicit real-user impersonation/support projection, the tenant must behave like a fully populated real workspace using synthetic data. Nothing data-bearing should fall short of the real tenant owner/user experience.\n\nRequired platform behavior:\n1. Upgrade the current GodMode tenant demo store from contacts/tasks/calendar/mail only to a versioned shadow tenant dataset with linked realistic records for at least:\n   - contacts/leads/customers and notes\n   - proposals/agreements/contracts/e-sign state\n   - invoices/estimates/payments/receivables\n   - documents/files/evidence\n   - jobs/work orders/bookings\n   - opportunities/pipeline state\n   - tasks/jots/notes\n   - calendar/appointments/events\n   - mail inbox/sent/drafts/threads\n   - team members/invitations/roles\n   - notifications/activity/history\n   - reports/analytics source facts derived from the above\n2. All seeded records must be internally marked synthetic and relationally linked (contact -> proposal/agreement -> invoice/payment -> document/job/appointment/activity) so detail views and cross-navigation work.\n3. Add one generic shadow-data repository API supporting list/get/create/update/delete, bulk update/delete/archive/restore/assign, merge/replace import, reseed/reset, and relationship-safe ID preservation.\n4. Add import/export:\n   - export entire shadow tenant as versioned JSON\n   - export any collection as CSV\n   - import versioned JSON with merge or replace\n   - import CSV into a selected collection with field/header normalization and deterministic IDs\n   - imports must validate tenant/demo schema, preserve links where possible, report accepted/rejected rows, and never mutate production/provider data\n5. The existing GodMode Demo Data badge becomes a compact shadow-data control drawer/modal (not a separate app) showing collection counts and controls for reset, JSON export/import, and per-collection CSV import/export.\n6. Actual tenant app workflows must use the shadow repository in demo mode, with no provider/database writes, for the current shared data owners:\n   - Contacts/UnifiedManagement including import and bulk actions\n   - UniversalProposalWorkspace/proposalEngine including draft/edit/send-for-signature/approve/decline and demo operating contracts/agreements\n   - Documents/agreements and signed/pending agreement views\n   - Invoices/Payments via InvoicesTab/documents API boundary\n   - Jobs/Work Orders via JobTracker\n   - Opportunity Radar\n   - Team members/invitations\n   - existing Tasks, Calendar, Mail adapters\n7. Explicit real-user impersonation/read_only_support_access and ordinary tenant users must retain real production paths. Demo mode must never call production write endpoints/providers for covered actions.\n8. Reports/analytics in demo mode must see populated synthetic source data or derived demo metrics rather than empty production queries.\n9. Add a demo coverage registry/contract for first-class data-bearing application IDs. If a new data-bearing first-class tenant app is added without a shadow-data adapter, Gate must fail. Non-data creative/config-only surfaces may be explicitly exempted.\n10. Preserve the real tenant UI, routes, branding, search/filter/sort/detail navigation. This is data substitution, not a parallel demo application.\n11. Preserve existing tenant isolation, protected route behavior, and legitimate explicit support access.\n\nAcceptance:\n- Canonical Gate passes.\n- Auto-merge and release affected frontend.\n- Prove live in Tennex normal GodMode tenant mode (NOT read_only_support_access): Contacts populated; Proposals has seeded proposal/agreement; Documents/Agreements has seeded pending/signed agreement or linked contract; Invoices has seeded invoice/payment; Tasks and Calendar remain populated; demo manager can export JSON and CSV and import a CSV contact row that appears in Contacts.\n- Prove explicit","conversationContextPresent":false}},"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"contacts","kind":"runtime","claim":"Tennex GodMode Contacts uses populated shadow records.","route":"/tennex-tax-solutions/contacts","roleRef":"GodMode","userRef":null,"required":true,"expectedText":"Jamie Rivera","targetedActions":[],"allowedReleaseTargets":["frontend"],"requiredReleaseTargets":["frontend"],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false},{"id":"proposal","kind":"runtime","claim":"Tennex GodMode proposal workspace contains a seeded synthetic proposal and editable/send-for-signature actions remain synthetic.","route":null,"roleRef":"GodMode","userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":["frontend"],"requiredReleaseTargets":["frontend"],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false},{"id":"agreement","kind":"runtime","claim":"Tennex GodMode documents/agreements surface contains linked synthetic agreement/contract data.","route":null,"roleRef":"GodMode","userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":["frontend"],"requiredReleaseTargets":["frontend"],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false},{"id":"invoice","kind":"runtime","claim":"Tennex GodMode invoices/payments surface contains linked synthetic invoice/payment data.","route":null,"roleRef":"GodMode","userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":["frontend"],"requiredReleaseTargets":["frontend"],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false},{"id":"import-export","kind":"runtime","claim":"GodMode shadow-data manager exports JSON/CSV and imports a CSV contact row into the same tenant shadow dataset.","route":"/tennex-tax-solutions/contacts","roleRef":"GodMode","userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":["frontend"],"requiredReleaseTargets":["frontend"],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false},{"id":"support","kind":"runtime","claim":"Explicit real-user support projection disables shadow data and uses the real-data path.","route":null,"roleRef":"GodMode","userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":["frontend"],"requiredReleaseTargets":["frontend"],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false}],"validationErrors":[],"capabilityManifest":{"id":"Build-KNOCKLAUNCH-GodMode-Shadow-Tenant-Data-v3-as-a-platform-primitive.-Owner-outcome:-when-a-GodMo","driftPolicy":"exact_manifest_source_release_dependency_or_runtime_identity_mismatch_is_nonterminal","proofLedger":"command_center_mission_ledger_request_contract_hash_bound","schemaVersion":1,"releaseTargets":["frontend"],"lifecycleStates":["prepare","deploy","verify","activate"],"activationPolicy":"dependencies_and_claim_matched_live_proof_before_exposure","dependencyDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_required_not_runtime_failures","compatibilityWindow":["N","N-1"],"failureIsolationPolicy":"quarantine_or_rollback_affected_capability_only_preserve_unrelated_working_capabilities","canaryProofConditionIds":["contacts","proposal","agreement","invoice","import-export","support"]},"capabilityCompleteness":{"domains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"required":true,"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_states_not_runtime_failures"}},"repairGeneration":null,"proofRequirements":null,"controlPlaneUnfreeze":false,"controlPlaneMaintenance":false,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":null},"proofRequirements":null,"controlPlaneUnfreeze":false,"durableMutationResume":true,"controlPlaneMaintenance":false,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":null},"recovery":false,"fingerprint":"01498e86e8980adf401bbd18de028ea812bd8da2646f4d0e5a5029ffa34c1086","replayCount":0,"serializedBytes":142747},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-02T02:33:03.488954+00:00","proof_gate":"repository_mutation_intent_persisted","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent","idempotency_key":"mission:c43209cb-ca72-4870-9e03-5fc4e41d1eaa:repository-mutation-intent:01498e86e8980adf401bbd18de028ea812bd8da2646f4d0e5a5029ffa34c1086:0","mission_step_id":"917ff471-4f14-4e7c-b9e6-c6d5e7bc5b10","command_center_event_id":"c43209cb-ca72-4870-9e03-5fc4e41d1eaa"},{"id":"4db571a5-017c-44a1-92d7-a8ca12443ed5","source":"cc-execution","status":"release_reconciliation_pending","payload":{"ok":true,"jobId":null,"phase":"release","branch":"ai/objective-first-repair-71f53c381e9f","reason":null,"status":"release_reconciliation_pending","metrics":{"receiptBytes":150532,"releaseCount":0,"toolCallCount":55,"repeatedCallCount":41,"executorlessWaitMs":1781110,"firstUsefulResultAt":"2026-10-02T15:53:56.374Z","recoveryAttemptCount":16,"ownerInterruptionCount":0},"version":"1.64.50-onepath-source-domain","prNumber":4490,"terminal":false,"missionId":"71f53c38-1e9f-405d-9f4e-150a6b88d281","operation":"execute_mission","proofGate":"canonical_release_reconciliation_pending","sourceSha":"ea25df743a16346b5f77313a91b7675c81ea433b","timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":992,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":72,"approvedPlanMs":0,"missionSetupMs":440,"providerAuthMs":0,"shipAndProveMs":411,"ledgerPrepareMs":440,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":440,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":440,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"reconcile_release","receiptRef":{"mode":"full","missionId":"71f53c38-1e9f-405d-9f4e-150a6b88d281"},"performance":null,"deploymentId":"forgejo-main-ea25df743a16","releaseState":"pending","workflowRunId":14396,"releaseTargets":{"frontend":true,"migrations":true,"ccExecution":false,"supabaseEdge":true,"edgeFunctionSlugs":["tenant-provider-connections","upsert-tenant-provider-secret"]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["repository","release","runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":3235,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-02T16:22:22.015742+00:00","proof_gate":"canonical_release_reconciliation_pending","source_sha":"ea25df743a16346b5f77313a91b7675c81ea433b","external_id":"forgejo-main-ea25df743a16","receipt_type":"execute_mission","idempotency_key":"mission:71f53c38-1e9f-405d-9f4e-150a6b88d281:execute_mission:canonical_release_reconciliation_pending:current-generation","mission_step_id":"92a99739-fbdd-4f5c-b54c-ee6dce7f1f95","command_center_event_id":"71f53c38-1e9f-405d-9f4e-150a6b88d281"},{"id":"4db6dd62-bbf2-475a-afc0-23109f07078f","source":"cc-execution","status":"waiting","payload":{"sourceTargets":["src/pages/card-grading/PCGReceiveCardsGallery.tsx"],"continuationObjective":"P0 PCG back-photo regression and batch Photos support. Prepare exact current-main source for src/pages/card-grading/PCGReceiveCardsGallery.tsx only. No Visual Witness."},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-04T20:06:39.85113+00:00","proof_gate":"mission_continuation_scope_persisted","source_sha":null,"external_id":null,"receipt_type":"mission_continuation_scope_updated","idempotency_key":"mission:19be0f30-5924-400e-bbb1-8bd53f9273fd:mission_continuation_scope_updated:mission_continuation_scope_persisted:waiting","mission_step_id":"c3692c9c-d66e-4136-aedd-c16af5738c73","command_center_event_id":"19be0f30-5924-400e-bbb1-8bd53f9273fd"},{"id":"4db6e44f-2c05-430f-ab40-79400f7e9888","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":"ai/objective-first-repair-932459b18cbd","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"executorlessWaitMs":0,"firstUsefulResultAt":null,"recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.67.12-pr-merge-base-freshness","prNumber":null,"terminal":false,"missionId":"932459b1-8cbd-4c4a-a988-929219c1a8b1","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":4185,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":620,"providerAuthMs":0,"ledgerPrepareMs":620,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":620,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":620,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /mission/execute again automatically with this same missionId without another owner prompt or workflow switch.","receiptRef":{"mode":"full","missionId":"932459b1-8cbd-4c4a-a988-929219c1a8b1"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":5125,"likelyAffectedFiles":["workers/cc-execution/src/index-release-fast-lane.js","workers/cc-execution/src/index-mission-control.js","workers/cc-execution/src/entrypoint-owner-status.js","workers/cc-execution/test/release-orchestration-invariants.test.js","workers/cc-execution/src/version.js"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T19:11:05.640941+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:932459b1-8cbd-4c4a-a988-929219c1a8b1:execute_mission:repair_mission_synthesis_ready:current-generation","mission_step_id":"ba51cb1e-0844-4fe4-becc-ab682c94047c","command_center_event_id":"932459b1-8cbd-4c4a-a988-929219c1a8b1"},{"id":"4dba0639-3e96-4919-8d0a-a30f7d261fa2","source":"cc-execution","status":"waiting_for_gate","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":"ai/sign-agreement-toolbar-location-fix","reason":"provider_verified_auto_progress_owns_gate_merge_release_outside_owner_response","status":"waiting_for_gate","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.209-visual-certification-hardening","prNumber":3394,"terminal":false,"missionId":"71d2b615-a257-4d23-98ea-a32d71979f7f","operation":"execute_mission","proofGate":"repair_mission_pr_handed_off_to_supervisor","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":4502,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":867,"missionSetupMs":413,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":413,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":413,"repositoryMutationMs":3635,"repositoryProviderMs":3635,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":2001,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":413,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":1634},"nextAction":"Canonical KnockLaunch Gate notifier and durable mission supervisor own Gate, merge, release, and proof progression from this exact PR head outside the owner response path.","receiptRef":{"mode":"full","missionId":"71d2b615-a257-4d23-98ea-a32d71979f7f"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":3844,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-22T02:51:49.941527+00:00","proof_gate":"repair_mission_pr_handed_off_to_supervisor","source_sha":null,"external_id":"3394","receipt_type":"execute_mission","idempotency_key":"mission:71d2b615-a257-4d23-98ea-a32d71979f7f:execute_mission:repair_mission_pr_handed_off_to_supervisor:current-generation","mission_step_id":"d7011a32-752e-44b4-891d-e020b833a5c4","command_center_event_id":"71d2b615-a257-4d23-98ea-a32d71979f7f"},{"id":"4dba4248-92ba-4988-9280-c862bc0870f7","source":"forgejo","status":"waiting","payload":{"branch":"ai/realtor-buyer-intake-persistence-v2-20260906","prNumber":2033,"nextAction":"Follow the existing canonical release to terminal proof.","mergeCommitSha":"e533735e2bcf43d7d84464a14c4bdeb77430dfda","branchDeletedAfterMerge":true,"correctiveGenerationCreated":false},"tenant_id":"90ed5bf4-8abd-4d3a-af7c-024664b5b99d","created_at":"2026-09-07T02:48:33.255281+00:00","proof_gate":"forgejo_merged_pr_is_authoritative_source_lineage","source_sha":"e533735e2bcf43d7d84464a14c4bdeb77430dfda","external_id":"2033","receipt_type":"source_lineage_merged_pr_authoritative","idempotency_key":"mission:02e68fb4-be55-4631-b478-0c152699b2f8:merged-pr:2033:e533735e2bcf43d7d84464a14c4bdeb77430dfda","mission_step_id":"66c8a755-33fa-4cb4-8698-c0e8d5649178","command_center_event_id":"02e68fb4-be55-4631-b478-0c152699b2f8"},{"id":"4dbaceba-1058-47fc-aaed-0651b4a6f49c","source":"durable-mission-ledger","status":"verified","payload":{"sourceSha":"ad6d8ce59faf919c1f8f4d7e93c24c812d0218ab","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"four-adversarial","satisfied":true,"statement":"Advance cc execution Paul Academy to fourteen safe production exams covering adversarial ambiguity and PCG ownership.","proofConditionIds":["prod"]}],"satisfied":true,"constraints":[{"id":"safe","satisfied":true,"statement":"Control plane cc execution Academy source/test only, no PCG tenant code or records, canonical Gate and default frozen.","proofConditionIds":["prod"]},{"id":"capability-completeness","satisfied":true,"statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","proofConditionIds":["prod"]},{"id":"atomic-capability-lifecycle","satisfied":true,"statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","proofConditionIds":["prod"]}],"contractHash":"57ae0379647a06cebe2eded8a1bb1ba10173ba23f33d3e0d8e3bf821c1630ec4","releaseBound":true,"witnessBound":false,"visualRequested":false,"visualSatisfied":true,"conditionResults":[{"id":"prod","kind":"runtime","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":false,"releaseTargetStates":{"ccExecution":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["ccExecution"],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"migrationReleaseVerified":null,"releaseRequestContractHash":"57ae0379647a06cebe2eded8a1bb1ba10173ba23f33d3e0d8e3bf821c1630ec4"},"required":true,"satisfied":true}],"validationErrors":[],"pendingProofKinds":[],"activeReleaseTargets":["ccExecution"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-13T13:18:14.622654+00:00","proof_gate":"request_contract_terminal_verified","source_sha":"ad6d8ce59faf919c1f8f4d7e93c24c812d0218ab","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:55a3c018-be6c-4112-94ab-24c8edac6bdb:request-contract:57ae0379647a06cebe2eded8a1bb1ba10173ba23f33d3e0d8e3bf821c1630ec4:ad6d8ce59faf919c1f8f4d7e93c24c812d0218ab:verified:","mission_step_id":"ea27422f-28d2-4b2a-a2e8-bf63059b5a24","command_center_event_id":"55a3c018-be6c-4112-94ab-24c8edac6bdb"},{"id":"4dbbcc54-ffdb-496b-8f4b-14150de5de52","source":"forgejo-runtime","status":"verified","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"success","supabase-edge-production/live":"success"},"mainSha":"bc03ac302f97766959a8a6c84aba1e1a6038bf2b","missing":[],"pending":[],"required":["forgejo-main/source","forgejo-release/workflow","supabase-edge-production/live"],"sourceSha":"bc03ac302f97766959a8a6c84aba1e1a6038bf2b","releaseState":"verified","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":false,"migrations":false,"ccExecution":false,"supabaseEdge":true,"edgeFunctionSlugs":["tennex-contact-directory"]},"releaseTargetStates":{"supabaseEdge":"success"},"requestContractHash":"946e7cfecca980e2dda50d1100a496824426b1804514dca352edd5f3a6273f03","forgejoWorkflowProof":{"runId":14721,"source":"signed_push_receipt","status":"success","results":{},"conclusion":"success","targetStates":{"supabaseEdge":"success"},"targetJobCount":7,"observedTargetStates":{"supabaseEdge":"success"}},"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-03T03:11:37.513968+00:00","proof_gate":"canonical_release_terminal_verified","source_sha":"bc03ac302f97766959a8a6c84aba1e1a6038bf2b","external_id":"forgejo-main-bc03ac302f97","receipt_type":"canonical_release_status","idempotency_key":"mission:bdb9af03-1f8b-4e67-9763-25a80aab1557:forgejo-release-status:bc03ac302f97766959a8a6c84aba1e1a6038bf2b:verified:forgejo-main/source=success|forgejo-release/workflow=success|supabase-edge-production/live=success","mission_step_id":"301ad7ba-a6e5-44d1-b169-4cfe91f45bae","command_center_event_id":"bdb9af03-1f8b-4e67-9763-25a80aab1557"},{"id":"4dbc1628-6fb6-4898-a176-0817d585de4a","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"pending","cc-execution/runtime-proof":"pending"},"mainSha":"e46aed38e1aeac8d10812c1010f6d2f2581d5a01","missing":[],"pending":["forgejo-release/workflow","cc-execution/runtime-proof"],"required":["forgejo-main/source","forgejo-release/workflow","cc-execution/runtime-proof"],"sourceSha":"e46aed38e1aeac8d10812c1010f6d2f2581d5a01","releaseState":"pending","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":false,"onrunner":false,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"ccExecution":"pending"},"requestContractHash":"566c81301866fdaa1751383d46c916d8ad013e698223a8f6c352e9b6921eb091","forgejoWorkflowProof":{"runId":12680,"source":"signed_push_receipt","status":"running","results":{},"conclusion":"running","targetStates":{"ccExecution":"pending"},"targetJobCount":7,"observedTargetStates":{"ccExecution":"pending"}},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":{"liveSha":"8ae40a325e01dd87f1a9eee40ea586710b8dae4d","deploymentId":"forgejo-main-8ae40a325e01dd87f1a9eee40ea586710b8dae4d","compareStatus":null,"identitySource":"local_build_metadata","runtimeVersion":"1.59.1-forgejo-runtime-decruft","containsSourceSha":false},"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-28T18:45:27.65316+00:00","proof_gate":"canonical_release_pending","source_sha":"e46aed38e1aeac8d10812c1010f6d2f2581d5a01","external_id":"forgejo-main-e46aed38e1ae","receipt_type":"canonical_release_status","idempotency_key":"mission:dea1681a-bab4-417a-849e-742495466a90:forgejo-release-status:e46aed38e1aeac8d10812c1010f6d2f2581d5a01:pending:forgejo-main/source=success|forgejo-release/workflow=pending|cc-execution/runtime-proof=pending","mission_step_id":"07aa0e3e-2923-40ee-a4e3-5f5a84c2069a","command_center_event_id":"dea1681a-bab4-417a-849e-742495466a90"},{"id":"4dbe20d9-0e4e-4120-8bf9-94fb96f955db","source":"cc-execution","status":"blocked","payload":{"reason":"anchored_edit_anchor_missing:src/pages/proposals/UniversalProposalWorkspace.tsx","fingerprint":"e6eb7a9e303f8232d6ebe472a9d6b2d38321c701f388ba42649980ecc8a33164"},"tenant_id":"766cfaa7-ac42-46c8-bbef-69d13268a29d","created_at":"2026-09-26T02:29:59.903438+00:00","proof_gate":"repository_mutation_intent_deterministic_failure","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent_blocked","idempotency_key":"mission:156259ff-7301-4e9b-be6f-cd290f63dd7d:repository-mutation-intent-blocked:e6eb7a9e303f8232d6ebe472a9d6b2d38321c701f388ba42649980ecc8a33164","mission_step_id":"80f38d84-4eb5-4a3f-9efa-7dd1281bc7da","command_center_event_id":"156259ff-7301-4e9b-be6f-cd290f63dd7d"},{"id":"4dbfc4a8-cb83-4c83-9c7e-27ee4364f8f3","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","release-targets/detection":"pending"},"mainSha":"7e7c30ec9d03405dd830d88540f7a9da6bfb8dea","missing":[],"pending":["release-targets/detection"],"required":["forgejo-main/source","release-targets/detection"],"sourceSha":"7e7c30ec9d03405dd830d88540f7a9da6bfb8dea","releaseState":"pending","sourceInMain":true,"compareStatus":"identical","forgejoWorkflowProof":null,"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-25T18:17:10.97693+00:00","proof_gate":"canonical_release_pending","source_sha":"7e7c30ec9d03405dd830d88540f7a9da6bfb8dea","external_id":null,"receipt_type":"canonical_release_status","idempotency_key":"mission:7f2033a4-a35e-48e3-a84a-a22c88fcbbc3:forgejo-release-status:7e7c30ec9d03405dd830d88540f7a9da6bfb8dea:pending:forgejo-main/source=success|release-targets/detection=pending","mission_step_id":"c95c022a-b4d3-4cbb-8ad2-f09f638c150e","command_center_event_id":"7f2033a4-a35e-48e3-a84a-a22c88fcbbc3"},{"id":"4dc0049c-0bea-4f23-90e7-b17525881a19","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":"ai/objective-first-repair-3a65d698dc9e","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":7612,"releaseCount":0,"toolCallCount":5,"repeatedCallCount":2,"executorlessWaitMs":50815,"firstUsefulResultAt":"2026-10-04T20:07:59.733Z","recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.64.94-terminal-completion-supervisor","prNumber":null,"terminal":false,"missionId":"3a65d698-dc9e-449a-a03f-4da3eb56e6ee","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":2942,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":244,"providerAuthMs":0,"ledgerPrepareMs":244,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":244,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":244,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /mission/execute again automatically with this same missionId without another owner prompt or workflow switch.","receiptRef":{"mode":"full","missionId":"3a65d698-dc9e-449a-a03f-4da3eb56e6ee"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":3251,"likelyAffectedFiles":["src/App.tsx"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-04T20:08:02.881022+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:3a65d698-dc9e-449a-a03f-4da3eb56e6ee:execute_mission:repair_mission_synthesis_ready:current-generation","mission_step_id":"42e6fa5d-685a-499f-ab22-e45e7c47fa2d","command_center_event_id":"3a65d698-dc9e-449a-a03f-4da3eb56e6ee"},{"id":"4dc06746-c51a-4715-a278-ac20e1910c57","source":"cc-execution","status":"waiting","payload":{"body":{"ship":true,"files":[{"path":"src/pages/admin/AdminProfile.tsx","content":"import { useEffect, useState } from 'react';\nimport { Link, useNavigate, useSearchParams } from 'react-router-dom';\nimport { Bell, ChevronRight, ImageIcon, Inbox, Key, Loader2, PlugZap, Save, Settings2, ShieldCheck, UserCircle, UserRound, UsersRound } from 'lucide-react';\n\nimport { AdminPage } from '@/components/admin/AdminPage';\nimport KnockLaunchLogoMark from '@/components/branding/KnockLaunchLogoMark';\nimport { TenantBrandMediaSettings } from '@/components/platform/TenantBrandMediaSettings';\nimport { GodModePlatformMediaSettings } from '@/components/platform/GodModePlatformMediaSettings';\nimport UniversalAccountSettingsShell from '@/components/settings/UniversalAccountSettingsShell';\nimport { Button } from '@/components/ui/button';\nimport { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card';\nimport { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger } from '@/components/ui/dialog';\nimport { Input } from '@/components/ui/input';\nimport { Label } from '@/components/ui/label';\nimport { useAuth } from '@/contexts/AuthContext';\nimport { useGodModeBranding } from '@/hooks/useGodModeBranding';\nimport { supabase } from '@/integrations/supabase/client';\nimport { notify } from '@/lib/notify';\n\ntype AccountSection = 'profile' | 'settings' | 'notifications';\n\nfunction resolveSection(value: string | null): AccountSection {\n  return value === 'settings' || value === 'notifications' ? value : 'profile';\n}\n\nexport default function AdminProfile() {\n  const navigate = useNavigate();\n  const { user } = useAuth();\n  const { tenant: ownerWorkspaceTenant, branding: godModeBranding, refreshMemberships } = useGodModeBranding();\n  const [searchParams] = useSearchParams();\n  const section = resolveSection(searchParams.get('section'));\n  const pageTitle = section === 'profile' ? 'Profile' : section === 'settings' ? 'Settings' : 'Notifications';\n  const [loading, setLoading] = useState(true);\n  const [isSaving, setIsSaving] = useState(false);\n  const [formData, setFormData] = useState({ name: '', email: '', phone: '' });\n  const [passwordData, setPasswordData] = useState({ newPassword: '', confirmPassword: '' });\n  const [isChangingPassword, setIsChangingPassword] = useState(false);\n  const [showPasswordDialog, setShowPasswordDialog] = useState(false);\n\n  useEffect(() => {\n    let active = true;\n    async function loadProfile() {\n      setLoading(true);\n      try {\n        const authUser = user || (await supabase.auth.getUser()).data.user;\n        if (!authUser) {\n          navigate('/crm/login');\n          return;\n        }\n        const { data: profile, error } = await supabase\n          .from('profiles')\n          .select('name,email,phone,role')\n          .eq('id', authUser.id)\n          .maybeSingle();\n        if (error) throw error;\n        if (!active) return;\n        setFormData({\n          name: profile?.name || authUser.user_metadata?.full_name || authUser.user_metadata?.name || '',\n          email: profile?.email || authUser.email || '',\n          phone: profile?.phone || '',\n        });\n      } catch (error: any) {\n        notify.error('load profile', error);\n      } finally {\n        if (active) setLoading(false);\n      }\n    }\n    void loadProfile();\n    return () => { active = false; };\n  }, [navigate, user]);\n\n  const handleSave = async () => {\n    if (!user) return;\n    setIsSaving(true);\n    try {\n      const { error: profileError } = await supabase.rpc('update_own_profile', {\n        p_name: formData.name.trim(),\n        p_phone: formData.phone.trim(),\n        p_company: null,\n      });\n      if (profileError) throw profileError;\n      const { error: authError } = await supabase.auth.updateUser({\n        data: {\n          full_name: formData.name.trim(),\n          name: formData.name.trim(),\n          display_name: formData.name.trim(),\n        },\n      });\n      if (authError) throw authError;\n      notify.updated('GodMode profile');\n    } catch (error: any) {\n      notify.error('update profile', error);\n    } finally {\n      setIsSaving(false);\n    }\n  };\n\n  const handlePasswordChange = async () => {\n    if (passwordData.newPassword !== passwordData.confirmPassword) {\n      notify.warn('New passwords do not match');\n      return;\n    }\n    if (passwordData.newPassword.length < 8) {\n      notify.warn('Password must be at least 8 characters');\n      return;\n    }\n    setIsChangingPassword(true);\n    try {\n      const { error } = await supabase.auth.updateUser({ password: passwordData.newPassword });\n      if (error) throw error;\n      notify.success('Password changed');\n      setShowPasswordDialog(false);\n      setPasswordData({ newPassword: '', confirmPassword: '' });\n    } catch (error: any) {\n      notify.error('change password', error);\n    } finally {\n      setIsChangingPassword(false);\n    }\n  };\n\n  const profileContent = loading ? (\n    <div className=\"flex min-h-[280px] items-center justify-center rounded-2xl border border-blue-300/10 bg-[#0a1020]/72\">\n      <Loader2 className=\"h-6 w-6 animate-spin text-cyan-300/70\" />\n    </div>\n  ) : (\n    <div className=\"space-y-3\" data-godmode-profile-editor=\"canonical\">\n      <section className=\"rounded-2xl border border-blue-300/10 bg-[#0b1220]/72 p-3 shadow-sm sm:p-4\" data-godmode-profile-context=\"true\">\n        <div className=\"flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between\">\n          <div className=\"flex min-w-0 items-center gap-3\">\n            <div className=\"grid h-11 w-11 shrink-0 place-items-center overflow-hidden rounded-xl border border-cyan-300/18 bg-[#07101a]\">\n              {godModeBranding.logoUrl ? <img src={godModeBranding.logoUrl} alt=\"KNOCKLAUNCH\" className=\"h-full w-full object-contain p-1\" referrerPolicy=\"no-referrer\" /> : <KnockLaunchLogoMark size=\"sm\" className=\"!m-0 !h-9 !w-9 !p-0\" imageClassName=\"!h-full !w-full\" />}\n            </div>\n            <div className=\"min-w-0\">\n              <div className=\"text-[9px] font-bold uppercase tracking-[0.18em] text-cyan-300/70\">Personal owner identity</div>\n              <div className=\"truncate text-base font-semibold text-white\">{formData.name || 'Owner profile'}</div>\n              <div className=\"truncate text-xs text-slate-400\">{formData.email || 'GodMode account'}</div>\n            </div>\n          </div>\n          <Button onClick={handleSave} disabled={isSaving} className=\"h-10 w-full gap-2 sm:w-auto\">\n            {isSaving ? <Loader2 className=\"h-4 w-4 animate-spin\" /> : <Save className=\"h-4 w-4\" />}\n            {isSaving ? 'Saving…' : 'Save profile'}\n          </Button>\n        </div>\n      </section>\n\n      <details className=\"group overflow-hidden rounded-2xl border border-blue-300/10 bg-[#0b1220]/72\" open>\n        <summary className=\"flex cursor-pointer list-none items-center justify-between gap-3 px-4 py-3.5 marker:hidden [&::-webkit-details-marker]:hidden\">\n          <div className=\"flex min-w-0 items-center gap-3\">\n            <span className=\"grid h-9 w-9 shrink-0 place-items-center rounded-xl border border-cyan-300/14 bg-cyan-300/[0.055]\"><UserRound className=\"h-4 w-4 text-cyan-200\" /></span>\n            <div className=\"min-w-0\"><div className=\"text-sm font-semibold text-white\">Personal profile</div><div className=\"text-xs text-slate-400\">Your owner identity across GodMode.</div></div>\n          </div>\n          <ChevronRight className=\"h-4 w-4 shrink-0 rotate-90 text-slate-500 transition-transform group-open:-rotate-90\" />\n        </summary>\n        <div className=\"border-t border-blue-300/10 p-4 sm:p-5\">\n          <div className=\"grid gap-3 sm:grid-cols-2\">\n            <div className=\"space-y-1.5\"><Label htmlFor=\"godmode-profile-name\">Display name</Label><Input id=\"godmode-profile-name\" value={formData.name} onChange={(event) => setFormData((current) => ({ ...current, name: event.target.value }))} /></div>\n            <div className=\"space-y-1.5\"><Label htmlFor=\"godmode-profile-phone\">Phone</Label><Input id=\"godmode-profile-phone\" type=\"tel\" value={formData.phone} onChange={(event) => setFormData((current) => ({ ...current, phone: event.target.value }))} /></div>\n            <div className=\"space-y-1.5\"><Label htmlFor=\"godmode-profile-email\">Login email</Label><Input id=\"godmode-profile-email\" type=\"email\" value={formData.email} disabled className=\"bg-muted/45\" /></div>\n            <div className=\"space-y-1.5\"><Label htmlFor=\"godmode-profile-role\">Platform role</Label><Input id=\"godmode-profile-role\" value=\"GodMode\" disabled className=\"bg-muted/45\" /></div>\n          </div>\n          <div className=\"mt-4 flex flex-col gap-3 border-t border-blue-300/10 pt-4 sm:flex-row sm:items-center sm:justify-between\">\n            <p className=\"max-w-2xl text-xs leading-5 text-slate-400\">GodMode uses the KNOCKLAUNCH platform logo as its account avatar. Customer workspace identity never replaces it.</p>\n            <Button asChild variant=\"outline\" className=\"h-10 shrink-0 gap-2\"><Link to=\"/admin/media-library\"><ImageIcon className=\"h-4 w-4\" />Uploads & media</Link></Button>\n          </div>\n        </div>\n      </details>\n\n      <details className=\"group overflow-hidden rounded-2xl border border-blue-300/10 bg-[#0b1220]/72\">\n        <summary className=\"flex cursor-pointer list-none items-center justify-between gap-3 px-4 py-3.5 marker:hidden [&::-webkit-details-marker]:hidden\">\n          <div className=\"flex min-w-0 items-center gap-3\">\n            <span className=\"grid h-9 w-9 shrink-0 place-items-center rounded-xl border border-emerald-300/14 bg-emerald-300/[0.05]\"><ShieldCheck className=\"h-4 w-4 text-emerald-300\" /></span>\n            <div><div className=\"text-sm font-semibold text-white\">Sign-in</div><div className=\"text-xs text-slate-400\">Password and owner-account access.</div></div>\n          </div>\n          <ChevronRight className=\"h-4 w-4 shrink-0 rotate-90 text-slate-500 transition-transform group-open:-rotate-90\" />\n        </summary>\n        <div className=\"border-t border-blue-300/10 p-4 sm:p-5\">\n          <Dialog open={showPasswordDialog} onOpenChange={setShowPasswordDialog}>\n            <DialogTrigger asChild><Button variant=\"outline\" className=\"w-full gap-2 sm:w-auto\"><Key className=\"h-4 w-4\" />Change password</Button></DialogTrigger>\n            <DialogContent>\n              <DialogHeader><DialogTitle>Change password</DialogTitle><DialogDescription>Set a new password for this owner account.</DialogDescription></DialogHeader>\n              <div className=\"space-y-4 py-4\">\n                <div className=\"space-y-2\"><Label htmlFor=\"newPassword\">New password</Label><Input id=\"newPassword\" type=\"password\" value={passwordData.newPassword} onChange={(event) => setPasswordData((current) => ({ ...current, newPassword: event.target.value }))} /></div>\n                <div className=\"space-y-2\"><Label htmlFor=\"confirmPassword\">Confirm new password</Label><Input id=\"confirmPassword\" type=\"password\" value={passwordData.confirmPassword} onChange={(event) => setPasswordData((current) => ({ ...current, confirmPassword: event.target.value }))} /></div>\n              </div>\n              <DialogFooter><Button variant=\"outline\" onClick={() => setShowPasswordDialog(false)} disabled={isChangingPassword}>Cancel</Button><Button onClick={handlePasswordChange} disabled={isChangingPassword}>{isChangingPassword ? 'Changing…' : 'Change password'}</Button></DialogFooter>\n            </DialogContent>\n          </Dialog>\n        </div>\n      </details>\n\n      <details className=\"group overflow-hidden rounded-2xl border border-blue-300/10 bg-[#0b1220]/72\">\n        <summary className=\"flex cursor-pointer list-none items-center justify-between gap-3 px-4 py-3.5 marker:hidden [&::-webkit-details-marker]:hidden\">\n          <div className=\"min-w-0\"><div className=\"text-sm font-semibold text-white\">Profile scope</div><div className=\"text-xs text-slate-400\">Keep personal owner identity separate from customer workspaces.</div></div>\n          <ChevronRight className=\"h-4 w-4 shrink-0 rotate-90 text-slate-500 transition-transform group-open:-rotate-90\" />\n        </summary>\n        <div className=\"border-t border-blue-300/10 px-4 py-4 text-xs leading-5 text-slate-400 sm:px-5\">\n          Personal profile data belongs to the owner account. Platform appearance media may use only the canonical KNOCKLAUNCH owner workspace backing record; active customer tenants are never substituted.\n        </div>\n      </details>\n\n      <details className=\"group overflow-hidden rounded-2xl border border-blue-300/10 bg-[#0b1220]/72\" data-godmode-profile-branding=\"true\">\n        <summary className=\"flex cursor-pointer list-none items-center justify-between gap-3 px-4 py-3.5 marker:hidden [&::-webkit-details-marker]:hidden\">\n          <div className=\"flex min-w-0 items-center gap-3\"><ImageIcon className=\"h-4 w-4 shrink-0 text-cyan-300\" /><div><div className=\"text-sm font-semibold text-white\">Appearance media</div><div className=\"text-xs text-slate-400\">Logo, profile motion, workspace, loader, tenant-selection, hero and framing controls.</div></div></div>\n          <ChevronRight className=\"h-4 w-4 shrink-0 rotate-90 text-slate-500 transition-transform group-open:-rotate-90\" />\n        </summary>\n        <div className=\"border-t border-blue-300/10 p-4 sm:p-5\">\n          {ownerWorkspaceTenant ? <><TenantBrandMediaSettings tenantOverride={ownerWorkspaceTenant} onTenantRefresh={refreshMemberships} /><div className=\"mt-3\" data-godmode-platform-media-slots=\"true\"><GodModePlatformMediaSettings tenant={ownerWorkspaceTenant} onTenantRefresh={refreshMemberships} /></div></> : <p className=\"text-sm text-slate-400\">Platform media workspace is not available yet. GodMode will not substitute an active customer tenant.</p>}\n        </div>\n      </details>\n    </div>\n  );\n\n  const settingsDestinations = [\n    { title: 'Account & security', description: 'Owner identity, password, and the canonical GodMode account.', href: '/admin/account?section=profile', Icon: ShieldCheck },\n    { title: 'People & access', description: 'Platform users, roles, and access controls.', href: '/admin/users', Icon: UsersRound },\n    { title: 'Applications', description: 'Installed platform applications and operating surfaces.', href: '/admin/applications', Icon: PlugZap },\n    { title: 'Media library', description: 'Platform and tenant media in one governed library.', href: '/admin/media-library', Icon: ImageIcon },\n    { title: 'Platform inbox', description: 'Owner-facing system messages and platform alerts.', href: '/admin/platform-inbox', Icon: Inbox },\n    { title: 'System settings', description: 'GodMode configuration and platform-wide controls.', href: '/admin/system-config', Icon: Settings2 },\n  ];\n\n  const settingsContent = (\n    <div className=\"space-y-4\" data-godmode-settings-hub=\"true\">\n      <section className=\"grid gap-2 sm:grid-cols-2\">\n        {settingsDestinations.map(({ title, description, href, Icon }) => (\n          <Link key={href} to={href} className=\"group flex min-h-0 items-center gap-3 rounded-2xl border border-white/10 bg-[#0b1220]/72 p-3 shadow-sm transition hover:border-cyan-300/25 hover:bg-cyan-300/[0.035]\">\n            <span className=\"grid h-9 w-9 shrink-0 place-items-center rounded-xl border border-cyan-300/14 bg-cyan-300/[0.055]\"><Icon className=\"h-4 w-4 text-cyan-200\" /></span>\n            <span className=\"min-w-0 flex-1\"><span className=\"block text-sm font-semibold text-white\">{title}</span><span className=\"mt-0.5 block text-xs leading-5 text-slate-400\">{description}</span></span>\n            <ChevronRight className=\"h-4 w-4 shrink-0 text-slate-600 transition group-hover:translate-x-0.5 group-hover:text-cyan-200\" />\n          </Link>\n        ))}\n      </section>\n\n      <details className=\"group overflow-hidden rounded-2xl border border-white/10 bg-[#0b1220]/72\" data-godmode-platform-media=\"true\">\n        <summary className=\"flex cursor-pointer list-none items-center justify-between gap-3 px-4 py-3.5 marker:hidden [&::-webkit-details-marker]:hidden\">\n          <div className=\"flex min-w-0 items-center gap-3\"><ImageIcon className=\"h-4 w-4 shrink-0 text-cyan-300\" /><div><div className=\"text-sm font-semibold text-white\">Platform appearance media</div><div className=\"text-xs text-slate-400\">Logo, background, hero image, framing and presentation controls.</div></div></div>\n          <ChevronRight className=\"h-4 w-4 shrink-0 rotate-90 text-slate-500 transition-transform group-open:-rotate-90\" />\n        </summary>\n        <div className=\"border-t border-blue-300/10 p-4\">\n          {ownerWorkspaceTenant ? <TenantBrandMediaSettings tenantOverride={ownerWorkspaceTenant} onTenantRefresh={refreshMemberships} /> : <p className=\"text-sm text-slate-400\">Platform media workspace is not available yet. GodMode will not substitute an active customer tenant.</p>}\n        </div>\n      </details>\n\n      <details className=\"group overflow-hidden rounded-2xl border border-white/10 bg-[#0b1220]/72\">\n        <summary className=\"flex cursor-pointer list-none items-center justify-between gap-3 px-4 py-3.5 marker:hidden [&::-webkit-details-marker]:hidden\">\n          <div><div className=\"text-sm font-semibold text-white\">Site design</div><div className=\"text-xs text-slate-400\">Advanced public-site appearance controls.</div></div>\n          <ChevronRight className=\"h-4 w-4 shrink-0 rotate-90 text-slate-500 transition-transform group-open:-rotate-90\" />\n        </summary>\n        <div className=\"border-t border-blue-300/10 p-4 sm:p-5\">\n          <div className=\"mb-4 rounded-xl border border-cyan-300/10 bg-cyan-300/[0.035] px-3.5 py-3 text-xs leading-5 text-slate-300\">GodMode loading media uses the profile video when one is set; otherwise it uses the workspace background. Both are stored in the canonical media library, and the background framing controls apply to the image fallback.</div>\n          {ownerWorkspaceTenant ? <TenantBrandMediaSettings tenantOverride={ownerWorkspaceTenant} onTenantRefresh={refreshMemberships} /> : <p className=\"text-sm text-slate-400\">Platform media workspace is not available yet. GodMode will not substitute an active customer tenant.</p>}\n        </div>\n      </details>\n    </div>\n  );\n\n  const notificationsContent = (\n    <div className=\"grid gap-5 md:grid-cols-[minmax(0,1.2fr)_minmax(280px,.8fr)]\">\n      <Card>\n        <CardHeader><CardTitle className=\"flex items-center gap-2\"><Bell className=\"h-4 w-4 text-cyan-300\" />Platform notifications</CardTitle><CardDescription>GodMode notifications are platform events, mission updates, and owner-facing system messages — not notifications from whichever tenant happens to be active.</CardDescription></CardHeader>\n        <CardContent><Button asChild className=\"gap-2\"><Link to=\"/admin/platform-inbox\"><Inbox className=\"h-4 w-4\" />Open Platform Inbox</Link></Button></CardContent>\n      </Card>\n      <Card>\n        <CardHeader><CardTitle className=\"text-base\">One owner context</CardTitle><CardDescription>The account shell remains /admin scoped across Profile, Settings, Notifications, Console, and the rest of GodMode.</CardDescription></CardHeader>\n      </Card>\n    </div>\n  );\n\n  return (\n    <AdminPage title={pageTitle} description=\"GodMode owner identity, settings, media, and security\" documentTitle={`${pageTitle} | GodMode | Knock Launch OS`} icon={UserCircle} width=\"wide\">\n      <UniversalAccountSettingsShell\n        section={section}\n        defaultSection=\"profile\"\n        baseHref=\"/admin/account\"\n        contextName=\"GodMode\"\n        contextKind=\"Platform owner\"\n        tenantTypeLabel=\"Admin\"\n        experienceLabel=\"GodMode\"\n        description=\"Your owner identity and platform controls stay inside GodMode and never inherit the active customer tenant.\"\n      >\n        {section === 'profile' ? profileContent : section === 'settings' ? settingsContent : notificationsContent}\n      </UniversalAccountSettingsShell>\n    </AdminPage>\n  );\n}\n"},{"path":"src/components/platform/GodModePlatformMediaSettings.tsx","content":"import { useEffect, useMemo, useState } from 'react';\nimport { ImageIcon, Loader2, Upload, Video } from 'lucide-react';\nimport { supabase } from '@/integrations/supabase/client';\nimport { tenantMediaAssetUrl } from '@/lib/tenantMedia';\nimport { resolveTenantMediaBranding } from '@/lib/tenants/tenantMediaBranding';\nimport { toast } from '@/lib/notify';\n\nconst IMAGE_TYPES = new Set(['image/png','image/jpeg','image/webp','image/avif']);\nconst VIDEO_TYPES = new Set(['video/mp4','video/webm']);\nconst MAX_IMAGE_BYTES = 15 * 1024 * 1024;\nconst MAX_VIDEO_BYTES = 50 * 1024 * 1024;\ntype SlotKey='loader'|'selectTenant';\ntype Slot={key:SlotKey;label:string;description:string;collection:string;prefix:'loader_background'|'select_tenant_background'};\nconst SLOTS:Slot[]=[\n  {key:'loader',label:'Loader background',description:'Image or muted looping video shown while GodMode is loading.',collection:'loader-background',prefix:'loader_background'},\n  {key:'selectTenant',label:'Select tenant background',description:'Platform background behind the business and app selector.',collection:'select-tenant-background',prefix:'select_tenant_background'},\n];\nconst record=(value:unknown):Record<string,any>=>value&&typeof value==='object'&&!Array.isArray(value)?value as Record<string,any>:{};\n\nexport function GodModePlatformMediaSettings({tenant,onTenantRefresh}:{tenant:any;onTenantRefresh?:(()=>Promise<void>|void)|null}) {\n  const resolved=useMemo(()=>resolveTenantMediaBranding(tenant),[tenant]);\n  const [urls,setUrls]=useState<Record<SlotKey,string>>({loader:resolved.loaderBackgroundUrl||'',selectTenant:resolved.selectTenantBackgroundUrl||''});\n  const [video,setVideo]=useState<Record<SlotKey,boolean>>({loader:resolved.loaderBackgroundIsVideo,selectTenant:resolved.selectTenantBackgroundIsVideo});\n  const [busy,setBusy]=useState<SlotKey|null>(null);\n  useEffect(()=>{setUrls({loader:resolved.loaderBackgroundUrl||'',selectTenant:resolved.selectTenantBackgroundUrl||''});setVideo({loader:resolved.loaderBackgroundIsVideo,selectTenant:resolved.selectTenantBackgroundIsVideo})},[tenant?.id,resolved.loaderBackgroundUrl,resolved.loaderBackgroundIsVideo,resolved.selectTenantBackgroundUrl,resolved.selectTenantBackgroundIsVideo]);\n\n  const upload=async(slot:Slot,file:File)=>{\n    if(!tenant?.id||busy)return;\n    const type=String(file.type||'').toLowerCase();\n    const isVideo=VIDEO_TYPES.has(type),isImage=IMAGE_TYPES.has(type);\n    if(!isVideo&&!isImage){toast.error('Choose a PNG, JPG, WebP, AVIF, MP4, or WebM file.');return}\n    if(file.size<1||file.size>(isVideo?MAX_VIDEO_BYTES:MAX_IMAGE_BYTES)){toast.error(isVideo?'Video must be 50MB or smaller.':'Image must be 15MB or smaller.');return}\n    setBusy(slot.key);\n    let assetId='';let finalized=false;\n    try{\n      const created=await supabase.functions.invoke('tenant-media-library',{body:{action:'create_upload',tenantId:tenant.id,name:file.name,type,size:file.size,collection:slot.collection,published:true,title:slot.label}});\n      if(created.error||created.data?.ok!==true||!created.data?.asset?.id||!created.data?.path||!created.data?.token)throw created.error||new Error(created.data?.error||'Could not prepare platform media upload.');\n      assetId=String(created.data.asset.id);\n      const bucket=String(created.data.asset.bucket_name||'');if(!bucket)throw new Error('Platform media storage bucket was not resolved.');\n      const stored=await supabase.storage.from(bucket).uploadToSignedUrl(String(created.data.path),String(created.data.token),file,{contentType:type});if(stored.error)throw stored.error;\n      const completed=await supabase.functions.invoke('tenant-media-library',{body:{action:'finalize_upload',tenantId:tenant.id,assetId}});\n      if(completed.error||completed.data?.ok!==true||!completed.data?.asset)throw completed.error||new Error(completed.data?.error||'Could not finalize platform media.');\n      finalized=true;\n      const current=await supabase.from('tenants').select('settings').eq('id',tenant.id).single();if(current.error)throw current.error;\n      const settings=record(current.data?.settings),media=record(settings.media_branding),version=new Date().toISOString(),stableUrl=tenantMediaAssetUrl(assetId,version);\n      const nextSettings={...settings,media_branding:{...media,[slot.prefix+'_asset_id']:assetId,[slot.prefix+'_version']:version,[slot.prefix+'_url']:stableUrl,[slot.prefix+'_content_type']:type,updated_at:version}};\n      const saved=await supabase.from('tenants').update({settings:nextSettings,updated_at:version}).eq('id',tenant.id);if(saved.error)throw saved.error;\n      setUrls(v=>({...v,[slot.key]:stableUrl}));setVideo(v=>({...v,[slot.key]:isVideo}));await onTenantRefresh?.();toast.success(slot.label+' updated.');\n    }catch(error:any){\n      if(assetId&&!finalized)void supabase.functions.invoke('tenant-media-library',{body:{action:'delete',tenantId:tenant.id,assetId}}).catch(()=>undefined);\n      toast.error(error?.message||'Could not update platform media.');\n    }finally{setBusy(null)}\n  };\n\n  return <div className=\"grid gap-3 md:grid-cols-2\" data-testid=\"godmode-platform-media-settings\">{SLOTS.map(slot=>{const url=urls[slot.key],isVideo=video[slot.key],isBusy=busy===slot.key;return <section key={slot.key} className=\"overflow-hidden rounded-2xl border bg-background/70\" data-platform-media-slot={slot.prefix}>\n    <div className=\"p-4\"><div className=\"flex items-start justify-between gap-3\"><div><h3 className=\"font-semibold\">{slot.label}</h3><p className=\"mt-1 text-xs text-muted-foreground\">{slot.description}</p></div><span className=\"rounded-full border px-2 py-0.5 text-[10px] font-semibold text-muted-foreground\">Platform</span></div></div>\n    <div className=\"relative mx-4 aspect-video overflow-hidden rounded-2xl border bg-black/65\">{url?(isVideo?<video src={url} className=\"h-full w-full object-cover\" autoPlay loop muted playsInline controls preload=\"metadata\"/>:<img src={url} alt={slot.label} className=\"h-full w-full object-cover\"/>):<div className=\"grid h-full place-items-center text-center text-xs text-muted-foreground\"><div>{slot.key==='loader'?<Video className=\"mx-auto mb-2 h-7 w-7\"/>:<ImageIcon className=\"mx-auto mb-2 h-7 w-7\"/>}No media uploaded</div></div>}</div>\n    <div className=\"mt-4 border-t px-4 py-3\"><div className=\"flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between\"><p className=\"text-xs text-muted-foreground\">Images 15 MB · MP4/WebM 50 MB</p><label className={'inline-flex min-h-10 cursor-pointer items-center justify-center gap-2 rounded-xl border bg-background px-3.5 text-sm font-semibold transition hover:bg-muted '+(busy?'cursor-not-allowed opacity-60':'')}>{isBusy?<Loader2 className=\"h-4 w-4 animate-spin\"/>:<Upload className=\"h-4 w-4\"/>}{isBusy?'Uploading…':url?'Replace media':'Upload media'}<input aria-label={'Upload '+slot.label.toLowerCase()} type=\"file\" accept=\"image/png,image/jpeg,image/webp,image/avif,video/mp4,video/webm\" className=\"hidden\" disabled={Boolean(busy)} onChange={event=>{const file=event.target.files?.[0];event.currentTarget.value='';if(file)void upload(slot,file)}}/></label></div></div>\n  </section>})}</div>;\n}\n"}],"branch":"ai/objective-first-repair-16f68625e357","writes":[],"patches":[],"version":1,"approved":true,"missionId":"16f68625-e357-4dff-803b-596a61b79c32","repository":"noel/KnockLaunchOS","ownerApproved":true,"releaseIntent":null,"sourceTargets":["src/pages/admin/AdminProfile.tsx","src/components/platform/GodModePlatformMediaSettings.tsx"],"implementation":{"files":[],"writes":[]},"requestContract":null,"repairGeneration":null,"executionEnvelope":{"ship":true,"version":1,"approved":true,"missionId":"16f68625-e357-4dff-803b-596a61b79c32","ownerApproved":true,"releaseIntent":null,"sourceTargets":["src/pages/admin/AdminProfile.tsx","src/components/platform/GodModePlatformMediaSettings.tsx"],"requestContract":null,"repairGeneration":null,"proofRequirements":null,"controlPlaneUnfreeze":false,"controlPlaneMaintenance":false,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":null},"proofRequirements":null,"controlPlaneUnfreeze":false,"durableMutationResume":true,"controlPlaneMaintenance":false,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":null},"recovery":false,"fingerprint":"2a1e8f7d00194bfaf77392d1a511c614d778dd9ea1406babfab0bf299f0197aa","replayCount":0,"serializedBytes":28998},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-30T13:40:34.484763+00:00","proof_gate":"repository_mutation_intent_persisted","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent","idempotency_key":"mission:16f68625-e357-4dff-803b-596a61b79c32:repository-mutation-intent:2a1e8f7d00194bfaf77392d1a511c614d778dd9ea1406babfab0bf299f0197aa:0","mission_step_id":"d87703dd-3616-485e-bd30-14f3bea5174c","command_center_event_id":"16f68625-e357-4dff-803b-596a61b79c32"},{"id":"4dc0da6e-0dce-4cf8-bb3f-4bb018f07bc1","source":"cc-execution","status":"waiting","payload":{"body":{"ship":true,"files":[],"branch":"ai/objective-first-repair-3328d67a5c3c","writes":[],"patches":[],"version":1,"approved":true,"missionId":"3328d67a-5c3c-458e-b3b1-865e5e4f8a9f","objective":"Repair the current frontend release blocker on protected main. Cloudflare Wrangler 4.112.0 now yields a valid Worker Version ID but no Version/Preview URL because KNOCKLAUNCH intentionally has workers_dev=false and does not enable public preview_urls. Preserve that privacy posture. Make candidate preview URL optional after versions upload. After the candidate is added to the active deployment at 0% traffic, canary the exact candidate through the configured production proofDomains using the documented Cloudflare-Workers-Version-Overrides header with worker name knocklaunch-owner-production and the exact candidate version ID. Preserve stable 100% traffic until canary success, existing source/artifact verification, rollback behavior, and post-promotion proof. Update the exact release classification contract. Do not enable workers.dev or preview_urls and do not alter unrelated release machinery.","repository":"noel/KnockLaunchOS","ownerApproved":true,"releaseIntent":null,"sourceTargets":["scripts/cloudflare-native-version-deploy.mjs","src/__tests__/contracts/frontend-public-domain-release-classification.contract.test.ts"],"anchored_edits":[{"path":"scripts/cloudflare-native-version-deploy.mjs","edits":[{"new_content":"    if (!receipt.versionId) throw new Error('wrangler_version_upload_id_missing');\n    return receipt;","old_content":"    if (!receipt.versionId) throw new Error('wrangler_version_upload_id_missing');\n    if (!receipt.previewUrl) throw new Error('wrangler_version_upload_preview_url_missing');\n    return receipt;"},{"new_content":"  const { expectedIndexHash, assetRefs, proofDomains } = localArtifactContract();\n  const canaryDomains = proofDomains;\n  const results = {};","old_content":"  const { expectedIndexHash, assetRefs, proofDomains } = localArtifactContract();\n  const canaryDomains = useOverride ? [candidateVersionProofUrl(candidatePreviewUrl, candidateVersionId)] : proofDomains;\n  const results = {};"},{"new_content":"    const headers = {\n      'cache-control': 'no-cache, no-store, max-age=0',\n      pragma: 'no-cache',\n      ...(useOverride ? { [VERSION_OVERRIDE_HEADER]: `${WORKER_NAME}=\"${candidateVersionId}\"` } : {}),\n    };","old_content":"    const headers = {\n      'cache-control': 'no-cache, no-store, max-age=0',\n      pragma: 'no-cache',\n    };"}]},{"path":"src/__tests__/contracts/frontend-public-domain-release-classification.contract.test.ts","edits":[{"new_content":"    expect(deploy).toContain('wrangler_version_upload_id_missing');\n    expect(deploy).not.toContain('wrangler_version_upload_preview_url_missing');\n    expect(deploy).toContain(\"const canaryDomains = proofDomains\");\n    expect(deploy).toContain('Cloudflare-Workers-Version-Overrides');\n    expect(deploy).toContain('`${WORKER_NAME}=\"${candidateVersionId}\"`');","old_content":"    expect(deploy).toContain('wrangler_version_upload_id_missing');\n    expect(deploy).toContain('wrangler_version_upload_preview_url_missing');\n    expect(deploy).toContain(\"hostname.endsWith('.workers.dev')\");"}]}],"implementation":{"files":[],"writes":[]},"requestContract":{"outcomes":[{"id":"optional-preview-url","statement":"versions upload requires an exact candidate Worker Version ID but does not fail when no public preview/version URL is emitted.","proofConditionIds":["runtime-proof"]},{"id":"override-canary","statement":"After a candidate is present in the active deployment at 0% traffic, canary requests target configured production proof domains and include Cloudflare-Workers-Version-Overrides with knocklaunch-owner-production mapped to the exact candidate version ID.","proofConditionIds":["runtime-proof"]},{"id":"stable-until-proven","statement":"The stable Worker remains at 100% traffic until the exact candidate passes source, index, and asset canary checks; promotion and rollback behavior remain fail-closed.","proofConditionIds":["runtime-proof"]},{"id":"privacy-preserved","statement":"workers_dev remains disabled and preview_urls are not enabled as part of this repair.","proofConditionIds":["runtime-proof"]}],"objective":"Frontend releases must canary exact zero-traffic Worker versions through production domains using Cloudflare version overrides without requiring public Version URLs.","constraints":[{"id":"scope","statement":"Change only the exact frontend version-deploy canary behavior and its contract; do not alter unrelated release machinery or tenant UI.","proofConditionIds":["runtime-proof"]}],"proofConditions":[{"id":"runtime-proof","kind":"runtime","claim":"The repair is Gate-verified, merged, and a current-main frontend release successfully captures a candidate version, verifies it at 0% through version override on production proof domains, promotes it to 100%, and verifies live.","required":true}]},"repairGeneration":null,"executionEnvelope":{"ship":true,"version":1,"approved":true,"missionId":null,"ownerApproved":true,"releaseIntent":null,"sourceTargets":["scripts/cloudflare-native-version-deploy.mjs","src/__tests__/contracts/frontend-public-domain-release-classification.contract.test.ts"],"requestContract":{"outcomes":[{"id":"optional-preview-url","statement":"versions upload requires an exact candidate Worker Version ID but does not fail when no public preview/version URL is emitted.","proofConditionIds":["runtime-proof"]},{"id":"override-canary","statement":"After a candidate is present in the active deployment at 0% traffic, canary requests target configured production proof domains and include Cloudflare-Workers-Version-Overrides with knocklaunch-owner-production mapped to the exact candidate version ID.","proofConditionIds":["runtime-proof"]},{"id":"stable-until-proven","statement":"The stable Worker remains at 100% traffic until the exact candidate passes source, index, and asset canary checks; promotion and rollback behavior remain fail-closed.","proofConditionIds":["runtime-proof"]},{"id":"privacy-preserved","statement":"workers_dev remains disabled and preview_urls are not enabled as part of this repair.","proofConditionIds":["runtime-proof"]}],"objective":"Frontend releases must canary exact zero-traffic Worker versions through production domains using Cloudflare version overrides without requiring public Version URLs.","constraints":[{"id":"scope","statement":"Change only the exact frontend version-deploy canary behavior and its contract; do not alter unrelated release machinery or tenant UI.","proofConditionIds":["runtime-proof"]}],"proofConditions":[{"id":"runtime-proof","kind":"runtime","claim":"The repair is Gate-verified, merged, and a current-main frontend release successfully captures a candidate version, verifies it at 0% through version override on production proof domains, promotes it to 100%, and verifies live.","required":true}]},"repairGeneration":null,"proofRequirements":null,"controlPlaneUnfreeze":false,"controlPlaneMaintenance":false,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":null},"proofRequirements":null,"controlPlaneUnfreeze":false,"durableMutationResume":true,"controlPlaneMaintenance":false,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":null},"recovery":false,"fingerprint":"32860aa8799c6accf2ffe213eb756571c3b63febfc58a2d3e44875d983f09606","replayCount":0,"serializedBytes":7351},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-30T03:50:36.643685+00:00","proof_gate":"repository_mutation_intent_persisted","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent","idempotency_key":"mission:3328d67a-5c3c-458e-b3b1-865e5e4f8a9f:repository-mutation-intent:32860aa8799c6accf2ffe213eb756571c3b63febfc58a2d3e44875d983f09606:0","mission_step_id":"600787f7-c9fe-4317-aaa1-9f1eb885c085","command_center_event_id":"3328d67a-5c3c-458e-b3b1-865e5e4f8a9f"},{"id":"4dc3443e-a3aa-43cb-b361-6ba48907d84f","source":"cc-execution","status":"authorized","payload":{"paths":["workers/cc-execution/src/index-release-fast-lane.js","workers/cc-execution/src/version.js","workers/cc-execution/test/event-driven-auto-merge-invariants.test.js"],"reason":"Owner authorized PAUL hardening; recursively verify only truncated exact-name source roots instead of failing on a coarse truncation flag.","baseSha":"207653e58e8a531b0525755adc312e524f7d1def","issuedAt":1790774534084,"expiresAt":1790774714084,"missionId":"ccfe408a-9cff-4164-b956-a51691563931","authorizationId":"36ce7712-8753-430c-acb2-4425e69192ad","retryableWithinExactScope":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-30T13:22:14.440864+00:00","proof_gate":"control_plane_maintenance_scope_authorized","source_sha":"207653e58e8a531b0525755adc312e524f7d1def","external_id":null,"receipt_type":"control_plane_maintenance_authorization","idempotency_key":"control-plane-maintenance-authorize:36ce7712-8753-430c-acb2-4425e69192ad","mission_step_id":"caedfb51-8c69-4bf3-b28e-0a7b26aefa9b","command_center_event_id":"ccfe408a-9cff-4164-b956-a51691563931"},{"id":"4dc486a5-00f2-46cf-9a06-d444d3f3ba5b","source":"forgejo","status":"waiting","payload":{"branch":"ai/objective-first-repair-b593ebcb341e","prNumber":4044,"nextAction":null,"mergeCommitSha":"c3c1c44ad33cda70f5887e0e345076b461ab8c5e","branchDeletedAfterMerge":true,"correctiveGenerationCreated":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-28T22:49:22.535982+00:00","proof_gate":"forgejo_merged_pr_is_authoritative_source_lineage","source_sha":"c3c1c44ad33cda70f5887e0e345076b461ab8c5e","external_id":"4044","receipt_type":"source_lineage_merged_pr_authoritative","idempotency_key":"mission:b593ebcb-341e-4653-882d-9c9ebec7932a:merged-pr:4044:c3c1c44ad33cda70f5887e0e345076b461ab8c5e","mission_step_id":"c96ddb76-1a91-4d4b-bbdb-e49f20babcb2","command_center_event_id":"b593ebcb-341e-4653-882d-9c9ebec7932a"},{"id":"4dc4c7de-92fe-4b2f-bca3-9e807e61b8de","source":"durable-mission-ledger","status":"verified","payload":{"sourceSha":"453c4317a610952c48346e6d3e2fb191539a9583","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"edge-registry-live","satisfied":true,"statement":"One deployable canonical tenant-type registry drives frontend and tenant-media-library, with the health contract live.","proofConditionIds":["repo-correction","release-correction","runtime-correction"]}],"satisfied":true,"constraints":[{"id":"preserve-taxonomy","satisfied":true,"statement":"Preserve the accepted tenant taxonomy and resolver behavior exactly.","proofConditionIds":["repo-correction","runtime-correction"]},{"id":"single-source","satisfied":true,"statement":"No duplicate taxonomy; frontend and Edge runtime consume the same shared registry file.","proofConditionIds":["repo-correction"]},{"id":"bounded","satisfied":true,"statement":"No schema/data changes, visual redesign, or unrelated edits.","proofConditionIds":["repo-correction"]},{"id":"release","satisfied":true,"statement":"Canonical gate, squash merge, affected production release, and claim-matched canary.","proofConditionIds":["release-correction","runtime-correction"]},{"id":"capability-completeness","satisfied":true,"statement":"All applicable frontend, runtime, data/storage, authorization, provider, state, release, and live-proof dependencies remain wired.","proofConditionIds":["repo-correction","release-correction","runtime-correction"]},{"id":"atomic-lifecycle","satisfied":true,"statement":"The capability remains nonterminal until exact release and live canary proof; failure isolates the tenant-type capability.","proofConditionIds":["release-correction","runtime-correction"]},{"id":"atomic-capability-lifecycle","satisfied":true,"statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","proofConditionIds":["repo-correction","release-correction","runtime-correction"]}],"contractHash":"62e6b5fcf85e0d4b35a330c9785e5803dc2704b6c584a041f0c6c970d41e52f5","releaseBound":true,"witnessBound":false,"visualRequested":false,"visualSatisfied":true,"conditionResults":[{"id":"repo-correction","kind":"repository","evidence":{"reason":null,"gateRunId":9272,"satisfied":true,"gateTestProof":null,"gateTestPassed":false,"missingTargets":[],"gateTestExecuted":false,"disallowedTargets":[],"migrationRequired":false,"namedGateTestPath":null,"releaseTargetStates":{"frontend":"success","supabaseEdge":"success"},"repositoryProofGate":"request_contract_repository_verified","repositoryProofPath":null,"requestContractHash":"62e6b5fcf85e0d4b35a330c9785e5803dc2704b6c584a041f0c6c970d41e52f5","unsuccessfulTargets":[],"activeReleaseTargets":["frontend","supabaseEdge"],"allowedReleaseTargets":[],"repositoryProofStatus":"verified","expectedRepositoryPath":null,"namedGateTestSatisfied":true,"requiredReleaseTargets":[],"migrationReleaseVerified":null,"repositoryConditionBound":true,"repositoryProofSourceSha":"453c4317a610952c48346e6d3e2fb191539a9583"},"required":true,"satisfied":true},{"id":"release-correction","kind":"release","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":false,"releaseTargetStates":{"frontend":"success","supabaseEdge":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["frontend","supabaseEdge"],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"migrationReleaseVerified":null,"releaseRequestContractHash":"62e6b5fcf85e0d4b35a330c9785e5803dc2704b6c584a041f0c6c970d41e52f5"},"required":true,"satisfied":true},{"id":"runtime-correction","kind":"runtime","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":false,"releaseTargetStates":{"frontend":"success","supabaseEdge":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["frontend","supabaseEdge"],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"migrationReleaseVerified":null,"releaseRequestContractHash":"62e6b5fcf85e0d4b35a330c9785e5803dc2704b6c584a041f0c6c970d41e52f5"},"required":true,"satisfied":true}],"validationErrors":[],"pendingProofKinds":[],"activeReleaseTargets":["frontend","supabaseEdge"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-17T19:15:49.183297+00:00","proof_gate":"request_contract_terminal_verified","source_sha":"453c4317a610952c48346e6d3e2fb191539a9583","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:5fd1b3e5-7883-4776-9295-af13f67470ea:request-contract:62e6b5fcf85e0d4b35a330c9785e5803dc2704b6c584a041f0c6c970d41e52f5:453c4317a610952c48346e6d3e2fb191539a9583:verified:","mission_step_id":"8868ae81-6a42-496d-afb8-5281a22a37ed","command_center_event_id":"5fd1b3e5-7883-4776-9295-af13f67470ea"},{"id":"4dc7d151-6e1a-4c12-9f75-417d505032ad","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-12bab9c52d83","reason":"retryable_provider_transport:forgejo_provider_read_timeout","status":"retryable","metrics":{"receiptBytes":21334,"releaseCount":0,"toolCallCount":9,"repeatedCallCount":4,"executorlessWaitMs":62595,"firstUsefulResultAt":"2026-10-01T20:57:49.064Z","recoveryAttemptCount":6,"ownerInterruptionCount":0},"version":"1.64.39-source-resolution-continuation","prNumber":4409,"terminal":false,"missionId":"12bab9c5-2d83-4fcb-bbcf-1e2b14d932d0","operation":"execute_mission","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":2717,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":2590,"approvedPlanMs":0,"missionSetupMs":518,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":220,"ledgerReconcileMs":0,"lineageReconcileMs":298,"resolvePreflightMs":518,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":220,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"12bab9c5-2d83-4fcb-bbcf-1e2b14d932d0"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1523,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-01T20:58:55.235825+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"4409","receipt_type":"execute_mission","idempotency_key":"mission:12bab9c5-2d83-4fcb-bbcf-1e2b14d932d0:execute_mission:repair_mission_pr_ready_retryable:current-generation","mission_step_id":"9e7fd248-7d76-485b-97f3-2ced6a2a46d7","command_center_event_id":"12bab9c5-2d83-4fcb-bbcf-1e2b14d932d0"},{"id":"4dcba7eb-419e-49a6-ab95-0b2e660e3e76","source":"forgejo","status":"verified","payload":{"branch":"ai/fix-synthesis-loop-control-plane","prNumber":526,"nextAction":null,"mergeCommitSha":"5457f7ba127bdd28fada452e282790cb2c66fcb3","branchDeletedAfterMerge":true,"correctiveGenerationCreated":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-21T00:42:33.511154+00:00","proof_gate":"merged_pr_deleted_branch_is_terminal_source_lineage","source_sha":"5457f7ba127bdd28fada452e282790cb2c66fcb3","external_id":"526","receipt_type":"source_lineage_merged_branch_closed","idempotency_key":"mission:6e909c07-c82f-4cdf-83ac-a3e3009ca8af:merged-pr:526:branch-deleted","mission_step_id":"87863e4d-1b67-4614-92b0-cf3fb897f9d3","command_center_event_id":"6e909c07-c82f-4cdf-83ac-a3e3009ca8af"},{"id":"4dcca796-4785-400b-a532-b8a80508520e","source":"cc-execution","status":"authorized","payload":{"paths":["workers/cc-execution/src/index-release-fast-lane.js","workers/cc-execution/src/version.js"],"reason":"Owner-authorized request-scoped readiness and runtime marker repair on PR #2265; preserve tenant data and normal frozen-by-default state.","baseSha":"0d1aae2eb2e26a59ab3fdd6f893adebde51f080f","issuedAt":1789011284491,"expiresAt":1789011464491,"missionId":"344470af-9c65-40ff-822e-ef37b0698441","authorizationId":"7c1b80a4-0a13-4831-b797-1ec248b92993","retryableWithinExactScope":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-10T03:34:44.898579+00:00","proof_gate":"control_plane_maintenance_scope_authorized","source_sha":"0d1aae2eb2e26a59ab3fdd6f893adebde51f080f","external_id":null,"receipt_type":"control_plane_maintenance_authorization","idempotency_key":"control-plane-maintenance-authorize:7c1b80a4-0a13-4831-b797-1ec248b92993","mission_step_id":"64a6c24c-6597-4da8-b4f3-5891cf17af5e","command_center_event_id":"344470af-9c65-40ff-822e-ef37b0698441"},{"id":"4dcd0505-a75b-4334-aac2-649818b92ad3","source":"forgejo","status":"retryable","payload":{"branch":"ai/objective-first-repair-2a9406a97c6d","merged":false,"prNumber":3661,"remediationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-24T19:12:04.700761+00:00","proof_gate":"forgejo_closed_pr_is_authoritative_source_lineage","source_sha":null,"external_id":"3661","receipt_type":"source_lineage_pr_closed_without_merge","idempotency_key":"mission:2a9406a9-7c6d-4703-8d4c-d15457953174:closed-pr:3661:unmerged","mission_step_id":"d9b3677c-e0a9-493c-8ba5-2576f9a50984","command_center_event_id":"2a9406a9-7c6d-4703-8d4c-d15457953174"},{"id":"4dcd9dba-a9cf-4f56-aa0f-2b211ff45d90","source":"cc-execution","status":"waiting_for_gate","payload":{"ok":true,"jobId":null,"phase":"release","branch":"ai/objective-first-repair-8bbe3d6299fe","reason":"provider_verified_auto_progress_owns_gate_merge_release_outside_owner_response","status":"waiting_for_gate","metrics":{"receiptBytes":193221,"releaseCount":0,"toolCallCount":23,"repeatedCallCount":11,"executorlessWaitMs":724725,"firstUsefulResultAt":"2026-09-28T12:40:36.473Z","recoveryAttemptCount":10,"ownerInterruptionCount":0},"version":"1.58.301-premium-visual-system","prNumber":3987,"terminal":false,"missionId":"8bbe3d62-99fe-4c67-b279-9d6e2d76e65c","operation":"execute_mission","proofGate":"repair_mission_pr_handed_off_to_supervisor","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":3959,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":877,"missionSetupMs":355,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":355,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":355,"repositoryMutationMs":3082,"repositoryProviderMs":3082,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":1962,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":355,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":1120},"nextAction":"Canonical KnockLaunch Gate notifier and durable mission supervisor own Gate, merge, release, and proof progression from this exact PR head outside the owner response path.","receiptRef":{"mode":"full","missionId":"8bbe3d62-99fe-4c67-b279-9d6e2d76e65c"},"performance":null,"deploymentId":null,"releaseState":"verified","workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["visual"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":3274,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-28T12:57:42.875499+00:00","proof_gate":"repair_mission_pr_handed_off_to_supervisor","source_sha":null,"external_id":"3987","receipt_type":"execute_mission","idempotency_key":"mission:8bbe3d62-99fe-4c67-b279-9d6e2d76e65c:execute_mission:repair_mission_pr_handed_off_to_supervisor:generation-1","mission_step_id":"4505d55e-6579-424c-beab-73f86d2e5320","command_center_event_id":"8bbe3d62-99fe-4c67-b279-9d6e2d76e65c"},{"id":"4dcf1860-b1f7-46ba-86b6-e79e7aacd007","source":"cc-execution","status":"deployment_dispatched","payload":{"ok":true,"jobId":null,"phase":"release","branch":null,"reason":null,"status":"deployment_dispatched","metrics":{"receiptBytes":4079,"releaseCount":0,"toolCallCount":6,"repeatedCallCount":2,"ownerInterruptionCount":0},"version":null,"prNumber":392,"terminal":false,"missionId":"cbf78836-2cb3-4278-8a1b-4403dfe38b6d","operation":"automatic_mission_resume","proofGate":"canonical_release_dispatched","sourceSha":"037901ba67584b714f421084ee5a91c7fad6c70e","timingsMs":null,"nextAction":null,"receiptRef":{"mode":"full","missionId":"cbf78836-2cb3-4278-8a1b-4403dfe38b6d"},"performance":null,"deploymentId":"forgejo-main-037901ba6758","workflowRunId":1341,"releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1501,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-08-19T00:33:32.047018+00:00","proof_gate":"canonical_release_dispatched","source_sha":null,"external_id":"392","receipt_type":"automatic_mission_resume","idempotency_key":"mission:cbf78836-2cb3-4278-8a1b-4403dfe38b6d:automatic-mission-resume:392:canonical_release_dispatched","mission_step_id":"f1b55305-0afc-4ccc-bac8-c53010418db2","command_center_event_id":"cbf78836-2cb3-4278-8a1b-4403dfe38b6d"},{"id":"4dd02b9e-8c0d-4a05-896f-31cd769d8149","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"pending","cc-execution/runtime-proof":"success"},"mainSha":"ffc165f64640726c64b985afd0e811b47d813b19","missing":[],"pending":["forgejo-release/workflow"],"required":["forgejo-main/source","forgejo-release/workflow","cc-execution/runtime-proof"],"sourceSha":"ffc165f64640726c64b985afd0e811b47d813b19","releaseState":"pending","sourceInMain":true,"compareStatus":"identical","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/350","runId":350,"status":"running","conclusion":null,"failedJobs":[]},"ccExecutionRuntimeProof":{"liveSha":"ffc165f64640726c64b985afd0e811b47d813b19","deploymentId":"forgejo-main-ffc165f64640726c64b985afd0e811b47d813b19","compareStatus":"identical","identitySource":"local_build_metadata","runtimeVersion":"1.46.3-fail-closed-control-plane-guard","containsSourceSha":true}},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-08-15T13:03:32.99501+00:00","proof_gate":"canonical_release_pending","source_sha":"ffc165f64640726c64b985afd0e811b47d813b19","external_id":"forgejo-main-ffc165f64640","receipt_type":"canonical_release_status","idempotency_key":"mission:d45d2c89-a8e2-4ce4-964e-e7371262c488:forgejo-release-status:ffc165f64640726c64b985afd0e811b47d813b19:pending:forgejo-main/source=success|forgejo-release/workflow=pending|cc-execution/runtime-proof=success","mission_step_id":"bdf70055-ea8e-4238-baff-a18385e6c351","command_center_event_id":"d45d2c89-a8e2-4ce4-964e-e7371262c488"},{"id":"4dd28268-1d02-46c4-ad4a-9389f1def1c0","source":"forgejo-runtime","status":"verified","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"success","cc-execution/runtime-proof":"success"},"mainSha":"348744e6ee062a5c62aad18c872f24a6dfc06f85","missing":[],"pending":[],"required":["forgejo-main/source","forgejo-release/workflow","cc-execution/runtime-proof"],"sourceSha":"348744e6ee062a5c62aad18c872f24a6dfc06f85","releaseState":"verified","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":false,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"ccExecution":"success"},"requestContractHash":"9e7186cb119999cb79a1b9bcb9013f8f1d0ea4489390ad65b8a80f0e756e6fd5","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/16460","runId":16460,"status":"success","sourceSha":"348744e6ee062a5c62aad18c872f24a6dfc06f85","conclusion":null,"failedJobs":[],"diagnostics":null,"exactSource":true,"targetStates":{"ccExecution":"success"},"targetJobCount":7,"observedTargetStates":{"ccExecution":"success"}},"releaseSourceVerified":true,"ccExecutionRuntimeProof":{"liveSha":"348744e6ee062a5c62aad18c872f24a6dfc06f85","proofGate":"cc_execution_target_aware_runtime_identity_verified","deploymentId":"forgejo-main-348744e6ee062a5c62aad18c872f24a6dfc06f85","compareStatus":"target_job_success_runtime_verified","workflowRunId":16460,"identitySource":"canonical_release_target_job","runtimeVersion":"1.67.12-pr-merge-base-freshness","workflowFailed":false,"containsSourceSha":true},"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T18:54:07.041567+00:00","proof_gate":"canonical_release_terminal_verified","source_sha":"348744e6ee062a5c62aad18c872f24a6dfc06f85","external_id":"forgejo-main-348744e6ee06","receipt_type":"canonical_release_status","idempotency_key":"mission:d0df765f-5c68-458b-a725-c33d9bbb2792:forgejo-release-status:348744e6ee062a5c62aad18c872f24a6dfc06f85:verified:forgejo-main/source=success|forgejo-release/workflow=success|cc-execution/runtime-proof=success","mission_step_id":"e3cbf047-c675-4889-a49d-e4f280bbdb72","command_center_event_id":"d0df765f-5c68-458b-a725-c33d9bbb2792"},{"id":"4dd5ce60-de84-4a1b-ada2-4f65c8bac6a6","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in release.","nextAction":{"lane":"production-release-conductor","action":"reconcile_release","reason":"merged_source_requires_release_proof","automationAllowed":true,"ownerActionRequired":false},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"release\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"owner_progress_heartbeat\",\"status\":\"waiting\",\"proofGate\":\"owner_progress_heartbeat\"},\"activeStep\":{\"key\":\"implementation\",\"status\":\"waiting\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"pull_request\",\"status\":\"waiting\",\"lane\":\"cc-execution\"},\"nextSafeAction\":{\"action\":\"reconcile_release\",\"lane\":\"production-release-conductor\",\"reason\":\"merged_source_requires_release_proof\",\"automationAllowed\":true,\"ownerActionRequired\":false},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"cc-execution\",\"nextAction\":\"reconcile_release\",\"recoveryOwner\":\"production-release-conductor\"},\"acceptance\":{\"total\":1,\"verified\":0,\"pending\":1,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[\"proof-production\"]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":\"visual_proof\",\"deadlineAt\":\"2026-10-06T08:33:13.056202+00:00\",\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":null,\"prNumber\":5163,\"sourceSha\":\"d059e784c8fb33ceeb0e36baec00e818ef3753e8\",\"deploymentId\":\"forgejo-main-d059e784c8fb\"}"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T07:53:35.370695+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:6cd825d0-ddfe-4532-8e8e-5f72704f5be5:owner-progress-heartbeat:119418214","mission_step_id":"8f1c0a7d-df5b-4529-9b5e-b41c824b98db","command_center_event_id":"6cd825d0-ddfe-4532-8e8e-5f72704f5be5"},{"id":"4dd66ebf-aab0-4349-b567-a59f0009d49a","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":"ai/objective-first-repair-1052bb2bf87d","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.161-forgejo-repository-file-pagination","prNumber":null,"terminal":false,"missionId":"1052bb2b-f87d-4c2c-ab96-4bc21aefe9c8","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":1627,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":5136,"providerAuthMs":0,"ledgerPrepareMs":5136,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":5136,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":5136,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /mission/execute again automatically with this same missionId without another owner prompt or workflow switch.","receiptRef":{"mode":"full","missionId":"1052bb2b-f87d-4c2c-ab96-4bc21aefe9c8"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":5934,"likelyAffectedFiles":["config/control-plane-capabilities.json","src/routes/vanityRoutes.tsx"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-16T16:00:10.131761+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:1052bb2b-f87d-4c2c-ab96-4bc21aefe9c8:execute_mission:repair_mission_synthesis_ready:current-generation","mission_step_id":"03484836-6ab5-4ff8-817a-66365d7cc0c3","command_center_event_id":"1052bb2b-f87d-4c2c-ab96-4bc21aefe9c8"},{"id":"4dd75940-1375-4cc8-94d7-2a4d41a4563d","source":"forgejo-runtime","status":"verified","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"success","supabase-edge-production/live":"success"},"mainSha":"d56a13b17eca63b0cb458586409333eb3a97d363","missing":[],"pending":[],"required":["forgejo-main/source","forgejo-release/workflow","supabase-edge-production/live"],"sourceSha":"d56a13b17eca63b0cb458586409333eb3a97d363","releaseState":"verified","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":false,"migrations":false,"ccExecution":false,"supabaseEdge":true,"edgeFunctionSlugs":["operator-respond"]},"releaseTargetStates":{"supabaseEdge":"success"},"requestContractHash":"a9328a82b6d533144e5c2c9deec744f6a0575f7870cc92c73367871eda9a17b1","forgejoWorkflowProof":{"runId":13555,"source":"signed_push_receipt","status":"success","results":{},"conclusion":"success","targetStates":{"supabaseEdge":"success"},"targetJobCount":6,"observedTargetStates":{"supabaseEdge":"success"}},"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-01T01:27:14.471748+00:00","proof_gate":"canonical_release_terminal_verified","source_sha":"d56a13b17eca63b0cb458586409333eb3a97d363","external_id":"forgejo-main-d56a13b17eca","receipt_type":"canonical_release_status","idempotency_key":"mission:b069ca9c-ed7f-4a86-92b5-cf809dff490d:forgejo-release-status:d56a13b17eca63b0cb458586409333eb3a97d363:verified:forgejo-main/source=success|forgejo-release/workflow=success|supabase-edge-production/live=success","mission_step_id":"4ad3e639-25c8-4a21-b342-b55b4a748f1d","command_center_event_id":"b069ca9c-ed7f-4a86-92b5-cf809dff490d"},{"id":"4dd77854-26c5-4406-811a-5a51a5f33101","source":"cc-execution","status":"blocked","payload":{"ok":false,"jobId":null,"phase":"objective_received","branch":null,"reason":"The operation was aborted due to timeout","status":"blocked","metrics":{"receiptBytes":750,"releaseCount":0,"toolCallCount":2,"repeatedCallCount":1,"ownerInterruptionCount":0},"version":"1.47.4-pr-native-freshness","prNumber":394,"terminal":false,"missionId":"b3e77385-7b48-470f-b478-e2ad0e87ead5","operation":"ship_and_prove","proofGate":"canonical_release_blocked","sourceSha":null,"timingsMs":null,"nextAction":null,"receiptRef":{"mode":"full","missionId":"b3e77385-7b48-470f-b478-e2ad0e87ead5"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":4725,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"766cfaa7-ac42-46c8-bbef-69d13268a29d","created_at":"2026-08-19T00:41:40.523821+00:00","proof_gate":"canonical_release_blocked","source_sha":null,"external_id":"394","receipt_type":"ship_and_prove","idempotency_key":"mission:b3e77385-7b48-470f-b478-e2ad0e87ead5:ship_and_prove:canonical_release_blocked:no-source:no-run","mission_step_id":"fc8d095f-b7b7-405c-ae23-ac8ac0321271","command_center_event_id":"b3e77385-7b48-470f-b478-e2ad0e87ead5"},{"id":"4dd8d73e-1b8f-401b-b885-ed6aff7d364a","source":"forgejo-exact-source","status":"verified","payload":{"sourceSha":"0826a77267d9df4b3fb7a0976d37d4bf88102180","repository":"noel/KnockLaunchOS","repositoryProofs":[{"id":"repo","path":null,"proof":"forgejo_merged_pr_exact_head_gate","headSha":"ecc52f7d1d468e1d05b54d05ff6b55afb30b843e","prNumber":4680,"gateRunId":14946,"gateContext":"KnockLaunch Gate / KnockLaunch Gate (pull_request)","expectedText":null,"gateTargetUrl":"/noel/KnockLaunchOS/actions/runs/14946/jobs/1","mergeCommitSha":"0826a77267d9df4b3fb7a0976d37d4bf88102180"}],"requestContractHash":"6b94dcd3eb5446f03ca1aa4d8fd5acc0ac56d4dca8b9937e7005cea247abe2f9","namedGateEvidenceReceiptVersion":null},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-03T21:53:26.101757+00:00","proof_gate":"request_contract_repository_verified","source_sha":"0826a77267d9df4b3fb7a0976d37d4bf88102180","external_id":null,"receipt_type":"request_contract_repository_status","idempotency_key":"mission:5f3ae743-79f3-43a0-97eb-18f677ccf22f:request-contract-repository:6b94dcd3eb5446f03ca1aa4d8fd5acc0ac56d4dca8b9937e7005cea247abe2f9:0826a77267d9df4b3fb7a0976d37d4bf88102180","mission_step_id":"6f095509-5662-4773-9637-dd09221b834f","command_center_event_id":"5f3ae743-79f3-43a0-97eb-18f677ccf22f"},{"id":"4dd9f6f6-089a-4917-9ecf-d14503c71cc1","source":"cc-execution","status":"authorized","payload":{"paths":["config/control-plane-capabilities.json","workers/cc-execution/src/command-center-contracts.js","workers/cc-execution/src/index-mission-control.js","workers/cc-execution/src/index-release-fast-lane.js","workers/cc-execution/test/release-handoff-bounded.test.js"],"reason":"Owner authorized systematic removal of control plane ambiguity and latency; live proof showed the canonical release handoff itself repeatedly stalls ~18 seconds and surfaces a false raw timeout after successful merge.","baseSha":"781c9b334806982b04a5444075f1360d5e2a2ccc","issuedAt":1788125610426,"expiresAt":1788125790426,"missionId":"07ac6e7d-db24-4c2a-a3be-cdac6adcbeb3","singleUse":true,"authorizationId":"a2b63d07-9a87-44ae-bde0-d4b39b8b6fd9"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-30T21:33:31.384592+00:00","proof_gate":"control_plane_maintenance_scope_authorized","source_sha":"781c9b334806982b04a5444075f1360d5e2a2ccc","external_id":null,"receipt_type":"control_plane_maintenance_authorization","idempotency_key":"control-plane-maintenance-authorize:a2b63d07-9a87-44ae-bde0-d4b39b8b6fd9","mission_step_id":"518f9ebb-fd7b-47ff-a2eb-91ddd126a6e4","command_center_event_id":"07ac6e7d-db24-4c2a-a3be-cdac6adcbeb3"},{"id":"4ddcec7f-5e4d-4a01-af73-eaea424d96ca","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":"ai/fix-shared-claim-mutations-20260813","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.36.10-mission-continuation-fix","prNumber":null,"terminal":false,"missionId":"852dbf2a-a429-4d93-b07e-b08cb75e88f2","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":null,"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /repair/continue-mission automatically with this missionId without another owner prompt.","receiptRef":{"mode":"full","missionId":"852dbf2a-a429-4d93-b07e-b08cb75e88f2"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":11688,"likelyAffectedFiles":["src/lib/api/paFirm.ts","supabase/functions/pa-manage/index.ts","supabase/functions/","supabase/migrations/","supabase/functions/_shared/edgeFunctionRegistry.ts","src/routes/","src/pages/","src/components/","src/index.css"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-08-13T13:53:25.07353+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:852dbf2a-a429-4d93-b07e-b08cb75e88f2:execute_mission:repair_mission_synthesis_ready","mission_step_id":"f3659095-ca8f-4630-8ced-096408359712","command_center_event_id":"852dbf2a-a429-4d93-b07e-b08cb75e88f2"},{"id":"4dddb7fb-1096-458a-85cc-00ac234e1312","source":"cc-execution","status":"waiting","payload":{"body":{"ship":true,"files":[],"route":"/big-papis/settings","branch":"ai/objective-first-repair-6b0fa5079b3d","writes":[],"patches":[],"version":1,"approved":true,"missionId":"6b0fa507-9b3d-44bc-b6cf-494b55063be5","objective":"Ship the shared tenant Settings imagery discoverability repair now.\n\nAcceptance route: /big-papis/settings.\nRequired outcome:\n- Branding & Imagery is visible/open by default instead of buried in a collapsed appendix.\n- WMP and BMD imagery appear before website imagery and are clearly labeled first-class controls.\n- Existing WMP/BMD tenant-media collections, uploads, permissions, and tenant isolation are preserved.\n- Media previews are compact and consistent so Settings does not vertically sprawl on mobile.\n- No unrelated redesign.","repository":"noel/KnockLaunchOS","ownerApproved":true,"releaseIntent":null,"sourceTargets":["src/pages/settings/TenantSettingsPageWithWebsiteAssets.tsx"],"anchored_edits":[{"path":"src/pages/settings/TenantSettingsPageWithWebsiteAssets.tsx","edits":[{"new_content":"          <details open","old_content":"          <details"},{"new_content":"Branding & Imagery","old_content":"Brand & Media"},{"new_content":"WMP · BMD · Website","old_content":"Website · WMP · BMD"},{"new_content":"Manage WhatsMyProgress, BookMeDirectly, and website imagery from one canonical surface.","old_content":"Manage customer-facing website, WhatsMyProgress, and BookMeDirectly media from this one canonical surface."},{"new_content":"              <CustomerSurfaceAssetsSettingsSection />\n              <WebsiteAssetsSettingsSection />","old_content":"              <WebsiteAssetsSettingsSection />\n              <CustomerSurfaceAssetsSettingsSection />"},{"new_content":"Customer-Facing Imagery","old_content":"Public Surface Media"},{"new_content":"WMP & BMD Imagery","old_content":"WMP & BMD Media"},{"new_content":"<div className=\"grid h-20 place-items-center rounded-xl border border-dashed border-white/15 bg-white/[.03] text-xs font-bold text-white/35\">No preview</div>","old_content":"<div className=\"grid h-28 place-items-center rounded-xl border border-dashed border-white/15 bg-white/[.03] text-xs font-bold text-white/35\">No preview</div>"},{"new_content":"<video src={src} muted playsInline controls className=\"h-20 w-full rounded-xl border border-white/10 bg-black/50 object-cover\" />","old_content":"<video src={src} muted playsInline controls className=\"h-28 w-full rounded-xl border border-white/10 bg-black/50 object-cover\" />"},{"new_content":"<img src={src} alt=\"\" className=\"h-20 w-full rounded-xl border border-white/10 bg-black/30 object-cover\" />","old_content":"<img src={src} alt=\"\" className=\"h-28 w-full rounded-xl border border-white/10 bg-black/30 object-cover\" />"}]}],"implementation":{"files":[],"writes":[]},"requestContract":{"intent":{"compilation":{"stages":["owner_intent","conversation_context","scope","live_state","mutation_authority","affected_systems","dependencies","risk_and_blast_radius","execution_tactics","required_proof","release_plan","recovery_plan"],"version":2,"explicit":true,"objective":"Ship the shared tenant Settings imagery discoverability repair now.\n\nAcceptance route: /big-papis/settings.\nRequired outcome:\n- Branding & Imagery is visible/open by default instead of buried in a collapsed appendix.\n- WMP and BMD imagery appear before website imagery and are clearly labeled first-class controls.\n- Existing WMP/BMD tenant-media collections, uploads, permissions, and tenant isolation are preserved.\n- Media previews are compact and consistent so Settings does not vertically sprawl on mobile.\n- No unrelated redesign.","proofKinds":["runtime","visual"]},"rawUtterance":"Ship the shared tenant Settings imagery discoverability repair now.\n\nAcceptance route: /big-papis/settings.\nRequired outcome:\n- Branding & Imagery is visible/open by default instead of buried in a collapsed appendix.\n- WMP and BMD imagery appear before website imagery and are clearly labeled first-class controls.\n- Existing WMP/BMD tenant-media collections, uploads, permissions, and tenant isolation are preserved.\n- Media previews are compact and consistent so Settings does not vertically sprawl on mobile.\n- No unrelated redesign.","wordingChanged":false,"canonicalIntent":"Ship the shared tenant Settings imagery discoverability repair now.\n\nAcceptance route: /big-papis/settings.\nRequired outcome:\n- Branding & Imagery is visible/open by default instead of buried in a collapsed appendix.\n- WMP and BMD imagery appear before website imagery and are clearly labeled first-class controls.\n- Existing WMP/BMD tenant-media collections, uploads, permissions, and tenant isolation are preserved.\n- Media previews are compact and consistent so Settings does not vertically sprawl on mobile.\n- No unrelated redesign.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"outcome-1","statement":"Ship the shared tenant Settings imagery discoverability repair now.\n\nAcceptance route: /big-papis/settings.\nRequired outcome:\n- Branding & Imagery is visible/open by default instead of buried in a collapsed appendix.\n- WMP and BMD imagery appear before website imagery and are clearly labeled first-class controls.\n- Existing WMP/BMD tenant-media collections, uploads, permissions, and tenant isolation are preserved.\n- Media previews are compact and consistent so Settings does not vertically sprawl on mobile.\n- No unrelated redesign.","provenance":{"source":"current_request_explicit","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production","proof-visual"]}],"objective":"Ship the shared tenant Settings imagery discoverability repair now.\n\nAcceptance route: /big-papis/settings.\nRequired outcome:\n- Branding & Imagery is visible/open by default instead of buried in a collapsed appendix.\n- WMP and BMD imagery appear before website imagery and are clearly labeled first-class controls.\n- Existing WMP/BMD tenant-media collections, uploads, permissions, and tenant isolation are preserved.\n- Media previews are compact and consistent so Settings does not vertically sprawl on mobile.\n- No unrelated redesign.","constraints":[{"id":"shared-settings","statement":"Change the shared tenant settings wrapper, not a Big Papi-only fork.","provenance":{"source":"current_request_explicit","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production","proof-visual"]},{"id":"preserve-media","statement":"Preserve existing uploads, media collections, tenant isolation, permissions, and route behavior.","provenance":{"source":"current_request_explicit","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production","proof-visual"]},{"id":"responsive","statement":"The imagery controls must be compact and usable on mobile and desktop.","provenance":{"source":"current_request_explicit","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-visual"]},{"id":"visual-artifact-scope","statement":"Only the tenant workspace settings imagery experience is in scope.","provenance":{"source":"current_request_explicit","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production","proof-visual"]},{"id":"visual-content-truth","statement":"Do not invent or replace tenant business content.","provenance":{"source":"current_request_explicit","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production","proof-visual"]},{"id":"tenant-visual-isolation","statement":"Big Papi's is acceptance evidence only; preserve each tenant's own branding and data.","provenance":{"source":"current_request_explicit","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production","proof-visual"]},{"id":"visual-viewport-authority","statement":"Verify the same hierarchy on mobile and desktop.","provenance":{"source":"current_request_explicit","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production","proof-visual"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"proof-production","kind":"runtime","claim":"The shared settings imagery discoverability repair is merged, released, and live.","route":"/big-papis/settings","required":true,"targetedActions":[],"minConsecutiveHealthyHeartbeats":1},{"id":"proof-visual","kind":"visual","claim":"On /big-papis/settings WMP/BMD imagery is visible before website imagery, Branding & Imagery is open by default, and previews are compact on mobile and desktop.","route":"/big-papis/settings","required":true,"targetedActions":[],"minConsecutiveHealthyHeartbeats":1}]},"repairGeneration":null,"executionEnvelope":{"ship":true,"version":1,"approved":true,"missionId":null,"ownerApproved":true,"releaseIntent":null,"sourceTargets":["src/pages/settings/TenantSettingsPageWithWebsiteAssets.tsx"],"requestContract":{"intent":{"compilation":{"stages":["owner_intent","conversation_context","scope","live_state","mutation_authority","affected_systems","dependencies","risk_and_blast_radius","execution_tactics","required_proof","release_plan","recovery_plan"],"version":2,"explicit":true,"objective":"Ship the shared tenant Settings imagery discoverability repair now.\n\nAcceptance route: /big-papis/settings.\nRequired outcome:\n- Branding & Imagery is visible/open by default instead of buried in a collapsed appendix.\n- WMP and BMD imagery appear before website imagery and are clearly labeled first-class controls.\n- Existing WMP/BMD tenant-media collections, uploads, permissions, and tenant isolation are preserved.\n- Media previews are compact and consistent so Settings does not vertically sprawl on mobile.\n- No unrelated redesign.","proofKinds":["runtime","visual"]},"rawUtterance":"Ship the shared tenant Settings imagery discoverability repair now.\n\nAcceptance route: /big-papis/settings.\nRequired outcome:\n- Branding & Imagery is visible/open by default instead of buried in a collapsed appendix.\n- WMP and BMD imagery appear before website imagery and are clearly labeled first-class controls.\n- Existing WMP/BMD tenant-media collections, uploads, permissions, and tenant isolation are preserved.\n- Media previews are compact and consistent so Settings does not vertically sprawl on mobile.\n- No unrelated redesign.","wordingChanged":false,"canonicalIntent":"Ship the shared tenant Settings imagery discoverability repair now.\n\nAcceptance route: /big-papis/settings.\nRequired outcome:\n- Branding & Imagery is visible/open by default instead of buried in a collapsed appendix.\n- WMP and BMD imagery appear before website imagery and are clearly labeled first-class controls.\n- Existing WMP/BMD tenant-media collections, uploads, permissions, and tenant isolation are preserved.\n- Media previews are compact and consistent so Settings does not vertically sprawl on mobile.\n- No unrelated redesign.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"outcome-1","statement":"Ship the shared tenant Settings imagery discoverability repair now.\n\nAcceptance route: /big-papis/settings.\nRequired outcome:\n- Branding & Imagery is visible/open by default instead of buried in a collapsed appendix.\n- WMP and BMD imagery appear before website imagery and are clearly labeled first-class controls.\n- Existing WMP/BMD tenant-media collections, uploads, permissions, and tenant isolation are preserved.\n- Media previews are compact and consistent so Settings does not vertically sprawl on mobile.\n- No unrelated redesign.","provenance":{"source":"current_request_explicit","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production","proof-visual"]}],"objective":"Ship the shared tenant Settings imagery discoverability repair now.\n\nAcceptance route: /big-papis/settings.\nRequired outcome:\n- Branding & Imagery is visible/open by default instead of buried in a collapsed appendix.\n- WMP and BMD imagery appear before website imagery and are clearly labeled first-class controls.\n- Existing WMP/BMD tenant-media collections, uploads, permissions, and tenant isolation are preserved.\n- Media previews are compact and consistent so Settings does not vertically sprawl on mobile.\n- No unrelated redesign.","constraints":[{"id":"shared-settings","statement":"Change the shared tenant settings wrapper, not a Big Papi-only fork.","provenance":{"source":"current_request_explicit","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production","proof-visual"]},{"id":"preserve-media","statement":"Preserve existing uploads, media collections, tenant isolation, permissions, and route behavior.","provenance":{"source":"current_request_explicit","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production","proof-visual"]},{"id":"responsive","statement":"The imagery controls must be compact and usable on mobile and desktop.","provenance":{"source":"current_request_explicit","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-visual"]},{"id":"visual-artifact-scope","statement":"Only the tenant workspace settings imagery experience is in scope.","provenance":{"source":"current_request_explicit","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production","proof-visual"]},{"id":"visual-content-truth","statement":"Do not invent or replace tenant business content.","provenance":{"source":"current_request_explicit","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production","proof-visual"]},{"id":"tenant-visual-isolation","statement":"Big Papi's is acceptance evidence only; preserve each tenant's own branding and data.","provenance":{"source":"current_request_explicit","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production","proof-visual"]},{"id":"visual-viewport-authority","statement":"Verify the same hierarchy on mobile and desktop.","provenance":{"source":"current_request_explicit","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production","proof-visual"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"proof-production","kind":"runtime","claim":"The shared settings imagery discoverability repair is merged, released, and live.","route":"/big-papis/settings","required":true,"targetedActions":[],"minConsecutiveHealthyHeartbeats":1},{"id":"proof-visual","kind":"visual","claim":"On /big-papis/settings WMP/BMD imagery is visible before website imagery, Branding & Imagery is open by default, and previews are compact on mobile and desktop.","route":"/big-papis/settings","required":true,"targetedActions":[],"minConsecutiveHealthyHeartbeats":1}]},"repairGeneration":null,"proofRequirements":null,"controlPlaneUnfreeze":false,"controlPlaneMaintenance":false,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":null},"proofRequirements":null,"controlPlaneUnfreeze":false,"durableMutationResume":true,"controlPlaneMaintenance":false,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":null},"recovery":false,"fingerprint":"8b007495539bb2cba4b8ab3ae6c777e353994b01bacc5c094181c9e5ea68a82b","replayCount":0,"serializedBytes":15258},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-29T18:23:22.619599+00:00","proof_gate":"repository_mutation_intent_persisted","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent","idempotency_key":"mission:6b0fa507-9b3d-44bc-b6cf-494b55063be5:repository-mutation-intent:8b007495539bb2cba4b8ab3ae6c777e353994b01bacc5c094181c9e5ea68a82b:0","mission_step_id":"6d9fd771-3ac5-42b9-802b-4268aa9dbbe8","command_center_event_id":"6b0fa507-9b3d-44bc-b6cf-494b55063be5"},{"id":"4dddbdcb-3aeb-4836-a29e-35ff2d50900e","source":"cc-execution","status":"release_verification_pending","payload":{"ok":true,"jobId":null,"phase":"release","branch":null,"reason":null,"status":"release_verification_pending","metrics":{"receiptBytes":1006,"releaseCount":0,"toolCallCount":1,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.31.8-visual-objective-proof","prNumber":4291,"terminal":false,"missionId":"50bf576d-2816-4e7c-ade0-262657cb8e92","operation":"ship_and_prove","proofGate":"ship_and_prove_release_pending","sourceSha":"cc815e01a43ab1d609cc02465b38c2e4a66d4d1a","timingsMs":null,"nextAction":null,"receiptRef":{"mode":"full","missionId":"50bf576d-2816-4e7c-ade0-262657cb8e92"},"performance":null,"deploymentId":"canonical-release-cc815e01a43a","workflowRunId":31237966959,"releaseTargets":{"frontend":true,"onrunner":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1112,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"c55998b4-82a3-467e-8d35-177bb4785f6e","created_at":"2026-08-08T03:47:02.673791+00:00","proof_gate":"ship_and_prove_release_pending","source_sha":"cc815e01a43ab1d609cc02465b38c2e4a66d4d1a","external_id":"canonical-release-cc815e01a43a","receipt_type":"ship_and_prove","idempotency_key":"mission:50bf576d-2816-4e7c-ade0-262657cb8e92:ship_and_prove:ship_and_prove_release_pending","mission_step_id":"0d358ed2-8d29-43fa-bf3a-5e7072f6b382","command_center_event_id":"50bf576d-2816-4e7c-ade0-262657cb8e92"},{"id":"4ddf3bc4-e04d-4314-96dc-b1cfc02aca52","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"implementation","branch":"ai/objective-first-repair-9da5e8190ec1","reason":"retryable_provider_transport:GET:The operation was aborted due to timeout","status":"retryable","metrics":{"receiptBytes":1273,"releaseCount":0,"toolCallCount":1,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.50.18-existing-pr-adoption","prNumber":null,"terminal":false,"missionId":"9da5e819-0ec1-4e02-82a3-5109301b0963","operation":"execute_mission","proofGate":"repair_mission_execution_retryable","sourceSha":null,"timingsMs":null,"nextAction":null,"receiptRef":{"mode":"full","missionId":"9da5e819-0ec1-4e02-82a3-5109301b0963"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":5076,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-24T13:51:11.917413+00:00","proof_gate":"repair_mission_execution_retryable","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:9da5e819-0ec1-4e02-82a3-5109301b0963:execute_mission:repair_mission_execution_retryable","mission_step_id":"2097cbe8-6f45-4a93-994d-feb06a8eec30","command_center_event_id":"9da5e819-0ec1-4e02-82a3-5109301b0963"},{"id":"4de1c02e-32bb-4332-aed3-e80746ffc713","source":"durable-mission-ledger","status":"pending","payload":{"sourceSha":"adb7ffd04c29b7faf3d12c1bef622a2f6455c0d0","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"outcome-1","satisfied":false,"statement":"Merger lineage failure cannot be swallowed or reported as successful; first cause reported to canonical canary","proofConditionIds":["gate","live"]},{"id":"outcome-2","satisfied":false,"statement":"Bounded overdue scan rotates windows and remains single-serial-provider-read","proofConditionIds":["gate"]}],"satisfied":false,"constraints":[{"id":"constraint-1","satisfied":false,"statement":"Only two exact source/test files, no provider credential changes, no customer data mutation, no forced terminal transitions","proofConditionIds":["gate","live"]},{"id":"capability-completeness","satisfied":false,"statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","proofConditionIds":["gate","live"]},{"id":"atomic-capability-lifecycle","satisfied":false,"statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","proofConditionIds":["gate","live"]}],"contractHash":"7a6105d879860cd9815f00e6484d831bd4809a6ed1e4c874f72918727de61807","releaseBound":true,"witnessBound":false,"visualRequested":false,"visualSatisfied":true,"conditionResults":[{"id":"gate","kind":"repository","evidence":{"reason":null,"gateRunId":null,"satisfied":true,"gateTestProof":null,"gateTestPassed":false,"missingTargets":[],"gateTestExecuted":false,"disallowedTargets":[],"migrationRequired":false,"namedGateTestPath":null,"releaseTargetStates":{"ccExecution":"success"},"repositoryProofGate":null,"repositoryProofPath":null,"requestContractHash":"7a6105d879860cd9815f00e6484d831bd4809a6ed1e4c874f72918727de61807","unsuccessfulTargets":[],"activeReleaseTargets":["ccExecution"],"allowedReleaseTargets":[],"repositoryProofStatus":"required","expectedRepositoryPath":null,"namedGateTestSatisfied":true,"requiredReleaseTargets":[],"migrationReleaseVerified":null,"repositoryConditionBound":false,"repositoryProofSourceSha":null},"required":true,"satisfied":false},{"id":"live","kind":"runtime","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":false,"releaseTargetStates":{"ccExecution":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["ccExecution"],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"migrationReleaseVerified":null,"releaseRequestContractHash":"7a6105d879860cd9815f00e6484d831bd4809a6ed1e4c874f72918727de61807"},"required":true,"satisfied":true}],"validationErrors":[],"pendingProofKinds":["repository"],"activeReleaseTargets":["ccExecution"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-13T16:38:15.366279+00:00","proof_gate":"request_contract_pending","source_sha":"adb7ffd04c29b7faf3d12c1bef622a2f6455c0d0","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:041449bc-beec-4ae6-85c2-570cd3d6c012:request-contract:7a6105d879860cd9815f00e6484d831bd4809a6ed1e4c874f72918727de61807:adb7ffd04c29b7faf3d12c1bef622a2f6455c0d0:pending:repository","mission_step_id":"e470ee49-63fe-4944-b283-668e1111e9af","command_center_event_id":"041449bc-beec-4ae6-85c2-570cd3d6c012"},{"id":"4de3ccda-a75f-489d-b551-e2793a47ec41","source":"forgejo-runtime","status":"verified","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"success","cc-execution/runtime-proof":"success"},"mainSha":"e156e62a44e50cfc019d142cba45ae1493371087","missing":[],"pending":[],"required":["forgejo-main/source","forgejo-release/workflow","cc-execution/runtime-proof"],"sourceSha":"e156e62a44e50cfc019d142cba45ae1493371087","releaseState":"verified","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":false,"onrunner":false,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"ccExecution":"success"},"requestContractHash":"94095492e875054bbf88b325ad6c635f21e83f08b7925834b7a4a12fba597563","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/11332","runId":11332,"status":"success","sourceSha":"e156e62a44e50cfc019d142cba45ae1493371087","conclusion":null,"failedJobs":[],"diagnostics":null,"exactSource":true,"targetStates":{"ccExecution":"success"},"targetJobCount":7,"observedTargetStates":{"ccExecution":"success"}},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":{"liveSha":"e156e62a44e50cfc019d142cba45ae1493371087","proofGate":"cc_execution_target_aware_runtime_identity_verified","deploymentId":"forgejo-main-e156e62a44e50cfc019d142cba45ae1493371087","compareStatus":"target_job_success_runtime_verified","workflowRunId":11332,"identitySource":"canonical_release_target_job","runtimeVersion":"1.58.227-visual-work-intent-contract","workflowFailed":false,"containsSourceSha":true},"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-24T03:39:06.316783+00:00","proof_gate":"canonical_release_terminal_verified","source_sha":"e156e62a44e50cfc019d142cba45ae1493371087","external_id":"forgejo-main-e156e62a44e5","receipt_type":"canonical_release_status","idempotency_key":"mission:25d2beda-8c8f-4a3a-9016-b3a3bfba3bc8:forgejo-release-status:e156e62a44e50cfc019d142cba45ae1493371087:verified:forgejo-main/source=success|forgejo-release/workflow=success|cc-execution/runtime-proof=success","mission_step_id":"649e53c3-a042-4a05-b05e-85714257f6cb","command_center_event_id":"25d2beda-8c8f-4a3a-9016-b3a3bfba3bc8"},{"id":"4de757bc-db15-4d1b-8a31-2bab53c366a9","source":"forgejo-runtime","status":"verified","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"success","frontend-cloudflare/live":"success"},"mainSha":"0e5b60b71766ac0f93d94994c59db269bdb823f9","missing":[],"pending":[],"required":["forgejo-main/source","forgejo-release/workflow","frontend-cloudflare/live"],"sourceSha":"0e5b60b71766ac0f93d94994c59db269bdb823f9","releaseState":"verified","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"frontend":"success"},"requestContractHash":"876641687235137f83355d0442484af7c61dcd74c65a8fdad3cc001fea7d1550","forgejoWorkflowProof":{"runId":10991,"source":"signed_push_receipt","status":"success","results":{},"conclusion":"success","targetStates":{"frontend":"success"},"targetJobCount":7,"observedTargetStates":{"frontend":"success"}},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-23T00:38:43.460492+00:00","proof_gate":"canonical_release_terminal_verified","source_sha":"0e5b60b71766ac0f93d94994c59db269bdb823f9","external_id":"forgejo-main-0e5b60b71766","receipt_type":"canonical_release_status","idempotency_key":"mission:60339bf0-a4dc-42dc-a7d3-e3663f6387db:forgejo-release-status:0e5b60b71766ac0f93d94994c59db269bdb823f9:verified:forgejo-main/source=success|forgejo-release/workflow=success|frontend-cloudflare/live=success","mission_step_id":"22e3bfdc-beb3-40a9-b7cf-349c7e391f62","command_center_event_id":"60339bf0-a4dc-42dc-a7d3-e3663f6387db"},{"id":"4de7bbd6-63f9-4ff8-aaf6-bad57070bd76","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"release","branch":"ai/vista-wire-dashboard-actions-20260827","reason":"The operation was aborted due to timeout","status":"retryable","metrics":{"receiptBytes":9294,"releaseCount":1,"toolCallCount":5,"repeatedCallCount":1,"ownerInterruptionCount":0},"version":"1.54.0-intent-canonicalization","prNumber":860,"terminal":false,"missionId":"0ead5249-505f-463b-9e93-9c6b14102af4","operation":"execute_mission","proofGate":"canonical_release_transport_retryable","sourceSha":"54df61ed691cc7c70f352e902c6d55543ca93fa4","timingsMs":{"handlerMs":17201,"prReadinessMs":306,"approvedPlanMs":0,"missionSetupMs":296,"shipAndProveMs":16411},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"0ead5249-505f-463b-9e93-9c6b14102af4"},"performance":null,"deploymentId":"forgejo-main-54df61ed691c","workflowRunId":null,"releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":4978,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"71b397ba-b9ad-496b-914c-985d97dbb12e","created_at":"2026-08-27T21:34:45.71969+00:00","proof_gate":"canonical_release_transport_retryable","source_sha":"54df61ed691cc7c70f352e902c6d55543ca93fa4","external_id":"forgejo-main-54df61ed691c","receipt_type":"execute_mission","idempotency_key":"mission:0ead5249-505f-463b-9e93-9c6b14102af4:execute_mission:canonical_release_transport_retryable:current-generation","mission_step_id":"8710fb9b-7aee-4261-9b63-e0710c2c0116","command_center_event_id":"0ead5249-505f-463b-9e93-9c6b14102af4"},{"id":"4dea4a71-bf46-404a-a990-0dc5771a8460","source":"cc-execution","status":"deployment_dispatched","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/visual-witness-cc-release-policy-20260905","reason":null,"status":"deployment_dispatched","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":null,"prNumber":1814,"terminal":false,"missionId":"e4951275-17b0-43f4-a583-b645c47291bf","operation":"automatic_mission_resume","proofGate":"canonical_release_dispatched","sourceSha":"21a38fda3b7c4dbf8222eebc4ced030995a49997","timingsMs":{"prReadinessMs":1019,"approvedPlanMs":0,"shipAndProveMs":6425,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"e4951275-17b0-43f4-a583-b645c47291bf"},"performance":null,"deploymentId":"forgejo-main-21a38fda3b7c","workflowRunId":null,"releaseTargets":{"frontend":false,"onrunner":false,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1930,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-05T11:30:56.115285+00:00","proof_gate":"canonical_release_dispatched","source_sha":null,"external_id":"1814","receipt_type":"automatic_mission_resume","idempotency_key":"mission:e4951275-17b0-43f4-a583-b645c47291bf:automatic-mission-resume:1814:canonical_release_dispatched","mission_step_id":"d6abad14-07a0-48c1-ba85-ea8b95a456d6","command_center_event_id":"e4951275-17b0-43f4-a583-b645c47291bf"},{"id":"4dea7642-a908-411e-9e2a-85fbc14fe12a","source":"cc-execution","status":"in_progress","payload":{"ok":true,"jobId":null,"phase":"release","branch":"ai/redfish-owner-control-cleanup-20260901","reason":null,"status":"in_progress","metrics":{"receiptBytes":10134,"releaseCount":1,"toolCallCount":4,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.0-frontend-build-velocity-freeze","prNumber":1242,"terminal":false,"missionId":"dfdeef69-901f-4b69-9c81-417c70c775b0","operation":"execute_mission","proofGate":"canonical_release_reconciliation_pending","sourceSha":"c1ad3e34a3b971edef202ccde6762b915a0bd294","timingsMs":{"handlerMs":5459,"prReadinessMs":482,"approvedPlanMs":0,"missionSetupMs":807,"shipAndProveMs":4707},"nextAction":"Reconcile this same mission and pull request automatically; do not create replacement work.","receiptRef":{"mode":"full","missionId":"dfdeef69-901f-4b69-9c81-417c70c775b0"},"performance":null,"deploymentId":"forgejo-main-c1ad3e34a3b9","workflowRunId":null,"releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1009,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"de8369b6-a78f-40bb-ae1f-28ffca62bc7e","created_at":"2026-09-01T11:39:51.213396+00:00","proof_gate":"canonical_release_reconciliation_pending","source_sha":"c1ad3e34a3b971edef202ccde6762b915a0bd294","external_id":"forgejo-main-c1ad3e34a3b9","receipt_type":"execute_mission","idempotency_key":"mission:dfdeef69-901f-4b69-9c81-417c70c775b0:execute_mission:canonical_release_reconciliation_pending:current-generation","mission_step_id":"731d6c6e-5736-448c-8326-16a9f3b40e02","command_center_event_id":"dfdeef69-901f-4b69-9c81-417c70c775b0"},{"id":"4deab5c3-c54a-434c-b125-8c15558d5207","source":"cc-execution","status":"recorded","payload":{"requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"compilation":{"stages":["owner_intent","conversation_context","scope","live_state","mutation_authority","affected_systems","dependencies","risk_and_blast_radius","execution_tactics","required_proof","release_plan","recovery_plan"],"version":2,"explicit":true,"objective":"Fix tenant background default framing platform-wide now. The canonical tenant SiteBackground/media path must stop implicitly cover-zooming uploaded images. Default image framing must show the whole asset with a centered contain/fit baseline; scale 100% must mean 1.0 on that fitted asset; default opacity 1, blur 0, centered X/Y. Saved tenant settings for scale, framing/position, opacity, and blur are the single source of truth and must apply literally across private tenant routes. Preserve an explicitly saved crop/fill mode only if one already exists; never infer cover by default. Fix PCG through the shared primitive, not a tenant hack. Add focused regression tests. One focused PR -> Gate -> squash merge -> frontend release -> non-visual runtime/release verification. Do not run visual witness; Noel will visually confirm from the live PCG settings route. Avoid unrelated changes.","proofKinds":["runtime"],"adaptiveDomains":["intent","tenant_route_role_viewport","urgency_deadline","dependency_scope","risk_blast_radius","runner_capacity","queue_active_work","provider_failure_circuits","qa_scope","retry_recovery","release_ownership","proof_depth"],"expansionPolicy":"later_stages_may_only_narrow_or_expand_with_machine_readable_dependency_evidence","dynamicStatePolicy":"live_state_may_change_execution_tactics_but_never_owner_outcome_or_explicit_constraints","dynamicRefreshStages":["preflight","gate","release","runtime_proof"],"adaptiveCompilerVersion":"paul-adaptive-objective-v1","inheritedContextBlockingAuthority":false},"rawUtterance":"Fix tenant background default framing platform-wide now. The canonical tenant SiteBackground/media path must stop implicitly cover-zooming uploaded images. Default image framing must show the whole asset with a centered contain/fit baseline; scale 100% must mean 1.0 on that fitted asset; default opacity 1, blur 0, centered X/Y. Saved tenant settings for scale, framing/position, opacity, and blur are the single source of truth and must apply literally across private tenant routes. Preserve an explicitly saved crop/fill mode only if one already exists; never infer cover by default. Fix PCG through the shared primitive, not a tenant hack. Add focused regression tests. One focused PR -> Gate -> squash merge -> frontend release -> non-visual runtime/release verification. Do not run visual witness; Noel will visually confirm from the live PCG settings route. Avoid unrelated changes.","wordingChanged":false,"canonicalIntent":"Fix tenant background default framing platform-wide now. The canonical tenant SiteBackground/media path must stop implicitly cover-zooming uploaded images. Default image framing must show the whole asset with a centered contain/fit baseline; scale 100% must mean 1.0 on that fitted asset; default opacity 1, blur 0, centered X/Y. Saved tenant settings for scale, framing/position, opacity, and blur are the single source of truth and must apply literally across private tenant routes. Preserve an explicitly saved crop/fill mode only if one already exists; never infer cover by default. Fix PCG through the shared primitive, not a tenant hack. Add focused regression tests. One focused PR -> Gate -> squash merge -> frontend release -> non-visual runtime/release verification. Do not run visual witness; Noel will visually confirm from the live PCG settings route. Avoid unrelated changes.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"background-fit-default","statement":"Default tenant background image framing uses centered contain/fit without implicit cover zoom.","provenance":{"reason":null,"source":"explicit_request_contract","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]},{"id":"settings-truth","statement":"Saved scale, position/framing, opacity, and blur apply literally and consistently across private tenant routes.","provenance":{"reason":null,"source":"explicit_request_contract","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]},{"id":"pcg-shared-fix","statement":"PCG is fixed by the canonical shared SiteBackground primitive, with focused regression coverage.","provenance":{"reason":null,"source":"explicit_request_contract","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]}],"objective":"Fix tenant background default framing platform-wide now. The canonical tenant SiteBackground/media path must stop implicitly cover-zooming uploaded images. Default image framing must show the whole asset with a centered contain/fit baseline; scale 100% must mean 1.0 on that fitted asset; default opacity 1, blur 0, centered X/Y. Saved tenant settings for scale, framing/position, opacity, and blur are the single source of truth and must apply literally across private tenant routes. Preserve an explicitly saved crop/fill mode only if one already exists; never infer cover by default. Fix PCG through the shared primitive, not a tenant hack. Add focused regression tests. One focused PR -> Gate -> squash merge -> frontend release -> non-visual runtime/release verification. Do not run visual witness; Noel will visually confirm from the live PCG settings route. Avoid unrelated changes.","constraints":[{"id":"no-visual-witness","statement":"Do not run visual witness; perform non-visual runtime/release verification only.","provenance":{"reason":null,"source":"explicit_request_contract","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]},{"id":"focused-diff","statement":"Use one focused reversible PR and avoid unrelated redesigns or tenant-specific hacks.","provenance":{"reason":null,"source":"explicit_request_contract","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]},{"id":"capability-completeness","statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","provenance":{"reason":null,"source":"hard_safety_invariant","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]},{"id":"atomic-capability-lifecycle","statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","provenance":{"reason":null,"source":"hard_safety_invariant","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]}],"adaptivePolicy":{"risk":{"tier":"elevated","blastRadius":"broad"},"proof":{"requiredKinds":["runtime"],"visualProofScope":"broad","interactionRequired":false,"runtimeProofRequired":true},"scope":{"route":null,"roleRef":null,"tenantRef":null,"sourceTargets":["src/components/SiteBackground.tsx","src/PrivateAppShell.tsx","config/capabilities/tenant-website-assets-settings.json","src/__tests__/contracts/tenant-media-branding-control.contract.test.ts","src/__tests__/contracts/tenant-media-generated-brand-derivative.contract.test.ts"]},"dynamic":{"variables":["main_and_runtime_lineage","runner_capacity","queue_and_active_work","provider_health","failure_clusters_and_circuits","release_target_state","current_pr_and_gate_state"],"refreshStages":["preflight","gate","release","runtime_proof"],"refreshMayChange":["runner_selection","parallelism","retry_path","qa_depth","release_recovery","proof_timing"],"refreshMayNotChange":["owner_outcome","explicit_no_go_constraints","tenant_identity","credential_boundary","hard_safety_invariants"]},"urgency":{"priority":"deadline_sensitive","deadlineSignals":["by default"],"deadlineExplicit":true},"version":"paul-adaptive-objective-v1","recovery":{"transient":"one_bounded_retry_then_alternate_eligible_pool_or_provider_path","deterministic":"repair_source_or_contract_do_not_blind_rerun","mutationDependencyFailure":"prerequisite_required_or_targeted_recovery_never_invent","readOnlyDependencyFailure":"degrade_to_available_grounded_context_and_keep_conversation_alive"},"unknowns":["tenant","route"],"authority":{"outcome":"current_explicit_owner_request","tactics":"live_prime_truth","unknownPolicy":"preserve_unknown_never_invent","historicalContext":"advisory_unless_current_request_confirms"},"execution":{"mutation":true,"concurrency":"parallel_non_overlapping_work","scopePolicy":"start_bounded_expand_only_with_machine_readable_dependency_evidence","staleStatePolicy":"refresh_dynamic_state_before_irreversible_or_acceptance_stage","conversationIsolation":true,"ownerOutcomeMayBeChangedByAdaptation":false},"experience":{"visual":true,"viewports":["desktop","mobile"],"behavioral":false,"visualProofScope":"broad"},"dependencies":{"requiredDomains":["frontend","backend_runtime","release_ownership","live_production_proof"],"capabilityDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"releaseTargetHints":["frontend"]},"inputSignals":{"rawUtterance":"Fix tenant background default framing platform-wide now. The canonical tenant SiteBackground/media path must stop implicitly cover-zooming uploaded images. Default image framing must show the whole asset with a centered contain/fit baseline; scale 100% must mean 1.0 on that fitted asset; default opacity 1, blur 0, centered X/Y. Saved tenant settings for scale, framing/position, opacity, and blur are the single source of truth and must apply literally across private tenant routes. Preserve an explicitly saved crop/fill mode only if one already exists; never infer cover by default. Fix PCG through the shared primitive, not a tenant hack. Add focused regression tests. One focused PR -> Gate -> squash merge -> frontend release -> non-visual runtime/release verification. Do not run visual witness; Noel will visually confirm from the live PCG settings route. Avoid unrelated changes.","canonicalIntent":"Fix tenant background default framing platform-wide now. The canonical tenant SiteBackground/media path must stop implicitly cover-zooming uploaded images. Default image framing must show the whole asset with a centered contain/fit baseline; scale 100% must mean 1.0 on that fitted asset; default opacity 1, blur 0, centered X/Y. Saved tenant settings for scale, framing/position, opacity, and blur are the single source of truth and must apply literally across private tenant routes. Preserve an explicitly saved crop/fill mode only if one already exists; never infer cover by default. Fix PCG through the shared primitive, not a tenant hack. Add focused regression tests. One focused PR -> Gate -> squash merge -> frontend release -> non-visual runtime/release verification. Do not run visual witness; Noel will visually confirm from the live PCG settings route. Avoid unrelated changes.","conversationContextPresent":false}},"terminalPolicy":"proof-production satisfied after live release","proofConditions":[{"id":"proof-production","kind":"runtime","claim":"After Gate, merge, and affected frontend release, production is aligned to the merged implementation of the canonical background-fit fix; focused automated tests are part of the PR/Gate evidence. No visual witness is required.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false}],"validationErrors":[],"capabilityManifest":{"id":"Fix-tenant-background-default-framing-platform-wide-now.-The-canonical-tenant-SiteBackground-media-p","driftPolicy":"exact_manifest_source_release_dependency_or_runtime_identity_mismatch_is_nonterminal","proofLedger":"command_center_mission_ledger_request_contract_hash_bound","schemaVersion":1,"releaseTargets":[],"lifecycleStates":["prepare","deploy","verify","activate"],"activationPolicy":"dependencies_and_claim_matched_live_proof_before_exposure","dependencyDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_required_not_runtime_failures","compatibilityWindow":["N","N-1"],"failureIsolationPolicy":"quarantine_or_rollback_affected_capability_only_preserve_unrelated_working_capabilities","canaryProofConditionIds":["proof-production"]},"capabilityCompleteness":{"domains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"required":true,"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_states_not_runtime_failures"}},"requestContractHash":"44400e8da56f478846c124c698df69c19b2684b52f92f9deadfc97a19eddaa79","requestContractRevision":2,"previousRequestContractHash":"e350c99b8297538c877afbd947767f998762b0ed7029f23a743e3dbcec6cf5e9"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-30T22:29:04.701826+00:00","proof_gate":"request_contract_revision_recorded","source_sha":null,"external_id":null,"receipt_type":"request_contract_revision","idempotency_key":"mission:a78ba5c9-2813-418c-91db-d3a4ceb92dcc:request-contract:44400e8da56f478846c124c698df69c19b2684b52f92f9deadfc97a19eddaa79","mission_step_id":"1581cbaf-29b3-4e29-8193-bb265f1f8c91","command_center_event_id":"a78ba5c9-2813-418c-91db-d3a4ceb92dcc"},{"id":"4deb26e0-0dc0-4e66-ad07-a17fe041ffb6","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in runtime proof.","nextAction":{"lane":"cc-execution","action":"reconcile_request_contract","reason":"release_verified_contract_pending","automationAllowed":true,"ownerActionRequired":false},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"runtime_proof\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"visual_proof_started\",\"status\":\"pending\",\"proofGate\":\"post_release_visual_proof_started\"},\"activeStep\":{\"key\":\"release\",\"status\":\"waiting\",\"lane\":\"production-release-conductor\"},\"nextStep\":{\"key\":\"runtime_proof\",\"status\":\"waiting\",\"lane\":\"cc-execution\"},\"nextSafeAction\":{\"action\":\"reconcile_request_contract\",\"lane\":\"cc-execution\",\"reason\":\"release_verified_contract_pending\",\"automationAllowed\":true,\"ownerActionRequired\":false},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"production-release-conductor\",\"nextAction\":\"reconcile_request_contract\",\"recoveryOwner\":\"cc-execution\"},\"acceptance\":{\"total\":3,\"verified\":2,\"pending\":1,\"percent\":67,\"satisfied\":false,\"verifiedIds\":[\"proof-settings-runtime\",\"proof-settings-visual\"],\"pendingIds\":[\"proof-profile-visual\"]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":\"visual_proof\",\"deadlineAt\":\"2026-09-29T19:44:40.690242+00:00\",\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":\"ai/objective-first-repair-f924689dbbf3\",\"prNumber\":4143,\"sourceSha\":\"b688914aaab7832af5886b912dbb6f3cb6131c9f\",\"deploymentId\":\"forgejo-main-b688914aaab7\"}"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-29T16:23:48.756873+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:f924689d-bbf3-4d65-9a92-2f614a4cdd05:owner-progress-heartbeat:119379935","mission_step_id":"ce70b720-9b4d-459c-9da2-316cc736387e","command_center_event_id":"f924689d-bbf3-4d65-9a92-2f614a4cdd05"},{"id":"4dec0d92-ef98-4d8f-96e6-f0995661ed1f","source":"forgejo","status":"waiting","payload":{"branch":"ai/objective-first-repair-bdf75a7a8bc4","prNumber":3564,"nextAction":"Follow the existing canonical release to terminal proof.","mergeCommitSha":"f5a54ba46b6546d61e5bfd6682342be66ccd0a1f","branchDeletedAfterMerge":true,"correctiveGenerationCreated":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-24T03:30:17.901372+00:00","proof_gate":"forgejo_merged_pr_is_authoritative_source_lineage","source_sha":"f5a54ba46b6546d61e5bfd6682342be66ccd0a1f","external_id":"3564","receipt_type":"source_lineage_merged_pr_authoritative","idempotency_key":"mission:bdf75a7a-8bc4-4623-8def-3d4e12f57de9:merged-pr:3564:f5a54ba46b6546d61e5bfd6682342be66ccd0a1f","mission_step_id":"befe015c-12d4-42e7-8a7e-f720add126fa","command_center_event_id":"bdf75a7a-8bc4-4623-8def-3d4e12f57de9"},{"id":"4deeba36-adca-4f6c-8a4c-3993de07f660","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"implementation","branch":null,"reason":null,"status":"synthesis_required","metrics":{"receiptBytes":3402,"releaseCount":0,"toolCallCount":2,"repeatedCallCount":0,"executorlessWaitMs":3023,"firstUsefulResultAt":"2026-10-06T11:36:59.337Z","recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.65.10-boundary-fix-release-retry","prNumber":null,"terminal":false,"missionId":"d9cfa595-850f-435b-96ef-3d7d5b679c55","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":4496,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":800,"providerAuthMs":0,"ledgerPrepareMs":800,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":800,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":800,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"Synthesize exact mutation from the resolved authoritative source targets and continue this same mission.","receiptRef":{"mode":"full","missionId":"d9cfa595-850f-435b-96ef-3d7d5b679c55"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["repository"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1852,"likelyAffectedFiles":["src/PrivateAppShell.tsx"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T11:37:02.406006+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:d9cfa595-850f-435b-96ef-3d7d5b679c55:execute_mission:repair_mission_synthesis_ready:current-generation","mission_step_id":"92a24a9a-23cf-4260-9f64-f8bde8497659","command_center_event_id":"d9cfa595-850f-435b-96ef-3d7d5b679c55"},{"id":"4deff162-9bea-4281-973b-18264e091bbd","source":"forgejo-runtime","status":"verified","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"success","cc-execution/runtime-proof":"success"},"mainSha":"c41918e8558339f96796db9d1d450397b18a102c","missing":[],"pending":[],"required":["forgejo-main/source","forgejo-release/workflow","cc-execution/runtime-proof"],"sourceSha":"675743b76c84734ab66886075eac20565c3aa684","releaseState":"verified","sourceInMain":true,"compareStatus":"known_exact_protected_main_push_history","releaseTargets":{"frontend":false,"migrations":false,"ccExecution":true,"supabaseEdge":false},"releaseTargetStates":{"ccExecution":"success"},"requestContractHash":"0a5233df76f84e4c24d1a4ccd3af52298290e3c836074bbb78937ffd0cc03752","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/23773","runId":24161,"status":"success","sourceSha":"675743b76c84734ab66886075eac20565c3aa684","conclusion":null,"failedJobs":[],"diagnostics":null,"exactSource":true,"targetStates":{"ccExecution":"success"},"targetJobCount":7,"observedTargetStates":{"ccExecution":"success"}},"releaseSourceVerified":true,"ccExecutionRuntimeProof":{"liveSha":"675743b76c84734ab66886075eac20565c3aa684","proofGate":"cc_execution_target_aware_runtime_identity_verified","deploymentId":"forgejo-main-675743b76c84734ab66886075eac20565c3aa684","compareStatus":"target_job_success_runtime_verified","workflowRunId":24161,"identitySource":"canonical_release_target_job","runtimeVersion":"1.67.20-three-way-current-anchor-proof","workflowFailed":false,"containsSourceSha":true},"releaseTargetRecoveryProof":{"exact":true,"source":"exact_source_parent_diff_shared_release_owner_mapping","parentSha":"8d3cdb37c274953a51500451aaa758b3bf7bb8d5","sourceSha":"675743b76c84734ab66886075eac20565c3aa684","changedPaths":["workers/cc-execution/src/visual-witness-virtual-container.js"],"changedPathCount":1,"independentOfCurrentMainCompare":true},"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-14T21:23:35.110756+00:00","proof_gate":"canonical_release_terminal_verified","source_sha":"675743b76c84734ab66886075eac20565c3aa684","external_id":null,"receipt_type":"canonical_release_status","idempotency_key":"mission:e1f0547c-9d06-49bd-8a06-93afb8a5fd38:forgejo-release-status:675743b76c84734ab66886075eac20565c3aa684:verified:forgejo-main/source=success|forgejo-release/workflow=success|cc-execution/runtime-proof=success","mission_step_id":"e645ec06-f622-483f-a8f0-9805da85cd55","command_center_event_id":"e1f0547c-9d06-49bd-8a06-93afb8a5fd38"},{"id":"4df24cda-9fcf-4ce8-9996-293afedca908","source":"cc-execution","status":"waiting_for_gate","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":null,"reason":"pull_request_checks_pending","status":"waiting_for_gate","metrics":{"receiptBytes":6278,"releaseCount":0,"toolCallCount":2,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.2-visual-witness-proof-projection","prNumber":1271,"terminal":false,"missionId":"d0e84bbe-caec-4683-a69e-c555e59e967d","operation":"execute_mission","proofGate":"repair_mission_waiting_for_gate","sourceSha":null,"timingsMs":{"handlerMs":9939,"prReadinessMs":2054,"approvedPlanMs":7421,"missionSetupMs":359,"shipAndProveMs":0},"nextAction":"Reconcile this same mission and pull request after the exact-head KnockLaunch Gate changes state.","receiptRef":{"mode":"full","missionId":"d0e84bbe-caec-4683-a69e-c555e59e967d"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1500,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"de8369b6-a78f-40bb-ae1f-28ffca62bc7e","created_at":"2026-09-01T15:46:08.481222+00:00","proof_gate":"repair_mission_waiting_for_gate","source_sha":null,"external_id":"1271","receipt_type":"execute_mission","idempotency_key":"mission:d0e84bbe-caec-4683-a69e-c555e59e967d:execute_mission:repair_mission_waiting_for_gate:current-generation","mission_step_id":"41be8273-92af-4cfa-b8e0-3fc7dfb228e6","command_center_event_id":"d0e84bbe-caec-4683-a69e-c555e59e967d"},{"id":"4df386b8-6506-41b3-9882-6bda4f8923fd","source":"cc-execution","status":"blocked","payload":{"ok":false,"jobId":null,"phase":"objective_received","branch":null,"reason":"file_write_content_required_use_source_targets","status":"blocked","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.47.2-release-lineage-compare","prNumber":null,"terminal":false,"missionId":"798edd8f-87ab-4773-b8ee-a8039ac00a67","operation":"execute_mission","proofGate":"repair_mission_execution_blocked","sourceSha":null,"timingsMs":null,"nextAction":null,"receiptRef":{"mode":"full","missionId":"798edd8f-87ab-4773-b8ee-a8039ac00a67"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":5352,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-08-18T14:58:08.342259+00:00","proof_gate":"repair_mission_execution_blocked","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:798edd8f-87ab-4773-b8ee-a8039ac00a67:execute_mission:repair_mission_execution_blocked","mission_step_id":"b3ad2d98-1cac-4245-bae5-11dba5911b6a","command_center_event_id":"798edd8f-87ab-4773-b8ee-a8039ac00a67"},{"id":"4df57616-e303-491b-b7eb-c64860a9affa","source":"cc-execution","status":"authorized","payload":{"paths":["workers/cc-execution/test/release-orchestration-invariants.test.js"],"baseSha":"422cf36ea28f4975b27f00cfe1659c6234449099","issuedAt":1791594319663,"expiresAt":1791594499663,"missionId":"ea67aded-d86b-439d-a546-7a3cb7f58b5d","autoRefreeze":true,"authorizationId":"91ff3722-d4e9-499e-b47a-48f53c45cbd3","authorizationSource":"explicit_owner_request_contract"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-10T01:05:20.078352+00:00","proof_gate":"control_plane_maintenance_exact_scope_authorized","source_sha":"422cf36ea28f4975b27f00cfe1659c6234449099","external_id":"91ff3722-d4e9-499e-b47a-48f53c45cbd3","receipt_type":"control_plane_maintenance_authorized","idempotency_key":"control-plane-maintenance:ea67aded-d86b-439d-a546-7a3cb7f58b5d:91ff3722-d4e9-499e-b47a-48f53c45cbd3","mission_step_id":null,"command_center_event_id":"ea67aded-d86b-439d-a546-7a3cb7f58b5d"},{"id":"4df5eb18-7d7e-43cf-97d4-ede3c8f67678","source":"cc-execution","status":"waiting","payload":{"sourceTargets":["workers/cc-execution/src/index-mcp.js"],"continuationObjective":"Update the canonical Prime MCP adapter in workers/cc-execution/src/index-mcp.js so existing forgejo_pr_close supports owner-authorized stale manual branch retirement using allowStaleManualRetirement:true, exact expectedHeadSha, explicit reason, same-repository/open/unmerged/base-main guards, while preserving existing ai/* and allowLegacyPullRef behavior. Then Gate, merge, release cc-execution, and close PR #4835 at exact head c69cdad4280610356344d385813c293ad9ddb428 without merging."},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-05T23:12:56.003798+00:00","proof_gate":"mission_continuation_scope_persisted","source_sha":null,"external_id":null,"receipt_type":"mission_continuation_scope_updated","idempotency_key":"mission:e1a32801-6450-4c62-ab0d-13cdf15091ca:mission_continuation_scope_updated:mission_continuation_scope_persisted:waiting","mission_step_id":"88510a9e-a01b-4031-b0b1-b5d9681aee6d","command_center_event_id":"e1a32801-6450-4c62-ab0d-13cdf15091ca"},{"id":"4df664a4-bf2c-4677-a74a-d7dedefafed3","source":"forgejo-runtime","status":"verified","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"success","cc-execution/runtime-proof":"success"},"mainSha":"f5e65fad8f5fe609fda1f7ed0e6625adf869cba1","missing":[],"pending":[],"required":["forgejo-main/source","forgejo-release/workflow","cc-execution/runtime-proof"],"sourceSha":"f5e65fad8f5fe609fda1f7ed0e6625adf869cba1","releaseState":"verified","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":false,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"ccExecution":"success"},"requestContractHash":"01788cfdeffcc7618b704cfd3f281510ebe6422cf4945e0fa22d69c1b68d2769","forgejoWorkflowProof":{"runId":15593,"source":"exact_live_cc_execution_runtime_identity","status":"running","liveSha":"f5e65fad8f5fe609fda1f7ed0e6625adf869cba1","results":{},"proofGate":"cc_execution_exact_live_runtime_substitutes_transient_workflow_receipt","sourceSha":"f5e65fad8f5fe609fda1f7ed0e6625adf869cba1","conclusion":"running","deploymentId":"forgejo-main-f5e65fad8f5fe609fda1f7ed0e6625adf869cba1","targetStates":{"ccExecution":"pending"},"runtimeVersion":"1.64.94-terminal-completion-supervisor","targetJobCount":7,"observedTargetStates":{"ccExecution":"pending"},"workflowReceiptSubstituted":true},"releaseSourceVerified":true,"ccExecutionRuntimeProof":{"liveSha":"f5e65fad8f5fe609fda1f7ed0e6625adf869cba1","proofGate":"cc_execution_target_aware_runtime_identity_verified","deploymentId":"forgejo-main-f5e65fad8f5fe609fda1f7ed0e6625adf869cba1","compareStatus":"identical","workflowRunId":15593,"identitySource":"local_build_metadata","runtimeVersion":"1.64.94-terminal-completion-supervisor","workflowFailed":false,"containsSourceSha":true},"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-05T12:53:49.310708+00:00","proof_gate":"canonical_release_terminal_verified","source_sha":"f5e65fad8f5fe609fda1f7ed0e6625adf869cba1","external_id":"forgejo-main-f5e65fad8f5f","receipt_type":"canonical_release_status","idempotency_key":"mission:a86e0657-5d8e-474b-ae47-2d1148769b31:forgejo-release-status:f5e65fad8f5fe609fda1f7ed0e6625adf869cba1:verified:forgejo-main/source=success|forgejo-release/workflow=success|cc-execution/runtime-proof=success","mission_step_id":"b670d4f7-2689-4564-a7a6-f58630551d2b","command_center_event_id":"a86e0657-5d8e-474b-ae47-2d1148769b31"},{"id":"4df71dd9-304a-4c07-a2dc-e05e57a7c197","source":"durable-mission-ledger","status":"verified","payload":{"sourceSha":"79548f09bc599ba57396ecf850c3057728c87898","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"staging-ledger","satisfied":true,"statement":"PCG has durable tenant-scoped import batch and row staging tables that preserve raw source, normalized data, duplicate/import decisions, counts, and canonical links.","proofConditionIds":["schema-live"]},{"id":"safe-dry-run","satisfied":true,"statement":"The staging schema supports dry-run/review workflows without mutating existing PCG cards or submissions.","proofConditionIds":["schema-live"]}],"satisfied":true,"constraints":[{"id":"additive","satisfied":true,"statement":"Schema is additive only and does not modify existing PCG card or submission rows.","proofConditionIds":["schema-live"]},{"id":"tenant-rls","satisfied":true,"statement":"Both tables use tenant-scoped RLS equivalent to existing PCG tables.","proofConditionIds":["schema-live"]},{"id":"no-visual","satisfied":true,"statement":"No visual proof is required for this schema-only change.","proofConditionIds":["schema-live"]},{"id":"capability-completeness","satisfied":true,"statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","proofConditionIds":["schema-live"]},{"id":"atomic-capability-lifecycle","satisfied":true,"statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","proofConditionIds":["schema-live"]}],"contractHash":"6770530d8d869fc36e4e0d2bc54370991e4702c420b5c0b02575cb5ed79770b7","releaseBound":true,"witnessBound":false,"visualRequested":false,"visualSatisfied":true,"conditionResults":[{"id":"schema-live","kind":"runtime","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":false,"releaseTargetStates":{"migrations":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["migrations"],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"migrationReleaseVerified":null,"releaseRequestContractHash":"6770530d8d869fc36e4e0d2bc54370991e4702c420b5c0b02575cb5ed79770b7"},"required":true,"satisfied":true}],"validationErrors":[],"pendingProofKinds":[],"activeReleaseTargets":["migrations"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-29T02:00:08.920547+00:00","proof_gate":"request_contract_terminal_verified","source_sha":"79548f09bc599ba57396ecf850c3057728c87898","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:91a318dd-1345-4443-8984-a3fcdfe24a7a:request-contract:6770530d8d869fc36e4e0d2bc54370991e4702c420b5c0b02575cb5ed79770b7:79548f09bc599ba57396ecf850c3057728c87898:verified:","mission_step_id":"1ea1465e-0bdf-4983-b5e5-60967a538c26","command_center_event_id":"91a318dd-1345-4443-8984-a3fcdfe24a7a"},{"id":"4df7d894-4c36-4e49-b204-6855d9674bc6","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in objective received.","nextAction":{"lane":"cc-execution","action":"resolve_preflight","reason":"durable_state:preflight","automationAllowed":false,"ownerActionRequired":false},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"objective_received\",\"ownerFacingState\":null,\"latest\":null,\"activeStep\":{\"key\":\"preflight\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"implementation\",\"status\":\"pending\",\"lane\":\"cc-execution\"},\"nextSafeAction\":{\"action\":\"resolve_preflight\",\"lane\":\"cc-execution\",\"reason\":\"durable_state:preflight\",\"automationAllowed\":false,\"ownerActionRequired\":false},\"acceptance\":{\"total\":6,\"verified\":0,\"pending\":6,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[\"preflight\",\"implementation\",\"pull_request\",\"release\",\"runtime_proof\",\"visual_proof\"]},\"stall\":{\"stalled\":true,\"reason\":\"step_deadline_exceeded\",\"step\":\"preflight\",\"deadlineAt\":\"2026-08-04T12:54:40.971422+00:00\",\"recoveryAction\":\"resolve_preflight\"},\"blocker\":null,\"terminal\":false,\"branch\":null,\"prNumber\":null,\"sourceSha\":null,\"deploymentId\":null}"},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-09-20T22:25:04.343537+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:0ecc49eb-8a2c-425e-b220-09fc7bf1f5b6:owner-progress-heartbeat:119329540","mission_step_id":"95c9f5e2-d2c4-40ef-aba6-89a30d2c02d6","command_center_event_id":"0ecc49eb-8a2c-425e-b220-09fc7bf1f5b6"},{"id":"4df7e759-3452-40cc-8480-1db29687c37c","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-0d030744636f","reason":"retryable_provider_transport:forgejo_provider_read_timeout","status":"retryable","metrics":{"receiptBytes":29377,"releaseCount":0,"toolCallCount":8,"repeatedCallCount":4,"executorlessWaitMs":101344,"firstUsefulResultAt":"2026-09-28T02:18:39.706Z","recoveryAttemptCount":5,"ownerInterruptionCount":0},"version":null,"prNumber":3949,"terminal":false,"missionId":"0d030744-636f-4143-abb1-637b9402b420","operation":"automatic_mission_resume","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"prReadinessMs":5398,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"0d030744-636f-4143-abb1-637b9402b420"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":819,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-28T02:19:18.006129+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"3949","receipt_type":"automatic_mission_resume","idempotency_key":"mission:0d030744-636f-4143-abb1-637b9402b420:automatic-mission-resume:3949:repair_mission_pr_ready_retryable","mission_step_id":"b11468e9-5efd-4026-acf8-0d9f93bd8aa6","command_center_event_id":"0d030744-636f-4143-abb1-637b9402b420"},{"id":"4dfaa1fa-9b3e-471a-abde-04b911dffdd5","source":"cc-execution","status":"blocked","payload":{"ok":false,"jobId":null,"phase":"implementation","branch":"ai/fix-witness-tenant-projection-20260823","reason":"file_write_content_required_use_source_targets","status":"blocked","metrics":{"receiptBytes":1726,"releaseCount":0,"toolCallCount":1,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.50.16-onrunner-release-ownership","prNumber":null,"terminal":false,"missionId":"f4d27963-466c-4245-96c4-207badfd984a","operation":"execute_mission","proofGate":"repair_mission_execution_blocked","sourceSha":null,"timingsMs":null,"nextAction":null,"receiptRef":{"mode":"full","missionId":"f4d27963-466c-4245-96c4-207badfd984a"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":4846,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-23T22:00:01.198714+00:00","proof_gate":"repair_mission_execution_blocked","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:f4d27963-466c-4245-96c4-207badfd984a:execute_mission:repair_mission_execution_blocked","mission_step_id":"7b07b23c-eb01-4fcf-aa9e-c42b2f08f6d4","command_center_event_id":"f4d27963-466c-4245-96c4-207badfd984a"},{"id":"4dfba1af-c1ca-4c94-bdd1-6d7540a0fe5e","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/public-demo-same-origin-handoff","reason":"retryable_provider_transport:forgejo_provider_read_timeout","status":"retryable","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.182-witness-render-cold-start-aware","prNumber":3148,"terminal":false,"missionId":"400b0dd1-71ad-4c31-89d1-257a1a6ae7e8","operation":"execute_mission","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":7618,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":4349,"approvedPlanMs":0,"missionSetupMs":1531,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":482,"ledgerReconcileMs":0,"lineageReconcileMs":1049,"resolvePreflightMs":1531,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":482,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"400b0dd1-71ad-4c31-89d1-257a1a6ae7e8"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["repository","runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1525,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-18T19:15:43.418728+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"3148","receipt_type":"execute_mission","idempotency_key":"mission:400b0dd1-71ad-4c31-89d1-257a1a6ae7e8:execute_mission:repair_mission_pr_ready_retryable:current-generation","mission_step_id":"03c5c952-6ddd-44cc-b158-45fb11c04b04","command_center_event_id":"400b0dd1-71ad-4c31-89d1-257a1a6ae7e8"},{"id":"4dfbbc83-2e77-4860-8f96-a360fd656dca","source":"durable-mission-ledger","status":"pending","payload":{"sourceSha":"97acd282f573eafd2113ed4d247361fb633be7a3","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"outcome-1","satisfied":false,"statement":"Replace the just-released PCG beige/light redesign with a cleaner and simpler PCG operating UI. The user dislikes both the color scheme and the confusing layout. Use a cool neutral white/light-gray/charcoal palette with PCG gold only as a restrained accent. Flatten the owner landing page to one compact header, one obvious Receive new cards action, and a numbered 1-to-4 workflow: Receive Cards, Grade Cards, Publish & Sell, Fulfill & Ship. Remove lifestyle/hero framing and decorative imagery blocks from the owner landing page. Keep setup visually secondary. Fix PCG Settings specifically: do not embed the entire universal Settings & Profile home inside PCG. Show a small PCG-specific settings launcher first with Brand & workspace, Google & connections, Email & customers, Notifications, Profile & staff, and Workspace behavior; only render the relevant universal settings section after Anthony chooses one. Payments remains in the separate Payments tool. Preserve all business logic, routes, grading rules, data actions, provider state, and owner approval safeguards. Frontend-only change. Ship through fast UI gate, squash merge, frontend release, then visually verify PCG root and PCG Setting","proofConditionIds":["proof-production","proof-visual"]}],"satisfied":false,"constraints":[{"id":"visual-artifact-scope","satisfied":false,"statement":"The requested visual artifact type is authoritative: workspace, website only; must not include website. Do not add unrelated or mixed visual surfaces unless the owner explicitly requested them.","proofConditionIds":["proof-production","proof-visual"]},{"id":"visual-content-truth","satisfied":false,"statement":"Do not present invented names, metrics, prices, dates, services, testimonials, credentials, customer records, or other unknown business facts as real. Omit unknowns or mark them clearly as placeholder/example content.","proofConditionIds":["proof-production","proof-visual"]},{"id":"tenant-visual-isolation","satisfied":false,"statement":"Visual work is isolated to pcg. Do not import another tenant's logo, colors, imagery, copy, shell, customer data, business facts, or visual identity unless explicitly requested.","proofConditionIds":["proof-production","proof-visual"]},{"id":"visual-viewport-authority","satisfied":false,"statement":"The requested mobile viewport/form factor is authoritative. Do not create a mixed-device composite or add another viewport unless explicitly requested.","proofConditionIds":["proof-production","proof-visual"]},{"id":"reference-visual-fidelity","satisfied":false,"statement":"The approved reference owns the material visual composition: hierarchy, major geometry, typography scale, spacing rhythm, image placement/crop, color treatment, radii, shadows/glow, and overall density. Material deviation is a failed visual acceptance, not a stylistic reinterpretation.","proofConditionIds":["proof-visual"]},{"id":"responsive-visual-continuity","satisfied":false,"statement":"Responsive adaptation may reflow for the target viewport, but it must preserve information hierarchy, branding, functionality, and design language. It must not invent a second design.","proofConditionIds":["proof-visual"]},{"id":"reference-visual-authority","satisfied":false,"statement":"The supplied or approved reference visual is immutable acceptance evidence. Generating another mockup, image, or concept cannot satisfy this implementation request; completion requires source implementation, deployment, and reference-matched visual proof.","proofConditionIds":["proof-visual"]},{"id":"capability-completeness","satisfied":true,"statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","proofConditionIds":["proof-production"]},{"id":"atomic-capability-lifecycle","satisfied":true,"statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","proofConditionIds":["proof-production"]}],"contractHash":"eaaf1bad54d9771818003f0ab5d10bbc401c76260cc3b846e5f45f891a1526c8","releaseBound":true,"witnessBound":false,"visualRequested":true,"visualSatisfied":false,"conditionResults":[{"id":"proof-production","kind":"runtime","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":false,"releaseTargetStates":{"frontend":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["frontend"],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"migrationReleaseVerified":null,"releaseRequestContractHash":"eaaf1bad54d9771818003f0ab5d10bbc401c76260cc3b846e5f45f891a1526c8"},"required":true,"satisfied":true},{"id":"proof-visual","kind":"visual","evidence":{"modeBound":true,"claimBound":true,"routeBound":true,"witnessMode":"observe","witnessRoute":"/pcg/workspace","currentSourceSha":"97acd282f573eafd2113ed4d247361fb633be7a3","witnessSourceSha":"97acd282f573eafd2113ed4d247361fb633be7a3","verificationState":null,"witnessRequestContractHash":"eaaf1bad54d9771818003f0ab5d10bbc401c76260cc3b846e5f45f891a1526c8"},"required":true,"satisfied":false}],"validationErrors":[],"pendingProofKinds":["visual"],"activeReleaseTargets":["frontend"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"9602e177-0cbb-496c-bdf5-2fbc93f1b859","created_at":"2026-09-29T19:33:49.866723+00:00","proof_gate":"request_contract_pending","source_sha":"97acd282f573eafd2113ed4d247361fb633be7a3","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:88715ace-54dc-4957-a3cc-b4f76e98b1bf:request-contract:eaaf1bad54d9771818003f0ab5d10bbc401c76260cc3b846e5f45f891a1526c8:97acd282f573eafd2113ed4d247361fb633be7a3:pending:visual","mission_step_id":"70889653-a123-4a92-a5c7-4c5aa44e68e0","command_center_event_id":"88715ace-54dc-4957-a3cc-b4f76e98b1bf"},{"id":"4dfbd1fb-a72b-4ed7-ba02-fdbc75d44ff4","source":"paul-scheduler:compiler-recovery-v1","status":"started","payload":{"attempt":2,"retryable":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-12T17:09:01.6228+00:00","proof_gate":"compiler_scheduler_exact_mission_claimed","source_sha":null,"external_id":null,"receipt_type":"bounded_compiler_scheduler_recovery","idempotency_key":"mission:14032a83-94ba-456f-942b-fc66209030ca:compiler-scheduler-recovery:2:started","mission_step_id":null,"command_center_event_id":"14032a83-94ba-456f-942b-fc66209030ca"},{"id":"4dfc0348-a4ff-473f-99a7-2a826a1d97f4","source":"cc-execution","status":"authorized","payload":{"paths":["workers/cc-execution/src/platform-sidekick-intelligence.js","workers/cc-execution/src/version.js"],"reason":"Owner-authorized PAUL correction-precedence and conversational continuation hardening.","baseSha":"9cd5a2efb4aeb6f883b10e5168507f539b397e13","issuedAt":1790989553579,"expiresAt":1790989733579,"missionId":"2de8885e-b3fa-4534-bcf4-73b46fc72746","authorizationId":"19fa8487-800c-4688-9786-3661d410bf8b","retryableWithinExactScope":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-03T01:05:53.891373+00:00","proof_gate":"control_plane_maintenance_scope_authorized","source_sha":"9cd5a2efb4aeb6f883b10e5168507f539b397e13","external_id":null,"receipt_type":"control_plane_maintenance_authorization","idempotency_key":"control-plane-maintenance-authorize:19fa8487-800c-4688-9786-3661d410bf8b","mission_step_id":"280be5ae-8a77-4334-accc-d9c9ab9e1d9e","command_center_event_id":"2de8885e-b3fa-4534-bcf4-73b46fc72746"},{"id":"4dfd1f9b-7507-4b3a-aa6c-dda55a091a99","source":"cc-execution","status":"source_resolution_required","payload":{"ok":true,"jobId":"6f31030b-92ac-42c1-9206-fe6ebadd324c","phase":"runtime_proof","branch":"ai/calendar-first-class-bootstrap-20260907","reason":null,"status":"source_resolution_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.70-forgejo-source-discovery-retry-window","prNumber":2085,"terminal":false,"missionId":"81e04ef2-ee9b-4a90-8b2d-14a78dc89997","operation":"execute_mission","proofGate":"repair_mission_source_resolution_required","sourceSha":"8f714fabcddfd95e56501a4abe713d3e09424365","timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":9,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":609,"providerAuthMs":0,"ledgerPrepareMs":609,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":609,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":609,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"Resolve bounded authoritative Forgejo source targets, then call /mission/execute again with this same missionId and exact files or anchored_edits. Do not switch workflows.","receiptRef":{"mode":"full","missionId":"81e04ef2-ee9b-4a90-8b2d-14a78dc89997"},"performance":null,"deploymentId":null,"workflowRunId":6201,"releaseTargets":{"frontend":true,"onrunner":false,"migrations":true,"ccExecution":false,"supabaseEdge":true},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":3892,"likelyAffectedFiles":[],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-07T18:00:50.192978+00:00","proof_gate":"repair_mission_source_resolution_required","source_sha":"8f714fabcddfd95e56501a4abe713d3e09424365","external_id":"6f31030b-92ac-42c1-9206-fe6ebadd324c","receipt_type":"execute_mission","idempotency_key":"mission:81e04ef2-ee9b-4a90-8b2d-14a78dc89997:execute_mission:repair_mission_source_resolution_required:current-generation","mission_step_id":"d3dbdd43-7eb3-40fa-a899-d579c61f4b67","command_center_event_id":"81e04ef2-ee9b-4a90-8b2d-14a78dc89997"},{"id":"4dfda16a-9d4d-410b-bb30-451b6e9351eb","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"release","branch":null,"reason":"pull_request_already_merged","status":"retryable","metrics":{"receiptBytes":4378,"releaseCount":1,"toolCallCount":7,"repeatedCallCount":4,"ownerInterruptionCount":0},"version":"1.31.27-tenant-scope-security","prNumber":4527,"terminal":false,"missionId":"e4fa0c31-b9c9-4034-8910-d6f0273fe74d","operation":"execute_mission","proofGate":"repair_mission_pr_ready_retryable","sourceSha":"9664dfaa9afa5389d10c052b75395c18f6791f61","timingsMs":null,"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"e4fa0c31-b9c9-4034-8910-d6f0273fe74d"},"performance":null,"deploymentId":"canonical-release-9664dfaa9afa","workflowRunId":31397069674,"releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":488,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-08-10T14:17:07.794706+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":"9664dfaa9afa5389d10c052b75395c18f6791f61","external_id":"canonical-release-9664dfaa9afa","receipt_type":"execute_mission","idempotency_key":"mission:e4fa0c31-b9c9-4034-8910-d6f0273fe74d:execute_mission:repair_mission_pr_ready_retryable","mission_step_id":"bcccfc24-dc29-4c6a-abee-9a95778b82c5","command_center_event_id":"e4fa0c31-b9c9-4034-8910-d6f0273fe74d"},{"id":"4dfde076-628e-4140-93dc-26c0b7a73507","source":"cc-execution","status":"waiting","payload":{"body":{"ship":true,"files":[{"path":"src/__tests__/contracts/command-center-existing-pr-merge-state.contract.test.ts","content":"import fs from 'node:fs';\n\ndescribe('adopted PR identity does not imply merge', () => {\n  it('requires merged lineage proof before release reconciliation', () => {\n    const source = fs.readFileSync('workers/cc-execution/src/mission-ledger.js','utf8');\n    expect(source).toContain('mergedSourceLineageVerified');\n    expect(source).toContain('authoritativePrNumber && !mergedSourceLineageVerified');\n    expect(source).toContain('mergedSourceLineageVerified && text(mission.sourceSha || context.sourceSha, 100)');\n  });\n});\n"}],"branch":"ai/objective-first-repair-05f245d801b1","writes":[],"patches":[],"version":1,"approved":true,"missionId":"05f245d8-01b1-4573-9c71-3f27682bdcf3","objective":"Fix the adopted-PR state machine so hydrated PR head identity does not imply the PR has merged. Require authoritative merged-lineage proof before moving from pull-request reconciliation to release. Ship the repair, then resume PR 5210 and PR 5203.","repository":"noel/KnockLaunchOS","autoProgress":true,"ownerApproved":true,"releaseIntent":null,"sourceTargets":["workers/cc-execution/src/mission-ledger.js","workers/cc-execution/src/version.js"],"anchored_edits":[{"path":"workers/cc-execution/src/mission-ledger.js","new_content":"  if (context.releaseState === \"verified\" && context.requestContractState !== \"verified\") return withExecutionRouting({ action: \"reconcile_request_contract\", lane: \"cc-execution\", reason: \"release_verified_contract_pending\", automationAllowed: true, ownerActionRequired: false }, mission, steps);\n  const mergedSourceLineageVerified = receipts.some((receipt) => {\n    const proofGate = text(receipt?.proofGate || receipt?.proof_gate, 160);\n    const receiptType = text(receipt?.type || receipt?.receiptType || receipt?.receipt_type, 160);\n    return proofGate === \"forgejo_merged_pr_is_authoritative_source_lineage\"\n      || receiptType === \"source_lineage_merged_pr_authoritative\";\n  });\n  if (authoritativePrNumber && !mergedSourceLineageVerified) return withExecutionRouting({ action: \"reconcile_pull_request\", lane: \"cc-execution\", reason: \"pull_request_requires_merge_reconciliation\", automationAllowed: true, ownerActionRequired: false }, mission, steps);\n  if (mergedSourceLineageVerified && text(mission.sourceSha || context.sourceSha, 100) && context.releaseState !== \"verified\") return withExecutionRouting({ action: \"reconcile_release\", lane: \"production-release-conductor\", reason: \"merged_source_requires_release_proof\", automationAllowed: true, ownerActionRequired: false }, mission, steps);","old_content":"  if (context.releaseState === \"verified\" && context.requestContractState !== \"verified\") return withExecutionRouting({ action: \"reconcile_request_contract\", lane: \"cc-execution\", reason: \"release_verified_contract_pending\", automationAllowed: true, ownerActionRequired: false }, mission, steps);\n  if (authoritativePrNumber && !text(mission.sourceSha || context.sourceSha, 100)) return withExecutionRouting({ action: \"reconcile_pull_request\", lane: \"cc-execution\", reason: \"pull_request_exists_without_merged_source\", automationAllowed: true, ownerActionRequired: false }, mission, steps);\n  if (text(mission.sourceSha || context.sourceSha, 100) && context.releaseState !== \"verified\") return withExecutionRouting({ action: \"reconcile_release\", lane: \"production-release-conductor\", reason: \"merged_source_requires_release_proof\", automationAllowed: true, ownerActionRequired: false }, mission, steps);"},{"path":"workers/cc-execution/src/version.js","new_content":"export const CC_EXECUTION_VERSION = \"1.67.10-adopted-pr-merge-state\";","old_content":"export const CC_EXECUTION_VERSION = \"1.67.9-existing-pr-identity-hydration\";"}],"implementation":{"files":[],"writes":[]},"requestContract":{"intent":{"evidence":[],"confidence":null,"compilation":{"stages":["owner_intent","conversation_context","scope","live_state","mutation_authority","affected_systems","dependencies","risk_and_blast_radius","execution_tactics","required_proof","release_plan","recovery_plan"],"version":2,"explicit":false,"objective":"Fix the adopted-PR state machine so hydrated PR head identity does not imply the PR has merged. Require authoritative merged-lineage proof before moving from pull-request reconciliation to release. Ship the repair, then resume PR 5210 and PR 5203.","proofKinds":[],"adaptiveDomains":["intent","tenant_route_role_viewport","urgency_deadline","dependency_scope","risk_blast_radius","runner_capacity","queue_active_work","provider_failure_circuits","qa_scope","retry_recovery","release_ownership","proof_depth"],"expansionPolicy":"later_stages_may_only_narrow_or_expand_with_machine_readable_dependency_evidence","dynamicStatePolicy":"live_state_may_change_execution_tactics_but_never_owner_outcome_or_explicit_constraints","dynamicRefreshStages":["preflight","gate","release","runtime_proof"],"adaptiveCompilerVersion":"paul-adaptive-objective-v1","inheritedContextBlockingAuthority":false},"rawUtterance":"Fix the adopted-PR state machine so hydrated PR head identity does not imply the PR has merged. Require authoritative merged-lineage proof before moving from pull-request reconciliation to release. Ship the repair, then resume PR 5210 and PR 5203.","wordingChanged":false,"canonicalIntent":"Fix the adopted-PR state machine so hydrated PR head identity does not imply the PR has merged. Require authoritative merged-lineage proof before moving from pull-request reconciliation to release. Ship the repair, then resume PR 5210 and PR 5203.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"outcome-1","statement":"Fix the adopted-PR state machine so hydrated PR head identity does not imply the PR has merged. Require authoritative merged-lineage proof before moving from pull-request reconciliation to release. Ship the repair, then resume PR 5210 and PR 5203.","provenance":{"reason":null,"source":"current_request_inference","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]}],"objective":"Fix the adopted-PR state machine so hydrated PR head identity does not imply the PR has merged. Require authoritative merged-lineage proof before moving from pull-request reconciliation to release. Ship the repair, then resume PR 5210 and PR 5203.","constraints":[{"id":"capability-completeness","statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","provenance":{"reason":null,"source":"heuristic_current_objective","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]},{"id":"atomic-capability-lifecycle","statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","provenance":{"reason":null,"source":"heuristic_current_objective","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"proof-production","kind":"runtime","claim":"Fix the adopted-PR state machine so hydrated PR head identity does not imply the PR has merged. Require authoritative merged-lineage proof before moving from pull-request reconciliation to release. Ship the repair, then resume PR 5210 and PR 5203.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false}]},"repairGeneration":null,"executionEnvelope":{"ship":true,"version":1,"approved":true,"missionId":null,"ownerApproved":true,"releaseIntent":null,"sourceTargets":["workers/cc-execution/src/mission-ledger.js","workers/cc-execution/src/version.js"],"requestContract":{"intent":{"evidence":[],"confidence":null,"compilation":{"stages":["owner_intent","conversation_context","scope","live_state","mutation_authority","affected_systems","dependencies","risk_and_blast_radius","execution_tactics","required_proof","release_plan","recovery_plan"],"version":2,"explicit":false,"objective":"Fix the adopted-PR state machine so hydrated PR head identity does not imply the PR has merged. Require authoritative merged-lineage proof before moving from pull-request reconciliation to release. Ship the repair, then resume PR 5210 and PR 5203.","proofKinds":[],"adaptiveDomains":["intent","tenant_route_role_viewport","urgency_deadline","dependency_scope","risk_blast_radius","runner_capacity","queue_active_work","provider_failure_circuits","qa_scope","retry_recovery","release_ownership","proof_depth"],"expansionPolicy":"later_stages_may_only_narrow_or_expand_with_machine_readable_dependency_evidence","dynamicStatePolicy":"live_state_may_change_execution_tactics_but_never_owner_outcome_or_explicit_constraints","dynamicRefreshStages":["preflight","gate","release","runtime_proof"],"adaptiveCompilerVersion":"paul-adaptive-objective-v1","inheritedContextBlockingAuthority":false},"rawUtterance":"Fix the adopted-PR state machine so hydrated PR head identity does not imply the PR has merged. Require authoritative merged-lineage proof before moving from pull-request reconciliation to release. Ship the repair, then resume PR 5210 and PR 5203.","wordingChanged":false,"canonicalIntent":"Fix the adopted-PR state machine so hydrated PR head identity does not imply the PR has merged. Require authoritative merged-lineage proof before moving from pull-request reconciliation to release. Ship the repair, then resume PR 5210 and PR 5203.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"outcome-1","statement":"Fix the adopted-PR state machine so hydrated PR head identity does not imply the PR has merged. Require authoritative merged-lineage proof before moving from pull-request reconciliation to release. Ship the repair, then resume PR 5210 and PR 5203.","provenance":{"reason":null,"source":"current_request_inference","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]}],"objective":"Fix the adopted-PR state machine so hydrated PR head identity does not imply the PR has merged. Require authoritative merged-lineage proof before moving from pull-request reconciliation to release. Ship the repair, then resume PR 5210 and PR 5203.","constraints":[{"id":"capability-completeness","statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","provenance":{"reason":null,"source":"heuristic_current_objective","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]},{"id":"atomic-capability-lifecycle","statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","provenance":{"reason":null,"source":"heuristic_current_objective","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"proof-production","kind":"runtime","claim":"Fix the adopted-PR state machine so hydrated PR head identity does not imply the PR has merged. Require authoritative merged-lineage proof before moving from pull-request reconciliation to release. Ship the repair, then resume PR 5210 and PR 5203.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false}]},"repairGeneration":null,"proofRequirements":null,"controlPlaneUnfreeze":true,"controlPlaneMaintenance":true,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":"Owner-authorized correction of adopted PR identity versus merged-source state."},"proofRequirements":null,"controlPlaneUnfreeze":true,"durableMutationResume":true,"controlPlaneMaintenance":true,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":"Owner-authorized correction of adopted PR identity versus merged-source state."},"recovery":false,"fingerprint":"6384673e07bdfc225eefacff9db74d3055bdec66e13dc146f44a1d1e357f0120","replayCount":0,"serializedBytes":13763},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T18:20:37.849453+00:00","proof_gate":"repository_mutation_intent_persisted","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent","idempotency_key":"mission:05f245d8-01b1-4573-9c71-3f27682bdcf3:repository-mutation-intent:6384673e07bdfc225eefacff9db74d3055bdec66e13dc146f44a1d1e357f0120:0","mission_step_id":"05a65426-7e24-47f1-866b-463cf89028aa","command_center_event_id":"05f245d8-01b1-4573-9c71-3f27682bdcf3"},{"id":"4dfe1624-2824-44de-b55f-787237de3461","source":"cc-execution","status":"complete","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/personal-owner-proposals-20260912","reason":null,"status":"complete","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.118-architecture-exclusivity","prNumber":2495,"terminal":false,"missionId":"15185a13-fe00-4396-8ed1-6fbe397097f0","operation":"execute_mission","proofGate":"repair_mission_prepared","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":13613,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":1438,"providerAuthMs":0,"ledgerPrepareMs":345,"ledgerReconcileMs":0,"lineageReconcileMs":1093,"resolvePreflightMs":1438,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":345,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"continue_batch_or_ship_and_prove","receiptRef":{"mode":"full","missionId":"15185a13-fe00-4396-8ed1-6fbe397097f0"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":2500,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-12T15:23:00.431062+00:00","proof_gate":"repair_mission_prepared","source_sha":null,"external_id":"2495","receipt_type":"execute_mission","idempotency_key":"mission:15185a13-fe00-4396-8ed1-6fbe397097f0:execute_mission:repair_mission_prepared:current-generation","mission_step_id":"5e9ec98c-6d24-428e-936c-8c5de237866b","command_center_event_id":"15185a13-fe00-4396-8ed1-6fbe397097f0"},{"id":"4e00472d-2a8c-4ae0-abe0-6e2ebabc8d43","source":"cc-execution","status":"recorded","payload":{"objective":"Finish KnockLaunch Mail as a complete modern daily business inbox in one generation. Preserve Zoho and shared People/Calendar/Documents/Work/Money contracts. Deliver full-screen responsive Mail, fast cached startup, body-first message opening, real row actions, robust compose with draft recovery/contact suggestions, Reply/Reply All/Forward, thread context, keyboard shortcuts, search/triage, safe HTML/CID/attachments, business handoffs, owner-facing language, accessibility, and no dead controls. Use only the existing zoho-mail backend if provider work is needed. One branch, one PR, gate, squash merge, only affected releases, then live functional interaction proof.","tenantRef":"big-papis","receivedAt":"2026-08-27T22:35:20.498Z","fingerprint":"4c981da7626ea7bb1feeeb6d65c7833d773cb7778c6903660dd5f3f76ef666cd","workstreamRef":"bigpapis","conversationId":"knocklaunch-mail-20260827","canonicalBranch":"ai/mail-complete-product-20260827","requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"rawUtterance":"Finish KnockLaunch Mail as a complete modern daily business inbox in one generation. Preserve Zoho and shared People/Calendar/Documents/Work/Money contracts. Deliver full-screen responsive Mail, fast cached startup, body-first message opening, real row actions, robust compose with draft recovery/contact suggestions, Reply/Reply All/Forward, thread context, keyboard shortcuts, search/triage, safe HTML/CID/attachments, business handoffs, owner-facing language, accessibility, and no dead controls. Use only the existing zoho-mail backend if provider work is needed. One branch, one PR, gate, squash merge, only affected releases, then live functional interaction proof.","wordingChanged":false,"canonicalIntent":"Finish KnockLaunch Mail as a complete modern daily business inbox in one generation. Preserve Zoho and shared People/Calendar/Documents/Work/Money contracts. Deliver full-screen responsive Mail, fast cached startup, body-first message opening, real row actions, robust compose with draft recovery/contact suggestions, Reply/Reply All/Forward, thread context, keyboard shortcuts, search/triage, safe HTML/CID/attachments, business handoffs, owner-facing language, accessibility, and no dead controls. Use only the existing zoho-mail backend if provider work is needed. One branch, one PR, gate, squash merge, only affected releases, then live functional interaction proof.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"outcome-complete-mail","statement":"Shared Mail supports fast full-screen inbox use, modern compose, provider-backed reply/reply-all/forward, search/triage, attachments/CID HTML, conversation context, keyboard speed, draft recovery, and existing business handoffs.","proofConditionIds":["proof-runtime","proof-mail-interaction"]},{"id":"outcome-performance","statement":"Cached startup remains usable while refreshing and opening a message is not blocked by attachment/thread/business-context retrieval.","proofConditionIds":["proof-mail-interaction"]},{"id":"outcome-no-dead-actions","statement":"All visible core Mail controls are real and supported; unsupported/dead controls are not rendered.","proofConditionIds":["proof-mail-interaction"]},{"id":"outcome-shared","statement":"Implementation is shared across tenants and preserves provider, tenant branding, signatures, templates, and module contracts.","proofConditionIds":["proof-runtime"]}],"objective":"Finish KnockLaunch Mail as a complete modern daily business inbox in one generation. Preserve Zoho and shared People/Calendar/Documents/Work/Money contracts. Deliver full-screen responsive Mail, fast cached startup, body-first message opening, real row actions, robust compose with draft recovery/contact suggestions, Reply/Reply All/Forward, thread context, keyboard shortcuts, search/triage, safe HTML/CID/attachments, business handoffs, owner-facing language, accessibility, and no dead controls. Use only the existing zoho-mail backend if provider work is needed. One branch, one PR, gate, squash merge, only affected releases, then live functional interaction proof.","constraints":[{"id":"constraint-one-pass","statement":"Use one fresh branch, one PR, one gate, one squash merge, and only affected production releases for this comprehensive generation.","proofConditionIds":["proof-runtime"]},{"id":"constraint-no-duplicate-stack","statement":"Keep Zoho as provider and reuse People/Calendar/Documents/Work/Money; do not create duplicate systems.","proofConditionIds":["proof-runtime"]},{"id":"constraint-owner-language","statement":"Daily Mail uses owner-facing language and no provider/infrastructure jargon.","proofConditionIds":["proof-mail-interaction"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"proof-runtime","kind":"runtime","claim":"The exact merged Mail generation is released to every affected production owner required by its diff.","route":"/mail","required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":["frontend","supabaseEdge"],"requiredReleaseTargets":["frontend"]},{"id":"proof-mail-interaction","kind":"interaction","claim":"A representative connected tenant can open Mail, use the inbox, open a message without secondary-content blocking, open compose, expose reply/reply-all/forward when applicable, search, and exercise a safe mailbox action with coherent feedback.","route":"/mail","required":true,"expectedText":null,"targetedActions":[{"action":"open_route","expect":"Mail workspace loads"},{"action":"open_compose","expect":"To, Subject, editor, attachments, draft and send controls are usable"},{"action":"close_compose","expect":"Composer closes without sending and draft state is preserved"},{"action":"open_first_message","expect":"Message body is readable while secondary content hydrates independently"},{"action":"check_response_actions","expect":"Reply, Reply All when applicable, and Forward are available"},{"action":"search_mailbox","expect":"Search accepts input and returns or clearly reports results"},{"action":"toggle_star","expect":"Star state changes with immediate coherent feedback"}],"allowedReleaseTargets":[],"requiredReleaseTargets":[]}],"validationErrors":[]},"requestedBranch":"ai/mail-complete-product-20260827","conversationContext":null,"requestContractHash":"335d2c40ddc3de235d12c9fa3d4097e60b804fa3e14ae08a41ca90e70e540ea2","requestContractRevision":1},"tenant_id":"766cfaa7-ac42-46c8-bbef-69d13268a29d","created_at":"2026-08-27T22:35:21.246331+00:00","proof_gate":"tenant_workstream_contribution_recorded","source_sha":null,"external_id":null,"receipt_type":"tenant_workstream_contribution","idempotency_key":"mission:2ebd8ff8-0ea1-477d-9e74-e9ce1a77a404:tenant-workstream-contribution:4c981da7626ea7bb1feeeb6d65c7833d773cb7778c6903660dd5f3f76ef666cd","mission_step_id":null,"command_center_event_id":"2ebd8ff8-0ea1-477d-9e74-e9ce1a77a404"},{"id":"4e0048aa-0f5d-445a-a1b3-b00c4e9641b5","source":"forgejo","status":"waiting","payload":{"branch":"ai/frontend-release-continuity-20260904","prNumber":1713,"nextAction":"Follow the existing canonical release to terminal proof.","mergeCommitSha":"99594b2efd0f38b77bf6615e8853627d055ea79f","branchDeletedAfterMerge":true,"correctiveGenerationCreated":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-04T14:25:05.464318+00:00","proof_gate":"forgejo_merged_pr_is_authoritative_source_lineage","source_sha":"99594b2efd0f38b77bf6615e8853627d055ea79f","external_id":"1713","receipt_type":"source_lineage_merged_pr_authoritative","idempotency_key":"mission:4f62731b-6fef-4ca7-95d6-4674e9d105ec:merged-pr:1713:99594b2efd0f38b77bf6615e8853627d055ea79f","mission_step_id":"e701bca0-fa64-4b38-b1df-e1e5080fa62e","command_center_event_id":"4f62731b-6fef-4ca7-95d6-4674e9d105ec"},{"id":"4e02b66f-a278-46c8-b442-e6df25f9dd6d","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/vista-del-mar-renter-portal-20260827","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":4887,"releaseCount":0,"toolCallCount":4,"repeatedCallCount":2,"ownerInterruptionCount":0},"version":"1.54.0-intent-canonicalization","prNumber":861,"terminal":false,"missionId":"ea75c883-8cac-4788-bed2-30872daa4154","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":{"handlerMs":7,"missionSetupMs":681},"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /mission/execute again automatically with this same missionId without another owner prompt or workflow switch.","receiptRef":{"mode":"full","missionId":"ea75c883-8cac-4788-bed2-30872daa4154"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":9949,"likelyAffectedFiles":["scripts/validate-command-center-contracts.mjs","src/__tests__/contracts/command-center-forgejo-transport-reliability.contract.test.ts","src/__tests__/contracts/command-center-mission-control.test.ts","src/__tests__/contracts/command-center-mission-preflight.test.ts","src/__tests__/contracts/command-center-mission-resolution-efficiency.contract.test.ts","scripts/command-center-host-agent/forgejo-watchdog.sh","scripts/command-center-host-agent/install-forgejo-watchdog.sh","scripts/command-center-host-agent/knocklaunch-forgejo-watchdog.service","scripts/command-center-host-agent/knocklaunch-forgejo-watchdog.timer","scripts/command-center-host-agent/verify-forgejo-watchdog.sh","scripts/validate-production-critical-files.mjs","scripts/validate-production-release-identities.mjs"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-27T22:21:29.288475+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":"861","receipt_type":"execute_mission","idempotency_key":"mission:ea75c883-8cac-4788-bed2-30872daa4154:execute_mission:repair_mission_synthesis_ready:current-generation","mission_step_id":"8193fda6-379c-464d-97b0-80ed9a024cf5","command_center_event_id":"ea75c883-8cac-4788-bed2-30872daa4154"},{"id":"4e078600-804b-4181-9918-4a7e88ca0732","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-fb3af284a35a","reason":"retryable_provider_transport:POST:The operation was aborted due to timeout","status":"retryable","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.120-synthesis-fast-read","prNumber":null,"terminal":false,"missionId":"fb3af284-a35a-4234-86f2-c743f2a20ee8","operation":"execute_mission","proofGate":"repair_mission_execution_retryable","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":16977,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":0,"missionSetupMs":1278,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":225,"ledgerReconcileMs":0,"lineageReconcileMs":1053,"resolvePreflightMs":1278,"repositoryMutationMs":16977,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":225,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"fb3af284-a35a-4234-86f2-c743f2a20ee8"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1559,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-12T23:01:50.548331+00:00","proof_gate":"repair_mission_execution_retryable","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:fb3af284-a35a-4234-86f2-c743f2a20ee8:execute_mission:repair_mission_execution_retryable:current-generation","mission_step_id":"4d5b6599-c67c-4c6f-86f5-154485ba6bfc","command_center_event_id":"fb3af284-a35a-4234-86f2-c743f2a20ee8"},{"id":"4e08689b-a49c-4a9f-8870-f94956813c30","source":"github-status","status":"verified","payload":{"failed":[],"states":{"cc-execution/runtime-proof":"success","supabase-edge-production/live":"success","canonical-production-release/verified":"success"},"missing":[],"pending":[],"required":["canonical-production-release/verified","cc-execution/runtime-proof"],"sourceSha":"6cf30174af34602f95935b4a62c51478c7b18a4c","releaseState":"verified","exactConductorRun":{"id":30927228240,"status":"completed","headSha":"6cf30174af34602f95935b4a62c51478c7b18a4c","conclusion":"success","sourceMatches":true},"ccExecutionRuntimeProof":{"buildId":"30929622818-1","liveSha":"4420d8f6c841f7622f6c6cf586ce80ab8db8dea7","deploymentId":"canonical-release-30929546341-cc-execution","compareStatus":"ahead","identitySource":"worker_env_git_sha","runtimeVersion":null,"containsSourceSha":true}},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-08-04T16:34:28.138559+00:00","proof_gate":"canonical_release_terminal_verified","source_sha":"6cf30174af34602f95935b4a62c51478c7b18a4c","external_id":"canonical-release-6cf30174af34","receipt_type":"canonical_release_status","idempotency_key":"mission:23d42119-5fa4-4fd5-acf4-584f572b5978:release-status:6cf30174af34602f95935b4a62c51478c7b18a4c:verified:canonical-production-release/verified=success|cc-execution/runtime-proof=success","mission_step_id":"41e5d742-9dbd-4ea3-a439-a95f6c4f3a68","command_center_event_id":"23d42119-5fa4-4fd5-acf4-584f572b5978"},{"id":"4e09627a-5c20-47d6-9581-5726b09f0bb2","source":"cc-execution-autonomous-supervisor","status":"advanced","payload":{"trigger":"cloudflare_cron","afterSignature":"{\"stateMachineVersion\":1,\"phase\":\"pull_request\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"execute_mission\",\"status\":\"blocked\",\"proofGate\":\"repair_mission_execution_blocked\"},\"activeStep\":{\"key\":\"pull_request\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"release\",\"status\":\"ready\",\"lane\":\"production-release-conductor\"},\"nextSafeAction\":{\"action\":\"reconcile_pull_request\",\"lane\":\"cc-execution\",\"reason\":\"durable_state:pull_request\",\"automationAllowed\":true,\"ownerActionRequired\":false},\"acceptance\":{\"total\":6,\"verified\":1,\"pending\":5,\"percent\":17,\"satisfied\":false,\"verifiedIds\":[\"preflight\"],\"pendingIds\":[\"implementation\",\"pull_request\",\"release\",\"runtime_proof\",\"visual_proof\"]},\"stall\":{\"stalled\":true,\"reason\":\"step_deadline_exceeded\",\"step\":\"pull_request\",\"deadlineAt\":\"2026-08-03T20:09:36.710011+00:00\",\"recoveryAction\":\"reconcile_pull_request\"},\"blocker\":\"repair_mission_execution_blocked\",\"terminal\":false,\"branch\":\"ai/fix-experience-editor-target-publication-20260803\",\"prNumber\":null,\"sourceSha\":null,\"deploymentId\":null}","beforeSignature":null,"transitionBrain":"mission_status_deterministic_supervisor"},"tenant_id":"c55998b4-82a3-467e-8d35-177bb4785f6e","created_at":"2026-09-20T16:04:14.007628+00:00","proof_gate":"deterministic_semantic_transition_journaled","source_sha":null,"external_id":null,"receipt_type":"deterministic_supervisor_transition","idempotency_key":"mission:2502dab2-413c-4517-9884-3533726b0e63:deterministic-transition:none:{\"stateMachineVersion\":1,\"phase\":\"pull_request\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"execute_mission\",\"status\":\"blocked\",\"proofGate\":\"repair_mission_execution_blocked\"},\"activeStep\":{\"key\":\"pull_request\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"release\",\"status\":\"ready\",\"lane\":\"production-release-conductor\"},\"nextSafeAction\":{\"action\":\"reconcile_pull_request\",\"lane\":\"cc-execution\",\"r","mission_step_id":"b0de44be-8cfb-4249-8508-10d4c8a58e53","command_center_event_id":"2502dab2-413c-4517-9884-3533726b0e63"},{"id":"4e0afe29-b384-42dc-b59a-988807caebf9","source":"cc-execution","status":"waiting","payload":{"reason":"compiler_edits_missing_or_out_of_bounds","sourceTargets":["workers/cc-execution/src/index-mission-control.js","workers/cc-execution/src/index-release-fast-lane.js"]},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-10T00:02:13.904321+00:00","proof_gate":"bounded_implementation_checkpoint_persisted","source_sha":"2275c3f714eec9536086839e989da29330922e7f","external_id":null,"receipt_type":"bounded_implementation_continuation","idempotency_key":"mission:443c8259-ff81-47b4-9d11-22a216eb0af2:compiler:2275c3f714eec9536086839e989da29330922e7f:workers/cc-execution/src/index-mission-control.js,workers/cc-execution/src/index-release-fast-lane.js","mission_step_id":null,"command_center_event_id":"443c8259-ff81-47b4-9d11-22a216eb0af2"},{"id":"4e0b08d6-d2bc-464c-9991-753c568deaba","source":"cc-execution","status":"deployment_dispatched","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":null,"reason":null,"status":"deployment_dispatched","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.68-visual-witness-self-heal-proof","prNumber":1974,"terminal":false,"missionId":"cae69c0d-4147-4341-a2d8-235b3776b975","operation":"execute_mission","proofGate":"canonical_release_dispatched","sourceSha":"8b909a56d22fb8d831804bc7c7b1349495f3af1f","timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":8806,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":1088,"approvedPlanMs":0,"missionSetupMs":562,"providerAuthMs":0,"shipAndProveMs":7572,"ledgerPrepareMs":462,"ledgerReconcileMs":0,"lineageReconcileMs":100,"resolvePreflightMs":562,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":462,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"cae69c0d-4147-4341-a2d8-235b3776b975"},"performance":null,"deploymentId":"forgejo-main-8b909a56d22f","workflowRunId":null,"releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":2543,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"766cfaa7-ac42-46c8-bbef-69d13268a29d","created_at":"2026-09-06T17:37:21.734666+00:00","proof_gate":"canonical_release_dispatched","source_sha":"8b909a56d22fb8d831804bc7c7b1349495f3af1f","external_id":"forgejo-main-8b909a56d22f","receipt_type":"execute_mission","idempotency_key":"mission:cae69c0d-4147-4341-a2d8-235b3776b975:execute_mission:canonical_release_dispatched:current-generation","mission_step_id":"f5567317-0bb4-4d95-92fa-0b3d295b0fca","command_center_event_id":"cae69c0d-4147-4341-a2d8-235b3776b975"},{"id":"4e0b5c8f-8308-424d-be0b-355f58be1277","source":"cc-execution","status":"waiting","payload":{"body":{"ship":true,"files":[],"branch":"ai/objective-first-repair-164055f02d85","writes":[],"patches":[],"version":1,"approved":true,"autoMerge":true,"missionId":"164055f0-2d85-416f-8bdc-1d3a05c9bfeb","objective":"Apply the exact PCG shell/content-width and header-overlap repair from the owner-approved mission. Then Gate, squash merge, frontend deploy, and visually prove the specified desktop/mobile PCG routes. Do not stop at implementation.","repository":"noel/KnockLaunchOS","ownerApproved":true,"releaseIntent":null,"sourceTargets":["src/shells/pcg/PCGTenantShell.tsx","src/PcgAppShell.tsx","src/pages/card-grading/PCGModesWorkspace.tsx"],"anchored_edits":[{"find":"      style={{\n        ['--pcg-background-url' as string]: backgroundUrl ? `url(\"${backgroundUrl}\")` : 'none',\n      } as React.CSSProperties}","path":"src/shells/pcg/PCGTenantShell.tsx","replace":"      style={{\n        ['--pcg-background-url' as string]: backgroundUrl ? `url(\"${backgroundUrl}\")` : 'none',\n        ['--pcg-content-max' as string]: '1380px',\n        ['--pcg-route-pad-x' as string]: 'clamp(12px, 1.6vw, 22px)',\n        ['--pcg-route-pad-y' as string]: 'clamp(10px, 1.2vw, 16px)',\n        ['--pcg-account-reserve' as string]: 'clamp(80px, 15vw, 240px)',\n      } as React.CSSProperties}"},{"find":"      <MiscAwareAccountMenu placement=\"fixed\" tenantShellOwner className=\"top-3 right-3 z-[90]\" />","path":"src/shells/pcg/PCGTenantShell.tsx","replace":"      <MiscAwareAccountMenu placement=\"fixed\" tenantShellOwner className=\"top-2 right-2 z-[90] sm:top-2.5 sm:right-2.5\" />"},{"find":"function PcgScrollableRoute({children}:{children:React.ReactNode}){\n  return <div data-pcg-route-scroll-surface=\"true\" className=\"h-full min-h-0 w-full overflow-x-hidden overflow-y-auto overscroll-contain [-webkit-overflow-scrolling:touch]\">{children}</div>;\n}","path":"src/PcgAppShell.tsx","replace":"function PcgScrollableRoute({children}:{children:React.ReactNode}){\n  return <div data-pcg-route-scroll-surface=\"true\" className=\"h-full min-h-0 w-full overflow-x-hidden overflow-y-auto overscroll-contain [-webkit-overflow-scrolling:touch]\"><div data-pcg-route-content=\"true\" className=\"mx-auto w-full max-w-[var(--pcg-content-max)] px-[var(--pcg-route-pad-x)] py-[var(--pcg-route-pad-y)]\">{children}</div></div>;\n}"},{"find":"    return <div data-tenant-modes-shell=\"true\" data-tenant-id={tenantId||undefined} data-tenant-experience-family=\"modes\" data-pcg-active-mode={mode} data-pcg-mode-target={activeTab} className=\"relative min-h-screen bg-transparent text-white\">","path":"src/pages/card-grading/PCGModesWorkspace.tsx","replace":"    return <div data-tenant-modes-shell=\"true\" data-tenant-id={tenantId||undefined} data-tenant-experience-family=\"modes\" data-pcg-active-mode={mode} data-pcg-mode-target={activeTab} className=\"relative min-h-full bg-transparent text-white\">"},{"find":"      <div data-pcg-mode-header=\"true\" className=\"sticky left-0 right-0 top-0 z-[65] box-border w-screen max-w-none border-b border-white/[.08] bg-[#050607]/94 px-3 py-1.5 backdrop-blur-xl sm:px-4 lg:px-5\">\n        <div className=\"flex w-full items-center gap-3\">","path":"src/pages/card-grading/PCGModesWorkspace.tsx","replace":"      <div data-pcg-mode-header=\"true\" className=\"sticky left-0 right-0 top-0 z-[65] box-border w-full border-b border-white/[.08] bg-[#050607]/94 py-1.5 backdrop-blur-xl\">\n        <div className=\"mx-auto flex w-full max-w-[var(--pcg-content-max)] items-center gap-3 px-[var(--pcg-route-pad-x)] pr-[var(--pcg-account-reserve)]\">"},{"find":"        {modeTools.length>1?<div className=\"flex flex-wrap gap-1 pb-0.5\">","path":"src/pages/card-grading/PCGModesWorkspace.tsx","replace":"        {modeTools.length>1?<div className=\"mx-auto flex w-full max-w-[var(--pcg-content-max)] flex-wrap gap-1 px-[var(--pcg-route-pad-x)] pb-0.5 pr-[var(--pcg-account-reserve)]\">"},{"find":"      </div>\n      {mode==='publishing'&&activeTab==='publishing'?<React.Suspense fallback={null}><PCGBatchPublishingCenter tenantId={tenantId}/></React.Suspense>:null}","path":"src/pages/card-grading/PCGModesWorkspace.tsx","replace":"      </div>\n      <div data-pcg-mode-content=\"true\" className=\"mx-auto w-full max-w-[var(--pcg-content-max)] px-[var(--pcg-route-pad-x)] py-[var(--pcg-route-pad-y)]\">\n      {mode==='publishing'&&activeTab==='publishing'?<React.Suspense fallback={null}><PCGBatchPublishingCenter tenantId={tenantId}/></React.Suspense>:null}"},{"find":"      {(mode==='intake')?<PcgWorkspace initialTab={activeTab as OperationalWorkspaceTab} initialVaultMode={vaultMode} initialVaultSubmissionId={requestedSubmissionId} onSubmissionCreated={({id,expected_card_count})=>openCaptureForSubmission(id,expected_card_count)} onRequestGradeCards={openGradeReviewForSubmission} embedded navigationScope={allowedTabs.filter(tab=>!['population','publishing','completed','mailed'].includes(tab)) as OperationalWorkspaceTab[]}/>:null}\n    </div>\n  }","path":"src/pages/card-grading/PCGModesWorkspace.tsx","replace":"      {(mode==='intake')?<PcgWorkspace initialTab={activeTab as OperationalWorkspaceTab} initialVaultMode={vaultMode} initialVaultSubmissionId={requestedSubmissionId} onSubmissionCreated={({id,expected_card_count})=>openCaptureForSubmission(id,expected_card_count)} onRequestGradeCards={openGradeReviewForSubmission} embedded navigationScope={allowedTabs.filter(tab=>!['population','publishing','completed','mailed'].includes(tab)) as OperationalWorkspaceTab[]}/>:null}\n      </div>\n    </div>\n  }"},{"find":"    return <div data-tenant-modes-shell=\"true\" data-tenant-id={tenantId||undefined} data-tenant-experience-family=\"modes\" data-pcg-admin-tool={adminTool} className=\"relative min-h-screen bg-transparent text-white\">","path":"src/pages/card-grading/PCGModesWorkspace.tsx","replace":"    return <div data-tenant-modes-shell=\"true\" data-tenant-id={tenantId||undefined} data-tenant-experience-family=\"modes\" data-pcg-admin-tool={adminTool} className=\"relative min-h-full bg-transparent text-white\">"},{"find":"      <div className=\"sticky left-0 right-0 top-0 z-[65] border-b border-white/[.08] bg-[#050607]/92 px-3 py-2.5 backdrop-blur-xl sm:px-5 lg:px-7\"><div className=\"flex items-center gap-3\">","path":"src/pages/card-grading/PCGModesWorkspace.tsx","replace":"      <div className=\"sticky left-0 right-0 top-0 z-[65] border-b border-white/[.08] bg-[#050607]/92 py-2 backdrop-blur-xl\"><div className=\"mx-auto flex w-full max-w-[var(--pcg-content-max)] items-center gap-3 px-[var(--pcg-route-pad-x)] pr-[var(--pcg-account-reserve)]\">"},{"find":"      {adminTool==='population'?<CardGradingPopulationReport tenantId={tenantId}/>:<PcgWorkspace initialTab={adminTool as any} embedded navigationScope={[adminTool as any]}/>}\n    </div>","path":"src/pages/card-grading/PCGModesWorkspace.tsx","replace":"      <div className=\"mx-auto w-full max-w-[var(--pcg-content-max)] px-[var(--pcg-route-pad-x)] py-[var(--pcg-route-pad-y)]\">{adminTool==='population'?<CardGradingPopulationReport tenantId={tenantId}/>:<PcgWorkspace initialTab={adminTool as any} embedded navigationScope={[adminTool as any]}/>}</div>\n    </div>"},{"find":"  return <main data-tenant-modes-shell=\"true\" data-tenant-id={tenantId||undefined} data-tenant-experience-family=\"modes\" data-pcg-modes-workspace=\"true\" data-pcg-media-contract=\"tenant-configured\" className=\"relative min-h-dvh overflow-x-hidden bg-transparent pb-8 text-white\">","path":"src/pages/card-grading/PCGModesWorkspace.tsx","replace":"  return <main data-tenant-modes-shell=\"true\" data-tenant-id={tenantId||undefined} data-tenant-experience-family=\"modes\" data-pcg-modes-workspace=\"true\" data-pcg-media-contract=\"tenant-configured\" className=\"relative min-h-full overflow-x-hidden bg-transparent pb-4 text-white\">"},{"find":"      <div className=\"flex min-h-[54px] items-center gap-2.5 pl-3 pr-16 sm:pl-4 sm:pr-[13rem] lg:pl-5 lg:pr-[14rem]\">","path":"src/pages/card-grading/PCGModesWorkspace.tsx","replace":"      <div className=\"mx-auto flex min-h-[54px] w-full max-w-[var(--pcg-content-max)] items-center gap-2.5 px-[var(--pcg-route-pad-x)] pr-[var(--pcg-account-reserve)]\">"},{"find":"        <nav aria-label=\"PCG workspace routes\" className=\"ml-auto flex items-center gap-1.5\">","path":"src/pages/card-grading/PCGModesWorkspace.tsx","replace":"        <nav aria-label=\"PCG workspace routes\" className=\"ml-auto hidden items-center gap-1.5 xl:flex\">"},{"find":"    <div className=\"relative z-10 mx-auto max-w-[1480px] px-3 pb-5 pt-3 sm:px-4 lg:px-5\">","path":"src/pages/card-grading/PCGModesWorkspace.tsx","replace":"    <div className=\"relative z-10 mx-auto w-full max-w-[var(--pcg-content-max)] px-[var(--pcg-route-pad-x)] pb-4 pt-3\">"}],"implementation":{"files":[],"writes":[]},"ownerAuthorized":true,"requestContract":null,"repairGeneration":null,"executionEnvelope":{"ship":true,"version":1,"approved":true,"missionId":"164055f0-2d85-416f-8bdc-1d3a05c9bfeb","ownerApproved":true,"releaseIntent":null,"sourceTargets":["src/shells/pcg/PCGTenantShell.tsx","src/PcgAppShell.tsx","src/pages/card-grading/PCGModesWorkspace.tsx"],"requestContract":null,"repairGeneration":null,"proofRequirements":null,"controlPlaneUnfreeze":false,"controlPlaneMaintenance":false,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":null},"proofRequirements":null,"controlPlaneUnfreeze":false,"explicitOwnerRequest":true,"durableMutationResume":true,"controlPlaneMaintenance":false,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":null},"recovery":false,"fingerprint":"4ea83afa196b51870fec2684112a279cd4afd74a7af8705f11d0a16b757e8218","replayCount":0,"serializedBytes":9609},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-05T16:26:26.789325+00:00","proof_gate":"repository_mutation_intent_persisted","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent","idempotency_key":"mission:164055f0-2d85-416f-8bdc-1d3a05c9bfeb:repository-mutation-intent:4ea83afa196b51870fec2684112a279cd4afd74a7af8705f11d0a16b757e8218:0","mission_step_id":"8f914b9c-e0de-4113-8be3-967176432ba5","command_center_event_id":"164055f0-2d85-416f-8bdc-1d3a05c9bfeb"},{"id":"4e0be372-b106-4a42-a5df-e2426c62a33e","source":"cc-execution","status":"waiting","payload":{"body":{"ship":true,"files":[{"path":"supabase/functions/irslogiqs-sync/index.ts","content":"\nimport { createClient } from 'https://esm.sh/@supabase/supabase-js@2.80.0';\nimport { decryptSecret } from '../_shared/tenantCrypto.ts';\nimport { ingestContactBatch, normalizeEmail, type IntakeRecord } from '../_shared/contactIntake.ts';\n\nconst corsHeaders = {\n  'Access-Control-Allow-Origin': '*',\n  'Access-Control-Allow-Headers': 'authorization, x-client-info, apikey, content-type, x-knocklaunch-canary',\n};\nconst json = (status:number, body:unknown) => new Response(JSON.stringify(body), {\n  status,\n  headers:{...corsHeaders,'Content-Type':'application/json','Cache-Control':'no-store'},\n});\nconst parseData = (value:any) => {\n  if (typeof value !== 'string') return value;\n  try { return JSON.parse(value); } catch { return value; }\n};\nconst extractCaseIds = (payload:any): number[] => {\n  const root = parseData(payload);\n  const candidates:any[] = [];\n  const push = (value:any) => { if (value !== undefined && value !== null) candidates.push(parseData(value)); };\n  push(root);\n  if (root && typeof root === 'object' && !Array.isArray(root)) {\n    push(root.data); push(root.Data); push(root.items); push(root.Items); push(root.results); push(root.Results); push(root.cases); push(root.Cases);\n    const nested = parseData(root.data ?? root.Data);\n    if (nested && typeof nested === 'object' && !Array.isArray(nested)) {\n      push(nested.items); push(nested.Items); push(nested.results); push(nested.Results); push(nested.cases); push(nested.Cases);\n    }\n  }\n  const ids = new Set<number>();\n  const visit = (value:any) => {\n    if (Array.isArray(value)) { value.forEach(visit); return; }\n    if (typeof value === 'number' || (typeof value === 'string' && /^\\d+$/.test(value.trim()))) {\n      const n = Number(value); if (Number.isInteger(n) && n > 0) ids.add(n); return;\n    }\n    if (value && typeof value === 'object') {\n      const raw = value.CaseID ?? value.CaseId ?? value.caseID ?? value.caseId ?? value.id ?? value.ID;\n      if (raw !== undefined && raw !== null) {\n        const n = Number(raw); if (Number.isInteger(n) && n > 0) ids.add(n);\n      }\n    }\n  };\n  candidates.forEach(visit);\n  return [...ids];\n};\nconst str = (value:unknown) => String(value ?? '').trim();\nconst providerUrl = (base:string,path:string,params:Record<string,string>={}) => {\n  const url = new URL(base + path);\n  for (const [key,value] of Object.entries(params)) url.searchParams.set(key,value);\n  return url.toString();\n};\nconst providerHeaders = (apiKey:string, secretToken:string, extra:Record<string,string>={}) => ({\n  ...extra,\n  Authorization:apiKey,\n  ...(secretToken ? {'SecretToken':secretToken,'X-Secret-Token':secretToken} : {}),\n});\nconst sha256Hex = async(value:string) => {\n  const digest = await crypto.subtle.digest('SHA-256', new TextEncoder().encode(value));\n  return Array.from(new Uint8Array(digest)).map(byte=>byte.toString(16).padStart(2,'0')).join('');\n};\n\nDeno.serve(async(req)=>{\n  if (req.method === 'OPTIONS') return new Response('ok',{headers:corsHeaders});\n  if (req.method !== 'POST') return json(405,{ok:false,error:'Method not allowed'});\n  try {\n    const authHeader = req.headers.get('Authorization') || '';\n    const canaryToken = str(req.headers.get('X-KnockLaunch-Canary'));\n    const supabaseUrl = Deno.env.get('SUPABASE_URL')!;\n    const anonKey = Deno.env.get('SUPABASE_ANON_KEY')!;\n    const serviceKey = Deno.env.get('SUPABASE_SERVICE_ROLE_KEY')!;\n    const admin = createClient(supabaseUrl,serviceKey);\n    const body = await req.json().catch(()=>({}));\n    const tenantId = str(body?.tenant_id || body?.tenantId);\n    if (!tenantId) return json(400,{ok:false,error:'tenant_id required'});\n\n    let userId = '';\n    if (canaryToken) {\n      const canaryCredential = await admin.from('tenant_provider_credentials')\n        .select('id,metadata')\n        .eq('tenant_id',tenantId)\n        .eq('provider','irslogiqs')\n        .maybeSingle();\n      if (canaryCredential.error) throw canaryCredential.error;\n      const canary = canaryCredential.data?.metadata?.sync_canary || null;\n      const tokenHash = await sha256Hex(canaryToken);\n      const expiresAt = canary?.expires_at ? Date.parse(String(canary.expires_at)) : NaN;\n      const actorUserId = str(canary?.actor_user_id);\n      const validCanary = Boolean(\n        canaryCredential.data?.id &&\n        canary?.purpose === 'owner_requested_post_release_verification' &&\n        canary?.token_hash === tokenHash &&\n        Number.isFinite(expiresAt) &&\n        expiresAt > Date.now() &&\n        actorUserId\n      );\n      if (!validCanary) return json(403,{ok:false,error:'Invalid or expired IRSLogiqs canary authorization'});\n\n      const membership = await admin.from('user_tenant_memberships')\n        .select('user_id,status,is_owner')\n        .eq('tenant_id',tenantId)\n        .eq('user_id',actorUserId)\n        .maybeSingle();\n      if (membership.error) throw membership.error;\n      if (!membership.data?.is_owner || membership.data?.status !== 'active') {\n        return json(403,{ok:false,error:'Canary actor is not an active tenant owner'});\n      }\n\n      const nextMetadata = {...(canaryCredential.data.metadata || {})};\n      delete nextMetadata.sync_canary;\n      const consume = await admin.from('tenant_provider_credentials')\n        .update({metadata:nextMetadata})\n        .eq('id',canaryCredential.data.id);\n      if (consume.error) throw consume.error;\n      userId = actorUserId;\n    } else {\n      if (!authHeader.startsWith('Bearer ')) return json(401,{ok:false,error:'Unauthorized'});\n      const userClient = createClient(supabaseUrl,anonKey,{global:{headers:{Authorization:authHeader}}});\n      const {data:userResult,error:userErr} = await userClient.auth.getUser(authHeader.slice(7));\n      if (userErr || !userResult?.user?.id) return json(401,{ok:false,error:'Unauthorized'});\n      userId = userResult.user.id;\n      const [{data:isOwner},{data:isAdmin}] = await Promise.all([\n        admin.rpc('is_tenant_owner_for',{_user_id:userId,_tenant_id:tenantId}),\n        admin.rpc('is_system_admin',{_user_id:userId}),\n      ]);\n      if (!isOwner && !isAdmin) return json(403,{ok:false,error:'Tenant owner or admin required'});\n    }\n\n    const [secretRow,credentialRow] = await Promise.all([\n      admin.from('tenant_provider_secrets').select('ciphertext,iv').eq('tenant_id',tenantId).eq('provider','irslogiqs').maybeSingle(),\n      admin.from('tenant_provider_credentials').select('id,metadata,credential_status').eq('tenant_id',tenantId).eq('provider','irslogiqs').maybeSingle(),\n    ]);\n    if (secretRow.error) throw secretRow.error;\n    if (credentialRow.error) throw credentialRow.error;\n    if (!secretRow.data) return json(409,{ok:false,status:'prerequisite_required',error:'IRSLogiqs is not connected'});\n\n    const raw = await decryptSecret(secretRow.data.ciphertext,secretRow.data.iv);\n    let saved:any;\n    try { saved = JSON.parse(raw); } catch { saved = null; }\n    const apiKey = str(saved?.api_key);\n    const secretToken = str(saved?.secret_token);\n    const metadata = credentialRow.data?.metadata || {};\n    const subdomain = str(metadata?.account_subdomain).toLowerCase();\n    const configured = Array.isArray(metadata?.sync_status_ids) ? metadata.sync_status_ids : Array.isArray(metadata?.status_ids) ? metadata.status_ids : [];\n    const statusIds = configured.map((value:any)=>Number(value)).filter((value:number)=>Number.isInteger(value) && value > 0);\n\n    if (!apiKey || !secretToken || !subdomain) {\n      return json(409,{ok:false,status:'prerequisite_required',error:'Reconnect IRSLogiqs with account subdomain, API Key, and Secret Token'});\n    }\n    if (!/^[a-z0-9][a-z0-9-]{0,62}$/.test(subdomain)) {\n      return json(400,{ok:false,error:'Invalid IRSLogiqs account subdomain'});\n    }\n\n    // IRSLogics' published API contract serves tenant APIs only from\n    // https://{mycompany}.irslogics.com under /publicapi.\n    const hostCandidates = [subdomain + '.irslogics.com'];\n    const apiRootCandidates = ['/publicapi'];\n    const baseCandidates = hostCandidates.flatMap(host => apiRootCandidates.map(root => 'https://' + host + root));\n    let base: string | null = null;\n    let probePayload: any = {};\n    let probeCaseIds: number[] = [];\n    const providerFailures: string[] = [];\n    const probeHeaders: Record<string,string> = providerHeaders(apiKey,secretToken);\n\n    for (const candidate of baseCandidates) {\n      try {\n        const probeRes = await fetch(providerUrl(candidate,'/cases/casefile'),{headers:probeHeaders});\n        const contentType = probeRes.headers.get('content-type') || '';\n        const rawBody = await probeRes.text();\n        let payload:any = null;\n        try { payload = rawBody ? JSON.parse(rawBody) : null; } catch { payload = null; }\n        const payloadKeys = payload && typeof payload === 'object' && !Array.isArray(payload) ? Object.keys(payload).slice(0,8) : [];\n        const recognizableEnvelope = Array.isArray(payload) || (payload && typeof payload === 'object' && (\n          'Success' in payload || 'success' in payload || 'data' in payload || 'Data' in payload ||\n          'items' in payload || 'Items' in payload || 'results' in payload || 'Results' in payload ||\n          'cases' in payload || 'Cases' in payload\n        ));\n        if (probeRes.ok && recognizableEnvelope && payload?.Success !== false && payload?.success !== false) {\n          base = candidate;\n          probePayload = payload;\n          probeCaseIds = extractCaseIds(payload);\n          break;\n        }\n        const candidateUrl = new URL(candidate);\n        const providerMessage = str(payload?.Message || payload?.message || payload?.error || payload?.MessageDetail).slice(0,180);\n        providerFailures.push(candidateUrl.hostname + (candidateUrl.pathname || '/') + ':HTTP ' + probeRes.status + ':type=' + (contentType.split(';')[0] || 'unknown') + ':keys=' + (payloadKeys.join('|') || 'none') + (providerMessage ? ':message=' + providerMessage : ''));\n      } catch(error) {\n        providerFailures.push(new URL(candidate).hostname + ':network_error');\n      }\n    }\n\n    if (!base) {\n      const failureAt = new Date().toISOString();\n      const diagnostic = providerFailures.join(', ');\n      const note = 'IRSLogiqs API verification failed. Confirm the API key has Case.Read permission and the Secret Token is current.';\n      console.warn('[irslogiqs-sync] provider route diagnostics:', diagnostic);\n      if (credentialRow.data?.id) await admin.from('tenant_provider_credentials').update({credential_status:'invalid',last_verified_at:null,verification_notes:note,updated_at:failureAt}).eq('id',credentialRow.data.id);\n      await admin.from('tenant_provider_secrets').update({verified_at:null,verification_error:note,updated_at:failureAt}).eq('tenant_id',tenantId).eq('provider','irslogiqs');\n      return json(200,{ok:false,status:'invalid',error:note});\n    }\n\n    await admin.from('tenant_provider_credentials').update({\n      metadata:{...metadata,irslogiqs_api_host:new URL(base).hostname,irslogiqs_api_root:new URL(base).pathname.replace(/\\/$/,'')},\n    }).eq('id',credentialRow.data.id);\n\n    if (!statusIds.length) {\n      const discoveredIds: number[] = [];\n      for (const caseId of probeCaseIds.slice(0,5)) {\n        const infoRes = await fetch(providerUrl(base,'/cases/casefile',{CaseID:String(caseId)}),{headers:providerHeaders(apiKey,secretToken)});\n        const infoPayload = await infoRes.json().catch(()=>({}));\n        if (!infoRes.ok || infoPayload?.Success === false) continue;\n        const info = parseData(infoPayload?.data) || {};\n        const statusId = Number(info.StatusID ?? info.CaseStatusID ?? info.StatusId);\n        if (Number.isInteger(statusId) && statusId > 0) discoveredIds.push(statusId);\n      }\n      if (discoveredIds.length > 0) {\n        const newStatusIds = [...new Set([...statusIds, ...discoveredIds])];\n        await admin.from('tenant_provider_credentials').update({\n          metadata:{...metadata,sync_status_ids:newStatusIds,irslogiqs_api_host:new URL(base).hostname,irslogiqs_api_root:new URL(base).pathname.replace(/\\/$/,'')},\n        }).eq('id',credentialRow.data.id);\n        statusIds.push(...discoveredIds);\n      }\n    }\n\n    const startedAt = new Date().toISOString();\n    const caseIds = new Set<number>(probeCaseIds);\n\n    for (const statusId of statusIds) {\n      for (let page=1; page<=200; page+=1) {\n        const res = await fetch(providerUrl(base,'/cases/casefile',{StatusID:String(statusId),page:String(page),orderByCreatedDate:'true'}), {\n          headers:providerHeaders(apiKey,secretToken),\n        });\n        const payload = await res.json().catch(()=>({}));\n        if (!res.ok || payload?.Success === false) {\n          const failureAt = new Date().toISOString();\n          const note = 'IRSLogiqs provider verification failed for status ' + statusId + ' (HTTP ' + res.status + ').';\n          await admin.from('tenant_provider_credentials').update({credential_status:'invalid',last_verified_at:null,verification_notes:note,metadata:{...metadata,sync_status_ids:statusIds,sync:{...(metadata?.sync||{}),last_failure_at:failureAt,last_error:note}},updated_at:failureAt}).eq('id',credentialRow.data.id);\n          await admin.from('tenant_provider_secrets').update({verified_at:null,verification_error:note,updated_at:failureAt}).eq('tenant_id',tenantId).eq('provider','irslogiqs');\n          return json(200,{ok:false,status:'invalid',error:note});\n        }\n        const list = extractCaseIds(payload);\n        list.forEach((id:number)=>caseIds.add(id));\n        if (!list.length) break;\n      }\n    }\n\n    const records:IntakeRecord[] = [];\n    for (const caseId of caseIds) {\n      const res = await fetch(providerUrl(base,'/cases/casefile',{CaseID:String(caseId)}),{headers:providerHeaders(apiKey,secretToken)});\n      const payload = await res.json().catch(()=>({}));\n      if (!res.ok || payload?.Success === false) continue;\n      const info = parseData(payload?.data) || {};\n      const firstName = str(info.FirstName);\n      const lastName = str(info.LastName);\n      const contactEmail = normalizeEmail(info.Email);\n      const phone = str(info.CellPhone || info.HomePhone || info.WorkPhone) || null;\n      records.push({\n        source:'irslogiqs',externalKey:'irslogiqs_case_id',externalId:String(caseId),contactId:'irslogiqs:' + tenantId + ':' + caseId,\n        name:[firstName,lastName].filter(Boolean).join(' ') || contactEmail || phone || 'IRSLogiqs Case ' + caseId,\n        firstName:firstName || null,lastName:lastName || null,email:contactEmail,phone,\n        address:str(info.Address) || null,city:str(info.City) || null,state:str(info.State) || null,zip:str(info.Zip) || null,\n        contactStatus:'active',leadStage:str(info.Status) || 'Client',\n        providerData:{case_id:String(caseId),status:info.Status ?? null,service_ids:[info.ServiceID,info.ServiceID2,info.ServiceID3,info.ServiceID4,info.ServiceID5,info.ServiceID6].filter(Boolean)},\n        compliance:{campaign_purpose:'client_retention',marketing_permission:'relationship_based'},\n      });\n    }\n\n    const batch = await admin.from('lead_batches').insert({\n      tenant_org_id:tenantId,name:'IRSLogiqs sync ' + startedAt,source:'irslogiqs',created_by:userId,\n      total_rows:records.length,processed_rows:0,success_count:0,update_count:0,error_count:0,status:'processing',\n      import_kind:'provider_sync',mapped_columns:{provider:'irslogiqs',status_ids:statusIds},\n    }).select('id').single();\n    if (batch.error) throw batch.error;\n\n    let created=0,updated=0,merged=0,review=0;\n    for (let index=0; index<records.length; index+=250) {\n      const result = await ingestContactBatch(admin,{tenantId,actorUserId:userId,records:records.slice(index,index+250),batchId:batch.data.id});\n      created += result.created;\n      updated += result.updated;\n      merged += result.merged;\n      review += result.review;\n    }\n    const completedAt = new Date().toISOString();\n    await admin.from('lead_batches').update({\n      processed_rows:records.length,success_count:created+updated+merged,update_count:updated+merged,error_count:review,\n      status:review?'completed_with_review':'completed',dedup_summary:{created,updated,merged,review},updated_at:completedAt,\n    }).eq('id',batch.data.id);\n\n    await admin.from('tenant_provider_secrets').update({verified_at:completedAt,verification_error:null,updated_at:completedAt}).eq('tenant_id',tenantId).eq('provider','irslogiqs');\n\n    await admin.from('tenant_provider_credentials').update({\n      credential_status:'active',last_verified_at:completedAt,\n      verification_notes:'IRSLogiqs authenticated provider read succeeded: ' + records.length + ' discovered',\n      metadata:{...metadata,sync_status_ids:statusIds,irslogiqs_api_host:new URL(base).hostname,irslogiqs_api_root:new URL(base).pathname.replace(/\\/$/,''),sync:{last_success_at:completedAt,last_failure_at:null,last_batch_id:batch.data.id,last_discovered:records.length,last_result:{created,updated,merged,review}}},\n      updated_at:completedAt,\n    }).eq('id',credentialRow.data.id);\n\n    return json(200,{ok:true,status:'connected',batchId:batch.data.id,discovered:records.length,created,updated,merged,review,providerRoute:{host:new URL(base).hostname,root:new URL(base).pathname.replace(/\\/$/,'')}});\n  } catch(error) {\n    const message = error instanceof Error ? error.message : String(error);\n    console.error('[irslogiqs-sync]',message);\n    return json(500,{ok:false,status:'invalid',error:message});\n  }\n});\n"}],"branch":"ai/objective-first-repair-f33e92dcff39","writes":[],"patches":[],"version":1,"approved":true,"missionId":"f33e92dc-ff39-4cfe-b3fc-f257b060a558","objective":"Correct the live Tennex IRSLogiq connector to the provider's published API contract from Logics API Doc v1.01: tenant base host https://{subdomain}.irslogics.com, static API key in the Authorization header, and documented GET /publicapi/cases/casefile for case reads. Remove the fabricated GetCasesByStatus/CaseInfo route and wrong candidate hosts, retain the saved Secret Token only as compatibility headers, keep Sync Status IDs optional, and add safe server-side provider error-message diagnostics. Gate, squash merge, release irslogiqs-sync, then run the one-time owner-bound Tennex canary to determine whether the documented casefile read can enumerate cases without CaseID and continue to terminal sync proof. No Visual Witness.","repository":"noel/KnockLaunchOS","ownerApproved":true,"releaseIntent":null,"sourceTargets":[],"implementation":{"files":[],"writes":[]},"requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"compilation":{"stages":["owner_intent","conversation_context","scope","live_state","mutation_authority","affected_systems","dependencies","risk_and_blast_radius","execution_tactics","required_proof","release_plan","recovery_plan"],"version":2,"explicit":true,"objective":"Correct the live Tennex IRSLogiq connector to the provider's published API contract from Logics API Doc v1.01: tenant base host https://{subdomain}.irslogics.com, static API key in the Authorization header, and documented GET /publicapi/cases/casefile for case reads. Remove the fabricated GetCasesByStatus/CaseInfo route and wrong candidate hosts, retain the saved Secret Token only as compatibility headers, keep Sync Status IDs optional, and add safe server-side provider error-message diagnostics. Gate, squash merge, release irslogiqs-sync, then run the one-time owner-bound Tennex canary to determine whether the documented casefile read can enumerate cases without CaseID and continue to terminal sync proof. No Visual Witness.","proofKinds":["runtime"],"adaptiveDomains":["intent","tenant_route_role_viewport","urgency_deadline","dependency_scope","risk_blast_radius","runner_capacity","queue_active_work","provider_failure_circuits","qa_scope","retry_recovery","release_ownership","proof_depth"],"expansionPolicy":"later_stages_may_only_narrow_or_expand_with_machine_readable_dependency_evidence","dynamicStatePolicy":"live_state_may_change_execution_tactics_but_never_owner_outcome_or_explicit_constraints","dynamicRefreshStages":["preflight","gate","release","runtime_proof"],"adaptiveCompilerVersion":"paul-adaptive-objective-v1","inheritedContextBlockingAuthority":false},"rawUtterance":"Correct the live Tennex IRSLogiq connector to the provider's published API contract from Logics API Doc v1.01: tenant base host https://{subdomain}.irslogics.com, static API key in the Authorization header, and documented GET /publicapi/cases/casefile for case reads. Remove the fabricated GetCasesByStatus/CaseInfo route and wrong candidate hosts, retain the saved Secret Token only as compatibility headers, keep Sync Status IDs optional, and add safe server-side provider error-message diagnostics. Gate, squash merge, release irslogiqs-sync, then run the one-time owner-bound Tennex canary to determine whether the documented casefile read can enumerate cases without CaseID and continue to terminal sync proof. No Visual Witness.","wordingChanged":false,"canonicalIntent":"Correct the live Tennex IRSLogiq connector to the provider's published API contract from Logics API Doc v1.01: tenant base host https://{subdomain}.irslogics.com, static API key in the Authorization header, and documented GET /publicapi/cases/casefile for case reads. Remove the fabricated GetCasesByStatus/CaseInfo route and wrong candidate hosts, retain the saved Secret Token only as compatibility headers, keep Sync Status IDs optional, and add safe server-side provider error-message diagnostics. Gate, squash merge, release irslogiqs-sync, then run the one-time owner-bound Tennex canary to determine whether the documented casefile read can enumerate cases without CaseID and continue to terminal sync proof. No Visual Witness.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"outcome-1","statement":"Correct the live Tennex IRSLogiq connector to the provider's published API contract from Logics API Doc v1.01: tenant base host https://{subdomain}.irslogics.com, static API key in the Authorization header, and documented GET /publicapi/cases/casefile for case reads. Remove the fabricated GetCasesByStatus/CaseInfo route and wrong candidate hosts, retain the saved Secret Token only as compatibility headers, keep Sync Status IDs optional, and add safe server-side provider error-message diagnostics. Gate, squash merge, release irslogiqs-sync, then run the one-time owner-bound Tennex canary to determine whether the documented casefile read can enumerate cases without CaseID and continue to terminal sync proof. No Visual Witness.","provenance":{"reason":null,"source":"current_explicit_owner_request","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]}],"objective":"Correct the live Tennex IRSLogiq connector to the provider's published API contract from Logics API Doc v1.01: tenant base host https://{subdomain}.irslogics.com, static API key in the Authorization header, and documented GET /publicapi/cases/casefile for case reads. Remove the fabricated GetCasesByStatus/CaseInfo route and wrong candidate hosts, retain the saved Secret Token only as compatibility headers, keep Sync Status IDs optional, and add safe server-side provider error-message diagnostics. Gate, squash merge, release irslogiqs-sync, then run the one-time owner-bound Tennex canary to determine whether the documented casefile read can enumerate cases without CaseID and continue to terminal sync proof. No Visual Witness.","constraints":[{"id":"capability-completeness","statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","provenance":{"reason":null,"source":"heuristic_current_objective","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]},{"id":"atomic-capability-lifecycle","statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","provenance":{"reason":null,"source":"heuristic_current_objective","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]}],"adaptivePolicy":{"risk":{"tier":"elevated","blastRadius":"broad"},"proof":{"requiredKinds":["runtime"],"visualProofScope":"broad","interactionRequired":false,"runtimeProofRequired":true},"scope":{"route":null,"roleRef":null,"tenantRef":null,"sourceTargets":[]},"dynamic":{"variables":["main_and_runtime_lineage","runner_capacity","queue_and_active_work","provider_health","failure_clusters_and_circuits","release_target_state","current_pr_and_gate_state"],"refreshStages":["preflight","gate","release","runtime_proof"],"refreshMayChange":["runner_selection","parallelism","retry_path","qa_depth","release_recovery","proof_timing"],"refreshMayNotChange":["owner_outcome","explicit_no_go_constraints","tenant_identity","credential_boundary","hard_safety_invariants"]},"urgency":{"priority":"normal","deadlineSignals":[],"deadlineExplicit":false},"version":"paul-adaptive-objective-v1","recovery":{"transient":"one_bounded_retry_then_alternate_eligible_pool_or_provider_path","deterministic":"repair_source_or_contract_do_not_blind_rerun","mutationDependencyFailure":"prerequisite_required_or_targeted_recovery_never_invent","readOnlyDependencyFailure":"degrade_to_available_grounded_context_and_keep_conversation_alive"},"unknowns":["tenant","route","source_targets_until_repository_resolution","release_targets_until_changed_paths","deadline"],"authority":{"outcome":"current_explicit_owner_request","tactics":"live_prime_truth","unknownPolicy":"preserve_unknown_never_invent","historicalContext":"advisory_unless_current_request_confirms"},"execution":{"mutation":true,"concurrency":"parallel_non_overlapping_work","scopePolicy":"start_bounded_expand_only_with_machine_readable_dependency_evidence","staleStatePolicy":"refresh_dynamic_state_before_irreversible_or_acceptance_stage","conversationIsolation":true,"ownerOutcomeMayBeChangedByAdaptation":false},"experience":{"visual":true,"viewports":["desktop","mobile"],"behavioral":false,"visualProofScope":"broad"},"dependencies":{"requiredDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","release_ownership","live_production_proof"],"capabilityDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"releaseTargetHints":[]},"inputSignals":{"rawUtterance":"Repair the Tennex IRSLogiq provider route resolver from provider-owned live-client evidence. The live Tennex IRSLogics JavaScript calls the /API route family, including /API/Login/GetLogin and /API/Settings endpoints. Add /API as the first API root candidate, retain legacy fallbacks, preserve tenant isolation and optional status IDs, and carry the exact change through Gate, squash merge, Supabase Edge release, and runtime deployment proof. No Visual Witness.","canonicalIntent":"Repair the Tennex IRSLogiq provider route resolver from provider-owned live-client evidence. The live Tennex IRSLogics JavaScript calls the /API route family, including /API/Login/GetLogin and /API/Settings endpoints. Add /API as the first API root candidate, retain legacy fallbacks, preserve tenant isolation and optional status IDs, and carry the exact change through Gate, squash merge, Supabase Edge release, and runtime deployment proof. No Visual Witness.","conversationContextPresent":false}},"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"proof-production","kind":"runtime","claim":"Correct the live Tennex IRSLogiq connector to the provider's published API contract from Logics API Doc v1.01: tenant base host https://{subdomain}.irslogics.com, static API key in the Authorization header, and documented GET /publicapi/cases/casefile for case reads. Remove the fabricated GetCasesByStatus/CaseInfo route and wrong candidate hosts, retain the saved Secret Token only as compatibility headers, keep Sync Status IDs optional, and add safe server-side provider error-message diagnostics. Gate, squash merge, release irslogiqs-sync, then run the one-time owner-bound Tennex canary to determine whether the documented casefile read can enumerate cases without CaseID and continue to terminal sync proof. No Visual Witness.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false}],"validationErrors":[],"capabilityManifest":{"id":"Execute-the-real-Tennex-IRSLogiq-client-sync-now-in-production-and-follow-it-end-to-end.-This-is-an","driftPolicy":"exact_manifest_source_release_dependency_or_runtime_identity_mismatch_is_nonterminal","proofLedger":"command_center_mission_ledger_request_contract_hash_bound","schemaVersion":1,"releaseTargets":[],"lifecycleStates":["prepare","deploy","verify","activate"],"activationPolicy":"dependencies_and_claim_matched_live_proof_before_exposure","dependencyDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_required_not_runtime_failures","compatibilityWindow":["N","N-1"],"failureIsolationPolicy":"quarantine_or_rollback_affected_capability_only_preserve_unrelated_working_capabilities","canaryProofConditionIds":["proof-production"]},"capabilityCompleteness":{"domains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"required":true,"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_states_not_runtime_failures"}},"repairGeneration":null,"request_contract":{"valid":true,"intent":{"evidence":[],"confidence":null,"compilation":{"stages":["owner_intent","conversation_context","scope","live_state","mutation_authority","affected_systems","dependencies","risk_and_blast_radius","execution_tactics","required_proof","release_plan","recovery_plan"],"version":2,"explicit":true,"objective":"Correct the live Tennex IRSLogiq connector to the provider's published API contract from Logics API Doc v1.01: tenant base host https://{subdomain}.irslogics.com, static API key in the Authorization header, and documented GET /publicapi/cases/casefile for case reads. Remove the fabricated GetCasesByStatus/CaseInfo route and wrong candidate hosts, retain the saved Secret Token only as compatibility headers, keep Sync Status IDs optional, and add safe server-side provider error-message diagnostics. Gate, squash merge, release irslogiqs-sync, then run the one-time owner-bound Tennex canary to determine whether the documented casefile read can enumerate cases without CaseID and continue to terminal sync proof. No Visual Witness.","proofKinds":["runtime"],"adaptiveDomains":["intent","tenant_route_role_viewport","urgency_deadline","dependency_scope","risk_blast_radius","runner_capacity","queue_active_work","provider_failure_circuits","qa_scope","retry_recovery","release_ownership","proof_depth"],"expansionPolicy":"later_stages_may_only_narrow_or_expand_with_machine_readable_dependency_evidence","dynamicStatePolicy":"live_state_may_change_execution_tactics_but_never_owner_outcome_or_explicit_constraints","dynamicRefreshStages":["preflight","gate","release","runtime_proof"],"adaptiveCompilerVersion":"paul-adaptive-objective-v1","inheritedContextBlockingAuthority":false},"rawUtterance":"Correct the live Tennex IRSLogiq connector to the provider's published API contract from Logics API Doc v1.01: tenant base host https://{subdomain}.irslogics.com, static API key in the Authorization header, and documented GET /publicapi/cases/casefile for case reads. Remove the fabricated GetCasesByStatus/CaseInfo route and wrong candidate hosts, retain the saved Secret Token only as compatibility headers, keep Sync Status IDs optional, and add safe server-side provider error-message diagnostics. Gate, squash merge, release irslogiqs-sync, then run the one-time owner-bound Tennex canary to determine whether the documented casefile read can enumerate cases without CaseID and continue to terminal sync proof. No Visual Witness.","wordingChanged":false,"canonicalIntent":"Correct the live Tennex IRSLogiq connector to the provider's published API contract from Logics API Doc v1.01: tenant base host https://{subdomain}.irslogics.com, static API key in the Authorization header, and documented GET /publicapi/cases/casefile for case reads. Remove the fabricated GetCasesByStatus/CaseInfo route and wrong candidate hosts, retain the saved Secret Token only as compatibility headers, keep Sync Status IDs optional, and add safe server-side provider error-message diagnostics. Gate, squash merge, release irslogiqs-sync, then run the one-time owner-bound Tennex canary to determine whether the documented casefile read can enumerate cases without CaseID and continue to terminal sync proof. No Visual Witness.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"outcome-1","statement":"Correct the live Tennex IRSLogiq connector to the provider's published API contract from Logics API Doc v1.01: tenant base host https://{subdomain}.irslogics.com, static API key in the Authorization header, and documented GET /publicapi/cases/casefile for case reads. Remove the fabricated GetCasesByStatus/CaseInfo route and wrong candidate hosts, retain the saved Secret Token only as compatibility headers, keep Sync Status IDs optional, and add safe server-side provider error-message diagnostics. Gate, squash merge, release irslogiqs-sync, then run the one-time owner-bound Tennex canary to determine whether the documented casefile read can enumerate cases without CaseID and continue to terminal sync proof. No Visual Witness.","provenance":{"reason":null,"source":"current_explicit_owner_request","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]}],"objective":"Correct the live Tennex IRSLogiq connector to the provider's published API contract from Logics API Doc v1.01: tenant base host https://{subdomain}.irslogics.com, static API key in the Authorization header, and documented GET /publicapi/cases/casefile for case reads. Remove the fabricated GetCasesByStatus/CaseInfo route and wrong candidate hosts, retain the saved Secret Token only as compatibility headers, keep Sync Status IDs optional, and add safe server-side provider error-message diagnostics. Gate, squash merge, release irslogiqs-sync, then run the one-time owner-bound Tennex canary to determine whether the documented casefile read can enumerate cases without CaseID and continue to terminal sync proof. No Visual Witness.","constraints":[{"id":"capability-completeness","statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","provenance":{"reason":null,"source":"heuristic_current_objective","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]},{"id":"atomic-capability-lifecycle","statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","provenance":{"reason":null,"source":"heuristic_current_objective","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]}],"adaptivePolicy":{"risk":{"tier":"elevated","blastRadius":"broad"},"proof":{"requiredKinds":["runtime"],"visualProofScope":"broad","interactionRequired":false,"runtimeProofRequired":true},"scope":{"route":null,"roleRef":null,"tenantRef":null,"sourceTargets":[]},"dynamic":{"variables":["main_and_runtime_lineage","runner_capacity","queue_and_active_work","provider_health","failure_clusters_and_circuits","release_target_state","current_pr_and_gate_state"],"refreshStages":["preflight","gate","release","runtime_proof"],"refreshMayChange":["runner_selection","parallelism","retry_path","qa_depth","release_recovery","proof_timing"],"refreshMayNotChange":["owner_outcome","explicit_no_go_constraints","tenant_identity","credential_boundary","hard_safety_invariants"]},"urgency":{"priority":"normal","deadlineSignals":[],"deadlineExplicit":false},"version":"paul-adaptive-objective-v1","recovery":{"transient":"one_bounded_retry_then_alternate_eligible_pool_or_provider_path","deterministic":"repair_source_or_contract_do_not_blind_rerun","mutationDependencyFailure":"prerequisite_required_or_targeted_recovery_never_invent","readOnlyDependencyFailure":"degrade_to_available_grounded_context_and_keep_conversation_alive"},"unknowns":["tenant","route","source_targets_until_repository_resolution","release_targets_until_changed_paths","deadline"],"authority":{"outcome":"current_explicit_owner_request","tactics":"live_prime_truth","unknownPolicy":"preserve_unknown_never_invent","historicalContext":"advisory_unless_current_request_confirms"},"execution":{"mutation":true,"concurrency":"parallel_non_overlapping_work","scopePolicy":"start_bounded_expand_only_with_machine_readable_dependency_evidence","staleStatePolicy":"refresh_dynamic_state_before_irreversible_or_acceptance_stage","conversationIsolation":true,"ownerOutcomeMayBeChangedByAdaptation":false},"experience":{"visual":true,"viewports":["desktop","mobile"],"behavioral":false,"visualProofScope":"broad"},"dependencies":{"requiredDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","release_ownership","live_production_proof"],"capabilityDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"releaseTargetHints":[]},"inputSignals":{"rawUtterance":"Repair the Tennex IRSLogiq provider route resolver from provider-owned live-client evidence. The live Tennex IRSLogics JavaScript calls the /API route family, including /API/Login/GetLogin and /API/Settings endpoints. Add /API as the first API root candidate, retain legacy fallbacks, preserve tenant isolation and optional status IDs, and carry the exact change through Gate, squash merge, Supabase Edge release, and runtime deployment proof. No Visual Witness.","canonicalIntent":"Repair the Tennex IRSLogiq provider route resolver from provider-owned live-client evidence. The live Tennex IRSLogics JavaScript calls the /API route family, including /API/Login/GetLogin and /API/Settings endpoints. Add /API as the first API root candidate, retain legacy fallbacks, preserve tenant isolation and optional status IDs, and carry the exact change through Gate, squash merge, Supabase Edge release, and runtime deployment proof. No Visual Witness.","conversationContextPresent":false}},"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"proof-production","kind":"runtime","claim":"Correct the live Tennex IRSLogiq connector to the provider's published API contract from Logics API Doc v1.01: tenant base host https://{subdomain}.irslogics.com, static API key in the Authorization header, and documented GET /publicapi/cases/casefile for case reads. Remove the fabricated GetCasesByStatus/CaseInfo route and wrong candidate hosts, retain the saved Secret Token only as compatibility headers, keep Sync Status IDs optional, and add safe server-side provider error-message diagnostics. Gate, squash merge, release irslogiqs-sync, then run the one-time owner-bound Tennex canary to determine whether the documented casefile read can enumerate cases without CaseID and continue to terminal sync proof. No Visual Witness.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false}],"validationErrors":[],"capabilityManifest":{"id":"Execute-the-real-Tennex-IRSLogiq-client-sync-now-in-production-and-follow-it-end-to-end.-This-is-an","driftPolicy":"exact_manifest_source_release_dependency_or_runtime_identity_mismatch_is_nonterminal","proofLedger":"command_center_mission_ledger_request_contract_hash_bound","schemaVersion":1,"releaseTargets":[],"lifecycleStates":["prepare","deploy","verify","activate"],"activationPolicy":"dependencies_and_claim_matched_live_proof_before_exposure","dependencyDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_required_not_runtime_failures","compatibilityWindow":["N","N-1"],"failureIsolationPolicy":"quarantine_or_rollback_affected_capability_only_preserve_unrelated_working_capabilities","canaryProofConditionIds":["proof-production"]},"capabilityCompleteness":{"domains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"required":true,"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_states_not_runtime_failures"}},"executionEnvelope":{"ship":true,"version":1,"approved":true,"missionId":null,"ownerApproved":true,"releaseIntent":null,"sourceTargets":[],"requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"compilation":{"stages":["owner_intent","conversation_context","scope","live_state","mutation_authority","affected_systems","dependencies","risk_and_blast_radius","execution_tactics","required_proof","release_plan","recovery_plan"],"version":2,"explicit":true,"objective":"Correct the live Tennex IRSLogiq connector to the provider's published API contract from Logics API Doc v1.01: tenant base host https://{subdomain}.irslogics.com, static API key in the Authorization header, and documented GET /publicapi/cases/casefile for case reads. Remove the fabricated GetCasesByStatus/CaseInfo route and wrong candidate hosts, retain the saved Secret Token only as compatibility headers, keep Sync Status IDs optional, and add safe server-side provider error-message diagnostics. Gate, squash merge, release irslogiqs-sync, then run the one-time owner-bound Tennex canary to determine whether the documented casefile read can enumerate cases without CaseID and continue to terminal sync proof. No Visual Witness.","proofKinds":["runtime"],"adaptiveDomains":["intent","tenant_route_role_viewport","urgency_deadline","dependency_scope","risk_blast_radius","runner_capacity","queue_active_work","provider_failure_circuits","qa_scope","retry_recovery","release_ownership","proof_depth"],"expansionPolicy":"later_stages_may_only_narrow_or_expand_with_machine_readable_dependency_evidence","dynamicStatePolicy":"live_state_may_change_execution_tactics_but_never_owner_outcome_or_explicit_constraints","dynamicRefreshStages":["preflight","gate","release","runtime_proof"],"adaptiveCompilerVersion":"paul-adaptive-objective-v1","inheritedContextBlockingAuthority":false},"rawUtterance":"Correct the live Tennex IRSLogiq connector to the provider's published API contract from Logics API Doc v1.01: tenant base host https://{subdomain}.irslogics.com, static API key in the Authorization header, and documented GET /publicapi/cases/casefile for case reads. Remove the fabricated GetCasesByStatus/CaseInfo route and wrong candidate hosts, retain the saved Secret Token only as compatibility headers, keep Sync Status IDs optional, and add safe server-side provider error-message diagnostics. Gate, squash merge, release irslogiqs-sync, then run the one-time owner-bound Tennex canary to determine whether the documented casefile read can enumerate cases without CaseID and continue to terminal sync proof. No Visual Witness.","wordingChanged":false,"canonicalIntent":"Correct the live Tennex IRSLogiq connector to the provider's published API contract from Logics API Doc v1.01: tenant base host https://{subdomain}.irslogics.com, static API key in the Authorization header, and documented GET /publicapi/cases/casefile for case reads. Remove the fabricated GetCasesByStatus/CaseInfo route and wrong candidate hosts, retain the saved Secret Token only as compatibility headers, keep Sync Status IDs optional, and add safe server-side provider error-message diagnostics. Gate, squash merge, release irslogiqs-sync, then run the one-time owner-bound Tennex canary to determine whether the documented casefile read can enumerate cases without CaseID and continue to terminal sync proof. No Visual Witness.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"outcome-1","statement":"Correct the live Tennex IRSLogiq connector to the provider's published API contract from Logics API Doc v1.01: tenant base host https://{subdomain}.irslogics.com, static API key in the Authorization header, and documented GET /publicapi/cases/casefile for case reads. Remove the fabricated GetCasesByStatus/CaseInfo route and wrong candidate hosts, retain the saved Secret Token only as compatibility headers, keep Sync Status IDs optional, and add safe server-side provider error-message diagnostics. Gate, squash merge, release irslogiqs-sync, then run the one-time owner-bound Tennex canary to determine whether the documented casefile read can enumerate cases without CaseID and continue to terminal sync proof. No Visual Witness.","provenance":{"reason":null,"source":"current_explicit_owner_request","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]}],"objective":"Correct the live Tennex IRSLogiq connector to the provider's published API contract from Logics API Doc v1.01: tenant base host https://{subdomain}.irslogics.com, static API key in the Authorization header, and documented GET /publicapi/cases/casefile for case reads. Remove the fabricated GetCasesByStatus/CaseInfo route and wrong candidate hosts, retain the saved Secret Token only as compatibility headers, keep Sync Status IDs optional, and add safe server-side provider error-message diagnostics. Gate, squash merge, release irslogiqs-sync, then run the one-time owner-bound Tennex canary to determine whether the documented casefile read can enumerate cases without CaseID and continue to terminal sync proof. No Visual Witness.","constraints":[{"id":"capability-completeness","statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","provenance":{"reason":null,"source":"heuristic_current_objective","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]},{"id":"atomic-capability-lifecycle","statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","provenance":{"reason":null,"source":"heuristic_current_objective","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]}],"adaptivePolicy":{"risk":{"tier":"elevated","blastRadius":"broad"},"proof":{"requiredKinds":["runtime"],"visualProofScope":"broad","interactionRequired":false,"runtimeProofRequired":true},"scope":{"route":null,"roleRef":null,"tenantRef":null,"sourceTargets":[]},"dynamic":{"variables":["main_and_runtime_lineage","runner_capacity","queue_and_active_work","provider_health","failure_clusters_and_circuits","release_target_state","current_pr_and_gate_state"],"refreshStages":["preflight","gate","release","runtime_proof"],"refreshMayChange":["runner_selection","parallelism","retry_path","qa_depth","release_recovery","proof_timing"],"refreshMayNotChange":["owner_outcome","explicit_no_go_constraints","tenant_identity","credential_boundary","hard_safety_invariants"]},"urgency":{"priority":"normal","deadlineSignals":[],"deadlineExplicit":false},"version":"paul-adaptive-objective-v1","recovery":{"transient":"one_bounded_retry_then_alternate_eligible_pool_or_provider_path","deterministic":"repair_source_or_contract_do_not_blind_rerun","mutationDependencyFailure":"prerequisite_required_or_targeted_recovery_never_invent","readOnlyDependencyFailure":"degrade_to_available_grounded_context_and_keep_conversation_alive"},"unknowns":["tenant","route","source_targets_until_repository_resolution","release_targets_until_changed_paths","deadline"],"authority":{"outcome":"current_explicit_owner_request","tactics":"live_prime_truth","unknownPolicy":"preserve_unknown_never_invent","historicalContext":"advisory_unless_current_request_confirms"},"execution":{"mutation":true,"concurrency":"parallel_non_overlapping_work","scopePolicy":"start_bounded_expand_only_with_machine_readable_dependency_evidence","staleStatePolicy":"refresh_dynamic_state_before_irreversible_or_acceptance_stage","conversationIsolation":true,"ownerOutcomeMayBeChangedByAdaptation":false},"experience":{"visual":true,"viewports":["desktop","mobile"],"behavioral":false,"visualProofScope":"broad"},"dependencies":{"requiredDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","release_ownership","live_production_proof"],"capabilityDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"releaseTargetHints":[]},"inputSignals":{"rawUtterance":"Repair the Tennex IRSLogiq provider route resolver from provider-owned live-client evidence. The live Tennex IRSLogics JavaScript calls the /API route family, including /API/Login/GetLogin and /API/Settings endpoints. Add /API as the first API root candidate, retain legacy fallbacks, preserve tenant isolation and optional status IDs, and carry the exact change through Gate, squash merge, Supabase Edge release, and runtime deployment proof. No Visual Witness.","canonicalIntent":"Repair the Tennex IRSLogiq provider route resolver from provider-owned live-client evidence. The live Tennex IRSLogics JavaScript calls the /API route family, including /API/Login/GetLogin and /API/Settings endpoints. Add /API as the first API root candidate, retain legacy fallbacks, preserve tenant isolation and optional status IDs, and carry the exact change through Gate, squash merge, Supabase Edge release, and runtime deployment proof. No Visual Witness.","conversationContextPresent":false}},"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"proof-production","kind":"runtime","claim":"Correct the live Tennex IRSLogiq connector to the provider's published API contract from Logics API Doc v1.01: tenant base host https://{subdomain}.irslogics.com, static API key in the Authorization header, and documented GET /publicapi/cases/casefile for case reads. Remove the fabricated GetCasesByStatus/CaseInfo route and wrong candidate hosts, retain the saved Secret Token only as compatibility headers, keep Sync Status IDs optional, and add safe server-side provider error-message diagnostics. Gate, squash merge, release irslogiqs-sync, then run the one-time owner-bound Tennex canary to determine whether the documented casefile read can enumerate cases without CaseID and continue to terminal sync proof. No Visual Witness.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false}],"validationErrors":[],"capabilityManifest":{"id":"Execute-the-real-Tennex-IRSLogiq-client-sync-now-in-production-and-follow-it-end-to-end.-This-is-an","driftPolicy":"exact_manifest_source_release_dependency_or_runtime_identity_mismatch_is_nonterminal","proofLedger":"command_center_mission_ledger_request_contract_hash_bound","schemaVersion":1,"releaseTargets":[],"lifecycleStates":["prepare","deploy","verify","activate"],"activationPolicy":"dependencies_and_claim_matched_live_proof_before_exposure","dependencyDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_required_not_runtime_failures","compatibilityWindow":["N","N-1"],"failureIsolationPolicy":"quarantine_or_rollback_affected_capability_only_preserve_unrelated_working_capabilities","canaryProofConditionIds":["proof-production"]},"capabilityCompleteness":{"domains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"required":true,"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_states_not_runtime_failures"}},"repairGeneration":null,"proofRequirements":null,"controlPlaneUnfreeze":false,"controlPlaneMaintenance":false,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":null},"proofRequirements":null,"controlPlaneUnfreeze":false,"durableMutationResume":true,"controlPlaneMaintenance":false,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":null},"recovery":false,"fingerprint":"783357885d23cd2a6c9a2a06a6fe2185baed784cc3977b95a9a968ebf90fe116","replayCount":0,"serializedBytes":56261},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-03T03:02:44.580565+00:00","proof_gate":"repository_mutation_intent_persisted","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent","idempotency_key":"mission:f33e92dc-ff39-4cfe-b3fc-f257b060a558:repository-mutation-intent:783357885d23cd2a6c9a2a06a6fe2185baed784cc3977b95a9a968ebf90fe116:0","mission_step_id":"14945dc7-c492-47d2-acdd-aef39e5e7624","command_center_event_id":"f33e92dc-ff39-4cfe-b3fc-f257b060a558"},{"id":"4e0c0b5b-e710-4b9f-b84b-ee4e060aa21b","source":"cc-execution","status":"in_progress","payload":{"ok":true,"jobId":null,"phase":"release","branch":"ai/src-cohesion-phase-2-20260910","reason":null,"status":"in_progress","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":null,"prNumber":2327,"terminal":false,"missionId":"d04d0cdf-8794-4241-a006-24c15ffc3802","operation":"automatic_mission_resume","proofGate":"canonical_release_reconciliation_pending","sourceSha":"f452b7640454559ccfa3ebf49b8b18deb4d712e1","timingsMs":{"prReadinessMs":452,"approvedPlanMs":0,"shipAndProveMs":16737,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create replacement work.","receiptRef":{"mode":"full","missionId":"d04d0cdf-8794-4241-a006-24c15ffc3802"},"performance":null,"deploymentId":null,"workflowRunId":6856,"releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":794,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-10T21:18:52.893551+00:00","proof_gate":"canonical_release_reconciliation_pending","source_sha":null,"external_id":"2327","receipt_type":"automatic_mission_resume","idempotency_key":"mission:d04d0cdf-8794-4241-a006-24c15ffc3802:automatic-mission-resume:2327:canonical_release_reconciliation_pending","mission_step_id":"8aa40875-828e-476b-8c58-6043d4383396","command_center_event_id":"d04d0cdf-8794-4241-a006-24c15ffc3802"},{"id":"4e0c1119-5ae9-4b33-9b9b-a20c9dd60032","source":"cc-execution","status":"blocked","payload":{"ok":false,"jobId":null,"phase":"implementation","branch":"ai/prime-mcp-lockdown-live-20260908","reason":"control_plane_frozen_explicit_unfreeze_required","status":"blocked","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.77-mcp-oauth-es256","prNumber":null,"terminal":false,"missionId":"eb03e4aa-d652-4778-ad64-0b33e4fe13ec","operation":"execute_mission","proofGate":"repair_mission_execution_blocked","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":0,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":0,"missionSetupMs":1214,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":1214,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":1214,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":1214,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"eb03e4aa-d652-4778-ad64-0b33e4fe13ec"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1469,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-08T17:35:10.248523+00:00","proof_gate":"repair_mission_execution_blocked","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:eb03e4aa-d652-4778-ad64-0b33e4fe13ec:execute_mission:repair_mission_execution_blocked:current-generation","mission_step_id":"7c61b143-ed59-4358-8fdd-523c52671c7e","command_center_event_id":"eb03e4aa-d652-4778-ad64-0b33e4fe13ec"},{"id":"4e0d3137-3ecb-4a79-be52-a8103db6c059","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-f0d210f4f230","reason":"retryable_provider_transport:forgejo_provider_read_timeout","status":"retryable","metrics":{"receiptBytes":9110,"releaseCount":0,"toolCallCount":6,"repeatedCallCount":2,"executorlessWaitMs":168555,"firstUsefulResultAt":"2026-09-26T19:40:42.675Z","recoveryAttemptCount":3,"ownerInterruptionCount":0},"version":null,"prNumber":3821,"terminal":false,"missionId":"f0d210f4-f230-43f8-992c-31a5d7aedf08","operation":"automatic_mission_resume","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"prReadinessMs":5444,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"f0d210f4-f230-43f8-992c-31a5d7aedf08"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":819,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-26T19:43:05.129782+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"3821","receipt_type":"automatic_mission_resume","idempotency_key":"mission:f0d210f4-f230-43f8-992c-31a5d7aedf08:automatic-mission-resume:3821:repair_mission_pr_ready_retryable","mission_step_id":"382cd212-be22-4007-a59e-0bcc7dae37d4","command_center_event_id":"f0d210f4-f230-43f8-992c-31a5d7aedf08"},{"id":"4e0e43a0-a3dc-41ed-9a33-dfe28f55b8fe","source":"durable-mission-ledger","status":"verified","payload":{"sourceSha":"1f0add3b27a005de66974888e15fd729ee83e0bf","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"parallel-deep","satisfied":true,"statement":"Deep PAUL reasoning runs compact planning concurrently with the deep candidate instead of serially.","proofConditionIds":["proof-repository","proof-release","proof-runtime"]},{"id":"conditional-critic","satisfied":true,"statement":"A second critic pass runs only for material risk, contradiction, low confidence, unresolved unknowns, or completion/live/deploy/merge/fix claims.","proofConditionIds":["proof-repository","proof-runtime"]},{"id":"fast-critic","satisfied":true,"statement":"When needed, the critic uses the standard reasoning lane because the candidate already performed deep reasoning.","proofConditionIds":["proof-repository","proof-runtime"]}],"satisfied":true,"constraints":[{"id":"scope","satisfied":true,"statement":"Change only the three declared PAUL control-plane and regression files.","proofConditionIds":["proof-repository"]},{"id":"safety","satisfied":true,"statement":"Do not weaken completion-proof, correction recovery, tool repair, authorization, provider-neutral routing, or tenant isolation.","proofConditionIds":["proof-repository","proof-runtime"]},{"id":"capability-completeness","satisfied":true,"statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","proofConditionIds":["proof-repository","proof-release","proof-runtime"]},{"id":"atomic-capability-lifecycle","satisfied":true,"statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","proofConditionIds":["proof-repository","proof-release","proof-runtime"]}],"contractHash":"2fbe0bed252beee15740a750b0463582a7bfe185ea23eaff207c3755ec9476cc","releaseBound":true,"witnessBound":false,"visualRequested":false,"visualSatisfied":true,"conditionResults":[{"id":"proof-repository","kind":"repository","evidence":{"reason":null,"gateRunId":13885,"satisfied":true,"gateTestProof":null,"gateTestPassed":false,"missingTargets":[],"gateTestExecuted":false,"disallowedTargets":[],"migrationRequired":false,"namedGateTestPath":null,"releaseTargetStates":{"ccExecution":"success"},"repositoryProofGate":"request_contract_repository_verified","repositoryProofPath":null,"requestContractHash":"2fbe0bed252beee15740a750b0463582a7bfe185ea23eaff207c3755ec9476cc","unsuccessfulTargets":[],"activeReleaseTargets":["ccExecution"],"allowedReleaseTargets":[],"repositoryProofStatus":"verified","expectedRepositoryPath":null,"namedGateTestSatisfied":true,"requiredReleaseTargets":[],"migrationReleaseVerified":null,"repositoryConditionBound":true,"repositoryProofSourceSha":"1f0add3b27a005de66974888e15fd729ee83e0bf"},"required":true,"satisfied":true},{"id":"proof-release","kind":"release","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":false,"releaseTargetStates":{"ccExecution":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["ccExecution"],"allowedReleaseTargets":[],"requiredReleaseTargets":["ccExecution"],"migrationReleaseVerified":null,"releaseRequestContractHash":"2fbe0bed252beee15740a750b0463582a7bfe185ea23eaff207c3755ec9476cc"},"required":true,"satisfied":true},{"id":"proof-runtime","kind":"runtime","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":false,"releaseTargetStates":{"ccExecution":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["ccExecution"],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"migrationReleaseVerified":null,"releaseRequestContractHash":"2fbe0bed252beee15740a750b0463582a7bfe185ea23eaff207c3755ec9476cc"},"required":true,"satisfied":true}],"validationErrors":[],"pendingProofKinds":[],"activeReleaseTargets":["ccExecution"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-01T14:59:43.694778+00:00","proof_gate":"request_contract_terminal_verified","source_sha":"1f0add3b27a005de66974888e15fd729ee83e0bf","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:6d5e5608-0a08-4555-9b9b-93ec6034991a:request-contract:2fbe0bed252beee15740a750b0463582a7bfe185ea23eaff207c3755ec9476cc:1f0add3b27a005de66974888e15fd729ee83e0bf:verified:","mission_step_id":"b70cd144-80b0-4840-9b7f-8c61136034d6","command_center_event_id":"6d5e5608-0a08-4555-9b9b-93ec6034991a"},{"id":"4e0f1494-dc66-480b-a59a-839cb1de78b5","source":"cc-execution","status":"release_reconciliation_pending","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-c8d862995f21","reason":null,"status":"release_reconciliation_pending","metrics":{"receiptBytes":7317,"releaseCount":0,"toolCallCount":4,"repeatedCallCount":2,"executorlessWaitMs":103451,"firstUsefulResultAt":"2026-09-29T05:11:15.074Z","recoveryAttemptCount":2,"ownerInterruptionCount":0},"version":null,"prNumber":4114,"terminal":false,"missionId":"c8d86299-5f21-49d8-8ed5-5d5b5b769f84","operation":"automatic_mission_resume","proofGate":"canonical_release_reconciliation_pending","sourceSha":"ea7e9e31526069553d24952de9813eb69afc07a7","timingsMs":{"prReadinessMs":780,"approvedPlanMs":0,"shipAndProveMs":2939,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"reconcile_release","receiptRef":{"mode":"full","missionId":"c8d86299-5f21-49d8-8ed5-5d5b5b769f84"},"performance":null,"deploymentId":"forgejo-main-ea7e9e315260","releaseState":null,"workflowRunId":null,"releaseTargets":{"frontend":true,"migrations":false,"ccExecution":false,"supabaseEdge":true,"edgeFunctionSlugs":["operator-respond"]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1944,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"9602e177-0cbb-496c-bdf5-2fbc93f1b859","created_at":"2026-09-29T05:16:05.69574+00:00","proof_gate":"canonical_release_reconciliation_pending","source_sha":null,"external_id":"4114","receipt_type":"automatic_mission_resume","idempotency_key":"mission:c8d86299-5f21-49d8-8ed5-5d5b5b769f84:automatic-mission-resume:4114:canonical_release_reconciliation_pending","mission_step_id":"4912a8e5-6b82-4d70-ab66-58bc8378c279","command_center_event_id":"c8d86299-5f21-49d8-8ed5-5d5b5b769f84"},{"id":"4e119cdb-9d01-443d-8754-90d5db2f4385","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/visual-witness-app-origin-auth","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":2865,"releaseCount":0,"toolCallCount":3,"repeatedCallCount":2,"ownerInterruptionCount":0},"version":"1.30.16-controlled-merge-fallback-fix","prNumber":4055,"terminal":false,"missionId":"d5e17c5a-223e-4fa5-bb4d-99e190c23b27","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":null,"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and recall /repair/execute-mission automatically without another owner prompt.","receiptRef":{"mode":"full","missionId":"d5e17c5a-223e-4fa5-bb4d-99e190c23b27"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"onePullRequest":true,"terminalProofRequired":true},"sourceReceiptBytes":2561,"likelyAffectedFiles":[],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-08-05T14:28:20.355682+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":"4055","receipt_type":"execute_mission","idempotency_key":"mission:d5e17c5a-223e-4fa5-bb4d-99e190c23b27:execute_mission:repair_mission_synthesis_ready","mission_step_id":"d7d2cc74-deb1-438c-8cb5-d4402a292092","command_center_event_id":"d5e17c5a-223e-4fa5-bb4d-99e190c23b27"},{"id":"4e132ea4-95b9-4341-985d-6de7d293ff94","source":"cc-execution","status":"waiting_for_gate","payload":{"ok":true,"jobId":null,"phase":"implementation","branch":"ai/objective-first-repair-65dfaf9c1483","reason":"fresh_pr_provider_receipt_already_proves_auto_progress_gate_notifier_owns_next_state","status":"waiting_for_gate","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.118-architecture-exclusivity","prNumber":2519,"terminal":false,"missionId":"65dfaf9c-1483-40f5-9ace-8b2f6f929492","operation":"execute_mission","proofGate":"repair_mission_fresh_pr_handed_off_to_gate","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":18439,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":0,"missionSetupMs":286,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":286,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":286,"repositoryMutationMs":18439,"repositoryProviderMs":14945,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":7615,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":286,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":7330},"nextAction":"Canonical KnockLaunch Gate notifier and mission supervisor own progression from this exact PR head; do not synchronously poll Forgejo from the owner request.","receiptRef":{"mode":"full","missionId":"65dfaf9c-1483-40f5-9ace-8b2f6f929492"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":3401,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-12T18:43:09.677399+00:00","proof_gate":"repair_mission_fresh_pr_handed_off_to_gate","source_sha":null,"external_id":"2519","receipt_type":"execute_mission","idempotency_key":"mission:65dfaf9c-1483-40f5-9ace-8b2f6f929492:execute_mission:repair_mission_fresh_pr_handed_off_to_gate:current-generation","mission_step_id":"c53553e5-4373-4a83-87b8-0812d607bef3","command_center_event_id":"65dfaf9c-1483-40f5-9ace-8b2f6f929492"},{"id":"4e135006-e128-4fbe-93e3-63a02366b5c8","source":"forgejo-runtime","status":"verified","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"success","cc-execution/runtime-proof":"success"},"mainSha":"cf45771b5e55941bd80cc6ff4f47f6822b9aed3a","missing":[],"pending":[],"required":["forgejo-main/source","forgejo-release/workflow","cc-execution/runtime-proof"],"sourceSha":"cf45771b5e55941bd80cc6ff4f47f6822b9aed3a","releaseState":"verified","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":false,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"ccExecution":"success"},"requestContractHash":"0784cf8a61013b34e8f19181b2acc2f82539c96d74093dc2a088d39a60567da7","forgejoWorkflowProof":{"runId":15770,"source":"exact_live_cc_execution_runtime_identity","status":"running","liveSha":"cf45771b5e55941bd80cc6ff4f47f6822b9aed3a","results":{},"proofGate":"cc_execution_exact_live_runtime_substitutes_transient_workflow_receipt","sourceSha":"cf45771b5e55941bd80cc6ff4f47f6822b9aed3a","conclusion":"running","deploymentId":"forgejo-main-cf45771b5e55941bd80cc6ff4f47f6822b9aed3a","targetStates":{"ccExecution":"pending"},"runtimeVersion":"1.64.97-boring-release-v1","targetJobCount":7,"observedTargetStates":{"ccExecution":"pending"},"workflowReceiptSubstituted":true},"releaseSourceVerified":true,"ccExecutionRuntimeProof":{"liveSha":"cf45771b5e55941bd80cc6ff4f47f6822b9aed3a","proofGate":"cc_execution_target_aware_runtime_identity_verified","deploymentId":"forgejo-main-cf45771b5e55941bd80cc6ff4f47f6822b9aed3a","compareStatus":"identical","workflowRunId":15770,"identitySource":"local_build_metadata","runtimeVersion":"1.64.97-boring-release-v1","workflowFailed":false,"containsSourceSha":true},"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-05T16:07:05.273201+00:00","proof_gate":"canonical_release_terminal_verified","source_sha":"cf45771b5e55941bd80cc6ff4f47f6822b9aed3a","external_id":"forgejo-main-cf45771b5e55","receipt_type":"canonical_release_status","idempotency_key":"mission:82679b2e-4ea6-40a4-bb11-dfa34a674290:forgejo-release-status:cf45771b5e55941bd80cc6ff4f47f6822b9aed3a:verified:forgejo-main/source=success|forgejo-release/workflow=success|cc-execution/runtime-proof=success","mission_step_id":"5e8d1a02-0a12-43e8-9c5b-8aeb476679cf","command_center_event_id":"82679b2e-4ea6-40a4-bb11-dfa34a674290"},{"id":"4e156449-77fc-4f12-b870-47d2b64564e8","source":"forgejo-runtime","status":"superseded","payload":{"reason":"forgejo_release_source_not_contained_in_current_main","mainSha":"d60794d0a2b65f4735f0b28b91867dc5dc922d80","sourceSha":"44f26a7b3df6851f9ab6c51370ea2f63aa3dc877","deploymentId":"forgejo-main-44f26a7b3df6","releaseState":"superseded","sourceInMain":false,"compareStatus":null,"workflowRunId":5710},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-06T00:53:45.509812+00:00","proof_gate":"canonical_release_source_superseded_by_current_main","source_sha":"44f26a7b3df6851f9ab6c51370ea2f63aa3dc877","external_id":"forgejo-main-44f26a7b3df6","receipt_type":"canonical_release_status","idempotency_key":"mission:6937df13-bcf1-4128-b5eb-c8aa6626b43d:forgejo-release-status:44f26a7b3df6851f9ab6c51370ea2f63aa3dc877:superseded:d60794d0a2b65f4735f0b28b91867dc5dc922d80","mission_step_id":"2a6b2ad3-ef38-4c0f-936a-15f0f0ba539f","command_center_event_id":"6937df13-bcf1-4128-b5eb-c8aa6626b43d"},{"id":"4e170fca-5a4a-4b62-9a55-4e1a76478a19","source":"cc-execution","status":"blocked","payload":{"ok":false,"jobId":null,"phase":"release","branch":"ai/objective-first-repair-899698484640","reason":"canonical_release_queue_busy:14718","status":"blocked","metrics":{"receiptBytes":109363,"releaseCount":0,"toolCallCount":11,"repeatedCallCount":4,"executorlessWaitMs":184905,"firstUsefulResultAt":"2026-10-03T03:06:09.234Z","recoveryAttemptCount":5,"ownerInterruptionCount":0},"version":"1.64.70-paul-conversation-examples","prNumber":4604,"terminal":false,"missionId":"89969848-4640-4a75-a745-fde1ec865764","operation":"execute_mission","proofGate":"canonical_release_blocked","sourceSha":"11333c7e825636c21e4f2843eca02fa490880c35","timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":948,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":92,"approvedPlanMs":0,"missionSetupMs":1022,"providerAuthMs":0,"shipAndProveMs":511,"ledgerPrepareMs":248,"ledgerReconcileMs":0,"lineageReconcileMs":774,"resolvePreflightMs":1022,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":248,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"89969848-4640-4a75-a745-fde1ec865764"},"performance":null,"deploymentId":"forgejo-main-11333c7e8256","releaseState":"pending","workflowRunId":14718,"releaseTargets":{"frontend":true,"migrations":false,"ccExecution":false,"supabaseEdge":true,"edgeFunctionSlugs":["tennex-contact-directory"]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1406,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-03T03:09:15.822709+00:00","proof_gate":"canonical_release_blocked","source_sha":"11333c7e825636c21e4f2843eca02fa490880c35","external_id":"forgejo-main-11333c7e8256","receipt_type":"execute_mission","idempotency_key":"mission:89969848-4640-4a75-a745-fde1ec865764:execute_mission:canonical_release_blocked:current-generation","mission_step_id":"629eb3d8-b016-4b3e-8984-de719886ddcf","command_center_event_id":"89969848-4640-4a75-a745-fde1ec865764"},{"id":"4e18a0de-45a4-4594-afde-cbf489c24075","source":"cc-execution","status":"waiting_for_gate","payload":{"ok":true,"jobId":null,"phase":"implementation","branch":"ai/objective-first-repair-5c128a375107","reason":"provider_verified_auto_progress_owns_gate_merge_release_outside_owner_response","status":"waiting_for_gate","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.209-visual-certification-hardening","prNumber":3379,"terminal":false,"missionId":"5c128a37-5107-47e0-a622-6846b1829ad2","operation":"execute_mission","proofGate":"repair_mission_pr_handed_off_to_supervisor","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":5163,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":1272,"missionSetupMs":291,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":291,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":291,"repositoryMutationMs":3891,"repositoryProviderMs":3891,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":2261,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":291,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":1630},"nextAction":"Canonical KnockLaunch Gate notifier and durable mission supervisor own Gate, merge, release, and proof progression from this exact PR head outside the owner response path.","receiptRef":{"mode":"full","missionId":"5c128a37-5107-47e0-a622-6846b1829ad2"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime","visual"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":3570,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-22T00:16:40.135636+00:00","proof_gate":"repair_mission_pr_handed_off_to_supervisor","source_sha":null,"external_id":"3379","receipt_type":"execute_mission","idempotency_key":"mission:5c128a37-5107-47e0-a622-6846b1829ad2:execute_mission:repair_mission_pr_handed_off_to_supervisor:current-generation","mission_step_id":"abd097dc-578b-4352-bbfc-6241471512eb","command_center_event_id":"5c128a37-5107-47e0-a622-6846b1829ad2"},{"id":"4e1919ab-8a19-42a0-85e4-903d47eba862","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in visual proof.","nextAction":{"lane":"visual-sandbox","action":"verify_visual","reason":"release_verified_visual_proof_pending","automationAllowed":true,"ownerActionRequired":false},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"visual_proof\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"owner_wait_live_milestone\",\"status\":\"verified\",\"proofGate\":\"owner_wait_live_milestone_recorded\"},\"activeStep\":{\"key\":\"implementation\",\"status\":\"waiting\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"pull_request\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextSafeAction\":{\"action\":\"verify_visual\",\"lane\":\"visual-sandbox\",\"reason\":\"release_verified_visual_proof_pending\",\"automationAllowed\":true,\"ownerActionRequired\":false},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"cc-execution\",\"nextAction\":\"verify_visual\",\"recoveryOwner\":\"visual-sandbox\"},\"acceptance\":{\"total\":2,\"verified\":1,\"pending\":1,\"percent\":50,\"satisfied\":false,\"verifiedIds\":[\"proof-production\"],\"pendingIds\":[\"proof-visual\"]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":\"visual_proof\",\"deadlineAt\":\"2026-10-05T22:08:28.519258+00:00\",\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":\"ai/objective-first-repair-fa15585b2bbc\",\"prNumber\":5022,\"sourceSha\":\"c5edc990eff5d2e8abef0eb3fa1b21f7fd5b6182\",\"deploymentId\":\"forgejo-main-c5edc990eff5\"}"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-05T18:32:45.624128+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:fa15585b-2bbc-40fa-9a1a-04e608e38761:owner-progress-heartbeat:119415010","mission_step_id":"45ab2b6c-40ac-4bc0-aff1-16a8f5f54573","command_center_event_id":"fa15585b-2bbc-40fa-9a1a-04e608e38761"},{"id":"4e19e43d-b02a-4da6-ba54-78514e6464a1","source":"cc-execution","status":"authorized","payload":{"paths":["workers/cc-execution/src/index-scoped-repo-patch.js","workers/cc-execution/test/release-orchestration-invariants.test.js"],"reason":"Owner explicitly authorized: Unfreeze the control plane for the orphan-branch recovery repair.","baseSha":"5faf0c2fda90ebf18ef643bee0920026cdedb9d0","issuedAt":1788982097191,"expiresAt":1788982277191,"missionId":"98fa1b97-f156-427e-9e12-45259b028935","authorizationId":"80a1e776-fe37-49dc-b278-dea5c41ba234","retryableWithinExactScope":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-09T19:28:18.174306+00:00","proof_gate":"control_plane_maintenance_scope_authorized","source_sha":"5faf0c2fda90ebf18ef643bee0920026cdedb9d0","external_id":null,"receipt_type":"control_plane_maintenance_authorization","idempotency_key":"control-plane-maintenance-authorize:80a1e776-fe37-49dc-b278-dea5c41ba234","mission_step_id":"07b183c7-36fb-4d4b-a047-a46c4510c3b8","command_center_event_id":"98fa1b97-f156-427e-9e12-45259b028935"},{"id":"4e1d4443-1834-443f-839e-1cc9238c9a8a","source":"cc-execution","status":"blocked","payload":{"ok":false,"jobId":null,"phase":"release","branch":"ai/objective-first-repair-f976d803e66e","reason":"retryable_provider_transport:forgejo_provider_read_timeout","status":"blocked","metrics":{"receiptBytes":0,"releaseCount":1,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":null,"prNumber":2229,"terminal":false,"missionId":"f976d803-e66e-4f6f-afc3-2161b3c38ff6","operation":"automatic_mission_resume","proofGate":"ship_and_prove_gate_blocked","sourceSha":"52caadb8a15ac752e42150bb9e56cc4e6b8fc652","timingsMs":{"prReadinessMs":839,"approvedPlanMs":0,"shipAndProveMs":1205,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"f976d803-e66e-4f6f-afc3-2161b3c38ff6"},"performance":null,"deploymentId":"forgejo-main-52caadb8a15a","workflowRunId":6575,"releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":920,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-09T12:11:34.281021+00:00","proof_gate":"ship_and_prove_gate_blocked","source_sha":null,"external_id":"2229","receipt_type":"automatic_mission_resume","idempotency_key":"mission:f976d803-e66e-4f6f-afc3-2161b3c38ff6:automatic-mission-resume:2229:ship_and_prove_gate_blocked","mission_step_id":"865a9bac-70aa-423c-8285-da92badb32a8","command_center_event_id":"f976d803-e66e-4f6f-afc3-2161b3c38ff6"},{"id":"4e1e85da-33ec-47b5-8c49-c3bbfc0e0a1f","source":"durable-mission-ledger","status":"verified","payload":{"sourceSha":"6e6963d7db927cc610eb81f9b3e02d5fa995b633","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"outcome-1","satisfied":true,"statement":"Fix Big Papi's static Facebook image delivery in supabase/functions/tenant-photo-studio/index.ts. The live public site already routes Facebook lookaside image URLs through tenant-photo-studio mode=raw-public, but the function currently rejects every host except the KnockLaunch R2 host. Extend raw-public narrowly so GET/HEAD requests whose original hostname is lookaside.fbsbx.com are fetched server-side, redirects followed by the server, and only successful image/* responses up to MAX_FILE_BYTES are streamed back with CORS, Cross-Origin-Resource-Policy: cross-origin, X-Content-Type-Options: nosniff, and public caching. Preserve the existing R2 redirect/stream behavior unchanged. Do not create a generic open proxy. Deploy only tenant-photo-studio, then verify the Big Papi public homepage no longer has ORB/blank Facebook image failures.","proofConditionIds":["proof-production"]}],"satisfied":true,"constraints":[{"id":"capability-completeness","satisfied":true,"statement":"Keep raw-public fail-closed and allow only the existing KnockLaunch R2 host plus the exact Facebook lookaside image origin; never become a generic URL proxy.","proofConditionIds":["proof-production"]},{"id":"atomic-capability-lifecycle","satisfied":true,"statement":"Do not claim completion until tenant-photo-studio is deployed and the live Big Papi public site loads these images without ORB failures.","proofConditionIds":["proof-production"]}],"contractHash":"9e737bdc95c8ad1cbec3d198594f8667a9f7944e63fb50d8a2ebf0ef54cd8fb2","releaseBound":true,"witnessBound":false,"visualRequested":false,"visualSatisfied":true,"conditionResults":[{"id":"proof-production","kind":"runtime","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":false,"releaseTargetStates":{"supabaseEdge":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["supabaseEdge"],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"migrationReleaseVerified":null,"releaseRequestContractHash":"9e737bdc95c8ad1cbec3d198594f8667a9f7944e63fb50d8a2ebf0ef54cd8fb2"},"required":true,"satisfied":true}],"validationErrors":[],"pendingProofKinds":[],"activeReleaseTargets":["supabaseEdge"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-03T12:53:28.978182+00:00","proof_gate":"request_contract_terminal_verified","source_sha":"6e6963d7db927cc610eb81f9b3e02d5fa995b633","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:df5384eb-e464-45e8-8d0f-7e6dab667701:request-contract:9e737bdc95c8ad1cbec3d198594f8667a9f7944e63fb50d8a2ebf0ef54cd8fb2:6e6963d7db927cc610eb81f9b3e02d5fa995b633:verified:","mission_step_id":"5893acf6-258d-4f50-8612-acf7d27a2642","command_center_event_id":"df5384eb-e464-45e8-8d0f-7e6dab667701"},{"id":"4e1e872e-7475-4cc4-8f4d-fcec81bc0ba7","source":"cc-execution","status":"blocked","payload":{"reason":"compiler_recovery_diff_window_limit","failureClass":null,"sourceTargets":["src/pages/card-grading/PCGSlabUpload.tsx"],"dependencyReason":null,"dependencyStatus":null,"providerAttempts":[],"automaticExecutorAssigned":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-15T16:25:08.131961+00:00","proof_gate":"bounded_implementation_checkpoint_persisted","source_sha":"4f0aa11e8de86d9d4518aeca942ddf6d769bfe98","external_id":null,"receipt_type":"bounded_implementation_continuation","idempotency_key":"mission:53b3096b-3f67-4720-b692-12c0822ac4b6:compiler:4f0aa11e8de86d9d4518aeca942ddf6d769bfe98:src/pages/card-grading/PCGSlabUpload.tsx","mission_step_id":"94e7a139-0460-45d4-a8cc-fc6a9ff01acd","command_center_event_id":"53b3096b-3f67-4720-b692-12c0822ac4b6"},{"id":"4e214db5-9b61-4b19-be22-3fbb83c9ccdf","source":"github-status","status":"pending","payload":{"failed":[],"states":{"canonical-production-release/verified":"pending"},"missing":[],"pending":["canonical-production-release/verified"],"required":["canonical-production-release/verified"],"sourceSha":"f329a49b5befe526e5dce76c9ecfe9acdc50d611","releaseState":"pending","exactConductorRun":{"id":31263670387,"status":"in_progress","headSha":"e9da718e84c81c91a542d86a1e68235303066045","conclusion":null,"compareStatus":"ahead","sourceMatches":false,"containsSourceSha":true,"reconciliationMode":"cumulative_descendant_conductor_adoption"},"ccExecutionRuntimeProof":null},"tenant_id":"c55998b4-82a3-467e-8d35-177bb4785f6e","created_at":"2026-08-08T15:07:45.71925+00:00","proof_gate":"canonical_release_pending","source_sha":"f329a49b5befe526e5dce76c9ecfe9acdc50d611","external_id":"canonical-release-f329a49b5bef","receipt_type":"canonical_release_status","idempotency_key":"mission:b2bd6d3d-98e6-4265-ba2b-a9ab6e1942dc:release-status:f329a49b5befe526e5dce76c9ecfe9acdc50d611:31263670387:pending:canonical-production-release/verified=pending","mission_step_id":"1e30d4cd-cb73-4aff-b1c0-d04e35bbb1dd","command_center_event_id":"b2bd6d3d-98e6-4265-ba2b-a9ab6e1942dc"},{"id":"4e231cb4-e89f-4681-8db9-1e7adf31c4ae","source":"durable-mission-ledger","status":"verified","payload":{"sourceSha":"a8db7ed34168aa096b88f7b70c8bedfd992bd92c","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"status-cache","satisfied":true,"statement":"Authorized read-only status calls use a 30-second per-tenant in-isolate cache.","proofConditionIds":["proof-live"]},{"id":"health-cache","satisfied":true,"statement":"Platform health reads inside reconcileTenant are single-flighted and cached for 15 seconds.","proofConditionIds":["proof-live"]},{"id":"invalidation","satisfied":true,"statement":"Mutating, reconcile, mark_launched, and health_tick paths invalidate relevant caches so state changes remain promptly visible.","proofConditionIds":["proof-live"]}],"satisfied":true,"constraints":[{"id":"auth","satisfied":true,"statement":"Authorization is never cached or bypassed.","proofConditionIds":["proof-live"]},{"id":"provider","satisfied":true,"statement":"Do not change Zoho token refresh, provider retry, or continuity transition semantics.","proofConditionIds":["proof-live"]},{"id":"capability-completeness","satisfied":true,"statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","proofConditionIds":["proof-live"]},{"id":"atomic-capability-lifecycle","satisfied":true,"statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","proofConditionIds":["proof-live"]}],"contractHash":"6ee1e90e57a5a8c1fc4b82dda1bbb052953a0c78de44d8da7246be5a5a42cc66","releaseBound":true,"witnessBound":false,"visualRequested":false,"visualSatisfied":true,"conditionResults":[{"id":"proof-live","kind":"runtime","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":false,"releaseTargetStates":{"supabaseEdge":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["supabaseEdge"],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"migrationReleaseVerified":null,"releaseRequestContractHash":"6ee1e90e57a5a8c1fc4b82dda1bbb052953a0c78de44d8da7246be5a5a42cc66"},"required":true,"satisfied":true}],"validationErrors":[],"pendingProofKinds":[],"activeReleaseTargets":["supabaseEdge"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-05T15:27:14.62427+00:00","proof_gate":"request_contract_terminal_verified","source_sha":"a8db7ed34168aa096b88f7b70c8bedfd992bd92c","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:e0157909-a480-4d21-a890-5e8967a1412c:request-contract:6ee1e90e57a5a8c1fc4b82dda1bbb052953a0c78de44d8da7246be5a5a42cc66:a8db7ed34168aa096b88f7b70c8bedfd992bd92c:verified:","mission_step_id":"1597b838-7de9-4798-9fa9-5d9753adeecd","command_center_event_id":"e0157909-a480-4d21-a890-5e8967a1412c"},{"id":"4e245f08-476a-431d-af32-f0ac727ce89e","source":"cc-execution","status":"blocked","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":null,"reason":"anchored_edit_anchor_missing:workers/cc-execution/test/release-orchestration-invariants.test.js","status":"blocked","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.121-bounded-transient-gate-recovery","prNumber":null,"terminal":false,"missionId":"2056728e-de70-48c4-98b5-fa0bb1d2ec76","operation":"execute_mission","proofGate":"repair_mission_execution_blocked","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":6137,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":0,"missionSetupMs":293,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":293,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":293,"repositoryMutationMs":6137,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":293,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"2056728e-de70-48c4-98b5-fa0bb1d2ec76"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1571,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-13T00:54:44.603494+00:00","proof_gate":"repair_mission_execution_blocked","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:2056728e-de70-48c4-98b5-fa0bb1d2ec76:execute_mission:repair_mission_execution_blocked:current-generation","mission_step_id":"81f36ab2-bd83-4e63-a0f0-b69f538ddf91","command_center_event_id":"2056728e-de70-48c4-98b5-fa0bb1d2ec76"},{"id":"4e25168b-431f-4d4d-89b7-fc40a1ad5d1b","source":"cc-execution","status":"release_verified_contract_pending","payload":{"ok":true,"jobId":null,"phase":"release","branch":"ai/objective-first-repair-6806c3bbf4bf","reason":null,"status":"release_verified_contract_pending","metrics":{"receiptBytes":22703,"releaseCount":1,"toolCallCount":13,"repeatedCallCount":4,"executorlessWaitMs":574652,"firstUsefulResultAt":"2026-09-24T13:30:30.264Z","recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.58.251-forgejo-targeted-source","prNumber":3614,"terminal":false,"missionId":"6806c3bb-f4bf-45d7-b74f-7b5d8f3bda66","operation":"execute_mission","proofGate":"canonical_release_already_verified","sourceSha":"385c45171dd6cf63815c99d9b5f681d4ee565601","timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":1417,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":222,"approvedPlanMs":0,"missionSetupMs":1417,"providerAuthMs":0,"shipAndProveMs":677,"ledgerPrepareMs":361,"ledgerReconcileMs":0,"lineageReconcileMs":1056,"resolvePreflightMs":1417,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":361,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"6806c3bb-f4bf-45d7-b74f-7b5d8f3bda66"},"performance":null,"deploymentId":"forgejo-main-385c45171dd6","releaseState":"pending","workflowRunId":11475,"releaseTargets":{"frontend":false,"onrunner":false,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":2512,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-24T13:40:07.222397+00:00","proof_gate":"canonical_release_already_verified","source_sha":"385c45171dd6cf63815c99d9b5f681d4ee565601","external_id":"forgejo-main-385c45171dd6","receipt_type":"execute_mission","idempotency_key":"mission:6806c3bb-f4bf-45d7-b74f-7b5d8f3bda66:execute_mission:canonical_release_already_verified:current-generation","mission_step_id":"f68797ae-70a7-4fd6-9694-2f016ce274bd","command_center_event_id":"6806c3bb-f4bf-45d7-b74f-7b5d8f3bda66"},{"id":"4e25e864-317b-4577-a6ff-2efa48786fdb","source":"forgejo-runtime","status":"verified","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"success","cc-execution/runtime-proof":"success"},"mainSha":"111d2ec86c2928d4cf76b9f90d2b53eb31d4698c","missing":[],"pending":[],"required":["forgejo-main/source","forgejo-release/workflow","cc-execution/runtime-proof"],"sourceSha":"111d2ec86c2928d4cf76b9f90d2b53eb31d4698c","releaseState":"verified","sourceInMain":true,"compareStatus":"identical","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/1679","runId":1679,"status":"success","conclusion":null,"failedJobs":[],"diagnostics":null},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":{"liveSha":"111d2ec86c2928d4cf76b9f90d2b53eb31d4698c","deploymentId":"forgejo-main-111d2ec86c2928d4cf76b9f90d2b53eb31d4698c","compareStatus":"identical","identitySource":"local_build_metadata","runtimeVersion":"1.48.4-single-mutation-lane","containsSourceSha":true},"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-20T03:48:37.13887+00:00","proof_gate":"canonical_release_terminal_verified","source_sha":"111d2ec86c2928d4cf76b9f90d2b53eb31d4698c","external_id":"forgejo-main-111d2ec86c29","receipt_type":"canonical_release_status","idempotency_key":"mission:b7397365-f5ea-49ee-81c0-a7acfb235dd6:forgejo-release-status:111d2ec86c2928d4cf76b9f90d2b53eb31d4698c:verified:forgejo-main/source=success|forgejo-release/workflow=success|cc-execution/runtime-proof=success","mission_step_id":"f9719ba0-dd20-4390-878c-e80ab63df275","command_center_event_id":"b7397365-f5ea-49ee-81c0-a7acfb235dd6"},{"id":"4e280a47-9810-41e1-9481-133a0e2fe3c8","source":"cc-execution","status":"blocked","payload":{"reason":"compiler_model_generation_failed","sourceTargets":["src/__tests__/contracts/pcgCollectorStageFallback.contract.test.ts","src/pages/card-grading/PCGCardPhotos.tsx","src/pages/card-grading/PCGCollectorCardStage.tsx","src/pages/card-grading/PCGPublicSite.tsx","src/pages/card-grading/pcgSlabPhotoTone.test.ts","src/pages/card-grading/pcgSlabPresentation.ts"]},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-10T19:54:58.105925+00:00","proof_gate":"bounded_implementation_checkpoint_persisted","source_sha":"70c8fb9e844c4e859825f194073e5e3b9803f0ff","external_id":null,"receipt_type":"bounded_implementation_continuation","idempotency_key":"mission:4a87e7ad-3503-4e9a-bba9-6d9d3f5559d8:compiler:70c8fb9e844c4e859825f194073e5e3b9803f0ff:src/__tests__/contracts/pcgCollectorStageFallback.contract.test.ts,src/pages/card-grading/PCGCardPhotos.tsx,src/pages/card-grading/PCGCollectorCardStage.tsx,src/pages/card-grading/PCGPublicSite.tsx,src/pages/card-grading/pcgSlabPhotoTone.test.ts,src/pages/card-grading/pcgSlabPresentation.ts","mission_step_id":null,"command_center_event_id":"4a87e7ad-3503-4e9a-bba9-6d9d3f5559d8"},{"id":"4e29442f-13ac-4417-8bb2-b1228b8ce301","source":"forgejo","status":"retryable","payload":{"branch":"ai/objective-first-repair-75bc676f267f","merged":false,"prNumber":3345,"remediationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-21T12:23:51.805759+00:00","proof_gate":"forgejo_closed_pr_is_authoritative_source_lineage","source_sha":null,"external_id":"3345","receipt_type":"source_lineage_pr_closed_without_merge","idempotency_key":"mission:75bc676f-267f-400e-9dbe-9bb6bb84764e:closed-pr:3345:unmerged","mission_step_id":"f8b0b025-4e2a-4f57-9459-b89ed4011f48","command_center_event_id":"75bc676f-267f-400e-9dbe-9bb6bb84764e"},{"id":"4e2a9251-abf1-4929-a3f6-1360e57c0e3a","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-662295c97746","reason":"retryable_provider_transport:forgejo_provider_read_timeout","status":"retryable","metrics":{"receiptBytes":34137,"releaseCount":0,"toolCallCount":11,"repeatedCallCount":3,"executorlessWaitMs":176882,"firstUsefulResultAt":"2026-10-03T03:40:53.332Z","recoveryAttemptCount":3,"ownerInterruptionCount":0},"version":null,"prNumber":4612,"terminal":false,"missionId":"662295c9-7746-4480-b0dc-356be287b9c6","operation":"automatic_mission_resume","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"prReadinessMs":2177,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"662295c9-7746-4480-b0dc-356be287b9c6"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":819,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-03T03:43:41.588796+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"4612","receipt_type":"automatic_mission_resume","idempotency_key":"mission:662295c9-7746-4480-b0dc-356be287b9c6:automatic-mission-resume:4612:repair_mission_pr_ready_retryable","mission_step_id":"f30d9bcd-5fb9-4df4-b7df-a1926e9844d3","command_center_event_id":"662295c9-7746-4480-b0dc-356be287b9c6"},{"id":"4e2aad3f-9a38-4ab7-8e21-b6068c280a42","source":"forgejo-runtime","status":"verified","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"success","frontend-cloudflare/live":"success"},"mainSha":"779bb5eff37d473fec0de7ea5edc06b76e7e1ac4","missing":[],"pending":[],"required":["forgejo-main/source","forgejo-release/workflow","frontend-cloudflare/live"],"sourceSha":"779bb5eff37d473fec0de7ea5edc06b76e7e1ac4","releaseState":"verified","sourceInMain":true,"compareStatus":"identical","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/1153","runId":1153,"status":"success","conclusion":null,"failedJobs":[],"diagnostics":null},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"766cfaa7-ac42-46c8-bbef-69d13268a29d","created_at":"2026-08-17T19:26:36.195848+00:00","proof_gate":"canonical_release_terminal_verified","source_sha":"779bb5eff37d473fec0de7ea5edc06b76e7e1ac4","external_id":"forgejo-main-779bb5eff37d","receipt_type":"canonical_release_status","idempotency_key":"mission:15afbb19-c23b-4ead-9279-a0e7593755ce:forgejo-release-status:779bb5eff37d473fec0de7ea5edc06b76e7e1ac4:verified:forgejo-main/source=success|forgejo-release/workflow=success|frontend-cloudflare/live=success","mission_step_id":"e31039a3-9590-46b7-915f-9ad3ffa6fa5c","command_center_event_id":"15afbb19-c23b-4ead-9279-a0e7593755ce"},{"id":"4e2bfbf0-7146-47ed-9b36-a5d40b6ce239","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/encore-portal-visible-files-20260825","reason":"The operation was aborted due to timeout","status":"retryable","metrics":{"receiptBytes":6162,"releaseCount":0,"toolCallCount":5,"repeatedCallCount":2,"ownerInterruptionCount":0},"version":null,"prNumber":735,"terminal":false,"missionId":"204d8170-323b-4435-82d6-b472f8e5e994","operation":"automatic_mission_resume","proofGate":"canonical_release_transport_retryable","sourceSha":null,"timingsMs":null,"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"204d8170-323b-4435-82d6-b472f8e5e994"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":599,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-25T06:03:11.946288+00:00","proof_gate":"canonical_release_transport_retryable","source_sha":null,"external_id":"735","receipt_type":"automatic_mission_resume","idempotency_key":"mission:204d8170-323b-4435-82d6-b472f8e5e994:automatic-mission-resume:735:canonical_release_transport_retryable","mission_step_id":"60fd7ebf-ef1e-4237-bab1-caab0dc73ce3","command_center_event_id":"204d8170-323b-4435-82d6-b472f8e5e994"},{"id":"4e2c983b-edac-439e-9155-1a76a20b465f","source":"forgejo","status":"waiting","payload":{"branch":"ai/objective-first-repair-91e9b69517a4","prNumber":3398,"nextAction":"Follow the existing canonical release to terminal proof.","mergeCommitSha":"78a806ab82720cdc837dca6a72c29b0b5473c130","branchDeletedAfterMerge":true,"correctiveGenerationCreated":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-22T03:03:32.136777+00:00","proof_gate":"forgejo_merged_pr_is_authoritative_source_lineage","source_sha":"78a806ab82720cdc837dca6a72c29b0b5473c130","external_id":"3398","receipt_type":"source_lineage_merged_pr_authoritative","idempotency_key":"mission:91e9b695-17a4-4a0e-98c6-d7af7ea2fca8:merged-pr:3398:78a806ab82720cdc837dca6a72c29b0b5473c130","mission_step_id":"7f3c652b-bbfc-4bc6-a5be-125c4360a3e9","command_center_event_id":"91e9b695-17a4-4a0e-98c6-d7af7ea2fca8"},{"id":"4e2e3d2d-35eb-4a07-95fe-9eaabfa844ee","source":"cc-execution","status":"recorded","payload":{"objective":"Urgent corrective generation for Big Papi proposal PDFs. The prior generation PR #493 is merged/deleted and must rotate to this fresh current-main branch. Fix only the proven PDF-generation defect and preserve the already-merged PDF.js customer viewer. In BigPapisQuotes: reuse SCETarping's outputHtml2PdfBlob validator, wait for proposal images and document.fonts.ready, remove avoid-all pagination, force Letter-sized html2canvas capture dimensions, and keep the isolated proposal root at top-left behind the app instead of 12000px off-canvas. In eventQuotes bump templateId v4 to v5 so broken stored v4 receipts regenerate. Preserve the approved BigPapisProposalDocument design/logo/event/service/pricing. Add a focused static contract proving v5, validated blob output, no avoid-all, font readiness, 816x1056 Letter capture, and branded EVENT/PROPOSAL document. Gate, squash merge, frontend-only release. Completion requires live production source identity; visual proof will be performed separately because owner explicitly requires the actual PDF to match.","tenantRef":"big-papis","receivedAt":"2026-08-20T19:34:34.415Z","fingerprint":"3e8998584542f25db0d5a1d201e8d2661346503549f2d32139b672d004ff87b6","workstreamRef":"bigpapis","conversationId":null,"canonicalBranch":"ai/big-papis-proposal-pdf-v5-20260820","requestedBranch":"ai/big-papis-proposal-pdf-v5-20260820","conversationContext":null},"tenant_id":"766cfaa7-ac42-46c8-bbef-69d13268a29d","created_at":"2026-08-20T19:34:34.919965+00:00","proof_gate":"tenant_workstream_contribution_recorded","source_sha":null,"external_id":null,"receipt_type":"tenant_workstream_contribution","idempotency_key":"mission:e3375a2f-be15-4218-9bc0-4efcd04ec1b9:tenant-workstream-contribution:3e8998584542f25db0d5a1d201e8d2661346503549f2d32139b672d004ff87b6","mission_step_id":null,"command_center_event_id":"e3375a2f-be15-4218-9bc0-4efcd04ec1b9"},{"id":"4e321c3a-b71a-4882-ac9f-3288f473ceb6","source":"durable-mission-ledger","status":"verified","payload":{"sourceSha":"91914339d3447259168f491ee550748ca907596b","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"raw-homepage","satisfied":true,"statement":"RoofHelpFinder homepage raw HTML is Roof Help Finder/Brevard specific before JavaScript and contains crawlable internal guide links.","proofConditionIds":["repo","home-live"]},{"id":"route-metadata","satisfied":true,"statement":"Resource and market routes receive path-correct canonical metadata in raw HTML, while service-by-market combinations remain noindex,follow.","proofConditionIds":["repo","resource-live","market-live","thin-live"]},{"id":"domain-isolation","satisfied":true,"statement":"Non-RoofHelpFinder hosts are unchanged by the enrichment path.","proofConditionIds":["repo","knocklaunch-live"]},{"id":"frontend-release","satisfied":true,"statement":"Only the existing frontend Cloudflare owner is released from merged main.","proofConditionIds":["repo","home-live","knocklaunch-live"]}],"satisfied":true,"constraints":[{"id":"same-content","satisfied":true,"statement":"No bot detection, crawler-only response, cloaking, or hidden keyword stuffing; enriched raw content must match the React page meaning.","proofConditionIds":["repo","home-live","resource-live","market-live"]},{"id":"preserve-funnel","satisfied":true,"statement":"Do not alter the video, CTA, lead form, verified address, insurance question, matching, market/service routing, resource content, or tenant/app behavior.","proofConditionIds":["repo","home-live"]},{"id":"scope","satisfied":true,"statement":"Only wrangler.toml, src/bootstrap.ts, and scripts/cloudflare-native-owner-worker.mjs may change; no backend, Supabase, database, auth, cc-execution, workflows, robots.txt, sitemap, or unrelated UI.","proofConditionIds":["repo"]},{"id":"release","satisfied":true,"statement":"Release frontend only and do not use Visual Witness.","proofConditionIds":["home-live","resource-live","market-live","thin-live","knocklaunch-live"]}],"contractHash":"1b69d1bc2c200a3672c13892f631adff1caffaa18f16c6841684a2c24b07b437","releaseBound":true,"witnessBound":false,"visualRequested":false,"visualSatisfied":true,"conditionResults":[{"id":"repo","kind":"repository","evidence":{"releaseState":"verified","releaseRequestContractHash":"1b69d1bc2c200a3672c13892f631adff1caffaa18f16c6841684a2c24b07b437"},"required":true,"satisfied":true},{"id":"home-live","kind":"runtime","evidence":{"releaseState":"verified","releaseRequestContractHash":"1b69d1bc2c200a3672c13892f631adff1caffaa18f16c6841684a2c24b07b437"},"required":true,"satisfied":true},{"id":"resource-live","kind":"runtime","evidence":{"releaseState":"verified","releaseRequestContractHash":"1b69d1bc2c200a3672c13892f631adff1caffaa18f16c6841684a2c24b07b437"},"required":true,"satisfied":true},{"id":"market-live","kind":"runtime","evidence":{"releaseState":"verified","releaseRequestContractHash":"1b69d1bc2c200a3672c13892f631adff1caffaa18f16c6841684a2c24b07b437"},"required":true,"satisfied":true},{"id":"thin-live","kind":"runtime","evidence":{"releaseState":"verified","releaseRequestContractHash":"1b69d1bc2c200a3672c13892f631adff1caffaa18f16c6841684a2c24b07b437"},"required":true,"satisfied":true},{"id":"knocklaunch-live","kind":"runtime","evidence":{"releaseState":"verified","releaseRequestContractHash":"1b69d1bc2c200a3672c13892f631adff1caffaa18f16c6841684a2c24b07b437"},"required":true,"satisfied":true}],"validationErrors":[],"pendingProofKinds":[],"activeReleaseTargets":["frontend"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":2},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-29T13:14:10.742558+00:00","proof_gate":"request_contract_terminal_verified","source_sha":"91914339d3447259168f491ee550748ca907596b","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:a52594e7-8ead-4574-ac5a-962989ce9906:request-contract:1b69d1bc2c200a3672c13892f631adff1caffaa18f16c6841684a2c24b07b437:91914339d3447259168f491ee550748ca907596b:verified:","mission_step_id":"b905a51a-3426-4858-a280-c8872c5bbc0f","command_center_event_id":"a52594e7-8ead-4574-ac5a-962989ce9906"},{"id":"4e378e0e-039b-4585-8a8c-d8c092f24f7a","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-fcee5289cbc6","reason":"retryable_provider_transport:forgejo_provider_read_timeout","status":"retryable","metrics":{"receiptBytes":30816,"releaseCount":0,"toolCallCount":4,"repeatedCallCount":1,"executorlessWaitMs":54938,"firstUsefulResultAt":"2026-09-28T17:26:56.329Z","recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.58.305-paul-machinery-sync-drift-proof","prNumber":4024,"terminal":false,"missionId":"fcee5289-cbc6-48b0-8b25-1a4d64a96502","operation":"execute_mission","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":5638,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":5533,"approvedPlanMs":0,"missionSetupMs":350,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":280,"ledgerReconcileMs":0,"lineageReconcileMs":70,"resolvePreflightMs":350,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":280,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"fcee5289-cbc6-48b0-8b25-1a4d64a96502"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1521,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-28T17:28:02.908341+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"4024","receipt_type":"execute_mission","idempotency_key":"mission:fcee5289-cbc6-48b0-8b25-1a4d64a96502:execute_mission:repair_mission_pr_ready_retryable:current-generation","mission_step_id":"cf94132e-151c-45ad-a24b-88f1f29dfa76","command_center_event_id":"fcee5289-cbc6-48b0-8b25-1a4d64a96502"},{"id":"4e388749-d067-416b-8b9f-263347d0dcea","source":"durable-mission-ledger","status":"verified","payload":{"sourceSha":"ae22616f345c5f7a05d69e28c49c8441ff264ce3","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"pcg-drive-master","satisfied":true,"statement":"New PCG original card images are stored in Anthony's connected Google Workspace Drive, not KNOCKLAUNCH/Supabase Storage, while KNOCKLAUNCH retains canonical metadata and Drive references.","proofConditionIds":["proof-production"]},{"id":"pcg-canonical-once","satisfied":true,"statement":"Large-batch/single intake creates one canonical card record with the existing card metadata and front/back image association, preserving pairing, CSV manifest, pause/retry, and dedupe behavior.","proofConditionIds":["proof-production"]},{"id":"pcg-display-everywhere","satisfied":true,"statement":"The same canonical PCG card record and Drive-backed imagery can be displayed in the PCG workspace and PCG website, while preserving WMP and existing eBay publishing behavior without a second manual upload.","proofConditionIds":["proof-production"]}],"satisfied":true,"constraints":[{"id":"pcg-only","satisfied":true,"statement":"Scope storage behavior changes to Prestigious Card Grading only; do not change storage behavior for other tenants.","proofConditionIds":["proof-production"]},{"id":"no-master-duplication","satisfied":true,"statement":"Do not persist new PCG original/master image blobs in KNOCKLAUNCH/Supabase Storage.","proofConditionIds":["proof-production"]},{"id":"private-drive","satisfied":true,"statement":"Do not make Anthony's Google Drive folders broadly public. Public/customer/commerce delivery must use controlled access backed by Drive.","proofConditionIds":["proof-production"]},{"id":"compatibility","satisfied":true,"statement":"Previously stored Supabase-backed PCG images remain readable and existing PCG workflow behavior is preserved.","proofConditionIds":["proof-production"]},{"id":"no-visual-witness","satisfied":true,"statement":"Do not run Visual Witness as part of this objective.","proofConditionIds":["proof-production"]},{"id":"deadline","satisfied":true,"statement":"Treat September 29, 2026 at 6:00 PM Eastern as the PCG meeting-readiness deadline.","proofConditionIds":["proof-production"]},{"id":"capability-completeness","satisfied":true,"statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","proofConditionIds":["proof-production"]},{"id":"atomic-capability-lifecycle","satisfied":true,"statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","proofConditionIds":["proof-production"]}],"contractHash":"42a1d0f445342af63e020eb2ce45bf9375696aa79d27a1d9dece906a9e1e9a19","releaseBound":true,"witnessBound":false,"visualRequested":false,"visualSatisfied":true,"conditionResults":[{"id":"proof-production","kind":"runtime","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":false,"releaseTargetStates":{"frontend":"success","supabaseEdge":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["frontend","supabaseEdge"],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"migrationReleaseVerified":null,"releaseRequestContractHash":"42a1d0f445342af63e020eb2ce45bf9375696aa79d27a1d9dece906a9e1e9a19"},"required":true,"satisfied":true}],"validationErrors":[],"pendingProofKinds":[],"activeReleaseTargets":["frontend","supabaseEdge"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-29T01:05:39.71418+00:00","proof_gate":"request_contract_terminal_verified","source_sha":"ae22616f345c5f7a05d69e28c49c8441ff264ce3","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:d6ba33d3-1386-4f48-8041-193965842c64:request-contract:42a1d0f445342af63e020eb2ce45bf9375696aa79d27a1d9dece906a9e1e9a19:ae22616f345c5f7a05d69e28c49c8441ff264ce3:verified:","mission_step_id":"3197e5e1-4114-402e-b1fa-3a27965338c6","command_center_event_id":"d6ba33d3-1386-4f48-8041-193965842c64"},{"id":"4e3b29e9-1f4e-4fc1-a62f-ad4a310732fc","source":"forgejo","status":"waiting","payload":{"branch":"ai/objective-first-repair-937a4f8d9d01","prNumber":4762,"nextAction":"Follow the existing canonical release to terminal proof.","mergeCommitSha":"01ce9105dfd656a7717d9790a70dfbb8226fa083","branchDeletedAfterMerge":true,"correctiveGenerationCreated":false},"tenant_id":"9602e177-0cbb-496c-bdf5-2fbc93f1b859","created_at":"2026-10-04T12:11:58.975836+00:00","proof_gate":"forgejo_merged_pr_is_authoritative_source_lineage","source_sha":"01ce9105dfd656a7717d9790a70dfbb8226fa083","external_id":"4762","receipt_type":"source_lineage_merged_pr_authoritative","idempotency_key":"mission:937a4f8d-9d01-423c-bb0d-8ce7136488a0:merged-pr:4762:01ce9105dfd656a7717d9790a70dfbb8226fa083","mission_step_id":"ae69f6a8-f061-45a9-99cb-85073381ff2c","command_center_event_id":"937a4f8d-9d01-423c-bb0d-8ce7136488a0"},{"id":"4e3b7c89-7d0e-4782-91b1-2c185b2220cf","source":"cc-execution","status":"authorized","payload":{"paths":[".forgejo/workflows/knocklaunch.yml","config/control-plane-capabilities.json","workers/cc-execution/src/version.js","workers/cc-execution/test/release-orchestration-invariants.test.js"],"reason":"Avoid the 128-commit Gate deepen fallback on ordinary corrective PRs by modestly increasing the bounded initial partial history depth from 2 to 4.","baseSha":"cf3cb32d45f3318e5914587ed00c503e867835cd","issuedAt":1788525757473,"expiresAt":1788525937473,"missionId":"d6e7ac28-f7e6-4354-9a0f-71210ab8098f","authorizationId":"7ad420c9-9b25-485a-81ae-91e74bcb1b93","retryableWithinExactScope":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-04T12:42:38.011236+00:00","proof_gate":"control_plane_maintenance_scope_authorized","source_sha":"cf3cb32d45f3318e5914587ed00c503e867835cd","external_id":null,"receipt_type":"control_plane_maintenance_authorization","idempotency_key":"control-plane-maintenance-authorize:7ad420c9-9b25-485a-81ae-91e74bcb1b93","mission_step_id":"1307263d-558e-4ffb-a73d-ee9a57fafba7","command_center_event_id":"d6e7ac28-f7e6-4354-9a0f-71210ab8098f"},{"id":"4e3d6b94-89c0-4239-8e69-f359256433b5","source":"cc-execution","status":"authorized","payload":{"paths":[".forgejo/workflows/knocklaunch.yml","config/control-plane-capabilities.json"],"reason":"Owner-authorized final current-main Gate optimization; exact two-file scope; refreeze required after live proof.","baseSha":"b197e9b17a5ed09b915f6126cab51c753f85a92b","issuedAt":1791235088055,"expiresAt":1791235268055,"missionId":"a0cf2318-917c-4421-b575-c956ca53c810","authorizationId":"2a9b52f5-ed9c-4b76-9702-261c2ec3c04e","retryableWithinExactScope":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-05T21:18:08.507145+00:00","proof_gate":"control_plane_maintenance_scope_authorized","source_sha":"b197e9b17a5ed09b915f6126cab51c753f85a92b","external_id":null,"receipt_type":"control_plane_maintenance_authorization","idempotency_key":"control-plane-maintenance-authorize:2a9b52f5-ed9c-4b76-9702-261c2ec3c04e","mission_step_id":"394cba12-330f-41eb-87f3-f74675ba3b23","command_center_event_id":"a0cf2318-917c-4421-b575-c956ca53c810"},{"id":"4e411a8f-f2a3-4071-bbe6-7a1877e8f544","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair","reason":"pull_request_checks_pending","status":"retryable","metrics":{"receiptBytes":7000,"releaseCount":0,"toolCallCount":5,"repeatedCallCount":2,"ownerInterruptionCount":0},"version":null,"prNumber":107,"terminal":false,"missionId":"5f8c20a5-c08d-47bb-a013-4474266f326d","operation":"automatic_mission_resume","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":null,"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"5f8c20a5-c08d-47bb-a013-4474266f326d"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":900,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-08-15T17:04:49.531267+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"107","receipt_type":"automatic_mission_resume","idempotency_key":"mission:5f8c20a5-c08d-47bb-a013-4474266f326d:automatic-mission-resume:107:repair_mission_pr_ready_retryable","mission_step_id":"e380e906-e48f-4e77-8962-05d15610a8f9","command_center_event_id":"5f8c20a5-c08d-47bb-a013-4474266f326d"},{"id":"4e45dd00-0801-49af-a816-589c416fea6f","source":"cc-execution","status":"waiting","payload":{"body":{"ship":true,"files":[],"branch":"ai/objective-first-repair-74d6f82fcbed","writes":[],"patches":[],"version":1,"approved":true,"missionId":"74d6f82f-cbed-4b2d-943d-6dd876de44f0","objective":"Repair the proven KnockLaunch Gate sparse-checkout defect blocking PR #3588: add scripts/validate-stale-gate-evidence-reuse.mjs to the Gate sparse checkout allowlist in .forgejo/workflows/knocklaunch.yml. This is owner-authorized control-plane maintenance solely to restore the canonical Gate; no unrelated workflow changes.","repository":"noel/KnockLaunchOS","ownerApproved":true,"releaseIntent":null,"sourceTargets":[],"anchored_edits":[{"path":".forgejo/workflows/knocklaunch.yml","anchor":"            '/scripts/validate-capability-manifests.mjs' \\\n            '/config/capability-manifest.schema.json' \\","replacement":"            '/scripts/validate-capability-manifests.mjs' \\\n            '/scripts/validate-stale-gate-evidence-reuse.mjs' \\\n            '/config/capability-manifest.schema.json' \\"}],"implementation":{"files":[],"writes":[]},"requestContract":{"valid":true,"intent":{"evidence":["PR #3588 Gate run 11400 failed with MODULE_NOT_FOUND for scripts/validate-stale-gate-evidence-reuse.mjs.","The file exists on current main and PR head but is absent from the Gate sparse checkout allowlist."],"confidence":1,"rawUtterance":"Repair the proven KnockLaunch Gate sparse-checkout defect blocking PR #3588: add scripts/validate-stale-gate-evidence-reuse.mjs to the Gate sparse checkout allowlist in .forgejo/workflows/knocklaunch.yml. This is owner-authorized control-plane maintenance solely to restore the canonical Gate; no unrelated workflow changes.","wordingChanged":false,"canonicalIntent":"Repair the proven KnockLaunch Gate sparse-checkout defect blocking PR #3588: add scripts/validate-stale-gate-evidence-reuse.mjs to the Gate sparse checkout allowlist in .forgejo/workflows/knocklaunch.yml. This is owner-authorized control-plane maintenance solely to restore the canonical Gate; no unrelated workflow changes.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"outcome-1","statement":"Repair the proven KnockLaunch Gate sparse-checkout defect blocking PR #3588: add scripts/validate-stale-gate-evidence-reuse.mjs to the Gate sparse checkout allowlist in .forgejo/workflows/knocklaunch.yml. This is owner-authorized control-plane maintenance solely to restore the canonical Gate; no unrelated workflow changes.","proofConditionIds":["proof-gate"]}],"objective":"Repair the proven KnockLaunch Gate sparse-checkout defect blocking PR #3588: add scripts/validate-stale-gate-evidence-reuse.mjs to the Gate sparse checkout allowlist in .forgejo/workflows/knocklaunch.yml. This is owner-authorized control-plane maintenance solely to restore the canonical Gate; no unrelated workflow changes.","constraints":[{"id":"bounded-change","statement":"Change only the Gate sparse checkout allowlist entry required to hydrate scripts/validate-stale-gate-evidence-reuse.mjs.","proofConditionIds":["proof-gate"]}],"terminalPolicy":"all_required_proof_conditions_satisfied","proofConditions":[{"id":"proof-gate","kind":"runtime","claim":"The canonical KnockLaunch Gate hydrates scripts/validate-stale-gate-evidence-reuse.mjs and no longer fails with MODULE_NOT_FOUND for that validator.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":["run canonical Forgejo pull-request Gate"],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false}],"validationErrors":[],"capabilityManifest":{"id":"gate-stale-evidence-validator-hydration","driftPolicy":"exact_source_or_gate_identity_mismatch_is_nonterminal","proofLedger":"command_center_mission_ledger_request_contract_hash_bound","schemaVersion":1,"releaseTargets":[],"lifecycleStates":["prepare","verify","activate"],"activationPolicy":"claim_matched_gate_proof_before_use","dependencyDomains":["release_ownership","live_production_proof"],"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_required_not_runtime_failures","compatibilityWindow":["N","N-1"],"failureIsolationPolicy":"preserve_unrelated_working_capabilities","canaryProofConditionIds":["proof-gate"]},"capabilityCompleteness":{"domains":["release_ownership","live_production_proof"],"required":true,"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_states_not_runtime_failures"}},"repairGeneration":null,"executionEnvelope":{"ship":true,"version":1,"approved":true,"missionId":null,"ownerApproved":true,"releaseIntent":null,"sourceTargets":[],"requestContract":{"valid":true,"intent":{"evidence":["PR #3588 Gate run 11400 failed with MODULE_NOT_FOUND for scripts/validate-stale-gate-evidence-reuse.mjs.","The file exists on current main and PR head but is absent from the Gate sparse checkout allowlist."],"confidence":1,"rawUtterance":"Repair the proven KnockLaunch Gate sparse-checkout defect blocking PR #3588: add scripts/validate-stale-gate-evidence-reuse.mjs to the Gate sparse checkout allowlist in .forgejo/workflows/knocklaunch.yml. This is owner-authorized control-plane maintenance solely to restore the canonical Gate; no unrelated workflow changes.","wordingChanged":false,"canonicalIntent":"Repair the proven KnockLaunch Gate sparse-checkout defect blocking PR #3588: add scripts/validate-stale-gate-evidence-reuse.mjs to the Gate sparse checkout allowlist in .forgejo/workflows/knocklaunch.yml. This is owner-authorized control-plane maintenance solely to restore the canonical Gate; no unrelated workflow changes.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"outcome-1","statement":"Repair the proven KnockLaunch Gate sparse-checkout defect blocking PR #3588: add scripts/validate-stale-gate-evidence-reuse.mjs to the Gate sparse checkout allowlist in .forgejo/workflows/knocklaunch.yml. This is owner-authorized control-plane maintenance solely to restore the canonical Gate; no unrelated workflow changes.","proofConditionIds":["proof-gate"]}],"objective":"Repair the proven KnockLaunch Gate sparse-checkout defect blocking PR #3588: add scripts/validate-stale-gate-evidence-reuse.mjs to the Gate sparse checkout allowlist in .forgejo/workflows/knocklaunch.yml. This is owner-authorized control-plane maintenance solely to restore the canonical Gate; no unrelated workflow changes.","constraints":[{"id":"bounded-change","statement":"Change only the Gate sparse checkout allowlist entry required to hydrate scripts/validate-stale-gate-evidence-reuse.mjs.","proofConditionIds":["proof-gate"]}],"terminalPolicy":"all_required_proof_conditions_satisfied","proofConditions":[{"id":"proof-gate","kind":"runtime","claim":"The canonical KnockLaunch Gate hydrates scripts/validate-stale-gate-evidence-reuse.mjs and no longer fails with MODULE_NOT_FOUND for that validator.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":["run canonical Forgejo pull-request Gate"],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false}],"validationErrors":[],"capabilityManifest":{"id":"gate-stale-evidence-validator-hydration","driftPolicy":"exact_source_or_gate_identity_mismatch_is_nonterminal","proofLedger":"command_center_mission_ledger_request_contract_hash_bound","schemaVersion":1,"releaseTargets":[],"lifecycleStates":["prepare","verify","activate"],"activationPolicy":"claim_matched_gate_proof_before_use","dependencyDomains":["release_ownership","live_production_proof"],"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_required_not_runtime_failures","compatibilityWindow":["N","N-1"],"failureIsolationPolicy":"preserve_unrelated_working_capabilities","canaryProofConditionIds":["proof-gate"]},"capabilityCompleteness":{"domains":["release_ownership","live_production_proof"],"required":true,"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_states_not_runtime_failures"}},"repairGeneration":null,"proofRequirements":null,"controlPlaneUnfreeze":false,"controlPlaneMaintenance":true,"controlPlaneMaintenancePaths":[".forgejo/workflows/knocklaunch.yml"],"controlPlaneMaintenanceReason":"Canonical Gate invokes scripts/validate-stale-gate-evidence-reuse.mjs without hydrating it, causing MODULE_NOT_FOUND and blocking PR #3588."},"proofRequirements":null,"controlPlaneUnfreeze":false,"durableMutationResume":true,"controlPlaneMaintenance":true,"controlPlaneMaintenancePaths":[".forgejo/workflows/knocklaunch.yml"],"controlPlaneMaintenanceReason":"Canonical Gate invokes scripts/validate-stale-gate-evidence-reuse.mjs without hydrating it, causing MODULE_NOT_FOUND and blocking PR #3588."},"recovery":false,"fingerprint":"0d38d0ff01f9ad407b580af1e97ba644c22eb4b235c7c0d2b965b62d7b094c37","replayCount":0,"serializedBytes":9153},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-24T05:11:30.066759+00:00","proof_gate":"repository_mutation_intent_persisted","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent","idempotency_key":"mission:74d6f82f-cbed-4b2d-943d-6dd876de44f0:repository-mutation-intent:0d38d0ff01f9ad407b580af1e97ba644c22eb4b235c7c0d2b965b62d7b094c37:0","mission_step_id":"e9c7a813-365e-4283-87f9-08fb561848a7","command_center_event_id":"74d6f82f-cbed-4b2d-943d-6dd876de44f0"},{"id":"4e4735b6-cfe7-4934-8a65-2d65fdea77e1","source":"cc-execution","status":"release_reconciliation_pending","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-7575d68d4d19","reason":null,"status":"release_reconciliation_pending","metrics":{"receiptBytes":100137,"releaseCount":0,"toolCallCount":4,"repeatedCallCount":1,"executorlessWaitMs":18761,"firstUsefulResultAt":"2026-09-27T04:51:01.530Z","recoveryAttemptCount":2,"ownerInterruptionCount":0},"version":null,"prNumber":3860,"terminal":false,"missionId":"7575d68d-4d19-4431-acbf-a1835905ed81","operation":"automatic_mission_resume","proofGate":"canonical_release_reconciliation_pending","sourceSha":"05a5a1b45a36c618e27ff7641b955e75c4353577","timingsMs":{"prReadinessMs":409,"approvedPlanMs":0,"shipAndProveMs":2243,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"reconcile_release","receiptRef":{"mode":"full","missionId":"7575d68d-4d19-4431-acbf-a1835905ed81"},"performance":null,"deploymentId":"forgejo-main-05a5a1b45a36","releaseState":null,"workflowRunId":null,"releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1938,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-27T04:54:29.312376+00:00","proof_gate":"canonical_release_reconciliation_pending","source_sha":null,"external_id":"3860","receipt_type":"automatic_mission_resume","idempotency_key":"mission:7575d68d-4d19-4431-acbf-a1835905ed81:automatic-mission-resume:3860:canonical_release_reconciliation_pending","mission_step_id":"9b45b74b-e2eb-4c35-84d0-2ce7a6416c0f","command_center_event_id":"7575d68d-4d19-4431-acbf-a1835905ed81"},{"id":"4e479eaf-8277-401c-8847-bb6afa81befb","source":"cc-execution","status":"waiting","payload":{"body":{"ship":true,"files":[],"branch":"ai/objective-first-repair-2bb0526f4430","writes":[],"patches":[],"version":1,"approved":true,"missionId":"2bb0526f-4430-4173-a434-f54aa3c84815","repository":"noel/KnockLaunchOS","ownerApproved":true,"releaseIntent":null,"sourceTargets":["src/pages/card-grading/PCGModesWorkspace.tsx","src/components/layout/TenantLayoutControl.tsx","src/components/MiscAwareAccountMenu.tsx"],"anchored_edits":[{"find":"  const[counts,setCounts]=React.useState<ModeCounts>({intake:0,grading:0,slabbing:0,publishing:0,fulfillment:0});\n  const nextMode=React.useMemo(()=>modes.find(item=>counts[item.id]>0)?.id||'intake',[counts,modes]);","path":"src/pages/card-grading/PCGModesWorkspace.tsx","replace":"  const[counts,setCounts]=React.useState<ModeCounts>({intake:0,grading:0,slabbing:0,publishing:0,fulfillment:0});\n  const[adminOpen,setAdminOpen]=React.useState(false);\n  const nextMode=React.useMemo(()=>modes.find(item=>counts[item.id]>0)?.id||'intake',[counts,modes]);"},{"find":"        <CanonicalWorkspaceSidebarTrigger className=\"h-11 w-[clamp(13rem,34vw,28rem)] border-white/[.10] bg-black/35 text-white/55 hover:bg-white/[.06] hover:text-white/85 max-sm:w-11 max-sm:px-0 max-sm:[&>span]:hidden\"/>","path":"src/pages/card-grading/PCGModesWorkspace.tsx","replace":"        <CanonicalWorkspaceSidebarTrigger placeholder=\"Search cards, cert #, customer…\" className=\"h-11 w-[clamp(13rem,34vw,28rem)] border-white/[.10] bg-black/35 text-white/55 hover:bg-white/[.06] hover:text-white/85 max-sm:w-11 max-sm:px-0 max-sm:[&>span]:hidden\"/>"},{"find":"      <section className=\"relative overflow-hidden rounded-[24px] border border-white/[.10] bg-black/45 shadow-2xl\">\n        {heroImage?<div className=\"absolute inset-0\" style={{backgroundImage:'url(\"'+heroImage+'\")',backgroundSize:'cover',backgroundPosition:`${heroX}% ${heroY}%`,opacity:heroOpacity,filter:`blur(${heroBlur}px)`,transform:`scale(${heroZoom})`,transformOrigin:`${heroX}% ${heroY}%`}}/>:null}\n        <div className=\"absolute inset-0 bg-gradient-to-r from-black/95 via-black/72 to-black/40\"/>\n        <div className=\"relative flex min-h-[116px] flex-col justify-end p-5 sm:min-h-[136px] sm:p-6 lg:p-6\">\n          <div className=\"text-[10px] font-black uppercase tracking-[.22em] text-[#d8bb78]\">TODAY AT PCG</div>\n          <h1 className=\"mt-2 text-[clamp(1.85rem,3.2vw,3rem)] font-black leading-[.96] tracking-[-.045em] text-white\">Today&apos;s Work</h1>\n          <p className=\"mt-3 max-w-2xl text-sm leading-6 text-white/72\">Open the next job, do the work, and keep moving. PCG handles the handoff between stages.</p><button type=\"button\" onClick={()=>setMode(nextMode)} className=\"mt-5 inline-flex min-h-14 w-full items-center justify-center gap-2 rounded-2xl bg-[#d8bb78] px-5 text-base font-black text-black shadow-xl sm:w-auto\">Continue Today&apos;s Work · {nextModeEntry.title}<ArrowRight className=\"h-5 w-5\"/></button>\n        </div>\n      </section>","path":"src/pages/card-grading/PCGModesWorkspace.tsx","replace":"      <section className=\"relative overflow-hidden rounded-[24px] border border-white/[.10] bg-black/72 shadow-2xl backdrop-blur-xl\">\n        {heroImage?<div className=\"absolute inset-y-0 right-0 hidden w-2/5 sm:block\" style={{backgroundImage:'url(\"'+heroImage+'\")',backgroundSize:'cover',backgroundPosition:`${heroX}% ${heroY}%`,opacity:Math.min(heroOpacity,.42),filter:`blur(${heroBlur}px)`,transform:`scale(${heroZoom})`,transformOrigin:`${heroX}% ${heroY}%`}}/>:null}\n        <div className=\"absolute inset-0 bg-gradient-to-r from-black via-black/92 to-black/55\"/>\n        <div className=\"relative p-5 sm:p-7 lg:p-8\">\n          <div className=\"text-[10px] font-black uppercase tracking-[.2em] text-[#d8bb78]\">WHAT DO YOU NEED TO DO?</div>\n          <div className=\"mt-3 flex flex-col gap-5 lg:flex-row lg:items-end lg:justify-between\">\n            <div className=\"max-w-2xl\"><h1 className=\"text-[clamp(2rem,4vw,3.25rem)] font-black leading-[.95] tracking-[-.045em] text-white\">Continue: {nextModeEntry.title}</h1><p className=\"mt-3 text-base leading-6 text-white/65\">{counts[nextMode]} waiting. Open it and keep working — PCG will handle what comes next.</p></div>\n            <button type=\"button\" onClick={()=>setMode(nextMode)} className=\"inline-flex min-h-16 w-full items-center justify-center gap-3 rounded-2xl bg-[#d8bb78] px-6 text-lg font-black text-black shadow-xl lg:w-auto lg:min-w-[280px]\">Continue<ArrowRight className=\"h-5 w-5\"/></button>\n          </div>\n        </div>\n      </section>"},{"find":"      <section className=\"mt-4\">\n        <div className=\"mb-2.5 flex items-end justify-between gap-4 px-1\">\n          <div><div className=\"text-[9px] font-black uppercase tracking-[.18em] text-[#d8bb78]\">WORK QUEUES</div><h2 className=\"mt-1 text-xl font-black tracking-[-.025em] text-white sm:text-2xl\">Do what&apos;s next</h2></div>\n          <div className=\"hidden text-xs font-semibold text-white/32 sm:block\">Receive → Grade → Slab → Publish → Return</div>\n        </div>\n        <div className=\"grid grid-cols-1 gap-3 sm:grid-cols-2 xl:grid-cols-5\">{modes.map(({id,title,short,copy,icon:Icon,accent,image,position,zoom,opacity,blur})=><button key={id} type=\"button\" data-pcg-mode-id={id} aria-label={'Open '+title} onClick={()=>setMode(id)} className=\"group relative min-h-[196px] overflow-hidden rounded-[20px] border border-white/[.12] bg-[#090a0b] text-left shadow-xl transition duration-200 hover:-translate-y-0.5 hover:border-white/[.22]\">\n          <div className=\"absolute inset-0 transition duration-300\" style={{backgroundImage:'url(\"'+image+'\")',backgroundSize:'cover',backgroundPosition:position,opacity,filter:`blur(${blur}px)`,transform:`scale(${zoom})`,transformOrigin:position}}/>\n          <div className=\"absolute inset-0 bg-gradient-to-t from-black via-black/78 to-black/22\"/>\n          <div className=\"absolute inset-x-0 top-0 h-[3px]\" style={{backgroundColor:accent}}/>\n          <div className=\"relative flex h-full min-h-[196px] flex-col justify-end p-4\">\n            <div className=\"mb-auto flex items-start justify-between gap-3\">\n              <span className=\"grid h-10 w-10 place-items-center rounded-xl border border-white/[.12] bg-black/45 backdrop-blur\"><Icon className=\"h-5 w-5\" style={{color:accent}}/></span>\n              <div className=\"text-right\"><div className=\"text-3xl font-black leading-none text-white\">{counts[id]}</div><div className=\"mt-1 text-[8px] font-black uppercase tracking-[.12em] text-white/38\">{short}</div></div>\n            </div>\n            <h3 className=\"text-xl font-black tracking-[-.025em] text-white\">{title}</h3>\n            <p className=\"mt-1.5 line-clamp-3 text-[11px] leading-5 text-white/68\">{copy}</p>\n            <div className=\"mt-3 flex items-center gap-1 text-[9px] font-black uppercase tracking-[.12em]\" style={{color:accent}}>Open <ArrowRight className=\"h-3.5 w-3.5 transition group-hover:translate-x-0.5\"/></div>\n          </div>\n        </button>)}</div>\n      </section>","path":"src/pages/card-grading/PCGModesWorkspace.tsx","replace":"      <section className=\"mt-4\">\n        <div className=\"mb-2 px-1\"><div className=\"text-[9px] font-black uppercase tracking-[.18em] text-[#d8bb78]\">OTHER WORK</div><h2 className=\"mt-1 text-lg font-black tracking-[-.02em] text-white\">Jump to another step</h2></div>\n        <div className=\"grid gap-2 sm:grid-cols-2 xl:grid-cols-5\">{modes.map(({id,title,icon:Icon,accent})=><button key={id} type=\"button\" data-pcg-mode-id={id} aria-label={'Open '+title} onClick={()=>setMode(id)} className=\"group flex min-h-[76px] items-center gap-3 rounded-2xl border border-white/[.10] bg-black/55 px-4 text-left backdrop-blur transition hover:border-white/[.22] hover:bg-white/[.06]\">\n          <span className=\"grid h-11 w-11 shrink-0 place-items-center rounded-xl border border-white/[.10] bg-white/[.04]\"><Icon className=\"h-5 w-5\" style={{color:accent}}/></span>\n          <span className=\"min-w-0 flex-1\"><span className=\"block truncate text-sm font-black text-white\">{title}</span><span className=\"mt-1 block text-xs font-semibold text-white/40\">{counts[id]} waiting</span></span>\n          <ArrowRight className=\"h-4 w-4 shrink-0 text-white/28 transition group-hover:translate-x-0.5 group-hover:text-white/60\"/>\n        </button>)}</div>\n      </section>"},{"find":"      <section className=\"mt-4 rounded-[18px] border border-white/[.08] bg-black/28 p-3 backdrop-blur-sm\">\n        <div className=\"flex flex-wrap items-center gap-2\">\n          <span className=\"mr-1 text-[9px] font-black uppercase tracking-[.16em] text-white/28\">Admin</span>\n          {ADMIN_TOOLS.map(({id,label,icon:Icon})=><button key={id} type=\"button\" onClick={()=>openAdminTool(id)} className=\"inline-flex min-h-10 items-center gap-2 rounded-lg border border-white/[.09] bg-white/[.04] px-3 text-[10px] font-black text-white/48 transition hover:bg-white/[.08] hover:text-white/78\"><Icon className=\"h-3.5 w-3.5 text-[#d8bb78]\"/>{label}</button>)}\n        </div>\n      </section>","path":"src/pages/card-grading/PCGModesWorkspace.tsx","replace":"      <section className=\"relative mt-4 flex justify-end\">\n        <button type=\"button\" onClick={()=>setAdminOpen(value=>!value)} className=\"inline-flex min-h-11 items-center gap-2 rounded-xl border border-white/[.10] bg-black/45 px-4 text-sm font-black text-white/60 hover:bg-white/[.06] hover:text-white\"><Settings className=\"h-4 w-4\"/>Admin</button>\n        {adminOpen?<div className=\"absolute bottom-[calc(100%+.5rem)] right-0 z-20 w-56 rounded-2xl border border-white/[.10] bg-[#090a0b]/98 p-2 shadow-2xl backdrop-blur-xl\">{ADMIN_TOOLS.map(({id,label,icon:Icon})=><button key={id} type=\"button\" onClick={()=>{setAdminOpen(false);openAdminTool(id)}} className=\"flex min-h-11 w-full items-center gap-3 rounded-xl px-3 text-left text-sm font-bold text-white/70 hover:bg-white/[.06] hover:text-white\"><Icon className=\"h-4 w-4 text-[#d8bb78]\"/>{label}</button>)}</div>:null}\n      </section>"},{"find":"export function CanonicalWorkspaceSidebarTrigger({ className, ...props }: ButtonHTMLAttributes<HTMLButtonElement>) {\n  const context = useContext(WorkspaceSidebarContext);\n  if (!context) return null;\n  return <button {...props} type=\"button\" aria-label=\"Search this business\" data-canonical-workspace-search-trigger=\"explicit\" data-platform-search-geometry=\"canonical-v1\" onClick={(event) => { props.onClick?.(event); if (!event.defaultPrevented) context.setOpen(true); }} className={cn(CANONICAL_WORKSPACE_SEARCH_TRIGGER_CLASS, className)}><Search className=\"h-4 w-4 shrink-0\" /><span className=\"hidden min-w-0 flex-1 truncate sm:block\">Search customers, mail, orders…</span></button>;\n}","path":"src/components/layout/TenantLayoutControl.tsx","replace":"export function CanonicalWorkspaceSidebarTrigger({ className, placeholder='Search customers, mail, orders…', ...props }: ButtonHTMLAttributes<HTMLButtonElement>&{placeholder?:string}) {\n  const context = useContext(WorkspaceSidebarContext);\n  if (!context) return null;\n  return <button {...props} type=\"button\" aria-label=\"Search this business\" data-canonical-workspace-search-trigger=\"explicit\" data-platform-search-geometry=\"canonical-v1\" onClick={(event) => { props.onClick?.(event); if (!event.defaultPrevented) context.setOpen(true); }} className={cn(CANONICAL_WORKSPACE_SEARCH_TRIGGER_CLASS, className)}><Search className=\"h-4 w-4 shrink-0\" /><span className=\"hidden min-w-0 flex-1 truncate sm:block\">{placeholder}</span></button>;\n}"},{"find":"function miscWorkspacePresentation(activeTenant: any) {\n  if (tenantExperienceFamily(activeTenant) === 'modes') {\n    return { actionLabel: 'Open workspace', workspaceLabel: 'MODES' };\n  }","path":"src/components/MiscAwareAccountMenu.tsx","replace":"function miscWorkspacePresentation(activeTenant: any) {\n  const tenantSlug=String(activeTenant?.company_slug||'').trim().toLowerCase();\n  if(tenantSlug==='pcg')return {actionLabel:\"Today's Work\",workspaceLabel:'PCG'};\n  if (tenantExperienceFamily(activeTenant) === 'modes') {\n    return { actionLabel: 'Open workspace', workspaceLabel: 'MODES' };\n  }"},{"find":"  const isModesWorkspace = tenantExperienceFamily(activeTenant) === 'modes';","path":"src/components/MiscAwareAccountMenu.tsx","replace":"  const isPcgWorkspace=String(activeTenant?.company_slug||'').trim().toLowerCase()==='pcg';\n  const isModesWorkspace = tenantExperienceFamily(activeTenant) === 'modes'&&!isPcgWorkspace;"},{"find":"  const workspaceLabel = isModesWorkspace ? 'MODES' : legacyWorkspaceLabel;","path":"src/components/MiscAwareAccountMenu.tsx","replace":"  const workspaceLabel = isPcgWorkspace?'PCG':isModesWorkspace ? 'MODES' : legacyWorkspaceLabel;"},{"find":"  const workspaceActions: WorkspaceMenuAction[] = (isModesWorkspace\n    ? [{ label: 'MODES home', path: tenantRoutes.workspacePath, icon: ClipboardList }]","path":"src/components/MiscAwareAccountMenu.tsx","replace":"  const workspaceActions: WorkspaceMenuAction[] = (isPcgWorkspace\n    ? [{label:\"Today's Work\",path:'/pcg/dashboard',icon:ClipboardList},{label:'Card Vault',path:'/pcg/card-vault',icon:DatabaseZap}]\n    : isModesWorkspace\n    ? [{ label: 'MODES home', path: tenantRoutes.workspacePath, icon: ClipboardList }]"}],"implementation":{"files":[],"writes":[]},"requestContract":null,"repairGeneration":null,"executionEnvelope":{"ship":true,"version":1,"approved":true,"missionId":"2bb0526f-4430-4173-a434-f54aa3c84815","ownerApproved":true,"releaseIntent":null,"sourceTargets":["src/pages/card-grading/PCGModesWorkspace.tsx","src/components/layout/TenantLayoutControl.tsx","src/components/MiscAwareAccountMenu.tsx"],"requestContract":null,"repairGeneration":null,"proofRequirements":null,"controlPlaneUnfreeze":true,"controlPlaneMaintenance":true,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":"Prime structured exact mutation continuation"},"proofRequirements":null,"controlPlaneUnfreeze":true,"durableMutationResume":true,"controlPlaneMaintenance":true,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":"Prime structured exact mutation continuation"},"recovery":false,"fingerprint":"599963c5bb5843f6a570663a673e8a40c0b71cd06900150e4cc1ea50ac5b3414","replayCount":0,"serializedBytes":14333},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-05T14:18:24.515663+00:00","proof_gate":"repository_mutation_intent_persisted","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent","idempotency_key":"mission:2bb0526f-4430-4173-a434-f54aa3c84815:repository-mutation-intent:599963c5bb5843f6a570663a673e8a40c0b71cd06900150e4cc1ea50ac5b3414:0","mission_step_id":"f742e710-4675-4048-b1b4-5161ed632102","command_center_event_id":"2bb0526f-4430-4173-a434-f54aa3c84815"},{"id":"4e47bf89-1a1d-40e2-b37c-d182b6883581","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in reasoning required.","nextAction":{"lane":"cc-execution","action":"continue_implementation","reason":"synthesis_required","automationAllowed":true,"ownerActionRequired":false},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"reasoning_required\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"execute_mission\",\"status\":\"synthesis_required\",\"proofGate\":\"repair_mission_synthesis_ready\"},\"activeStep\":{\"key\":\"implementation\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"pull_request\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextSafeAction\":{\"action\":\"continue_implementation\",\"lane\":\"cc-execution\",\"reason\":\"synthesis_required\",\"automationAllowed\":true,\"ownerActionRequired\":false},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"cc-execution\",\"nextAction\":\"continue_implementation\",\"recoveryOwner\":\"cc-execution\"},\"acceptance\":{\"total\":1,\"verified\":0,\"pending\":1,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[\"proof-production\"]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":\"release\",\"deadlineAt\":\"2026-10-04T11:05:14.263738+00:00\",\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":null,\"prNumber\":null,\"sourceSha\":null,\"deploymentId\":null}"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-04T08:06:08.231819+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:3bf39dd3-ac12-41b1-a6fa-04d990d22a37:owner-progress-heartbeat:119406744","mission_step_id":"9fe01f55-a45c-4fde-b6d0-70f6b49e665c","command_center_event_id":"3bf39dd3-ac12-41b1-a6fa-04d990d22a37"},{"id":"4e491fd5-6cc0-453f-8ce9-6e1fa68ade24","source":"forgejo","status":"waiting","payload":{"branch":"ai/objective-first-repair-743f5b14d471","prNumber":4447,"nextAction":null,"mergeCommitSha":"80c08425d651621dd2b9931f2ccda07da6b916d2","branchDeletedAfterMerge":false,"correctiveGenerationCreated":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-02T02:00:51.183575+00:00","proof_gate":"forgejo_merged_pr_is_authoritative_source_lineage","source_sha":"80c08425d651621dd2b9931f2ccda07da6b916d2","external_id":"4447","receipt_type":"source_lineage_merged_pr_authoritative","idempotency_key":"mission:743f5b14-d471-49f7-b101-a6e9352fb114:merged-pr:4447:80c08425d651621dd2b9931f2ccda07da6b916d2","mission_step_id":"1c7c6a32-e8fc-4d7e-9bee-15be046e15cf","command_center_event_id":"743f5b14-d471-49f7-b101-a6e9352fb114"},{"id":"4e4a0290-11a1-4448-8e5f-3602969283a0","source":"cc-execution","status":"waiting_for_gate","payload":{"ok":true,"jobId":null,"phase":"implementation","branch":"ai/objective-first-repair-8aaadff940c4","reason":"provider_verified_auto_progress_owns_gate_merge_release_outside_owner_response","status":"waiting_for_gate","metrics":{"receiptBytes":4914,"releaseCount":0,"toolCallCount":3,"repeatedCallCount":0,"executorlessWaitMs":15756,"firstUsefulResultAt":"2026-10-04T12:37:31.174Z","recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.64.90-owner-contract-autocompile","prNumber":4771,"terminal":false,"missionId":"8aaadff9-40c4-40b9-8479-6e9c4796825a","operation":"execute_mission","proofGate":"repair_mission_pr_handed_off_to_supervisor","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":4170,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":649,"missionSetupMs":251,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":251,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":251,"repositoryMutationMs":3521,"repositoryProviderMs":3521,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":2166,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":251,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":1355},"nextAction":"Canonical KnockLaunch Gate notifier and durable mission supervisor own Gate, merge, release, and proof progression from this exact PR head outside the owner response path.","receiptRef":{"mode":"full","missionId":"8aaadff9-40c4-40b9-8479-6e9c4796825a"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":3285,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"9602e177-0cbb-496c-bdf5-2fbc93f1b859","created_at":"2026-10-04T12:37:53.256844+00:00","proof_gate":"repair_mission_pr_handed_off_to_supervisor","source_sha":null,"external_id":"4771","receipt_type":"execute_mission","idempotency_key":"mission:8aaadff9-40c4-40b9-8479-6e9c4796825a:execute_mission:repair_mission_pr_handed_off_to_supervisor:current-generation","mission_step_id":"7cb43956-b0e6-456c-978c-f72cb234618d","command_center_event_id":"8aaadff9-40c4-40b9-8479-6e9c4796825a"},{"id":"4e4b695b-bdc3-4e91-8edf-8935a9315186","source":"forgejo","status":"verified","payload":{"branch":"ai/proposal-pdfjs-20260820","prNumber":495,"nextAction":null,"mergeCommitSha":"84cb96baa1a9bfdd6caa7340160d9463757d36f4","branchDeletedAfterMerge":true,"correctiveGenerationCreated":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-20T19:12:57.783334+00:00","proof_gate":"merged_pr_deleted_branch_is_terminal_source_lineage","source_sha":"84cb96baa1a9bfdd6caa7340160d9463757d36f4","external_id":"495","receipt_type":"source_lineage_merged_branch_closed","idempotency_key":"mission:12ae49b0-592e-41a1-abab-62cc7c529aa4:merged-pr:495:branch-deleted","mission_step_id":"deb81784-e6f5-4f33-b6d7-6f73c3c97ce5","command_center_event_id":"12ae49b0-592e-41a1-abab-62cc7c529aa4"},{"id":"4e4e7c87-b605-45ff-8769-0cd054477cf6","source":"durable-mission-ledger","status":"verified","payload":{"sourceSha":"aea51e4f8680f77ce71b0f958ae4d7736a60102f","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"outcome-1","satisfied":true,"statement":"Source-edit deep fallback may run for up to 45 seconds with a shared bounded source-edit deadline of 110 seconds.","proofConditionIds":["compiler-gate","compiler-runtime"]},{"id":"outcome-2","satisfied":true,"statement":"Retain explicit configured operator timeout limits and exact source validation.","proofConditionIds":["compiler-gate"]}],"satisfied":true,"constraints":[{"id":"constraint-1","satisfied":true,"statement":"Only workers/cc-execution/src/model-provider-gateway.js; no auth, tenant, model credential, release-owner, or arbitrary compiler safety changes.","proofConditionIds":["compiler-gate"]},{"id":"capability-completeness","satisfied":true,"statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","proofConditionIds":["compiler-gate","compiler-runtime"]},{"id":"atomic-capability-lifecycle","satisfied":true,"statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","proofConditionIds":["compiler-gate","compiler-runtime"]}],"contractHash":"12fa8aee2deab82f32f6d6b85718a2ef09e1cca65b5f5b352fa49f47a9563eeb","releaseBound":true,"witnessBound":false,"visualRequested":false,"visualSatisfied":true,"conditionResults":[{"id":"compiler-gate","kind":"repository","evidence":{"reason":null,"gateRunId":21928,"satisfied":true,"gateTestProof":null,"gateTestPassed":false,"missingTargets":[],"gateTestExecuted":false,"disallowedTargets":[],"migrationRequired":false,"namedGateTestPath":null,"releaseTargetStates":{"ccExecution":"success"},"repositoryProofGate":"request_contract_repository_verified","repositoryProofPath":null,"requestContractHash":"12fa8aee2deab82f32f6d6b85718a2ef09e1cca65b5f5b352fa49f47a9563eeb","unsuccessfulTargets":[],"activeReleaseTargets":["ccExecution"],"allowedReleaseTargets":[],"repositoryProofStatus":"verified","expectedRepositoryPath":null,"namedGateTestSatisfied":true,"requiredReleaseTargets":[],"migrationReleaseVerified":null,"repositoryConditionBound":true,"repositoryProofSourceSha":"aea51e4f8680f77ce71b0f958ae4d7736a60102f"},"required":true,"satisfied":true},{"id":"compiler-runtime","kind":"runtime","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":false,"releaseTargetStates":{"ccExecution":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["ccExecution"],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"migrationReleaseVerified":null,"releaseRequestContractHash":"12fa8aee2deab82f32f6d6b85718a2ef09e1cca65b5f5b352fa49f47a9563eeb"},"required":true,"satisfied":true}],"validationErrors":[],"pendingProofKinds":[],"activeReleaseTargets":["ccExecution"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-13T20:38:23.955653+00:00","proof_gate":"request_contract_terminal_verified","source_sha":"aea51e4f8680f77ce71b0f958ae4d7736a60102f","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:581df9c4-93ab-4811-809d-01ae3059ab2f:request-contract:12fa8aee2deab82f32f6d6b85718a2ef09e1cca65b5f5b352fa49f47a9563eeb:aea51e4f8680f77ce71b0f958ae4d7736a60102f:verified:","mission_step_id":"5fe8c2d4-0d0a-40c8-911f-721bbc42b96a","command_center_event_id":"581df9c4-93ab-4811-809d-01ae3059ab2f"},{"id":"4e4eb6ff-ae69-43b5-978d-3b0c78366ac2","source":"cc-execution","status":"waiting_for_gate","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/roof-help-finder-tenant-native","reason":"pull_request_checks_pending","status":"waiting_for_gate","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":null,"prNumber":2712,"terminal":false,"missionId":"c6546ca0-a522-441c-b26b-033b1c1c85b7","operation":"automatic_mission_resume","proofGate":"repair_mission_waiting_for_gate","sourceSha":null,"timingsMs":{"prReadinessMs":636,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request after the exact-head KnockLaunch Gate changes state.","receiptRef":{"mode":"full","missionId":"c6546ca0-a522-441c-b26b-033b1c1c85b7"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1278,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-14T03:16:12.364174+00:00","proof_gate":"repair_mission_waiting_for_gate","source_sha":null,"external_id":"2712","receipt_type":"automatic_mission_resume","idempotency_key":"mission:c6546ca0-a522-441c-b26b-033b1c1c85b7:automatic-mission-resume:2712:repair_mission_waiting_for_gate","mission_step_id":"9a25cdf2-5e79-4ce3-83ba-7b4bb1157d57","command_center_event_id":"c6546ca0-a522-441c-b26b-033b1c1c85b7"},{"id":"4e5252c2-1f0b-44c1-b8ab-0796c9c0ec17","source":"cc-execution","status":"source_resolution_required","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":null,"reason":null,"status":"source_resolution_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"executorlessWaitMs":0,"firstUsefulResultAt":null,"recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.64.0-platform-sidekick-intelligence","prNumber":null,"terminal":false,"missionId":"57110c3c-2c0e-4a7e-9daf-fcea8904f3a9","operation":"execute_mission","proofGate":"repair_mission_source_resolution_required","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":1371,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":438,"providerAuthMs":0,"ledgerPrepareMs":438,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":438,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":438,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"Supply exact sourceTargets on the same mission; planner guesses cannot replace missing mission scope.","receiptRef":{"mode":"full","missionId":"57110c3c-2c0e-4a7e-9daf-fcea8904f3a9"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1176,"likelyAffectedFiles":[],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-29T14:41:06.265548+00:00","proof_gate":"repair_mission_source_resolution_required","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:57110c3c-2c0e-4a7e-9daf-fcea8904f3a9:execute_mission:repair_mission_source_resolution_required:current-generation","mission_step_id":"50f83255-11c9-4644-9f24-a0b5c9d28732","command_center_event_id":"57110c3c-2c0e-4a7e-9daf-fcea8904f3a9"},{"id":"4e52d276-9ef3-4184-8800-de7d31bcd0e0","source":"cc-execution","status":"authorized","payload":{"paths":["workers/cc-execution/test/release-orchestration-invariants.test.js"],"reason":"Correct the stale architecture assertion exposed by the new automatic repair-generation continuation implementation; no behavior rollback.","baseSha":"5371951d5c78965a184aa80c9683232e4e42ce52","issuedAt":1789877543135,"expiresAt":1789877723135,"missionId":"15cf6542-7456-4c36-8950-748ec91a29a7","authorizationId":"c0779ea5-0545-4e42-908f-6569940efeb4","retryableWithinExactScope":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-20T04:12:23.454379+00:00","proof_gate":"control_plane_maintenance_scope_authorized","source_sha":"5371951d5c78965a184aa80c9683232e4e42ce52","external_id":null,"receipt_type":"control_plane_maintenance_authorization","idempotency_key":"control-plane-maintenance-authorize:c0779ea5-0545-4e42-908f-6569940efeb4","mission_step_id":"5e4f9ff4-48b1-4d24-bbe4-3d0072353683","command_center_event_id":"15cf6542-7456-4c36-8950-748ec91a29a7"},{"id":"4e5468a2-ba85-49f6-b0bc-b7112dac8d48","source":"github-status","status":"pending","payload":{"failed":[],"states":{"canonical-production-release/verified":"pending"},"missing":["supabase-edge-production/live"],"pending":["canonical-production-release/verified"],"required":["canonical-production-release/verified","supabase-edge-production/live"],"sourceSha":"81a468cc0f0069ee1a82fa6593400e7631793788","releaseState":"pending","exactConductorRun":{"id":31216953192,"status":"in_progress","headSha":"81a468cc0f0069ee1a82fa6593400e7631793788","conclusion":null,"sourceMatches":true},"ccExecutionRuntimeProof":null},"tenant_id":"c55998b4-82a3-467e-8d35-177bb4785f6e","created_at":"2026-08-07T20:41:47.370192+00:00","proof_gate":"canonical_release_pending","source_sha":"81a468cc0f0069ee1a82fa6593400e7631793788","external_id":"canonical-release-81a468cc0f00","receipt_type":"canonical_release_status","idempotency_key":"mission:ca1dd130-59f2-45f2-8f82-11f1a0b8e6ab:release-status:81a468cc0f0069ee1a82fa6593400e7631793788:pending:canonical-production-release/verified=pending|supabase-edge-production/live=missing","mission_step_id":"ff806e3e-ee49-4669-9312-39cb4e6133f3","command_center_event_id":"ca1dd130-59f2-45f2-8f82-11f1a0b8e6ab"},{"id":"4e574323-4888-496f-9df9-2d3d857bcb31","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in release.","nextAction":{"lane":"production-release-conductor","action":"reconcile_release","reason":"merged_source_requires_release_proof","automationAllowed":true,"ownerActionRequired":false},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"release\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"canonical_release_status\",\"status\":\"pending\",\"proofGate\":\"canonical_release_pending\"},\"activeStep\":{\"key\":\"pull_request\",\"status\":\"waiting\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"release\",\"status\":\"waiting\",\"lane\":\"production-release-conductor\"},\"nextSafeAction\":{\"action\":\"reconcile_release\",\"lane\":\"production-release-conductor\",\"reason\":\"merged_source_requires_release_proof\",\"automationAllowed\":true,\"ownerActionRequired\":false},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"cc-execution\",\"nextAction\":\"reconcile_release\",\"recoveryOwner\":\"production-release-conductor\"},\"acceptance\":{\"total\":1,\"verified\":0,\"pending\":1,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[\"proof-production\"]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":\"release\",\"deadlineAt\":\"2026-10-03T17:55:29.429542+00:00\",\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":\"ai/objective-first-repair-6f5449755eac\",\"prNumber\":4641,\"sourceSha\":\"9985a30e9ee1fa7bee9dd488df9c8a0e4434df1f\",\"deploymentId\":\"forgejo-main-9985a30e9ee1\"}"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-03T14:58:23.910203+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:6f544975-5eac-4db8-a3bf-9452ca33f669:owner-progress-heartbeat:119402633","mission_step_id":"7495b5d9-e209-4a4b-bb26-d4318be5436c","command_center_event_id":"6f544975-5eac-4db8-a3bf-9452ca33f669"},{"id":"4e57746c-1d5c-4b48-bc17-5089a3fd87bb","source":"cc-execution","status":"complete","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/merge-queue-recovery-fairness-20260911","reason":null,"status":"complete","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.108-pr-ready-brownout-budget","prNumber":2422,"terminal":false,"missionId":"17899838-2457-49ba-851b-1fca5bc7d9ee","operation":"execute_mission","proofGate":"repair_mission_prepared","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":17289,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":380,"providerAuthMs":0,"ledgerPrepareMs":296,"ledgerReconcileMs":0,"lineageReconcileMs":84,"resolvePreflightMs":380,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":296,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"continue_batch_or_ship_and_prove","receiptRef":{"mode":"full","missionId":"17899838-2457-49ba-851b-1fca5bc7d9ee"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":3465,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-11T21:09:17.284372+00:00","proof_gate":"repair_mission_prepared","source_sha":null,"external_id":"2422","receipt_type":"execute_mission","idempotency_key":"mission:17899838-2457-49ba-851b-1fca5bc7d9ee:execute_mission:repair_mission_prepared:current-generation","mission_step_id":"1cad8b52-b456-4a61-a4c9-a1f68d509bfe","command_center_event_id":"17899838-2457-49ba-851b-1fca5bc7d9ee"},{"id":"4e5b8f75-ae24-4e0d-bda3-b52e940c7666","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in implementation.","nextAction":{"lane":"cc-execution","action":"reconcile_pull_request","reason":"pull_request_exists_without_merged_source","automationAllowed":true,"ownerActionRequired":false},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"implementation\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"automatic_mission_resume\",\"status\":\"release_freshness_reconciliation_pending\",\"proofGate\":\"canonical_release_freshness_reconciliation_pending\"},\"activeStep\":{\"key\":\"implementation\",\"status\":\"waiting\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"pull_request\",\"status\":\"waiting\",\"lane\":\"cc-execution\"},\"nextSafeAction\":{\"action\":\"reconcile_pull_request\",\"lane\":\"cc-execution\",\"reason\":\"pull_request_exists_without_merged_source\",\"automationAllowed\":true,\"ownerActionRequired\":false},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"cc-execution\",\"nextAction\":\"reconcile_pull_request\",\"recoveryOwner\":\"cc-execution\"},\"acceptance\":{\"total\":3,\"verified\":0,\"pending\":3,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[\"repo\",\"release\",\"runtime\"]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":\"release\",\"deadlineAt\":\"2026-10-06T02:50:23.534207+00:00\",\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":\"ai/objective-first-repair-aaee003d84a4\",\"prNumber\":5100,\"sourceSha\":null,\"deploymentId\":null}"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-05T23:52:41.09753+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:aaee003d-84a4-4eec-bfe0-0290940e3eff:owner-progress-heartbeat:119416290","mission_step_id":"2e3d8361-e4c0-4cca-8d59-f03c7db7d1bf","command_center_event_id":"aaee003d-84a4-4eec-bfe0-0290940e3eff"},{"id":"4e60448c-a3a6-4b71-a50e-25b070e0129e","source":"cc-execution","status":"authorized","payload":{"paths":["config/control-plane-capabilities.json","workers/cc-execution/src/entrypoint-owner-status.js","workers/cc-execution/src/index-release-fast-lane.js","workers/cc-execution/src/version.js","workers/cc-execution/test/event-driven-auto-merge-invariants.test.js"],"reason":"Reconcile the already-applied 1.58.48 orphan branch onto newly advanced protected main e452f103788d02c24f4163e21e4c75676b0cc92e, then create its single PR; no duplicate source generation.","baseSha":"e452f103788d02c24f4163e21e4c75676b0cc92e","issuedAt":1788529919252,"expiresAt":1788530099252,"missionId":"5affa835-6c2c-48fc-a451-812516d90549","authorizationId":"e05dccd2-7e01-40da-bc3e-c5c5331aaece","retryableWithinExactScope":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-04T13:51:59.71736+00:00","proof_gate":"control_plane_maintenance_scope_authorized","source_sha":"e452f103788d02c24f4163e21e4c75676b0cc92e","external_id":null,"receipt_type":"control_plane_maintenance_authorization","idempotency_key":"control-plane-maintenance-authorize:e05dccd2-7e01-40da-bc3e-c5c5331aaece","mission_step_id":"316a1fbb-9926-40a8-a02d-97987a01829f","command_center_event_id":"5affa835-6c2c-48fc-a451-812516d90549"},{"id":"4e60aa78-0cfb-4290-8db1-6e5bd54ee3f0","source":"cc-execution","status":"recorded","payload":{"requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"rawUtterance":"Continue PR #1803 only. Replace the temporary text-built Curri mark with the extracted real Realty World / Curri Properties logo embedded directly in RealtorShell.tsx, retaining the PEOPLE / PROPERTIES / POSSIBILITIES tagline. Preserve all scale/layout corrections and Curri-only behavior, then complete Gate, merge, frontend release, and mobile visual proof.","wordingChanged":false,"canonicalIntent":"Continue PR #1803 only. Replace the temporary text-built Curri mark with the extracted real Realty World / Curri Properties logo embedded directly in RealtorShell.tsx, retaining the PEOPLE / PROPERTIES / POSSIBILITIES tagline. Preserve all scale/layout corrections and Curri-only behavior, then complete Gate, merge, frontend release, and mobile visual proof.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"curri-logo","statement":"The Curri workspace uses the real Realty World / Curri Properties logo from the approved reference.","proofConditionIds":["repo","runtime","visual"]}],"objective":"Continue PR #1803 only. Replace the temporary text-built Curri mark with the extracted real Realty World / Curri Properties logo embedded directly in RealtorShell.tsx, retaining the PEOPLE / PROPERTIES / POSSIBILITIES tagline. Preserve all scale/layout corrections and Curri-only behavior, then complete Gate, merge, frontend release, and mobile visual proof.","constraints":[{"id":"same-pr","statement":"Continue PR #1803 only; do not create another PR.","proofConditionIds":["repo","runtime"]},{"id":"curri-only","statement":"Apply only to curri-properties.","proofConditionIds":["repo","runtime"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"repo","kind":"repository","claim":"PR #1803 uses the real Curri logo image in RealtorShell.tsx.","route":"/crm/realtor/curri-properties/realtor-dashboard","roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]},{"id":"runtime","kind":"runtime","claim":"The live Curri dashboard serves the merged logo change.","route":"/crm/realtor/curri-properties/realtor-dashboard","roleRef":null,"userRef":null,"required":true,"expectedText":"Curri Properties","targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]},{"id":"visual","kind":"visual","claim":"The live mobile Curri header uses the approved Realty World / Curri Properties logo at the correct scale.","route":"/crm/realtor/curri-properties/realtor-dashboard","roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]}],"validationErrors":[]},"requestContractHash":"fda20742fef3da05c7ab6998a22d1007db97f5169ab938797158e19b522307e2","requestContractRevision":2,"previousRequestContractHash":"12c1143e720524e0305a496121be79009b827fb5035ecd909119bac86c3d0f9e"},"tenant_id":"90ed5bf4-8abd-4d3a-af7c-024664b5b99d","created_at":"2026-09-05T10:23:05.240838+00:00","proof_gate":"request_contract_revision_recorded","source_sha":null,"external_id":null,"receipt_type":"request_contract_revision","idempotency_key":"mission:6d9c7c9c-1997-4fe8-a064-7d3eec437294:request-contract:fda20742fef3da05c7ab6998a22d1007db97f5169ab938797158e19b522307e2","mission_step_id":"72002fd6-4f2f-4a55-987d-666d14c04ef3","command_center_event_id":"6d9c7c9c-1997-4fe8-a064-7d3eec437294"},{"id":"4e628a2e-7736-438d-8891-7e1d38054324","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/merge-queue-low-pressure-scan","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.82-merge-queue-conflict-recovery","prNumber":null,"terminal":false,"missionId":"a5ca6b7b-67de-4e01-80d2-85f8bd971864","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":369,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":432,"providerAuthMs":0,"ledgerPrepareMs":368,"ledgerReconcileMs":0,"lineageReconcileMs":64,"resolvePreflightMs":432,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":368,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /mission/execute again automatically with this same missionId without another owner prompt or workflow switch.","receiptRef":{"mode":"full","missionId":"a5ca6b7b-67de-4e01-80d2-85f8bd971864"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":4191,"likelyAffectedFiles":["workers/cc-execution/src/entrypoint-owner-status.js","workers/cc-execution/src/version.js","config/control-plane-capabilities.json",".forgejo/workflows/knocklaunch.yml"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-09T20:02:33.149981+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:a5ca6b7b-67de-4e01-80d2-85f8bd971864:execute_mission:repair_mission_synthesis_ready:current-generation","mission_step_id":"4e951542-85ce-402e-a604-8d8f5d51c6d2","command_center_event_id":"a5ca6b7b-67de-4e01-80d2-85f8bd971864"},{"id":"4e6551d2-c8a0-4434-a73d-f02be742abd6","source":"durable-mission-ledger","status":"verified","payload":{"sourceSha":"491b4a989e63b638b41f78e2ca6e00675648083a","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"cross-window-isolation","satisfied":true,"statement":"Signing into PRIME from /auth uses a dedicated auth storage namespace and cannot make another platform window become authenticated or route to tenant selection.","proofConditionIds":["repo-proof","production-proof"]},{"id":"signed-in-fast-path-preserved","satisfied":true,"statement":"When a normal platform session already exists, /auth/oauth/consent continues to use that normal platform session for the existing trusted OAuth approval flow.","proofConditionIds":["repo-proof","production-proof"]},{"id":"oauth-callback-owned-by-prime","satisfied":true,"statement":"On exactly /auth and /auth/oauth/consent, the normal platform Supabase client does not consume authentication callback URL state; the isolated PRIME client owns connector callback processing.","proofConditionIds":["repo-proof"]},{"id":"platform-login-untouched","satisfied":true,"statement":"Normal platform Login, PublicRoute, tenant selection, and app/workspace routing remain unchanged.","proofConditionIds":["repo-proof","production-proof"]}],"satisfied":true,"constraints":[{"id":"frontend-auth-only","satisfied":true,"statement":"No backend, database, tenant-data, Command Center runtime, or OAuth provider configuration changes are allowed.","proofConditionIds":["repo-proof","production-proof"]},{"id":"distinct-storage-key","satisfied":true,"statement":"The PRIME auth client must use a unique non-platform storage key that cannot be read by the canonical persisted-session fallback or cleared as an sb-* platform auth key.","proofConditionIds":["repo-proof"]},{"id":"no-prime-tenant-routing","satisfied":true,"statement":"PRIME auth code must not resolve active tenant, last route, applications, workspaces, or /select-tenant.","proofConditionIds":["repo-proof"]},{"id":"canonical-release","satisfied":true,"statement":"The change must pass KnockLaunch Gate, squash-merge through Forgejo, release only frontend, and verify the exact production artifact.","proofConditionIds":["production-proof"]}],"contractHash":"e2b55a36976c0f9eaec0f847bedaa9db72854f8be60499f1cfdde8833ef5f23b","releaseBound":true,"witnessBound":false,"visualRequested":false,"visualSatisfied":true,"conditionResults":[{"id":"repo-proof","kind":"repository","evidence":{"repositoryProofGate":"request_contract_repository_verified","requestContractHash":"e2b55a36976c0f9eaec0f847bedaa9db72854f8be60499f1cfdde8833ef5f23b","repositoryProofStatus":"verified","repositoryProofSourceSha":"491b4a989e63b638b41f78e2ca6e00675648083a"},"required":true,"satisfied":true},{"id":"production-proof","kind":"runtime","evidence":{"releaseState":"verified","activeReleaseTargets":["frontend"],"releaseRequestContractHash":"e2b55a36976c0f9eaec0f847bedaa9db72854f8be60499f1cfdde8833ef5f23b"},"required":true,"satisfied":true}],"validationErrors":[],"pendingProofKinds":[],"activeReleaseTargets":["frontend"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-10T15:56:56.183614+00:00","proof_gate":"request_contract_terminal_verified","source_sha":"491b4a989e63b638b41f78e2ca6e00675648083a","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:d1b36bdc-5dda-4049-ab57-b931175928f9:request-contract:e2b55a36976c0f9eaec0f847bedaa9db72854f8be60499f1cfdde8833ef5f23b:491b4a989e63b638b41f78e2ca6e00675648083a:verified:","mission_step_id":"1fe292c4-170c-434f-83c0-723d3f1d5d5f","command_center_event_id":"d1b36bdc-5dda-4049-ab57-b931175928f9"},{"id":"4e6a7451-dd87-4f87-837e-e0d4641de8b9","source":"durable-mission-ledger","status":"verified","payload":{"sourceSha":"57bb3b162c18f5c6773d7272b48a73c391204a44","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"outcome-1","satisfied":true,"statement":"Implement a canonical KNOCKLAUNCH Tenant Activation Certification primitive on current Forgejo main. A newly created or materially reconfigured tenant must not be considered activation-ready until deterministic automated checks prove: canonical persisted tenant classification exists; tenant application assignments resolve through the platform registry; generated/private routes resolve to the intended application and intended tenant context and fail closed on missing/invalid context; tenant-scoped storage/bootstrap dependencies required by its workspace profile are ready; canonical Profile and Settings universal surfaces resolve; exactly one account/avatar menu owner is present by contract (not DOM scraping); invitation/onboarding capability has a valid ready or explicit prerequisite state; and one representative tenant-scoped write/read capability can be proven without cross-tenant leakage. Encode this as a shared platform capability/contract and reusable automated validation invoked by tenant bootstrap/activation rather than tenant-specific code. Do not activate or mutate customer tenant data as part of implementation; use existing registries/contracts and deterministic fixtures/c","proofConditionIds":["proof-production"]}],"satisfied":true,"constraints":[{"id":"capability-completeness","satisfied":true,"statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","proofConditionIds":["proof-production"]},{"id":"atomic-capability-lifecycle","satisfied":true,"statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","proofConditionIds":["proof-production"]}],"contractHash":"340bd57e5dd2415fd885fb705a3bcebfdf13a1016ad6a3921de0ccb769ff79c9","releaseBound":true,"witnessBound":false,"visualRequested":false,"visualSatisfied":true,"conditionResults":[{"id":"proof-production","kind":"runtime","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":false,"releaseTargetStates":{"frontend":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["frontend"],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"migrationReleaseVerified":null,"releaseRequestContractHash":"340bd57e5dd2415fd885fb705a3bcebfdf13a1016ad6a3921de0ccb769ff79c9"},"required":true,"satisfied":true}],"validationErrors":[],"pendingProofKinds":[],"activeReleaseTargets":["frontend"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-18T15:52:37.106085+00:00","proof_gate":"request_contract_terminal_verified","source_sha":"57bb3b162c18f5c6773d7272b48a73c391204a44","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:3dcc3ce5-964d-47ce-9b20-f548d4476bac:request-contract:340bd57e5dd2415fd885fb705a3bcebfdf13a1016ad6a3921de0ccb769ff79c9:57bb3b162c18f5c6773d7272b48a73c391204a44:verified:","mission_step_id":"fec73cf7-ee3b-48dc-a15b-76fb9ca1af76","command_center_event_id":"3dcc3ce5-964d-47ce-9b20-f548d4476bac"},{"id":"4e6af2f2-896f-4c99-bd36-4f9ab603a6cf","source":"cc-execution","status":"waiting_for_gate","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-bd4dae67af61","reason":"pull_request_checks_pending","status":"waiting_for_gate","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":null,"prNumber":2818,"terminal":false,"missionId":"bd4dae67-af61-478d-b0c3-d14b2451c329","operation":"automatic_mission_resume","proofGate":"repair_mission_waiting_for_gate","sourceSha":null,"timingsMs":{"prReadinessMs":1083,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request after the exact-head KnockLaunch Gate changes state.","receiptRef":{"mode":"full","missionId":"bd4dae67-af61-478d-b0c3-d14b2451c329"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1284,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-15T13:20:32.462592+00:00","proof_gate":"repair_mission_waiting_for_gate","source_sha":null,"external_id":"2818","receipt_type":"automatic_mission_resume","idempotency_key":"mission:bd4dae67-af61-478d-b0c3-d14b2451c329:automatic-mission-resume:2818:repair_mission_waiting_for_gate","mission_step_id":"615d830b-c763-4955-b3a2-1b041852ea43","command_center_event_id":"bd4dae67-af61-478d-b0c3-d14b2451c329"},{"id":"4e6d948d-e923-49bd-9bf9-38d18f3f1c90","source":"forgejo-runtime","status":"failed","payload":{"failed":["forgejo-release/workflow","frontend-cloudflare/live"],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"failure","frontend-cloudflare/live":"failure"},"mainSha":"92229af92fdd529f756e4af872df6c42ec176f83","missing":[],"pending":[],"required":["forgejo-main/source","forgejo-release/workflow","frontend-cloudflare/live"],"sourceSha":"92229af92fdd529f756e4af872df6c42ec176f83","releaseState":"failed","sourceInMain":true,"compareStatus":"identical","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/411","runId":411,"status":"failure","conclusion":null,"failedJobs":[{"id":1739,"name":"Frontend deploy failed - ","status":"failure","conclusion":null,"failedSteps":[]}],"fingerprint":"failure|frontend deploy failed -","failureClass":"code_failure","safeAutoRetry":false},"ccExecutionRuntimeProof":null},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-08-15T17:08:40.037679+00:00","proof_gate":"canonical_release_terminal_failed","source_sha":"92229af92fdd529f756e4af872df6c42ec176f83","external_id":"forgejo-main-92229af92fdd","receipt_type":"canonical_release_status","idempotency_key":"mission:60bbf5bd-1b33-4699-bc1a-bf707d8b28c7:forgejo-release-status:92229af92fdd529f756e4af872df6c42ec176f83:failed:forgejo-main/source=success|forgejo-release/workflow=failure|frontend-cloudflare/live=failure","mission_step_id":"84c6dff0-82e1-4f02-8aa6-ba1926f7d89a","command_center_event_id":"60bbf5bd-1b33-4699-bc1a-bf707d8b28c7"},{"id":"4e6e888f-8b26-43e2-9321-00fe7a7af706","source":"cc-execution","status":"blocked","payload":{"ok":false,"jobId":null,"phase":"implementation","branch":"ai/objective-first-repair-9f47c05d3325","reason":"anchored_edit_invalid","status":"blocked","metrics":{"receiptBytes":8836,"releaseCount":0,"toolCallCount":5,"repeatedCallCount":1,"executorlessWaitMs":442085,"firstUsefulResultAt":"2026-09-28T17:17:56.499Z","recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.58.305-paul-machinery-sync-drift-proof","prNumber":null,"terminal":false,"missionId":"9f47c05d-3325-4228-b475-04d83c6da7e2","operation":"execute_mission","proofGate":"repair_mission_execution_blocked","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":671,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":671,"missionSetupMs":293,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":293,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":293,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":293,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"9f47c05d-3325-4228-b475-04d83c6da7e2"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1421,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-28T17:24:57.881417+00:00","proof_gate":"repair_mission_execution_blocked","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:9f47c05d-3325-4228-b475-04d83c6da7e2:execute_mission:repair_mission_execution_blocked:current-generation","mission_step_id":"511a09bb-2842-49c4-a7ea-a14a305bdb3a","command_center_event_id":"9f47c05d-3325-4228-b475-04d83c6da7e2"},{"id":"4e71787a-33f7-4273-bf51-21f33ec646e7","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":"ai/proposal-editor-ornament-instances","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.68-visual-witness-self-heal-proof","prNumber":null,"terminal":false,"missionId":"0dc9d40e-bebf-4e68-908d-1523ef3f07ef","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":6,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":1991,"providerAuthMs":0,"ledgerPrepareMs":917,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":1991,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":917,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /mission/execute again automatically with this same missionId without another owner prompt or workflow switch.","receiptRef":{"mode":"full","missionId":"0dc9d40e-bebf-4e68-908d-1523ef3f07ef"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":3635,"likelyAffectedFiles":["src/pages/proposals/ProposalDesignStudio.tsx","supabase/functions/proposal-engine/index.ts"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"766cfaa7-ac42-46c8-bbef-69d13268a29d","created_at":"2026-09-06T16:28:08.063025+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:0dc9d40e-bebf-4e68-908d-1523ef3f07ef:execute_mission:repair_mission_synthesis_ready:current-generation","mission_step_id":"5a734470-7132-4cfe-a9bf-80a107cbc95c","command_center_event_id":"0dc9d40e-bebf-4e68-908d-1523ef3f07ef"},{"id":"4e71cd03-f007-4c04-8b09-ed3fca9aa996","source":"cc-execution","status":"recorded","payload":{"requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"compilation":{"stages":["owner_intent","conversation_context","scope","live_state","mutation_authority","affected_systems","dependencies","risk_and_blast_radius","execution_tactics","required_proof","release_plan","recovery_plan"],"version":2,"explicit":true,"objective":"Repair the canonical PAUL durable scheduler source-scope handoff. Proven failure: owner-authorized PAUL schedules compile with adaptivePolicy.scope.sourceTargets=[] even when exact source paths are supplied, causing scheduled mutation-capable missions to stop at repair_mission_source_resolution_required. Fix the scheduler/request-contract compiler and dispatch path so an optional explicit bounded sourceTargets array is accepted by paul_schedule_create, validated against current Forgejo source truth, persisted durably, returned by create/list readback, copied into the explicit scheduled requestContract adaptivePolicy.scope.sourceTargets, and forwarded unchanged into canonical execute_objective dispatch. Preserve backward compatibility for schedules without sourceTargets; those may remain read-only or require resolution, but must not silently drop caller-supplied explicit targets. Add focused regression coverage for create -> durable readback -> scheduled contract -> execute_objective handoff, including proof that exact source targets survive and the prior source_resolution_required failure class is eliminated. Keep mutation bounded to the scheduler/control-plane contract and directly required tests/schema, preserve fail-closed behavior, Gate, squash merge, affected-target release, and live runtime proof.","proofKinds":["runtime"],"adaptiveDomains":["intent","tenant_route_role_viewport","urgency_deadline","dependency_scope","risk_blast_radius","runner_capacity","queue_active_work","provider_failure_circuits","qa_scope","retry_recovery","release_ownership","proof_depth"],"expansionPolicy":"later_stages_may_only_narrow_or_expand_with_machine_readable_dependency_evidence","dynamicStatePolicy":"live_state_may_change_execution_tactics_but_never_owner_outcome_or_explicit_constraints","dynamicRefreshStages":["preflight","gate","release","runtime_proof"],"adaptiveCompilerVersion":"paul-adaptive-objective-v1","inheritedContextBlockingAuthority":false},"rawUtterance":"Repair the canonical PAUL durable scheduler source-scope handoff. Proven failure: owner-authorized PAUL schedules compile with adaptivePolicy.scope.sourceTargets=[] even when exact source paths are supplied, causing scheduled mutation-capable missions to stop at repair_mission_source_resolution_required. Fix the scheduler/request-contract compiler and dispatch path so an optional explicit bounded sourceTargets array is accepted by paul_schedule_create, validated against current Forgejo source truth, persisted durably, returned by create/list readback, copied into the explicit scheduled requestContract adaptivePolicy.scope.sourceTargets, and forwarded unchanged into canonical execute_objective dispatch. Preserve backward compatibility for schedules without sourceTargets; those may remain read-only or require resolution, but must not silently drop caller-supplied explicit targets. Add focused regression coverage for create -> durable readback -> scheduled contract -> execute_objective handoff, including proof that exact source targets survive and the prior source_resolution_required failure class is eliminated. Keep mutation bounded to the scheduler/control-plane contract and directly required tests/schema, preserve fail-closed behavior, Gate, squash merge, affected-target release, and live runtime proof.","wordingChanged":false,"canonicalIntent":"Repair the canonical PAUL durable scheduler source-scope handoff. Proven failure: owner-authorized PAUL schedules compile with adaptivePolicy.scope.sourceTargets=[] even when exact source paths are supplied, causing scheduled mutation-capable missions to stop at repair_mission_source_resolution_required. Fix the scheduler/request-contract compiler and dispatch path so an optional explicit bounded sourceTargets array is accepted by paul_schedule_create, validated against current Forgejo source truth, persisted durably, returned by create/list readback, copied into the explicit scheduled requestContract adaptivePolicy.scope.sourceTargets, and forwarded unchanged into canonical execute_objective dispatch. Preserve backward compatibility for schedules without sourceTargets; those may remain read-only or require resolution, but must not silently drop caller-supplied explicit targets. Add focused regression coverage for create -> durable readback -> scheduled contract -> execute_objective handoff, including proof that exact source targets survive and the prior source_resolution_required failure class is eliminated. Keep mutation bounded to the scheduler/control-plane contract and directly required tests/schema, preserve fail-closed behavior, Gate, squash merge, affected-target release, and live runtime proof.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"paul-scheduler-source-scope","statement":"Repair the canonical PAUL durable scheduler source-scope handoff. Proven failure: owner-authorized PAUL schedules compile with adaptivePolicy.scope.sourceTargets=[] even when exact source paths are supplied, causing scheduled mutation-capable missions to stop at repair_mission_source_resolution_required. Fix the scheduler/request-contract compiler and dispatch path so an optional explicit bounded sourceTargets array is accepted by paul_schedule_create, validated against current Forgejo source truth, persisted durably, returned by create/list readback, copied into the explicit scheduled requestContract adaptivePolicy.scope.sourceTargets, and forwarded unchanged into canonical execute_objective dispatch. Preserve backward compatibility for schedules without sourceTargets; those may remain read-only or require resolution, but must not silently drop caller-supplied explicit targets. Add focused regression coverage for create -> durable readback -> scheduled contract -> execute_objective handoff, including proof that exact source targets survive and the prior source_resolution_required failure class is eliminated. Keep mutation bounded to the scheduler/control-plane contract and directl","provenance":{"reason":"PAUL schedule 1d8d81b9-1a48-4ecf-abee-1abfb861324a","source":"owner_authorized_schedule","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]}],"objective":"Repair the canonical PAUL durable scheduler source-scope handoff. Proven failure: owner-authorized PAUL schedules compile with adaptivePolicy.scope.sourceTargets=[] even when exact source paths are supplied, causing scheduled mutation-capable missions to stop at repair_mission_source_resolution_required. Fix the scheduler/request-contract compiler and dispatch path so an optional explicit bounded sourceTargets array is accepted by paul_schedule_create, validated against current Forgejo source truth, persisted durably, returned by create/list readback, copied into the explicit scheduled requestContract adaptivePolicy.scope.sourceTargets, and forwarded unchanged into canonical execute_objective dispatch. Preserve backward compatibility for schedules without sourceTargets; those may remain read-only or require resolution, but must not silently drop caller-supplied explicit targets. Add focused regression coverage for create -> durable readback -> scheduled contract -> execute_objective handoff, including proof that exact source targets survive and the prior source_resolution_required failure class is eliminated. Keep mutation bounded to the scheduler/control-plane contract and directly required tests/schema, preserve fail-closed behavior, Gate, squash merge, affected-target release, and live runtime proof.","constraints":[{"id":"canonical-execution","statement":"Execute through canonical KNOCKLAUNCH mission, Gate, release, and proof rules; the schedule grants no arbitrary shell, SQL, URL, secret, or provider authority.","provenance":{"reason":"Bound unattended work to the existing mission safety model.","source":"scheduler_safety","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]},{"id":"capability-completeness","statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","provenance":{"reason":null,"source":"hard_safety_invariant","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]},{"id":"atomic-capability-lifecycle","statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","provenance":{"reason":null,"source":"hard_safety_invariant","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]}],"adaptivePolicy":{"risk":{"tier":"high","blastRadius":"sensitive"},"proof":{"requiredKinds":["runtime"],"visualProofScope":"none","interactionRequired":false,"runtimeProofRequired":true},"scope":{"route":null,"roleRef":null,"tenantRef":null,"sourceTargets":["config/capabilities/paul-scheduler.json"]},"dynamic":{"variables":["main_and_runtime_lineage","runner_capacity","queue_and_active_work","provider_health","failure_clusters_and_circuits","release_target_state","current_pr_and_gate_state"],"refreshStages":["preflight","gate","release","runtime_proof"],"refreshMayChange":["runner_selection","parallelism","retry_path","qa_depth","release_recovery","proof_timing"],"refreshMayNotChange":["owner_outcome","explicit_no_go_constraints","tenant_identity","credential_boundary","hard_safety_invariants"]},"urgency":{"priority":"deadline_sensitive","deadlineSignals":["by paul_schedule_create","by create/list readback"],"deadlineExplicit":true},"version":"paul-adaptive-objective-v1","recovery":{"transient":"one_bounded_retry_then_alternate_eligible_pool_or_provider_path","deterministic":"repair_source_or_contract_do_not_blind_rerun","mutationDependencyFailure":"prerequisite_required_or_targeted_recovery_never_invent","readOnlyDependencyFailure":"degrade_to_available_grounded_context_and_keep_conversation_alive"},"unknowns":["tenant","route","release_targets_until_changed_paths"],"authority":{"outcome":"current_explicit_owner_request","tactics":"live_prime_truth","unknownPolicy":"preserve_unknown_never_invent","historicalContext":"advisory_unless_current_request_confirms"},"execution":{"mutation":true,"concurrency":"serialize_overlapping_mutations","scopePolicy":"start_bounded_expand_only_with_machine_readable_dependency_evidence","staleStatePolicy":"refresh_dynamic_state_before_irreversible_or_acceptance_stage","conversationIsolation":true,"ownerOutcomeMayBeChangedByAdaptation":false},"experience":{"visual":false,"viewports":["desktop","mobile"],"behavioral":false,"visualProofScope":"none"},"dependencies":{"requiredDomains":["backend_runtime","schema_data_storage","provider_configuration","release_ownership","live_production_proof"],"capabilityDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"releaseTargetHints":[]},"inputSignals":{"rawUtterance":"Repair the canonical PAUL durable scheduler source-scope handoff. Proven failure: owner-authorized PAUL schedules compile with adaptivePolicy.scope.sourceTargets=[] even when exact source paths are supplied, causing scheduled mutation-capable missions to stop at repair_mission_source_resolution_required. Fix the scheduler/request-contract compiler and dispatch path so an optional explicit bounded sourceTargets array is accepted by paul_schedule_create, validated against current Forgejo source truth, persisted durably, returned by create/list readback, copied into the explicit scheduled requestContract adaptivePolicy.scope.sourceTargets, and forwarded unchanged into canonical execute_objective dispatch. Preserve backward compatibility for schedules without sourceTargets; those may remain read-only or require resolution, but must not silently drop caller-supplied explicit targets. Add focused regression coverage for create -> durable readback -> scheduled contract -> execute_objective handoff, including proof that exact source targets survive and the prior source_resolution_required failure class is eliminated. Keep mutation bounded to the scheduler/control-plane contract and directly required tests/schema, preserve fail-closed behavior, Gate, squash merge, affected-target release, and live runtime proof.","canonicalIntent":"Repair the canonical PAUL durable scheduler source-scope handoff. Proven failure: owner-authorized PAUL schedules compile with adaptivePolicy.scope.sourceTargets=[] even when exact source paths are supplied, causing scheduled mutation-capable missions to stop at repair_mission_source_resolution_required. Fix the scheduler/request-contract compiler and dispatch path so an optional explicit bounded sourceTargets array is accepted by paul_schedule_create, validated against current Forgejo source truth, persisted durably, returned by create/list readback, copied into the explicit scheduled requestContract adaptivePolicy.scope.sourceTargets, and forwarded unchanged into canonical execute_objective dispatch. Preserve backward compatibility for schedules without sourceTargets; those may remain read-only or require resolution, but must not silently drop caller-supplied explicit targets. Add focused regression coverage for create -> durable readback -> scheduled contract -> execute_objective handoff, including proof that exact source targets survive and the prior source_resolution_required failure class is eliminated. Keep mutation bounded to the scheduler/control-plane contract and directly required tests/schema, preserve fail-closed behavior, Gate, squash merge, affected-target release, and live runtime proof.","conversationContextPresent":false}},"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"proof-production","kind":"runtime","claim":"Live PAUL scheduler persists and forwards exact explicit sourceTargets into scheduled request contracts and canonical execute_objective dispatch, eliminating the proven source_resolution_required failure caused by dropped source scope.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false}],"validationErrors":[],"capabilityManifest":{"id":"paul-scheduler-source-scope-contract","driftPolicy":"exact_manifest_source_release_dependency_or_runtime_identity_mismatch_is_nonterminal","proofLedger":"command_center_mission_ledger_request_contract_hash_bound","schemaVersion":1,"releaseTargets":[],"lifecycleStates":["prepare","deploy","verify","activate"],"activationPolicy":"dependencies_and_claim_matched_live_proof_before_exposure","dependencyDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_required_not_runtime_failures","compatibilityWindow":["N","N-1"],"failureIsolationPolicy":"quarantine_or_rollback_affected_capability_only_preserve_unrelated_working_capabilities","canaryProofConditionIds":["proof-production"]},"capabilityCompleteness":{"domains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"required":true,"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_states_not_runtime_failures"}},"requestContractHash":"0f9ae86b1a53e76a71b55b5d2f13cf15025a697e643efe99d9d16e0260ca00d8","requestContractRevision":2,"previousRequestContractHash":"3140f3c43e33bb162a4a739c7af4f3e1212a5d99aadc0fde0c6b46c6a4c1e7b0"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-30T16:00:49.499705+00:00","proof_gate":"request_contract_revision_recorded","source_sha":null,"external_id":null,"receipt_type":"request_contract_revision","idempotency_key":"mission:c398c910-00c7-45c6-862c-fa68ccb819b9:request-contract:0f9ae86b1a53e76a71b55b5d2f13cf15025a697e643efe99d9d16e0260ca00d8","mission_step_id":"367100e3-062e-4976-ba14-ca12d6241c42","command_center_event_id":"c398c910-00c7-45c6-862c-fa68ccb819b9"},{"id":"4e7396cb-ad70-40ee-a3a1-ed4ee276c421","source":"cc-execution","status":"waiting","payload":{"body":{"ship":true,"files":[{"path":"src/PrivateAppShell.tsx","content":"/** KNOCKLAUNCH private application shell. */\nimport React,{Suspense} from 'react';\nimport {createPortal} from 'react-dom';\nimport {Link,Navigate,Route,Routes,useLocation,useNavigate,useParams} from 'react-router-dom';\nimport { ArrowLeft, Home, MessageCircle, RefreshCw } from 'lucide-react';\nimport {RouteHealthBanner} from '@/components/RouteHealthBanner';\nimport {UniversalLoadingScreen} from '@/components/ui/universal-loading-screen';\nimport {PageLoadingSkeleton} from '@/components/ux/PageLoadingSkeleton';\nimport {useCanonicalTenantRedirect} from '@/hooks/useCanonicalTenantRedirect';\nimport {MultiTenantProvider,useMultiTenant} from './contexts/MultiTenantContext';\nimport {RealtimeProvider} from './contexts/RealtimeContext';\nimport {TenantApplicationChromeContext} from './contexts/TenantApplicationChromeContext';\nimport {UserImpersonationProvider} from '@/contexts/UserImpersonationContext';\nimport {UserImpersonationBanner} from './components/admin/UserImpersonationBanner';\nimport {AuditorModeBanner} from './components/AuditorModeBanner';\nimport SiteBackground from './components/SiteBackground';\nimport {TelInterceptorBridge} from './components/communications/TelInterceptorBridge';\nimport {TenantBrandTheme} from '@/components/branding/TenantBrandTheme';\nimport TenantQuickTour from '@/components/onboarding/TenantQuickTour';\nimport {BaseErrorBoundary} from '@/components/error-boundary/BaseErrorBoundary';\nimport {GodModePageOverrideRuntime} from '@/components/godmode/GodModePageOverrideRuntime';\nimport TenantPublishedExperienceRuntime from '@/components/experience-editor/TenantPublishedExperienceRuntime';\nimport {setGlobalShortcutsState} from './hooks/useGlobalKeyboardShortcuts';\nimport {lazyWithRetry} from '@/lib/lazyWithRetry';\nimport {useShortcutHint} from './hooks/useShortcutHint';\nimport {FocusModeProvider} from './components/ux/FocusMode';\nimport {useSessionTracker} from './hooks/useSessionTracker';\nimport {useActivityLogger} from './hooks/useActivityLogger';\nimport {useRealtimeStormEvents} from './hooks/useRealtimeStormEvents';\nimport {ROLES} from './routes/helpers';\nimport {UnifiedProtectedRoute} from '@/components/UnifiedProtectedRoute';\n\nimport {getTenantDashboardPathForTenant,isKnockLaunchOsWorkspace} from '@/lib/tenantUtils';\nimport {persistCachedTenantBackground,resolveTenantBackgroundUrl} from '@/lib/tenantBackground';\nimport {resolveTenantWorkspaceRuntimeProfile} from '@/lib/tenants/tenantWorkspaceRuntimeProfile';\nimport {canonicalTenantRouteSlugForIdentity,resolveTenantRouteMembership,tenantRouteIdentityMatchesRequestedSlug} from '@/routes/verticalRouteRegistry';\nimport {buildTenantApplicationWorkspacePath,getTenantApplicationByReference,getTenantApplicationByStandaloneHost,type ApplicationCapability} from '@/config/applicationCapabilityRegistry';\nimport {resolveRequestedTenantRouteIdentity,resolveTenantApplicationRoute} from '@/routes/tenantApplicationRouteResolver';\nimport {readGodModeAccessContext} from '@/lib/godmodeAccess';\nimport {PROJECTED_TENANT_ROUTE_GRACE_MS,projectedTenantRouteIntentMatches,shouldHoldTenantRouteHydration} from '@/routes/tenantRouteIdentityBoundaryState';\nimport {resolvePrivateWorkspaceCompatibility} from '@/routes/privateWorkspaceCompatibility';\nimport RedfishWorkspaceShell from '@/components/redfish/RedfishWorkspaceShell';\nimport TenantModesShell from '@/shells/TenantModesShell';\nimport CurriControlCenterShell from '@/shells/curri/CurriControlCenterShell';\nimport { isModesTenant } from '@/shells/modesTenantShell';\nimport { TenantLayoutPreferenceBridge } from '@/components/layout/TenantLayoutControl';\nimport { CanonicalWorkspaceSidebarRoot, WorkspaceSidebarProvider } from '@/components/layout/TenantLayoutControl';\nimport PlatformContextMenu from '@/components/interaction/PlatformContextMenu';\nimport '@/styles/bigPapisApplicationFamily.css';\nimport '@/styles/bigPapisApplicationFamily.css';\n\nconst MailApplicationRoute=lazyWithRetry(()=>import('./pages/applications/MailApplicationRoute'));\nconst CalendarApplicationRoute=lazyWithRetry(()=>import('./pages/applications/CalendarApplicationRoute'));\nconst MessagingApplicationShell=lazyWithRetry(()=>import('./apps/messaging/MessagingApplicationShell'));\nconst DocumentsEvidenceApplicationRoute=lazyWithRetry(()=>import('./pages/applications/DocumentsEvidenceApplicationRoute'));\nconst BillingPaymentsApplicationRoute=lazyWithRetry(()=>import('./pages/applications/BillingPaymentsApplicationRoute'));\nconst ReportsAnalyticsApplicationRoute=lazyWithRetry(()=>import('./pages/applications/ReportsAnalyticsApplicationRoute'));\nconst JobsWorkOrdersApplicationRoute=lazyWithRetry(()=>import('./pages/applications/JobsWorkOrdersApplicationRoute'));\nconst ContactsRouter=lazyWithRetry(()=>import('./components/ContactsRouter').then(module=>({default:module.ContactsRouter})));\nconst TasksPage=lazyWithRetry(()=>import('./pages/TasksPage'));\nconst TenantSettingsPage=lazyWithRetry(()=>import('./pages/settings/TenantSettingsPageWithWebsiteAssets'));\nconst OpportunityRadarPage=lazyWithRetry(()=>import('./pages/crm/OpportunityRadarPage')); \nconst lazyNamedWithRetry=<TModule,TKey extends keyof TModule>(loader:()=>Promise<TModule>,exportName:TKey)=>lazyWithRetry(()=>loader().then(module=>({default:module[exportName] as React.ComponentType<any>})));\nconst AdminUsersCommandCenter=lazyNamedWithRetry(()=>import('./components/admin/TenantUserCommandCenters'),'AdminUsersCommandCenter');\nconst OwnerUsers=lazyWithRetry(()=>import('./pages/owner/OwnerUsers'));const KnockLaunchPortfolio=lazyWithRetry(()=>import('./pages/owner/KnockLaunchPortfolio'));const KnockLaunchOSDashboard=lazyWithRetry(()=>import('./pages/owner/KnockLaunchOSDashboard'));const KnockLaunchOSSettings=lazyWithRetry(()=>import('./pages/owner/KnockLaunchOSSettings'));const VideoStudio=lazyWithRetry(()=>import('./pages/owner/VideoStudio'));\nconst FirstClassAppTenantBoundary=lazyWithRetry(()=>import('./components/applications/FirstClassAppTenantBoundary'));const ProposalEditorApplicationRoute=lazyWithRetry(()=>import('./pages/applications/ProposalEditorApplicationRoute'));const UniversalProposalWorkspace=lazyWithRetry(()=>import('./pages/proposals/UniversalProposalWorkspace'));const CreativeStudioApplicationRoute=lazyWithRetry(()=>import('./pages/applications/CreativeStudioApplicationRoute'));const NotFound=lazyWithRetry(()=>import('./pages/NotFound'));const BackgroundOCRStatus=lazyNamedWithRetry(()=>import('./components/management/BackgroundOCRStatus'),'BackgroundOCRStatus');const GlobalCommandPalette=lazyNamedWithRetry(()=>import('./components/GlobalCommandPalette'),'GlobalCommandPalette');const KeyboardShortcutsModal=lazyNamedWithRetry(()=>import('./components/KeyboardShortcutsModal'),'KeyboardShortcutsModal');const TrialBanner=lazyNamedWithRetry(()=>import('./components/billing/TrialBanner'),'TrialBanner');const TrialAhaModal=lazyNamedWithRetry(()=>import('./components/billing/TrialAhaModal'),'TrialAhaModal');const ExperienceEditorCanvasBridge=lazyWithRetry(()=>import('./components/experience-editor/ExperienceEditorCanvasBridge'));const MiscAwareAccountMenu=lazyWithRetry(()=>import('./components/MiscAwareAccountMenu'));const RoofHelpFinderWorkspace=lazyWithRetry(()=>import('./pages/roof-help/RoofHelpFinderWorkspace'));const RedfishCanvassingRoute=lazyWithRetry(()=>import('./components/redfish/RedfishCanvassingRoute'));const RedfishContactWorkspace=lazyWithRetry(()=>import('./pages/crm/ContactWorkspace/index'));const MediaLibrary=lazyWithRetry(()=>import('./pages/admin/MediaLibrary'));const AutoUnlockWorkspaceRouter=lazyWithRetry(()=>import('./pages/auto-lockout/AutoUnlockWorkspaceRouter'));const PCGCanonicalWorkspaceRoute=lazyWithRetry(()=>import('./pages/card-grading/PCGCanonicalWorkspaceRoute'));const BookMeDirectlyWorkspace=lazyWithRetry(()=>import('./pages/book-me-directly/BookMeDirectlyWorkspace'));const CallCenterApplicationRoute=lazyWithRetry(()=>import('./pages/applications/CallCenterApplicationRoute'));const EventRentalCustomersPage=lazyNamedWithRetry(()=>import('./pages/event-rentals/EventRentalWorkspace'),'EventRentalCustomersPage');const EventRentalInventoryPage=lazyNamedWithRetry(()=>import('./pages/event-rentals/EventRentalWorkspace'),'EventRentalInventoryPage');const EventRentalBookingsPage=lazyNamedWithRetry(()=>import('./pages/event-rentals/EventRentalWorkspace'),'EventRentalBookingsPage');const EventRentalOperationsPage=lazyNamedWithRetry(()=>import('./pages/event-rentals/EventRentalWorkspace'),'EventRentalOperationsPage');const EventRentalCalendarPage=lazyNamedWithRetry(()=>import('./pages/event-rentals/EventRentalWorkspace'),'EventRentalCalendarPage');const EventRentalPrepChecklistPage=lazyNamedWithRetry(()=>import('./pages/event-rentals/EventRentalWorkspace'),'EventRentalPrepChecklistPage');const EventRentalPaymentsPage=lazyNamedWithRetry(()=>import('./pages/event-rentals/EventRentalWorkspace'),'EventRentalPaymentsPage');const EventRentalReportsPage=lazyNamedWithRetry(()=>import('./pages/event-rentals/EventRentalWorkspace'),'EventRentalReportsPage');const EventRentalSetupReturnPage=lazyNamedWithRetry(()=>import('./pages/event-rentals/EventRentalWorkspace'),'EventRentalSetupReturnPage');\nconst RoofTracingPage=lazyWithRetry(()=>import('./pages/roof-estimator/RoofTracingPage'));\nconst TenantCrmRoutes=lazyWithRetry(()=>import('./routes/crmRoutes').then(module=>({default:function TenantCrmRoutesRuntime({locationOverride}:{locationOverride?:string}){return <Routes location={locationOverride}>{module.crmRoutes}<Route path=\"*\" element={<Suspense fallback={<RouteFallback/>}><NotFound/></Suspense>}/></Routes>}})));\nconst AdminRouteRegistry=lazyWithRetry(()=>import('./routes/adminRoutes').then(module=>({default:function AdminRouteRegistryRuntime(){return <Routes>{module.adminRoutes}<Route path=\"*\" element={<Suspense fallback={<RouteFallback/>}><NotFound/></Suspense>}/></Routes>}})));\nconst SceRouteRegistry=lazyWithRetry(()=>import('./routes/sceRoutes').then(module=>({default:function SceRouteRegistryRuntime(){return <Routes>{module.sceRoutes}<Route path=\"*\" element={<Suspense fallback={<RouteFallback/>}><NotFound/></Suspense>}/></Routes>}})));\nconst OwnerRouteRegistry=lazyWithRetry(()=>import('./routes/ownerRoutes').then(module=>({default:function OwnerRouteRegistryRuntime(){return <Routes>{module.ownerRoutes}<Route path=\"*\" element={<Suspense fallback={<RouteFallback/>}><NotFound/></Suspense>}/></Routes>}})));\nconst DefaultPrivateRouteRegistry=lazyWithRetry(()=>Promise.all([import('./routes/sceRoutes'),import('./routes/vanityRoutes'),import('./routes/ownerRoutes'),import('./routes/commandCenterRoutes')]).then(([sce,vanity,owner,commandCenter])=>({default:function DefaultPrivateRouteRegistryRuntime(){return <Routes>{sce.sceRoutes}{vanity.vanityRoutes}{owner.ownerRoutes}{commandCenter.commandCenterRoutes}<Route path=\"/index\" element={<Navigate to=\"/select-tenant\" replace/>}/><Route path=\"*\" element={<TenantCrmRouteFallback/>}/></Routes>}})));\nconst DIRECT_MODES_APPLICATION_IDS=new Set(['calendar','communications','mail','documents','invoices','payments','billing','analytics','reports','jobs','contacts','tasks','opportunity-radar','creative-studio']);\nfunction DirectModesApplicationSurface({app}:{app:ApplicationCapability}){let content:React.ReactNode=null;switch(app.id){case'calendar':content=<CalendarApplicationRoute/>;break;case'communications':content=<MessagingApplicationShell/>;break;case'mail':content=<MailApplicationRoute/>;break;case'documents':content=<DocumentsEvidenceApplicationRoute/>;break;case'invoices':case'payments':case'billing':content=<BillingPaymentsApplicationRoute/>;break;case'analytics':case'reports':content=<ReportsAnalyticsApplicationRoute/>;break;case'jobs':content=<JobsWorkOrdersApplicationRoute/>;break;case'contacts':content=<ContactsRouter/>;break;case'tasks':content=<TasksPage/>;break;case'opportunity-radar':content=<OpportunityRadarPage/>;break;case'creative-studio':content=<CreativeStudioApplicationRoute/>;break;default:return null;}return <div data-tenant-application-surface=\"true\" data-tenant-application-id={app.id} className=\"relative h-full min-h-0 w-full overflow-hidden bg-transparent\"><Suspense fallback={<RouteFallback/>}>{content}</Suspense></div>}\nfunction isEventRentalTenantContext(tenant:any){const settings=((tenant as any)?.settings||{}) as Record<string,any>;const values=[tenant?.tenant_type,settings.declared_business_type,settings.business_type,settings.business_operating_blueprint?.businessTypeKey,settings.tenant_manifest?.businessOperatingBlueprint?.businessTypeKey].map(value=>String(value||'').trim().toUpperCase().replace(/[\\s-]+/g,'_'));return values.some(value=>value==='EVENT_RENTAL'||value==='EVENT_RENTALS'||value==='PARTY_RENTAL'||value==='PARTY_RENTALS')}\nfunction EventRentalModesApplicationSurface({app}:{app:ApplicationCapability}){const location=useLocation();const requestedKey=String(new URLSearchParams(location.search).get('modeApp')||'').trim();const requestedApp=requestedKey?getTenantApplicationByReference(requestedKey):undefined;const effectiveApp=requestedApp?.workspaceSurface&&requestedApp.workspaceSurface===app.workspaceSurface?requestedApp:app;let content:React.ReactNode=null;switch(effectiveApp.id){case'contacts':content=<EventRentalCustomersPage/>;break;case'booking':content=<EventRentalBookingsPage/>;break;case'rental-inventory':content=<EventRentalInventoryPage/>;break;case'event-rental-operations':content=<EventRentalOperationsPage/>;break;case'calendar':content=<CalendarApplicationRoute/>;break;case'tasks':content=<EventRentalPrepChecklistPage/>;break;case'invoices':content=<BillingPaymentsApplicationRoute embedded embeddedSurface=\"invoices\"/>;break;case'payments':case'billing':content=<EventRentalPaymentsPage/>;break;case'analytics':case'reports':content=<EventRentalReportsPage/>;break;case'forms':content=<EventRentalSetupReturnPage/>;break;case'proposals':content=<UniversalProposalWorkspace/>;break;default:if(DIRECT_MODES_APPLICATION_IDS.has(effectiveApp.id))return <DirectModesApplicationSurface app={effectiveApp}/>;return <EventRentalModesRouteFallback app={effectiveApp}/>;}return <Suspense fallback={<RouteFallback/>}>{content}</Suspense>}\nfunction EventRentalModesRouteFallback({app}:{app:ApplicationCapability}){const{activeTenant}=useMultiTenant();const home=activeTenant?.id?getTenantDashboardPathForTenant(activeTenant):'/select-tenant';return <section data-event-rental-route-fallback=\"true\" className=\"mx-auto my-6 w-full max-w-3xl rounded-3xl border border-white/12 bg-black/35 p-6 text-white shadow-[0_18px_48px_rgba(0,0,0,.22)] backdrop-blur-xl\"><div className=\"text-[10px] font-black uppercase tracking-[.2em] text-white/48\">Event rental workspace</div><h1 className=\"mt-2 text-2xl font-black\">{app.label} is not wired to this MODES workspace yet</h1><p className=\"mt-2 text-sm font-medium leading-6 text-white/60\">This route is blocked from falling through to the generic CRM. Return to the rental workspace instead.</p><Link to={home} className=\"mt-5 inline-flex min-h-11 items-center justify-center rounded-xl border border-white/14 bg-white/[.08] px-4 text-sm font-black text-white\">Back to workspace</Link></section>} \n\nfunction GlobalFallbackAccountMenu({verifyShellOwnership=false}:{verifyShellOwnership?:boolean}){const location=useLocation();const {activeTenant}=useMultiTenant();const normalizedPath=location.pathname.toLowerCase().replace(/\\/+$/g,'')||'/';const tenantType=String(activeTenant?.tenant_type||'').trim().toUpperCase().replace(/[\\s-]+/g,'_');const tenantSlug=String(activeTenant?.company_slug||'').trim().toLowerCase();const settings=((activeTenant as any)?.settings||{}) as Record<string,any>;const blueprintDriven=Boolean(settings.business_operating_blueprint||settings.tenant_manifest?.businessOperatingBlueprint||settings.declared_business_type);const adaptiveShellOwnsAccountMenu=(blueprintDriven||tenantType==='MISC'||tenantType==='MISCELLANEOUS')&&Boolean(tenantSlug)&&(normalizedPath===`/${tenantSlug}`||normalizedPath.startsWith(`/${tenantSlug}/`)||normalizedPath.startsWith('/crm/misc/'));const applicationRoute=resolveTenantApplicationRoute(normalizedPath);const shellContractOwnsAccountMenu=verifyShellOwnership||adaptiveShellOwnsAccountMenu;if(location.pathname.startsWith('/admin'))return null;if(applicationRoute?.mode==='standalone')return null;const forcePcgMobileAvatar=tenantSlug==='pcg'&&typeof window!=='undefined'&&window.matchMedia('(max-width: 767px)').matches;const forcePcgApplicationAvatar=tenantSlug==='pcg'&&applicationRoute?.mode==='tenant-integrated';if(shellContractOwnsAccountMenu&&!forcePcgApplicationAvatar&&!forcePcgMobileAvatar)return null;return <div data-global-fallback-avatar-host=\"true\"><MiscAwareAccountMenu singletonKey=\"global-private-shell-account-menu\" placement=\"fixed\" fallback avatarMode=\"tenant\" tenantShellOwner/></div>}\nfunction LazyShellSlot({children}:{children:React.ReactNode}){return <Suspense fallback={null}>{children}</Suspense>}\nfunction CanonicalRedirectHandler(){useCanonicalTenantRedirect();return null}\nfunction BigPapisApplicationFamilyStyle(){\n  const location=useLocation();\n  const{activeTenant}=useMultiTenant();\n\n  React.useEffect(()=>{\n    if(typeof document==='undefined')return;\n    const slug=String(activeTenant?.company_slug||'').trim().toLowerCase();\n    const path=location.pathname.toLowerCase();\n    const isBigPapis=slug==='big-papis'||path.startsWith('/big-papis/');\n    const modeClass=path.includes('/start-popup')||path.includes('/pop-up')||path.includes('/popup')?'kl-bp-popup':path.includes('/back-office')?'kl-bp-back-office':path.includes('/messages')||path.includes('/messaging')||path.includes('/communications')?'kl-bp-connect':path.includes('/event')?'kl-bp-event':'kl-bp-plan';\n    const classes=['kl-big-papis-app-family','kl-bp-plan','kl-bp-popup','kl-bp-event','kl-bp-back-office','kl-bp-connect'];\n    for(const className of classes)document.body.classList.remove(className);\n    if(isBigPapis)document.body.classList.add('kl-big-papis-app-family',modeClass);\n    return()=>{for(const className of classes)document.body.classList.remove(className)};\n  },[activeTenant?.company_slug,location.pathname]);\n\n  return null;\n}\nfunction MobileViewportRecovery(){const[zoomed,setZoomed]=React.useState(false);const lastTapRef=React.useRef<{time:number;x:number;y:number}|null>(null);const resetViewport=React.useCallback(()=>{if(typeof document==='undefined'||typeof window==='undefined')return;const active=document.activeElement as HTMLElement|null;if(active&&typeof active.blur==='function')active.blur();let viewport=document.querySelector('meta[name=\"viewport\"]') as HTMLMetaElement|null;const created=!viewport;if(!viewport){viewport=document.createElement('meta');viewport.name='viewport';document.head.appendChild(viewport)}const original=viewport.content;const fallback='width=device-width, initial-scale=1, viewport-fit=cover';viewport.content='width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no, viewport-fit=cover';window.setTimeout(()=>{if(!viewport)return;viewport.content=original||fallback;if(created&&!original)viewport.content=fallback;window.dispatchEvent(new Event('resize'))},180)},[]);React.useEffect(()=>{const visualViewport=window.visualViewport;if(!visualViewport)return;const sync=()=>setZoomed(visualViewport.scale>1.05);sync();visualViewport.addEventListener('resize',sync);visualViewport.addEventListener('scroll',sync);return()=>{visualViewport.removeEventListener('resize',sync);visualViewport.removeEventListener('scroll',sync)}},[]);React.useEffect(()=>{const onPointerUp=(event:PointerEvent)=>{if(!zoomed||event.pointerType==='mouse')return;const target=event.target as Element|null;if(target?.closest('input,textarea,select,button,a,[role=\"button\"],[contenteditable=\"true\"],[data-no-viewport-reset]')){lastTapRef.current=null;return}const now=Date.now();const previous=lastTapRef.current;lastTapRef.current={time:now,x:event.clientX,y:event.clientY};if(!previous||now-previous.time>320)return;const dx=event.clientX-previous.x;const dy=event.clientY-previous.y;if(Math.hypot(dx,dy)>28)return;event.preventDefault();lastTapRef.current=null;resetViewport()};document.addEventListener('pointerup',onPointerUp,{passive:false});return()=>document.removeEventListener('pointerup',onPointerUp)},[resetViewport,zoomed]);return <><style>{`@media (max-width: 767px){.kl-responsive-tenant-runtime input:not([type=\"checkbox\"]):not([type=\"radio\"]):not([type=\"range\"]),.kl-responsive-tenant-runtime select,.kl-responsive-tenant-runtime textarea,.kl-responsive-tenant-runtime [contenteditable=\"true\"]{font-size:max(16px,1em)!important}.kl-responsive-tenant-runtime input,.kl-responsive-tenant-runtime select,.kl-responsive-tenant-runtime textarea,.kl-responsive-tenant-runtime button{touch-action:manipulation}}`}</style>{zoomed?<button type=\"button\" data-no-viewport-reset=\"true\" aria-label=\"Reset page zoom to normal\" onClick={resetViewport} className=\"fixed right-3 top-[calc(var(--comm-banner-h,0px)+env(safe-area-inset-top)+0.75rem)] z-[9999] min-h-10 rounded-full border border-white/20 bg-black/80 px-3 text-xs font-black text-white shadow-lg backdrop-blur-xl\">Reset view</button>:null}</>}\nfunction readInstalledAppSafeInsets(){if(typeof document==='undefined')return{top:0,right:0,bottom:0,left:0};const probe=document.createElement('div');probe.style.cssText='position:fixed;visibility:hidden;pointer-events:none;padding-top:env(safe-area-inset-top);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left)';document.body.appendChild(probe);const style=window.getComputedStyle(probe);const value=(input:string)=>Number.parseFloat(input)||0;const insets={top:value(style.paddingTop),right:value(style.paddingRight),bottom:value(style.paddingBottom),left:value(style.paddingLeft)};probe.remove();return insets}\nfunction InstalledAppNavigationRecovery(){const navigate=useNavigate();const location=useLocation();const{activeTenant}=useMultiTenant();const footerRef=React.useRef<HTMLElement|null>(null);const normalizedUtilityPath=location.pathname.toLowerCase().replace(/\\/+$/g,'')||'/';const suppressUtilityFooter=normalizedUtilityPath==='/select-tenant'||normalizedUtilityPath.startsWith('/sign-agreement')||normalizedUtilityPath.startsWith('/agreement-verification');const[mobile,setMobile]=React.useState(()=>!suppressUtilityFooter&&typeof window!=='undefined'&&window.matchMedia('(max-width: 767px)').matches);const[stackRevision,setStackRevision]=React.useState(0);React.useEffect(()=>{if(typeof window==='undefined')return;const media=window.matchMedia('(max-width: 767px)');const sync=()=>setMobile(!suppressUtilityFooter&&media.matches);sync();media.addEventListener('change',sync);return()=>media.removeEventListener('change',sync)},[suppressUtilityFooter]);React.useEffect(()=>{if(!mobile||typeof document==='undefined'||typeof window==='undefined')return;const footer=footerRef.current;if(!footer)return;const selectors=['[data-big-papis-mobile-nav=\"true\"]','[data-tenant-modes-mobile-nav=\"true\"]','[data-tenant-modes-mobile-landing-nav=\"true\"]','[data-mobile-bottom-nav=\"true\"]','[data-tenant-mobile-nav=\"true\"]'];const sync=()=>{const primary=selectors.map((selector)=>document.querySelector<HTMLElement>(selector)).find(Boolean);if(!primary)return;const style=window.getComputedStyle(primary);const active=primary.querySelector<HTMLElement>('[aria-current=\"page\"]');const activeStyle=active?window.getComputedStyle(active):null;footer.style.setProperty('--kl-utility-nav-bg',style.backgroundColor||'rgba(5,10,16,.94)');footer.style.setProperty('--kl-utility-nav-border',style.borderTopColor||'rgba(255,255,255,.12)');footer.style.setProperty('--kl-utility-nav-text',style.color||'rgba(255,255,255,.82)');footer.style.setProperty('--kl-utility-nav-accent',activeStyle?.color||style.color||'rgba(255,255,255,.92)');footer.style.setProperty('--kl-utility-nav-shadow',style.boxShadow||'0 -14px 44px rgba(0,0,0,.32)');footer.style.setProperty('--kl-utility-nav-backdrop',style.backdropFilter||'blur(24px)');document.documentElement.style.setProperty('--kl-platform-mobile-nav-h',`${Math.ceil(footer.getBoundingClientRect().height)}px`)};sync();const observer=new MutationObserver(sync);observer.observe(document.body,{childList:true,subtree:true,attributes:true,attributeFilter:['class','style','aria-current']});window.addEventListener('resize',sync,{passive:true});return()=>{observer.disconnect();window.removeEventListener('resize',sync)}},[mobile,activeTenant?.id]);React.useEffect(()=>{if(!mobile||typeof document==='undefined'||typeof window==='undefined')return;const footer=footerRef.current;if(!footer)return;const selectors=['[data-big-papis-mobile-nav=\"true\"]','[data-tenant-modes-mobile-nav=\"true\"]','[data-tenant-modes-mobile-landing-nav=\"true\"]','[data-mobile-bottom-nav=\"true\"]','[data-tenant-mobile-nav=\"true\"]'];const primary=selectors.map((selector)=>document.querySelector<HTMLElement>(selector)).find(Boolean);if(!primary){const utilityRoot=document.querySelector<HTMLElement>('.kl-responsive-tenant-runtime');const previousUtilityRootStyle=utilityRoot?.getAttribute('style')??null;const previousPlatformNavHeight=document.documentElement.style.getPropertyValue('--kl-platform-mobile-nav-h');const previousStackHeight=document.documentElement.style.getPropertyValue('--kl-mobile-bottom-stack-h');const syncUtilityOnly=()=>{const utilityHeight=Math.ceil(footer.getBoundingClientRect().height);footer.style.setProperty('bottom','0px','important');document.documentElement.style.setProperty('--kl-platform-mobile-nav-h',`${utilityHeight}px`);document.documentElement.style.setProperty('--kl-mobile-bottom-stack-h',`${utilityHeight}px`);if(utilityRoot){utilityRoot.style.setProperty('position','fixed','important');utilityRoot.style.setProperty('inset','0 0 '+utilityHeight+'px 0','important');utilityRoot.style.setProperty('height','auto','important');utilityRoot.style.setProperty('min-height','0','important');utilityRoot.style.setProperty('overflow-y','auto','important');utilityRoot.style.setProperty('padding-bottom','0px','important');utilityRoot.style.setProperty('overscroll-behavior-y','contain','important')}};syncUtilityOnly();let lateMounted=false;const lateMountObserver=new MutationObserver(()=>{if(lateMounted)return;const mounted=selectors.some((selector)=>Boolean(document.querySelector<HTMLElement>(selector)));if(!mounted)return;lateMounted=true;setStackRevision((revision)=>revision+1)});lateMountObserver.observe(document.body,{childList:true,subtree:true,attributes:true,attributeFilter:['class','style','aria-current']});window.addEventListener('resize',syncUtilityOnly,{passive:true});return()=>{lateMountObserver.disconnect();window.removeEventListener('resize',syncUtilityOnly);if(utilityRoot){if(previousUtilityRootStyle===null)utilityRoot.removeAttribute('style');else utilityRoot.setAttribute('style',previousUtilityRootStyle)}if(previousPlatformNavHeight)document.documentElement.style.setProperty('--kl-platform-mobile-nav-h',previousPlatformNavHeight);else document.documentElement.style.removeProperty('--kl-platform-mobile-nav-h');if(previousStackHeight)document.documentElement.style.setProperty('--kl-mobile-bottom-stack-h',previousStackHeight);else document.documentElement.style.removeProperty('--kl-mobile-bottom-stack-h')}}const canonicalTenantNavs=selectors.map((selector)=>document.querySelector<HTMLElement>(selector)).filter((candidate):candidate is HTMLElement=>Boolean(candidate)&&candidate!==footer&&!footer.contains(candidate));const ordered=[primary,...Array.from(new Set(canonicalTenantNavs.filter((candidate)=>candidate!==primary)))];const originalBottoms=new Map(ordered.map((element)=>[element,element.style.bottom]));const root=document.querySelector<HTMLElement>('.kl-responsive-tenant-runtime');const previousRootPadding=root?.style.paddingBottom||'';const previousPlatformNavHeight=document.documentElement.style.getPropertyValue('--kl-platform-mobile-nav-h');const previousStackHeight=document.documentElement.style.getPropertyValue('--kl-mobile-bottom-stack-h');const previousPrimaryNavHeight=document.documentElement.style.getPropertyValue('--kl-mobile-primary-nav-h');const syncStack=()=>{const utilityHeight=Math.ceil(footer.getBoundingClientRect().height);footer.style.setProperty('bottom','0px','important');document.documentElement.style.setProperty('--kl-platform-mobile-nav-h',`${utilityHeight}px`);document.documentElement.style.setProperty('--kl-mobile-primary-nav-h',`${Math.ceil(primary.getBoundingClientRect().height)}px`);let offset=utilityHeight;for(const element of ordered){element.style.setProperty('bottom',`${offset}px`,'important');offset+=Math.ceil(element.getBoundingClientRect().height)}document.documentElement.style.setProperty('--kl-mobile-bottom-stack-h',`${offset}px`);if(root)root.style.setProperty('padding-bottom',`${offset}px`,'important')};syncStack();const observer=new ResizeObserver(syncStack);observer.observe(footer);for(const element of ordered)observer.observe(element);window.addEventListener('resize',syncStack,{passive:true});return()=>{observer.disconnect();window.removeEventListener('resize',syncStack);for(const [element,previousBottom] of originalBottoms){if(previousBottom)element.style.bottom=previousBottom;else element.style.removeProperty('bottom')}if(root){if(previousRootPadding)root.style.paddingBottom=previousRootPadding;else root.style.removeProperty('padding-bottom')}if(previousPlatformNavHeight)document.documentElement.style.setProperty('--kl-platform-mobile-nav-h',previousPlatformNavHeight);else document.documentElement.style.removeProperty('--kl-platform-mobile-nav-h');if(previousStackHeight)document.documentElement.style.setProperty('--kl-mobile-bottom-stack-h',previousStackHeight);else document.documentElement.style.removeProperty('--kl-mobile-bottom-stack-h');if(previousPrimaryNavHeight)document.documentElement.style.setProperty('--kl-mobile-primary-nav-h',previousPrimaryNavHeight);else document.documentElement.style.removeProperty('--kl-mobile-primary-nav-h')}},[mobile,activeTenant?.id,location.pathname,location.search,stackRevision]);if(!mobile||!activeTenant?.id||typeof window==='undefined'||typeof document==='undefined'||window.location.hostname.toLowerCase()!=='app.knocklaunch.app')return null;const home=activeTenant?.id?getTenantDashboardPathForTenant(activeTenant):'/select-tenant';const goBack=()=>{if(window.history.length>1)navigate(-1);else navigate(home)};const goHome=()=>navigate(home);const reload=()=>window.location.reload();const openMessages=()=>window.dispatchEvent(new CustomEvent('knocklaunch:messages-open'));const iconStyle={color:'var(--kl-utility-nav-accent,var(--kl-utility-nav-text,rgba(255,255,255,.92)))'};return createPortal(<><style>{`@media (max-width:767px){.kl-responsive-tenant-runtime{--kl-mobile-primary-nav-h:64px;--kl-mobile-utility-footer-h:56px;box-sizing:border-box}}`}</style><nav ref={footerRef} data-platform-mobile-utility-footer=\"true\" aria-label=\"Mobile utility navigation\" className=\"fixed inset-x-0 bottom-0 z-[10050] grid h-[calc(var(--kl-mobile-utility-footer-h,56px)+env(safe-area-inset-bottom))] grid-cols-4 border-t pb-[env(safe-area-inset-bottom)] md:hidden\" style={{background:'var(--kl-utility-nav-bg,rgba(5,10,16,.94))',borderColor:'var(--kl-utility-nav-border,rgba(255,255,255,.12))',color:'var(--kl-utility-nav-text,rgba(255,255,255,.82))',boxShadow:'var(--kl-utility-nav-shadow,0 -14px 44px rgba(0,0,0,.32))',backdropFilter:'var(--kl-utility-nav-backdrop,blur(24px))'}}><button type=\"button\" data-installed-app-navigation-action=\"back\" onClick={goBack} className=\"flex min-h-14 flex-col items-center justify-center gap-0.5 text-[10px] font-black\"><ArrowLeft className=\"h-5 w-5\" style={iconStyle}/><span>Back</span></button><button type=\"button\" data-installed-app-navigation-action=\"home\" onClick={goHome} className=\"flex min-h-14 flex-col items-center justify-center gap-0.5 text-[10px] font-black\"><Home className=\"h-5 w-5\" style={iconStyle}/><span>Home</span></button><button type=\"button\" data-installed-app-navigation-action=\"reload\" onClick={reload} className=\"flex min-h-14 flex-col items-center justify-center gap-0.5 text-[10px] font-black\"><RefreshCw className=\"h-5 w-5\" style={iconStyle}/><span>Refresh</span></button><button type=\"button\" data-installed-app-navigation-action=\"messages\" onClick={openMessages} className=\"flex min-h-14 flex-col items-center justify-center gap-0.5 text-[10px] font-black\"><MessageCircle className=\"h-5 w-5\" style={iconStyle}/><span>Messages</span></button></nav></>,document.body)}\nfunction TenantRouteScrollRestoration(){const location=useLocation();React.useEffect(()=>{if(typeof window==='undefined'||typeof document==='undefined'||location.hash)return;const frame=window.requestAnimationFrame(()=>{const tenantOwner=document.querySelector<HTMLElement>('[data-experience-runtime-root=\"true\"][data-route-scroll-owner=\"tenant\"]');if(tenantOwner){tenantOwner.scrollTo({top:0,left:0,behavior:'auto'});return}window.scrollTo({top:0,left:0,behavior:'auto'})});return()=>window.cancelAnimationFrame(frame)},[location.pathname,location.hash]);return null}\nfunction GlobalTrackers(){useSessionTracker();useActivityLogger();useRealtimeStormEvents();React.useEffect(()=>{void import('@/lib/externalNativeCall').then(m=>m.installExternalNativeCallInterceptor())},[]);return null}\nfunction ConditionalRouteHealthBanner(){const location=useLocation();if(!location.pathname.startsWith('/crm'))return null;return <RouteHealthBanner/>}\nfunction GlobalImpersonationBanner(){return <UserImpersonationBanner/>}\nfunction RouteFallback(){return <PageLoadingSkeleton variant=\"minimal\"/>} \nfunction UsersRouteAlias(){const {activeTenant,effectiveRole,hasGodModeAnywhere,isLoading}=useMultiTenant();const platformAuthority=effectiveRole==='GodMode'||hasGodModeAnywhere();if(platformAuthority)return <Suspense fallback={<RouteFallback/>}><section className=\"mx-auto w-full max-w-[1600px] space-y-4 px-4 py-5 sm:px-6 sm:py-6\"><div><h1 className=\"text-2xl font-semibold tracking-tight\">Users</h1><p className=\"mt-1 text-sm text-muted-foreground\">Manage people, roles, and workspace access.</p></div><AdminUsersCommandCenter/></section></Suspense>;if(activeTenant?.id)return <Suspense fallback={<RouteFallback/>}><OwnerUsers/></Suspense>;if(isLoading)return <RouteFallback/>;return <Navigate to=\"/select-tenant?next=%2Fusers\" replace/>}\nfunction DemoWorkspaceEntry(){const {tenantId}=useParams();const navigate=useNavigate();const {activeTenant,memberships,isLoading,switchTenant}=useMultiTenant();const [error,setError]=React.useState('');const membership=memberships.find(m=>m.tenant_id===tenantId);React.useEffect(()=>{let cancelled=false;if(isLoading||!tenantId||!membership?.tenant)return;const tenant=membership.tenant;const readiness=((tenant as any)?.settings?.tenant_readiness||{}) as Record<string,any>;if(readiness.demo_ready!==true){const missing=Array.isArray(readiness.demo_missing)?readiness.demo_missing.map((value:unknown)=>String(value||'').trim()).filter(Boolean):[];setError(`Demo is still being prepared.${missing.length?` ${missing.join(' · ')}.`:''} Run Workspace Health after branding is complete.`);return}const target=getTenantDashboardPathForTenant(tenant);void(async()=>{try{if(activeTenant?.id!==tenant.id)await switchTenant(tenant.id);if(!cancelled)navigate(target,{replace:true})}catch(caught){if(!cancelled)setError(caught instanceof Error?caught.message:'Could not open the branded demo workspace.')}})();return()=>{cancelled=true}},[activeTenant?.id,isLoading,membership?.tenant,navigate,switchTenant,tenantId]);if(!tenantId)return <Navigate to=\"/select-tenant\" replace/>;if(error||(!isLoading&&!membership))return <section className=\"mx-auto mt-16 max-w-xl rounded-2xl border border-rose-300/20 bg-rose-400/10 p-6 text-white\"><h1 className=\"text-xl font-semibold\">Demo workspace unavailable</h1><p className=\"mt-2 text-sm text-white/70\">{error||'This branded demo tenant is not available to the current account.'}</p></section>;const targetTenant=membership?.tenant;return <UniversalLoadingScreen brandName={targetTenant?.company_dba_name||targetTenant?.company_legal_name||targetTenant?.name} logoUrl={targetTenant?.company_logo_url} backgroundUrl={resolveTenantBackgroundUrl(targetTenant)||undefined} tenantKey={targetTenant?.company_slug||targetTenant?.id} title=\"Opening branded demo\" subtitle=\"Loading the certified workspace.\" showCountdown={false}/>}\nfunction ShortcutsModalManager({children}:{children:React.ReactNode}){const [showShortcutsModal,setShowShortcutsModal]=React.useState(false);useShortcutHint();React.useEffect(()=>{setGlobalShortcutsState({showShortcutsModal,setShowShortcutsModal})},[showShortcutsModal]);return <><PlatformContextMenu/><LazyShellSlot><KeyboardShortcutsModal open={showShortcutsModal} onOpenChange={setShowShortcutsModal}/></LazyShellSlot>{children}</>}\nfunction AdminRoutesOnly(){return <Suspense fallback={<RouteFallback/>}><AdminRouteRegistry/></Suspense>}\nfunction roofingInternalCrmPath(pathname:string,activeTenant:any){const normalized=String(pathname||'').toLowerCase().replace(/\\/+$/g,'');const tenantSlug=canonicalTenantRouteSlugForIdentity(activeTenant).toLowerCase();const tenantType=String(activeTenant?.tenant_type||'ROOFING_COMPANY').trim().toUpperCase().replace(/[\\s-]+/g,'_');const rest=tenantSlug&&normalized.startsWith(`/${tenantSlug}`)?normalized.slice(tenantSlug.length+1).replace(/^\\//,''):'';if(!rest)return `/crm/${tenantType}/${tenantSlug}/dashboard`;const [head,...tail]=rest.split('/').filter(Boolean);const internalHead=({today:'dashboard',homeowners:'contacts',production:'jobs',schedule:'calendar',money:'billing',inbox:'communications',opportunities:'opportunity-radar',opportunity:'opportunity-radar',radar:'opportunity-radar','roof-measurement':'roof-tracer'} as Record<string,string>)[head]||head;return `/crm/${tenantType}/${tenantSlug}/${[internalHead,...tail].filter(Boolean).join('/')}`}\nfunction RedfishHomeownerDetailRouter(){return <Routes><Route path=\"/redfish-roofing/homeowners/:contactId\" element={<UnifiedProtectedRoute allowedRoles={ROLES.FIELD_STAFF} redirectTo=\"/crm/login\"><Suspense fallback={<RouteFallback/>}><RedfishContactWorkspace/></Suspense></UnifiedProtectedRoute>}/></Routes>}\nfunction RoofingOwnerWorkspaceRouter(){const location=useLocation();const {activeTenant}=useMultiTenant();const tenantSlug=activeTenant?.id?canonicalTenantRouteSlugForIdentity(activeTenant).toLowerCase():'';const normalized=location.pathname.toLowerCase().replace(/\\/+$/g,'');if(tenantSlug&&normalized===`/${tenantSlug}`)return <Navigate to={`/${tenantSlug}/today`} replace/>;if(tenantSlug&&normalized===`/${tenantSlug}/roof-measurement`)return <UnifiedProtectedRoute allowedRoles={['Rep','PA','Roofer','PM','Admin','Owner','Tenant Owner','GodMode']} redirectTo=\"/crm/login\"><Suspense fallback={<RouteFallback/>}><RoofTracingPage/></Suspense></UnifiedProtectedRoute>;const internalPath=roofingInternalCrmPath(location.pathname,activeTenant);return <Suspense fallback={<RouteFallback/>}><TenantCrmRoutes locationOverride={`${internalPath}${location.search||''}`}/></Suspense>} \nfunction TenantCrmRouteFallback(){const {activeTenant,isLoading}=useMultiTenant();if(!activeTenant?.id){if(isLoading)return <RouteFallback/>;return <Navigate to=\"/select-tenant\" replace/>}return <Suspense fallback={<RouteFallback/>}><TenantCrmRoutes/></Suspense>}\nfunction isTenantSettingsWorkspacePath(pathname:string,activeTenant:any){if(!activeTenant?.id)return false;const slug=canonicalTenantRouteSlugForIdentity(activeTenant).toLowerCase();const normalized=String(pathname||'').toLowerCase().replace(/\\/+$/g,'');const base=`/${slug}/settings`;return normalized===base||normalized.startsWith(`${base}/`)}\nfunction ModesTenantRouteFallback(){const location=useLocation();const {activeTenant,isLoading}=useMultiTenant();if(!activeTenant?.id){if(isLoading)return <RouteFallback/>;return <Navigate to=\"/select-tenant\" replace/>}const slug=canonicalTenantRouteSlugForIdentity(activeTenant).toLowerCase();const home=getTenantDashboardPathForTenant(activeTenant);const normalize=(value:string)=>String(value||'/').toLowerCase().replace(/\\/+$/g,'')||'/';const current=normalize(location.pathname);const homePath=normalize(home);const tenantRoot=`/${slug}`;const params=new URLSearchParams(location.search);const modeApp=String(params.get('modeApp')||'').trim();if(modeApp){const app=getTenantApplicationByReference(modeApp);if(app){const appPath=String(app.standalonePath||`/${app.slug}`).replace(/^\\/+|\\/+$/g,'');const target=`/${slug}/${appPath}`;if(current!==normalize(target))return <Navigate to={`${target}${location.search||''}${location.hash||''}`} replace/>;return <StandaloneApplicationWorkspace app={app} tenantSlugFromPath={slug}/>}}if(current===homePath||current===tenantRoot||current===`${tenantRoot}/dashboard`)return null;return <Navigate to={home} replace/>}\nfunction TenantRouteIdentityBoundary({children}:{children:React.ReactNode}){const location=useLocation();const {activeTenant,memberships,isLoading,switchTenant}=useMultiTenant();const requestedIdentity=React.useMemo(()=>resolveRequestedTenantRouteIdentity(location.pathname),[location.pathname]);const requestedSlug=requestedIdentity?.tenantSlug||'';const resolution=React.useMemo(()=>requestedSlug?resolveTenantRouteMembership(memberships,requestedSlug,requestedIdentity?.tenantType||undefined):null,[memberships,requestedIdentity?.tenantType,requestedSlug]);const requestedTenant=resolution?.membership?.tenant||null;const requestedTenantId=String(requestedTenant?.id||'');const activeMatchesRequested=!requestedSlug||tenantRouteIdentityMatchesRequestedSlug(activeTenant,requestedSlug);const projectedAccess=readGodModeAccessContext();const projectedIntentMatchesRequested=projectedTenantRouteIntentMatches({requestedSlug,projectedTenantSlug:projectedAccess?.tenantSlug,projectedRole:projectedAccess?.role,projectedMode:projectedAccess?.mode});const projectionGraceKey=projectedIntentMatchesRequested&&!activeMatchesRequested&&!requestedTenantId?`${requestedSlug}:${projectedAccess?.tenantId||''}`:'';const [expiredProjectionGraceKey,setExpiredProjectionGraceKey]=React.useState('');const projectionGraceElapsed=Boolean(projectionGraceKey&&expiredProjectionGraceKey===projectionGraceKey);const [switching,setSwitching]=React.useState(false);const [switchFailed,setSwitchFailed]=React.useState(false);React.useEffect(()=>{if(!projectionGraceKey){if(expiredProjectionGraceKey)setExpiredProjectionGraceKey('');return}if(expiredProjectionGraceKey===projectionGraceKey)return;const timeoutId=window.setTimeout(()=>setExpiredProjectionGraceKey(projectionGraceKey),PROJECTED_TENANT_ROUTE_GRACE_MS);return()=>window.clearTimeout(timeoutId)},[expiredProjectionGraceKey,projectionGraceKey]);React.useEffect(()=>{if(!requestedTenantId||requestedTenantId===activeTenant?.id){setSwitchFailed(false);setSwitching(false);return}let cancelled=false;setSwitchFailed(false);setSwitching(true);void switchTenant(requestedTenantId).then(()=>{if(!cancelled)setSwitching(false)}).catch(()=>{if(!cancelled){setSwitching(false);setSwitchFailed(true)}});return()=>{cancelled=true}},[activeTenant?.id,requestedTenantId,switchTenant]);if(switchFailed){const next=encodeURIComponent(`${location.pathname}${location.search||''}${location.hash||''}`);return <section data-tenant-route-boundary=\"switch-failed\" className=\"mx-auto mt-16 max-w-xl rounded-2xl border border-amber-300/20 bg-amber-300/10 p-6 text-white\"><h1 className=\"text-xl font-semibold\">Workspace connection needs another try</h1><p className=\"mt-2 text-sm text-white/70\">KNOCKLAUNCH kept this workspace route in place instead of sending you away. Retry the tenant connection or choose a workspace manually.</p><div className=\"mt-4 flex flex-wrap gap-3\"><button type=\"button\" onClick={()=>{setSwitchFailed(false);setSwitching(false)}} className=\"inline-flex rounded-xl border border-white/15 bg-white/[0.08] px-4 py-2 text-sm font-semibold text-white\">Retry workspace</button><Link to={`/select-tenant?manual=1&next=${next}`} className=\"inline-flex rounded-xl border border-white/10 bg-black/20 px-4 py-2 text-sm font-semibold text-white/80\">Choose workspace</Link></div></section>}if(requestedTenantId&&(switching||activeTenant?.id!==requestedTenantId))return <RouteFallback/>;if(shouldHoldTenantRouteHydration({requestedSlug,activeMatchesRequested,requestedTenantId,isLoading,projectedIntentMatchesRequested,projectionGraceElapsed}))return <RouteFallback/>;return <>{children}</>}\nfunction StandaloneApplicationWorkspace({app,tenantSlugFromPath='',suffixFromPath=''}:{app:ApplicationCapability;tenantSlugFromPath?:string;suffixFromPath?:string}){\n  const location=useLocation();\n  const {activeTenant,memberships,isLoading,switchTenant}=useMultiTenant();\n  const requestedTenantSlug=React.useMemo(()=>String(tenantSlugFromPath||new URLSearchParams(location.search).get('tenant')||'').trim().toLowerCase(),[tenantSlugFromPath,location.search]);\n  const standaloneHostApp=React.useMemo(()=>typeof window==='undefined'?undefined:getTenantApplicationByStandaloneHost(window.location.hostname),[]);\n  const applicationMode=tenantSlugFromPath?'tenant-integrated':'standalone';\n  const activeTenantSlug=React.useMemo(()=>activeTenant?.id?canonicalTenantRouteSlugForIdentity(activeTenant).toLowerCase():'',[activeTenant?.id,activeTenant?.company_slug,activeTenant?.tenant_type,activeTenant?.name]);\n  const requestedMembership=React.useMemo(()=>requestedTenantSlug?memberships.find(m=>m.tenant?.id&&canonicalTenantRouteSlugForIdentity(m.tenant).toLowerCase()===requestedTenantSlug)||null:null,[memberships,requestedTenantSlug]);\n  const [switchingTenant,setSwitchingTenant]=React.useState(false);\n  React.useEffect(()=>{if(!requestedTenantSlug||!requestedMembership?.tenant?.id||requestedMembership.tenant.id===activeTenant?.id)return;let cancelled=false;setSwitchingTenant(true);void switchTenant(requestedMembership.tenant.id).finally(()=>{if(!cancelled)setSwitchingTenant(false)});return()=>{cancelled=true}},[tenantSlugFromPath,requestedTenantSlug,requestedMembership?.tenant?.id,activeTenant?.id,switchTenant]);\n  if(isLoading||switchingTenant)return <RouteFallback/>;\n  if(!requestedTenantSlug){if(activeTenant?.id&&memberships.some(m=>m.tenant?.id===activeTenant.id)){const params=new URLSearchParams(location.search);params.set('tenant',canonicalTenantRouteSlugForIdentity(activeTenant));return <Navigate to={`${location.pathname}?${params.toString()}`} replace/>}const next=encodeURIComponent(`${location.pathname}${location.search||''}`);return <Navigate to={`/select-tenant?app=${encodeURIComponent(app.slug)}&next=${next}`} replace/>}\n  if(!requestedMembership?.tenant?.id)return <Navigate to={`/select-tenant?app=${encodeURIComponent(app.slug)}`} replace/>;\n  if(!activeTenant?.id||activeTenant.id!==requestedMembership.tenant.id||activeTenantSlug!==requestedTenantSlug)return <RouteFallback/>;\n  const base=app.standalonePath;const normalized=location.pathname.toLowerCase().replace(/\\/+$/g,'')||'/';const suffix=suffixFromPath||(tenantSlugFromPath?'':app.id==='mail'?normalized.replace(/^\\/(?:communications\\/)?(?:mail|email|emails|email-suite)(?:\\/|$)/,''):normalized.split('/').filter(Boolean).slice(base.split('/').filter(Boolean).length).join('/'));if(tenantSlugFromPath&&standaloneHostApp?.id===app.id){const params=new URLSearchParams(location.search);params.set('tenant',requestedTenantSlug);const hostStandalone=`${base}${suffix?`/${suffix}`:''}`;return <Navigate to={`${hostStandalone}?${params.toString()}`} replace/>}if(applicationMode==='tenant-integrated'&&isModesTenant(activeTenant)&&isEventRentalTenantContext(activeTenant)&&app.routeAdapter==='tenant-workspace')return <EventRentalModesApplicationSurface app={app}/>;if(applicationMode==='tenant-integrated'&&isModesTenant(activeTenant)&&DIRECT_MODES_APPLICATION_IDS.has(app.id))return <DirectModesApplicationSurface app={app}/>;if(app.routeAdapter==='mail')return <FirstClassAppTenantBoundary appSlug=\"mail\" applicationChrome={applicationMode!=='tenant-integrated'} applicationMode={applicationMode}><MailApplicationRoute/></FirstClassAppTenantBoundary>;if(app.routeAdapter==='call-center')return <FirstClassAppTenantBoundary appSlug={app.slug} platformDefault applicationChrome={applicationMode!=='tenant-integrated'} applicationMode={applicationMode}><CallCenterApplicationRoute/></FirstClassAppTenantBoundary>; if(app.routeAdapter==='proposal-editor')return <FirstClassAppTenantBoundary appSlug={app.slug} applicationChrome={applicationMode!=='tenant-integrated'} applicationMode={applicationMode}><ProposalEditorApplicationRoute/></FirstClassAppTenantBoundary>;if(app.routeAdapter==='creative-studio')return <FirstClassAppTenantBoundary appSlug={app.slug} applicationChrome={applicationMode!=='tenant-integrated'} applicationMode={applicationMode}><CreativeStudioApplicationRoute/></FirstClassAppTenantBoundary>;if(app.routeAdapter==='platform-workspace')return <Navigate to=\"/admin\" replace/>;const internal=buildTenantApplicationWorkspacePath(String(activeTenant.tenant_type||'MISC'),String(activeTenant.company_slug||''),app.slug,suffix);if(!internal)return <Navigate to={`/select-tenant?app=${encodeURIComponent(app.slug)}`} replace/>;return <FirstClassAppTenantBoundary appSlug={app.slug} applicationChrome={applicationMode!=='tenant-integrated'} applicationMode={applicationMode}><Suspense fallback={<RouteFallback/>}><TenantCrmRoutes locationOverride={`${internal}${location.search||''}`}/></Suspense></FirstClassAppTenantBoundary>\n}\n\nfunction TenantContractSafePrivateRouteFallback(){const location=useLocation();const {activeTenant,isLoading}=useMultiTenant();if(!activeTenant?.id){if(isLoading)return <RouteFallback/>;return <Navigate to=\"/select-tenant\" replace/>}const profile=resolveTenantWorkspaceRuntimeProfile(activeTenant,location.pathname);const settings=((activeTenant as any)?.settings||{}) as Record<string,any>;const workspaceVariant=String(settings.workspace_variant||'').trim().toLowerCase();const contractOwnsPrivateRouting=profile.isSelfContainedTenantWorkspace||profile.suppressGenericTenantChrome||profile.shellProfile!=='standard'||profile.navigationProfile!=='standard'||workspaceVariant==='curri_control_center';if(!contractOwnsPrivateRouting)return <Suspense fallback={<RouteFallback/>}><DefaultPrivateRouteRegistry/></Suspense>;const normalize=(value:string)=>String(value||'/').toLowerCase().replace(/\\/+$/g,'')||'/';const home=getTenantDashboardPathForTenant(activeTenant);const current=normalize(location.pathname);const homePath=normalize(home);const tenantSlug=canonicalTenantRouteSlugForIdentity(activeTenant).toLowerCase();const tenantRoot=tenantSlug?`/${tenantSlug}`:'';if(current===homePath||(tenantRoot&&(current===tenantRoot||current===`${tenantRoot}/dashboard`)))return null;return <Navigate to={home} replace/>}\nfunction PrivateRoutes(){const location=useLocation();const {activeTenant}=useMultiTenant();const applicationRoute=resolveTenantApplicationRoute(location.pathname);const tenantScopedApp=applicationRoute?.mode==='tenant-integrated'?applicationRoute:null;const {normalizedPath,isBigPapisPrivateWorkspace,isSavagePizzaPrivateWorkspace,isCafeQsrPrivateWorkspace,isScePrivateWorkspace,isRoofHelpFinderPrivateWorkspace,isRoofingPrivateWorkspace,isPcgPrivateWorkspace,isBookMeDirectlyPrivateWorkspace,isLegacyPcgCrmWorkspace,isRedfishHomeownerDetailWorkspace,isRedfishCanvassingWorkspace,isAutoUnlockPrivateWorkspace,isCallCenterPrivateWorkspace,nativeTenantRouteOwner}=resolvePrivateWorkspaceCompatibility(location.pathname,activeTenant);const isBareUsersAlias=normalizedPath==='/users'||normalizedPath==='/team';const standaloneApp=applicationRoute?.mode==='standalone'?applicationRoute.app:null;if(normalizedPath==='/knock-launch-os')return <Navigate to=\"/knock-launch-os/portfolio\" replace/>;if(normalizedPath==='/knock-launch-os/portfolio'||normalizedPath.startsWith('/knock-launch-os/portfolio/'))return <Suspense fallback={<RouteFallback/>}><KnockLaunchPortfolio/></Suspense>;if(normalizedPath.startsWith('/knock-launch-os'))return <Navigate to=\"/knock-launch-os/portfolio\" replace/>;if(normalizedPath==='/knock-launch-crm')return <Navigate to=\"/knock-launch-os/portfolio\" replace/>;if(normalizedPath.startsWith('/knock-launch-crm')){const suffix=location.pathname.slice('/knock-launch-crm'.length);return <Navigate to={`/knock-launch-os${suffix}${location.search||''}${location.hash||''}`} replace/>;}if(isBareUsersAlias)return <UsersRouteAlias/>;const isCanonicalPcgCardGradingRoute=normalizedPath==='/pcg/card-grading'||normalizedPath.startsWith('/pcg/card-grading/');if(isLegacyPcgCrmWorkspace)return <Navigate to=\"/pcg/workspace\" replace/>;if(isCanonicalPcgCardGradingRoute)return <Suspense fallback={<RouteFallback/>}><FirstClassAppTenantBoundary appSlug=\"card-grading\"><PCGCanonicalWorkspaceRoute/></FirstClassAppTenantBoundary></Suspense>;if(tenantScopedApp&&!nativeTenantRouteOwner)return <StandaloneApplicationWorkspace app={tenantScopedApp.app} tenantSlugFromPath={tenantScopedApp.tenantSlug} suffixFromPath={tenantScopedApp.suffix}/>;if(isBookMeDirectlyPrivateWorkspace)return <Suspense fallback={<RouteFallback/>}><BookMeDirectlyWorkspace/></Suspense>;if(isTenantSettingsWorkspacePath(location.pathname,activeTenant))return <Suspense fallback={<RouteFallback/>}><TenantSettingsPage/></Suspense>;if(isPcgPrivateWorkspace)return <Suspense fallback={<RouteFallback/>}><FirstClassAppTenantBoundary appSlug=\"card-grading\"><PCGCanonicalWorkspaceRoute/></FirstClassAppTenantBoundary></Suspense>;if(isAutoUnlockPrivateWorkspace)return <Suspense fallback={<RouteFallback/>}><AutoUnlockWorkspaceRouter/></Suspense>;if(standaloneApp)return <StandaloneApplicationWorkspace app={standaloneApp}/>;if(normalizedPath.startsWith('/demo-workspace/'))return <Routes><Route path=\"/demo-workspace/:tenantId\" element={<DemoWorkspaceEntry/>}/></Routes>;if(normalizedPath==='/media-library')return <Suspense fallback={<RouteFallback/>}><MediaLibrary/></Suspense>;if(isAutoUnlockPrivateWorkspace)return <Suspense fallback={<RouteFallback/>}><AutoUnlockWorkspaceRouter/></Suspense>;if(isCallCenterPrivateWorkspace)return <Suspense fallback={<RouteFallback/>}><FirstClassAppTenantBoundary appSlug=\"call-center\" platformDefault applicationMode=\"tenant-integrated\"><CallCenterApplicationRoute/></FirstClassAppTenantBoundary></Suspense>;if(isRoofHelpFinderPrivateWorkspace)return <Suspense fallback={<RouteFallback/>}><RoofHelpFinderWorkspace/></Suspense>;if(isScePrivateWorkspace)return <Suspense fallback={<RouteFallback/>}><SceRouteRegistry/></Suspense>;if(isRedfishHomeownerDetailWorkspace)return <RedfishHomeownerDetailRouter/>;if(isRedfishCanvassingWorkspace)return <Suspense fallback={<RouteFallback/>}><RedfishCanvassingRoute/></Suspense>;if(normalizedPath==='/redfish-roofing/roof-measurement')return <RoofingOwnerWorkspaceRouter/>;if(isRoofingPrivateWorkspace)return <RoofingOwnerWorkspaceRouter/>;if(isBigPapisPrivateWorkspace||isSavagePizzaPrivateWorkspace||isCafeQsrPrivateWorkspace)return <Suspense fallback={<RouteFallback/>}><OwnerRouteRegistry/></Suspense>;if(isModesTenant(activeTenant))return <ModesTenantRouteFallback/>;return <TenantContractSafePrivateRouteFallback/>}\n\nfunction OwnerOsTenantBoundary({children}:{children:React.ReactNode}){const{activeTenant,memberships,isLoading,switchTenant}=useMultiTenant();const ownerMembership=React.useMemo(()=>memberships.find(m=>m.tenant?.id&&isKnockLaunchOsWorkspace(m.tenant))||null,[memberships]);const ownerTenantId=String(ownerMembership?.tenant?.id||'');const[isSwitching,setIsSwitching]=React.useState(false);const[switchFailed,setSwitchFailed]=React.useState(false);React.useEffect(()=>{if(isLoading||!ownerTenantId||activeTenant?.id===ownerTenantId){setIsSwitching(false);setSwitchFailed(false);return}let cancelled=false;setIsSwitching(true);setSwitchFailed(false);void switchTenant(ownerTenantId).then(()=>{if(!cancelled)setIsSwitching(false)}).catch(()=>{if(!cancelled){setIsSwitching(false);setSwitchFailed(true)}});return()=>{cancelled=true}},[activeTenant?.id,isLoading,ownerTenantId,switchTenant]);if(isLoading||isSwitching||(ownerTenantId&&activeTenant?.id!==ownerTenantId&&!switchFailed))return <UniversalLoadingScreen brandName=\"KNOCKLAUNCH OS\" title=\"Opening owner workspace\" subtitle=\"Binding the canonical KNOCKLAUNCH OS workspace context.\" platformAuthoritative presentationPreset=\"pcg-wmp\" showCountdown={false}/>;if(!ownerTenantId||switchFailed)return <section data-owner-os-tenant-boundary=\"blocked\" className=\"mx-auto mt-16 max-w-xl rounded-2xl border border-amber-300/20 bg-amber-300/10 p-6 text-white\"><h1 className=\"text-xl font-semibold\">KNOCKLAUNCH OS workspace unavailable</h1><p className=\"mt-2 text-sm text-white/70\">The owner workspace could not be resolved safely. Customer tenant context was not reused.</p><Link to=\"/select-tenant?manual=1\" className=\"mt-4 inline-flex rounded-xl border border-white/15 bg-white/[0.06] px-4 py-2 text-sm font-semibold text-white\">Choose workspace</Link></section>;return <div data-owner-os-tenant-boundary=\"bound\" data-owner-os-tenant-id={ownerTenantId}>{children}</div>}\nfunction AdminShell(){return <><MultiTenantProvider><FocusModeProvider><UserImpersonationProvider><ShortcutsModalManager><LazyShellSlot><GlobalCommandPalette/></LazyShellSlot><GlobalImpersonationBanner/><AuditorModeBanner/><div className=\"kl-platform-surface relative z-10 flex h-[calc(100dvh-var(--comm-banner-h,0px))] min-h-0 flex-col overflow-hidden\"><BaseErrorBoundary scope=\"AdminShell.Routes\" variant=\"panel\" title=\"Admin console route failed\" description=\"The platform shell loaded, but this route needs repair.\"><AdminRoutesOnly/></BaseErrorBoundary></div></ShortcutsModalManager></UserImpersonationProvider></FocusModeProvider></MultiTenantProvider></>}\nfunction PortfolioShell(){return <div className=\"min-h-screen bg-[#040806]\"><MultiTenantProvider><OwnerOsTenantBoundary><FocusModeProvider><UserImpersonationProvider><ShortcutsModalManager><LazyShellSlot><GlobalCommandPalette/></LazyShellSlot><GlobalImpersonationBanner/><AuditorModeBanner/><div className=\"kl-platform-surface relative z-10 min-h-screen w-full overflow-x-hidden overflow-y-auto\"><BaseErrorBoundary scope=\"PortfolioShell\" variant=\"panel\" title=\"Portfolio needs repair\" description=\"The KNOCKLAUNCH OS portfolio shell loaded, but the owner portfolio route needs repair.\"><Suspense fallback={<RouteFallback/>}><KnockLaunchPortfolio/></Suspense></BaseErrorBoundary></div></ShortcutsModalManager></UserImpersonationProvider></FocusModeProvider></OwnerOsTenantBoundary></MultiTenantProvider></div>}\nfunction PortfolioOpsShell(){return <div className=\"min-h-screen bg-[#040806]\"><MultiTenantProvider><OwnerOsTenantBoundary><FocusModeProvider><UserImpersonationProvider><ShortcutsModalManager><LazyShellSlot><GlobalCommandPalette/></LazyShellSlot><GlobalImpersonationBanner/><AuditorModeBanner/><div className=\"kl-platform-surface relative z-10 min-h-screen w-full overflow-x-hidden overflow-y-auto\"><BaseErrorBoundary scope=\"PortfolioOpsShell\" variant=\"panel\" title=\"Owner OS route needs repair\" description=\"The KNOCKLAUNCH OS shell loaded, but this owner route needs repair.\"><Suspense fallback={<RouteFallback/>}><KnockLaunchOSDashboard/></Suspense></BaseErrorBoundary></div></ShortcutsModalManager></UserImpersonationProvider></FocusModeProvider></OwnerOsTenantBoundary></MultiTenantProvider></div>}\n\nfunction PortfolioSettingsShell(){return <div className=\"min-h-screen bg-[#040806]\"><MultiTenantProvider><OwnerOsTenantBoundary><FocusModeProvider><UserImpersonationProvider><ShortcutsModalManager><LazyShellSlot><GlobalCommandPalette/></LazyShellSlot><GlobalImpersonationBanner/><AuditorModeBanner/><div className=\"kl-platform-surface relative z-10 min-h-screen w-full overflow-x-hidden overflow-y-auto\"><BaseErrorBoundary scope=\"PortfolioSettingsShell\" variant=\"panel\" title=\"Owner settings need repair\" description=\"The KNOCKLAUNCH OS owner shell loaded, but settings need repair.\"><Suspense fallback={<RouteFallback/>}><KnockLaunchOSSettings/></Suspense></BaseErrorBoundary></div></ShortcutsModalManager></UserImpersonationProvider></FocusModeProvider></OwnerOsTenantBoundary></MultiTenantProvider></div>}\nfunction TenantWorkspaceRuntime(){const location=useLocation();const {activeTenant,isLoading}=useMultiTenant();const applicationRoute=resolveTenantApplicationRoute(location.pathname);const tenantIntegratedApp=applicationRoute?.mode==='tenant-integrated'&&!resolvePrivateWorkspaceCompatibility(location.pathname,activeTenant).nativeTenantRouteOwner?applicationRoute:null;const {normalizedPath,isMsLawnBarberWorkspace,msLawnBarberBackgroundUrl,isSelfContainedSeasideLaunch,isSelfContainedBigPapisWorkspace,isSelfContainedSavagePizzaWorkspace,isSelfContainedAutoUnlockWorkspace,isSelfContainedRedfishWorkspace,isSelfContainedPcgWorkspace,isSelfContainedBookMeDirectlyWorkspace,isSelfContainedTenantWorkspace,suppressGenericTenantChrome,shellProfile,navigationProfile,viewportOwner,tenantOwnsViewport,operatingContractSource,compatibilitySource,backgroundOwnership}=resolveTenantWorkspaceRuntimeProfile(activeTenant,location.pathname);const activeTenantSettings=((activeTenant as any)?.settings||{}) as Record<string,any>;const useCurriControlCenterShell=String(activeTenant?.company_slug||'').trim().toLowerCase()==='curri-control-center'||String(activeTenantSettings.workspace_variant||'').trim().toLowerCase()==='curri_control_center';const normalizedActiveTenantSlug=String(activeTenant?.company_slug||'').trim().toLowerCase();const normalizedActiveTenantName=String((activeTenant as any)?.company_dba_name||(activeTenant as any)?.company_legal_name||(activeTenant as any)?.name||'').trim().toLowerCase();const useTennexWorkspaceShell=normalizedActiveTenantSlug==='tennex'||normalizedActiveTenantSlug==='tennex-tax-solutions'||normalizedActiveTenantName==='tennex tax solutions';const useTenantModesShell=(useTennexWorkspaceShell||isModesTenant(activeTenant))&&applicationRoute?.mode!=='standalone'&&!isSelfContainedBigPapisWorkspace&&!isSelfContainedPcgWorkspace&&!useCurriControlCenterShell;const suppressTenantPresentationChrome=suppressGenericTenantChrome||useTenantModesShell;const usePcgSharedApplicationBackground=isSelfContainedPcgWorkspace&&Boolean(tenantIntegratedApp);const effectiveBackgroundOwner=usePcgSharedApplicationBackground?'platform':backgroundOwnership.owner;const effectiveBackgroundContractValid=usePcgSharedApplicationBackground?true:backgroundOwnership.contractValid;if(!activeTenant?.id&&!isSelfContainedBigPapisWorkspace){if(isLoading)return <UniversalLoadingScreen/>;const next=encodeURIComponent(`${location.pathname}${location.search||''}`);return <Navigate to={`/select-tenant?next=${next}`} replace/>}const tenantPresentationClass=isSelfContainedTenantWorkspace?(isSelfContainedBigPapisWorkspace?'z-[70] bg-transparent':isSelfContainedSavagePizzaWorkspace?'z-10 bg-[#100d0b]':isSelfContainedAutoUnlockWorkspace?'z-20 bg-[#02050a]':isSelfContainedBookMeDirectlyWorkspace?'z-20 bg-[#030409]':isSelfContainedRedfishWorkspace||isSelfContainedPcgWorkspace?'z-20 bg-transparent':isMsLawnBarberWorkspace?'z-10 bg-transparent':'z-10 bg-transparent'):'z-10 bg-transparent';const viewportClass=tenantOwnsViewport?`fixed inset-0 h-dvh min-h-0 min-w-0 w-full max-w-full overflow-x-hidden overflow-y-auto overscroll-y-none ${isSelfContainedTenantWorkspace?'':'flex flex-col'}`:'relative min-h-[calc(100dvh-var(--comm-banner-h,0px))] min-w-0 w-full max-w-full flex flex-col overflow-x-hidden overflow-y-auto';return <TenantApplicationChromeContext.Provider value=\"tenant-integrated\"><>{(backgroundOwnership.renderPlatformBackground||usePcgSharedApplicationBackground)&&!useTenantModesShell?<SiteBackground/>:null}{useTenantModesShell?null:<GodModePageOverrideRuntime/>}<TenantBrandTheme/><TenantLayoutPreferenceBridge/><RealtimeProvider><FocusModeProvider><UserImpersonationProvider><ShortcutsModalManager>{suppressTenantPresentationChrome?null:<LazyShellSlot><TrialBanner/></LazyShellSlot>}<ConditionalRouteHealthBanner/><CanonicalRedirectHandler/><GlobalTrackers/><TenantRouteScrollRestoration/><BigPapisApplicationFamilyStyle/><MobileViewportRecovery/><InstalledAppNavigationRecovery/>{suppressTenantPresentationChrome?null:<GlobalImpersonationBanner/>}{suppressTenantPresentationChrome?null:<AuditorModeBanner/>}{suppressTenantPresentationChrome?null:<LazyShellSlot><BackgroundOCRStatus/></LazyShellSlot>}{suppressTenantPresentationChrome?null:<LazyShellSlot><TrialAhaModal/></LazyShellSlot>}{isSelfContainedRedfishWorkspace||(isSelfContainedPcgWorkspace&&!tenantIntegratedApp)||useCurriControlCenterShell||useTenantModesShell?null:<LazyShellSlot><GlobalFallbackAccountMenu verifyShellOwnership={isSelfContainedTenantWorkspace}/></LazyShellSlot>}{suppressTenantPresentationChrome?null:<TenantPublishedExperienceRuntime/>}{suppressTenantPresentationChrome?null:<LazyShellSlot><ExperienceEditorCanvasBridge/></LazyShellSlot>}{suppressTenantPresentationChrome||isSelfContainedTenantWorkspace?null:<TenantQuickTour/>}<TelInterceptorBridge/><div data-experience-runtime-root=\"true\" data-experience-region-id=\"experience-route-canvas\" data-tenant-shell-profile={shellProfile} data-tenant-navigation-profile={navigationProfile} data-tenant-operating-contract-source={operatingContractSource} data-tenant-runtime-compatibility-source={compatibilitySource} data-tenant-background-owner={effectiveBackgroundOwner} data-tenant-background-contract-valid={effectiveBackgroundContractValid?'true':'false'} data-tenant-viewport-owner={viewportOwner} data-tenant-mobile-shell-contract=\"canonical-v2\" data-seaside-viewport-host={isSelfContainedSeasideLaunch?'true':undefined} data-big-papis-viewport-host={isSelfContainedBigPapisWorkspace?'true':undefined} data-savage-pizza-viewport-host={isSelfContainedSavagePizzaWorkspace?'true':undefined} data-auto-unlock-viewport-host={isSelfContainedAutoUnlockWorkspace?'true':undefined} data-pcg-viewport-host={isSelfContainedPcgWorkspace?'true':undefined} data-book-me-directly-viewport-host={isSelfContainedBookMeDirectlyWorkspace?'true':undefined} data-mslawnbarber-viewport-host={isMsLawnBarberWorkspace?'true':undefined} data-route-scroll-owner={tenantOwnsViewport?'tenant':'document'} className={`kl-platform-surface kl-responsive-tenant-runtime ${viewportClass} ${tenantPresentationClass}`}  style={{paddingTop:isSelfContainedTenantWorkspace?0:'var(--comm-banner-h, 0px)',...(isSelfContainedPcgWorkspace?{['--primary' as string]:'43 48% 66%',['--primary-foreground' as string]:'220 18% 7%',['--ring' as string]:'43 48% 66%',['--accent' as string]:'42 60% 78%',['--accent-foreground' as string]:'220 18% 7%',['--tenant-brand-primary' as string]:'#d8bb78',['--tenant-brand-accent' as string]:'#f2d99f'}:{}),...(isMsLawnBarberWorkspace&&msLawnBarberBackgroundUrl?{backgroundImage:`linear-gradient(180deg,rgba(1,8,5,.30),rgba(1,8,5,.58)),url(\"${msLawnBarberBackgroundUrl}\")`,backgroundSize:'cover',backgroundPosition:'center',backgroundRepeat:'no-repeat',['--ms-lawn-barber-background' as string]:`url(\"${msLawnBarberBackgroundUrl}\")`}:{})} as React.CSSProperties}><BaseErrorBoundary scope=\"TenantWorkspaceRuntime.RouteCanvas\" variant=\"panel\" title=\"Workspace route needs repair\" description=\"The tenant shell is still available while this route recovers.\">{useCurriControlCenterShell?<CurriControlCenterShell>{tenantIntegratedApp?<FirstClassAppTenantBoundary appSlug={tenantIntegratedApp.app.slug} applicationChrome={false} applicationMode=\"tenant-integrated\"><PrivateRoutes/></FirstClassAppTenantBoundary>:<PrivateRoutes/>}</CurriControlCenterShell>:useTenantModesShell?<TenantModesShell>{tenantIntegratedApp?<FirstClassAppTenantBoundary appSlug={tenantIntegratedApp.app.slug} applicationChrome={false} applicationMode=\"tenant-integrated\"><PrivateRoutes/></FirstClassAppTenantBoundary>:<PrivateRoutes/>}</TenantModesShell>:isSelfContainedRedfishWorkspace?<RedfishWorkspaceShell>{tenantIntegratedApp?<FirstClassAppTenantBoundary appSlug={tenantIntegratedApp.app.slug} applicationChrome={false} applicationMode=\"tenant-integrated\"><PrivateRoutes/></FirstClassAppTenantBoundary>:<PrivateRoutes/>}</RedfishWorkspaceShell>:tenantIntegratedApp?<FirstClassAppTenantBoundary appSlug={tenantIntegratedApp.app.slug} applicationChrome={false} applicationMode=\"tenant-integrated\"><PrivateRoutes/></FirstClassAppTenantBoundary>:<PrivateRoutes/>}</BaseErrorBoundary></div></ShortcutsModalManager></UserImpersonationProvider></FocusModeProvider></RealtimeProvider></></TenantApplicationChromeContext.Provider>}\nfunction TenantBackgroundCacheBridge(){const {activeTenant}=useMultiTenant();React.useEffect(()=>{if(activeTenant?.id)persistCachedTenantBackground(activeTenant)},[activeTenant]);return null}\nfunction TenantWorkspaceShell(){return <MultiTenantProvider><TenantBackgroundCacheBridge/><WorkspaceSidebarProvider><TenantRouteIdentityBoundary><TenantWorkspaceRuntime/><CanonicalWorkspaceSidebarRoot/></TenantRouteIdentityBoundary></WorkspaceSidebarProvider></MultiTenantProvider>}\nfunction GlobalAccountRouteAlias({section}:{section:'settings'|'profile'}){const {activeTenant,effectiveRole,hasGodModeAnywhere,isLoading}=useMultiTenant();if(isLoading)return <RouteFallback/>;const platformAuthority=effectiveRole==='GodMode'||hasGodModeAnywhere();if(platformAuthority)return <Navigate to={section==='profile'?'/admin/account?section=profile':'/admin/account?section=settings'} replace/>;if(activeTenant?.id){const slug=canonicalTenantRouteSlugForIdentity(activeTenant).toLowerCase();const target=`/${slug}/settings`;return <Navigate to={`${target}${section==='profile'?'?section=profile':''}`} replace/>}return <Navigate to={`/select-tenant?workspace=settings${section==='profile'?'&section=profile':''}`} replace/>}\nexport default function PrivateAppShell(){const location=useLocation();const normalizedPath=location.pathname.toLowerCase().replace(/\\/+$/g,'')||'/';if(normalizedPath==='/settings'||normalizedPath==='/profile')return <MultiTenantProvider><GlobalAccountRouteAlias section={normalizedPath==='/profile'?'profile':'settings'}/></MultiTenantProvider>;if(normalizedPath==='/bookmedirectly-com'||normalizedPath.startsWith('/bookmedirectly-com/')){const suffix=location.pathname.slice('/bookmedirectly-com'.length);return <Navigate to={`/bookmedirectly${suffix}${location.search||''}${location.hash||''}`} replace/>}if(normalizedPath==='/knock-launch-os')return <PortfolioOpsShell/>;if(normalizedPath==='/knock-launch-crm')return <Navigate to=\"/knock-launch-os\" replace/>;if(normalizedPath==='/knock-launch-os/profile'||normalizedPath==='/knock-launch-crm/profile')return <Navigate to={`/knock-launch-os/settings?section=profile${location.hash||''}`} replace/>;if(normalizedPath==='/knock-launch-crm/settings'||normalizedPath.startsWith('/knock-launch-crm/settings/')){const suffix=location.pathname.slice('/knock-launch-crm'.length);return <Navigate to={`/knock-launch-os${suffix}${location.search||''}${location.hash||''}`} replace/>}if(normalizedPath==='/knock-launch-os/video-studio')return <div className=\"min-h-screen bg-[#040806]\"><MultiTenantProvider><OwnerOsTenantBoundary><FocusModeProvider><UserImpersonationProvider><ShortcutsModalManager><LazyShellSlot><GlobalCommandPalette/></LazyShellSlot><GlobalImpersonationBanner/><AuditorModeBanner/><div className=\"kl-platform-surface relative z-10 min-h-screen w-full overflow-x-hidden overflow-y-auto\"><BaseErrorBoundary scope=\"VideoStudioShell\" variant=\"panel\" title=\"Video Studio needs repair\" description=\"The KNOCKLAUNCH owner shell loaded, but Video Studio needs repair.\"><Suspense fallback={<RouteFallback/>}><VideoStudio/></Suspense></BaseErrorBoundary></div></ShortcutsModalManager></UserImpersonationProvider></FocusModeProvider></OwnerOsTenantBoundary></MultiTenantProvider></div>;if(normalizedPath==='/knock-launch-os/settings'||normalizedPath.startsWith('/knock-launch-os/settings/'))return <PortfolioSettingsShell/>;if(normalizedPath==='/knock-launch-crm/portfolio'||normalizedPath.startsWith('/knock-launch-crm/portfolio/')){const suffix=location.pathname.slice('/knock-launch-crm'.length);return <Navigate to={`/knock-launch-os${suffix}${location.search||''}${location.hash||''}`} replace/>}if(normalizedPath==='/knock-launch-os/portfolio'||normalizedPath.startsWith('/knock-launch-os/portfolio/'))return <PortfolioShell/>;if(normalizedPath.startsWith('/knock-launch-os/'))return <PortfolioOpsShell/>;if(normalizedPath.startsWith('/knock-launch-crm/')){const suffix=location.pathname.slice('/knock-launch-crm'.length);return <Navigate to={`/knock-launch-os${suffix}${location.search||''}${location.hash||''}`} replace/>}if(normalizedPath==='/godmode/console')return <Navigate to=\"/admin/console\" replace/>;if(location.pathname.startsWith('/admin'))return <AdminShell/>;return <TenantWorkspaceShell/>}\n"},{"path":"src/pages/card-grading/PCGModesWorkspace.tsx","content":"import React from 'react';\n// PCG owner-requested MODES restore anchor: preserves the known-good pre-redesign presentation.\nimport {ArrowLeft,ArrowRight,BarChart3,Boxes,CalendarDays,CheckCircle2,ClipboardCheck,Clock3,CreditCard,Database,FolderOpen,Images,Mail,Settings,Truck,Users} from 'lucide-react';\nimport {useLocation,useNavigate} from 'react-router-dom';\nimport PcgWorkspace from '@/pages/crm/PcgWorkspace';\nimport {useMultiTenant} from '@/contexts/MultiTenantContext';\nimport PCGCompletionCenter from '@/pages/card-grading/PCGCompletionCenter';\nimport CardGradingPopulationReport from '@/pages/card-grading/CardGradingPopulationReport';\nimport TenantLogo from '@/components/branding/TenantLogo';\nimport MiscAwareAccountMenu from '@/components/MiscAwareAccountMenu';\nimport {CanonicalWorkspaceSidebarTrigger} from '@/components/layout/TenantLayoutControl';\nimport {supabase} from '@/integrations/supabase/client';\nimport {PCG_WORKSPACE_BACKGROUND} from '@/assets/pcgWorkspaceBackground';\nimport {resolveTenantMediaBranding} from '@/lib/tenants/tenantMediaBranding';\nimport {tenantMediaAssetUrl} from '@/lib/tenantMedia';\nimport {getTenantModeCards} from '@/shells/modesTenantShell';\n\ntype ModeId='submissions'|'grading'|'listings'|'orders';\ntype WorkspaceTab='today'|'vault'|'queue'|'submissions'|'certs'|'collectors'|'inventory'|'shipping'|'money'|'migration'|'readiness'|'population'|'settings';\ntype OperationalWorkspaceTab=Exclude<WorkspaceTab,'population'>;\ntype VaultMode='overview'|'single'|'batch'|'growth';\ntype ModeCounts={submissions:number;grading:number;listings:number;orders:number};\ntype UnknownRecord=Record<string,any>;\n\nfunction record(value:unknown):UnknownRecord{return value&&typeof value==='object'&&!Array.isArray(value)?value as UnknownRecord:{}}\nfunction resolvePcgHeroImage(tenant:any):string{\n  const settings=record(tenant?.settings);\n  const media=record(settings.media_branding);\n  const direct=String(media.hero_background_url||'').trim();\n  const assetId=String(media.resolved_hero_asset_id||media.hero_background_asset_id||'').trim();\n  const version=String(media.resolved_hero_version||media.hero_background_version||media.updated_at||'').trim();\n  return assetId?tenantMediaAssetUrl(assetId,version||null):direct;\n}\n\nconst MODE_TAB:Record<ModeId,WorkspaceTab>={submissions:'submissions',grading:'queue',listings:'inventory',orders:'shipping'};\nconst MODE_TOOLS:Record<ModeId,readonly {id:WorkspaceTab;label:string;vault?:VaultMode}[]>={\n  submissions:[{id:'submissions',label:'Receive Cards'},{id:'vault',label:'Capture Cards'},{id:'collectors',label:'Customers'}],\n  grading:[{id:'queue',label:'Grade Cards'},{id:'certs',label:'Certificates'}],\n  listings:[],\n  orders:[{id:'shipping',label:'Fulfill & Ship'}]\n};\nconst ADMIN_TOOLS=[{id:'settings' as WorkspaceTab,label:'Settings',icon:Settings},{id:'money' as WorkspaceTab,label:'Payments',icon:CreditCard},{id:'readiness' as WorkspaceTab,label:'Readiness',icon:ClipboardCheck},{id:'migration' as WorkspaceTab,label:'Migration',icon:Database},{id:'population' as WorkspaceTab,label:'Pop Report',icon:BarChart3}] as const;\nconst ADMIN_TOOL_IDS=new Set<WorkspaceTab>(ADMIN_TOOLS.map(item=>item.id));\nconst TOOL_LABEL:Record<WorkspaceTab,string>={today:'Work Queue',vault:'Capture Cards',queue:'Grade Cards',submissions:'Receive Cards',certs:'Certificates',collectors:'Customers',inventory:'Publish & Sell',shipping:'Fulfill & Ship',money:'Payments',migration:'Migration',readiness:'Readiness',population:'Pop Report',settings:'Settings'};\nconst PCG_CARD_IMAGE='https://images.squarespace-cdn.com/content/v1/6853034cd711cc2240276cf3/7fd5d898-1ff3-4bc2-9f7d-c7f2f2d6ee07/IMG_8111.jpg';\nconst PCG_STORE_IMAGE='https://images.squarespace-cdn.com/content/v1/6853034cd711cc2240276cf3/83d3ec70-169f-4d22-8916-15e422fb0e52/IMG_8156%2B%281%29.jpeg';\nconst PCG_GOOGLE_APPS=[\n  {id:'calendar',label:'Calendar',copy:'Schedule and sync events',icon:CalendarDays,path:'calendar'},\n  {id:'mail',label:'Mail',copy:'Read, search and send Gmail',icon:Mail,path:'mail'},\n  {id:'documents',label:'Drive & Documents',copy:'Google Drive and company files',icon:FolderOpen,path:'documents'},\n] as const;\nconst MODES=[\n  {id:'submissions' as ModeId,assetKey:'received',title:'Receive Cards',short:'To Receive',copy:'Start here when cards arrive. Add the customer, capture the cards and begin the submission.',icon:Images,accent:'#168cff',image:PCG_CARD_IMAGE,position:'38% 45%'},\n  {id:'grading' as ModeId,assetKey:'grading',title:'Grade Cards',short:'To Grade',copy:'Open the grading queue, score cards, assign certificates and clear QA.',icon:Clock3,accent:'#a83cff',image:PCG_WORKSPACE_BACKGROUND,position:'68% 52%'},\n  {id:'listings' as ModeId,assetKey:'completed',title:'Publish & Sell',short:'Ready to Publish',copy:'Finish completed cards, approve sale pricing and publish to the PCG website and eBay.',icon:CheckCircle2,accent:'#00e676',image:PCG_CARD_IMAGE,position:'62% 48%'},\n  {id:'orders' as ModeId,assetKey:'mailed',title:'Fulfill & Ship',short:'To Fulfill',copy:'Handle completed returns, pickups, tracking and customer shipment updates.',icon:Truck,accent:'#ffd740',image:PCG_STORE_IMAGE,position:'76% 58%'},\n] as const;\n\nconst PCGBatchPublishingCenter=React.lazy(()=>import('@/pages/card-grading/PCGBatchPublishingCenter'));\n\nfunction isModeId(value:string|null):value is ModeId{return MODES.some(item=>item.id===value)}\nfunction isWorkspaceTab(value:string|null):value is WorkspaceTab{return Boolean(value)&&['today','vault','queue','submissions','certs','collectors','inventory','shipping','money','migration','readiness','population','settings'].includes(value as WorkspaceTab)}\nfunction bucket(status:string):ModeId|null{\n  if(['received','intake_imaging','authentication'].includes(status))return'submissions';\n  if(['grading','encapsulation','qa'].includes(status))return'grading';\n  if(status==='ready')return'listings';\n  if(['shipped','picked_up','delivered','closed'].includes(status))return'orders';\n  return null;\n}\n\nexport default function PCGModesWorkspace(){\n  const{activeTenant}=useMultiTenant();\n  const location=useLocation();\n  const navigate=useNavigate();\n  const tenantId=activeTenant?.id||'';\n  const slug=String(activeTenant?.company_slug||'pcg').trim().toLowerCase()||'pcg';\n  const wmpUrl='https://whatsmyprogress.com/'+encodeURIComponent(slug)+'/';\n  const branding=React.useMemo(()=>resolveTenantMediaBranding(activeTenant as any),[activeTenant]);\n  const workspaceBackground=branding.backgroundUrl||PCG_WORKSPACE_BACKGROUND;\n  const mediaBranding=(activeTenant?.settings?.media_branding&&typeof activeTenant.settings.media_branding==='object'&&!Array.isArray(activeTenant.settings.media_branding)?activeTenant.settings.media_branding:{}) as Record<string,any>;\n  const heroImage=React.useMemo(()=>resolvePcgHeroImage(activeTenant)||workspaceBackground,[activeTenant,workspaceBackground]);\n  const heroOpacityRaw=Number(mediaBranding.hero_background_opacity??1);\n  const heroZoomRaw=Number(mediaBranding.hero_background_zoom??1);\n  const heroBlurRaw=Number(mediaBranding.hero_background_blur_px??0);\n  const heroXRaw=Number(mediaBranding.hero_background_position_x??50);\n  const heroYRaw=Number(mediaBranding.hero_background_position_y??50);\n  const heroOpacity=Number.isFinite(heroOpacityRaw)?Math.max(0,Math.min(1,heroOpacityRaw)):1;\n  const heroZoom=Number.isFinite(heroZoomRaw)?Math.max(1,Math.min(2.5,heroZoomRaw)):1;\n  const heroBlur=Number.isFinite(heroBlurRaw)?Math.max(0,Math.min(20,heroBlurRaw)):0;\n  const heroX=Number.isFinite(heroXRaw)?Math.max(0,Math.min(100,heroXRaw)):50;\n  const heroY=Number.isFinite(heroYRaw)?Math.max(0,Math.min(100,heroYRaw)):50;\n  const configuredModeCards=React.useMemo(()=>getTenantModeCards(activeTenant as any),[activeTenant]);\n  const modes=React.useMemo(()=>MODES.map((entry)=>{\n    const configured=configuredModeCards.find((card)=>card.key===entry.assetKey);\n    const x=configured?.image_position_x;\n    const y=configured?.image_position_y;\n    const assetId=String(configured?.image_asset_id||'').trim();\n    const image=assetId?tenantMediaAssetUrl(assetId):String(configured?.image_url||configured?.fallback_image_url||entry.image);\n    const zoom=Number(configured?.image_zoom??1);\n    const opacity=Number(configured?.image_opacity??1);\n    const blur=Number(configured?.image_blur_px??0);\n    return {...entry,image,position:typeof x==='number'&&typeof y==='number'?`${x}% ${y}%`:entry.position,zoom:Number.isFinite(zoom)?Math.max(1,Math.min(2.5,zoom)):1,opacity:Number.isFinite(opacity)?Math.max(0,Math.min(1,opacity)):1,blur:Number.isFinite(blur)?Math.max(0,Math.min(20,blur)):0};\n  }),[configuredModeCards]);\n  const searchParams=new URLSearchParams(location.search);\n  const requestedMode=searchParams.get('mode');\n  const requestedTool=searchParams.get('tool');\n  const requestedVault=searchParams.get('vault');\n  const requestedSubmissionId=searchParams.get('submissionId')||'';\n  const mode=isModeId(requestedMode)?requestedMode:null;\n  const tool=isWorkspaceTab(requestedTool)?requestedTool:null;\n  const adminTool=!mode&&tool&&ADMIN_TOOL_IDS.has(tool)?tool:null;\n  const vaultMode:VaultMode=requestedVault==='batch'?'batch':requestedVault==='single'?'single':requestedVault==='growth'?'growth':'overview';\n  const[counts,setCounts]=React.useState<ModeCounts>({submissions:0,grading:0,listings:0,orders:0});\n\n  React.useEffect(()=>{\n    let cancelled=false;\n    if(!tenantId)return;\n    void (supabase as any).from('card_grading_submissions').select('status').eq('tenant_id',tenantId).then(({data}:any)=>{\n      if(cancelled)return;\n      const next:ModeCounts={submissions:0,grading:0,listings:0,orders:0};\n      for(const row of data||[]){const id=bucket(String(row?.status||''));if(id)next[id]+=1}\n      setCounts(next);\n    }).catch(()=>{});\n    return()=>{cancelled=true};\n  },[tenantId]);\n\n  const setMode=React.useCallback((next:ModeId|null)=>{\n    const params=new URLSearchParams(location.search);\n    if(next){params.set('mode',next);params.delete('tool');params.delete('vault');params.delete('submissionId');params.delete('cardId')}else{params.delete('mode');params.delete('tool');params.delete('vault');params.delete('submissionId');params.delete('cardId')}\n    const search=params.toString();\n    navigate({pathname:location.pathname,search:search?'?'+search:'',hash:location.hash},{replace:false});\n  },[location.hash,location.pathname,location.search,navigate]);\n  const openTool=React.useCallback((nextMode:ModeId,nextTool:WorkspaceTab,nextVault?:VaultMode)=>{\n    const params=new URLSearchParams(location.search);\n    params.set('mode',nextMode);params.set('tool',nextTool);\n    if(nextVault)params.set('vault',nextVault);else params.delete('vault');\n    params.delete('submissionId');params.delete('cardId');\n    const search=params.toString();\n    navigate({pathname:location.pathname,search:search?'?'+search:'',hash:location.hash},{replace:false});\n  },[location.hash,location.pathname,location.search,navigate]);\n  const openCaptureForSubmission=React.useCallback((submissionId:string,expectedCardCount:number)=>{\n    const params=new URLSearchParams(location.search);\n    params.set('mode','submissions');params.set('tool','vault');params.set('vault',expectedCardCount===1?'single':'batch');params.set('submissionId',submissionId);params.delete('cardId');\n    const search=params.toString();\n    navigate({pathname:location.pathname,search:search?'?'+search:'',hash:location.hash},{replace:false});\n  },[location.hash,location.pathname,location.search,navigate]);\n  const openAdminTool=React.useCallback((nextTool:WorkspaceTab)=>{\n    const params=new URLSearchParams(location.search);\n    params.delete('mode');params.delete('vault');params.set('tool',nextTool);params.delete('submissionId');params.delete('cardId');\n    const search=params.toString();\n    navigate({pathname:location.pathname,search:search?'?'+search:'',hash:location.hash},{replace:false});\n  },[location.hash,location.pathname,location.search,navigate]);\n  const closeAdminTool=React.useCallback(()=>{const params=new URLSearchParams(location.search);params.delete('tool');params.delete('vault');params.delete('submissionId');params.delete('cardId');const search=params.toString();navigate({pathname:location.pathname,search:search?'?'+search:'',hash:location.hash},{replace:false})},[location.hash,location.pathname,location.search,navigate]);\n\n  if(mode){\n    const current=modes.find(item=>item.id===mode)!;\n    const modeTools=MODE_TOOLS[mode];\n    const allowedTabs=modeTools.map(item=>item.id);\n    const scopedTool=tool&&allowedTabs.includes(tool)?tool:null;\n    const activeTab=scopedTool||MODE_TAB[mode];\n    const headerLabel=scopedTool?TOOL_LABEL[scopedTool]:current.title;\n    return <div data-tenant-modes-shell=\"true\" data-tenant-id={tenantId||undefined} data-tenant-experience-family=\"modes\" data-pcg-active-mode={mode} data-pcg-mode-target={activeTab} className=\"min-h-screen bg-[#050607] text-white\">\n      <div data-pcg-mode-header=\"true\" className=\"sticky left-0 right-0 top-0 z-[65] box-border w-screen max-w-none border-b border-white/[.08] bg-[#050607]/92 px-3 py-2.5 backdrop-blur-xl sm:px-5 lg:px-7\">\n        <div className=\"flex w-full items-center gap-3\">\n          <button type=\"button\" onClick={()=>setMode(null)} aria-label=\"Back to PCG work queue\" className=\"grid h-11 w-11 shrink-0 place-items-center rounded-xl border border-white/[.10] bg-white/[.04] text-white/72\"><ArrowLeft className=\"h-4 w-4\"/></button>\n          <div className=\"grid h-10 w-10 shrink-0 place-items-center overflow-hidden rounded-xl border border-[#d8bb78]/25 bg-black/45\"><TenantLogo tenant={activeTenant as any} size={40} rounded=\"lg\" fallbackVariant=\"initial\" className=\"border-0 bg-transparent\"/></div>\n          <div className=\"min-w-0\"><div className=\"truncate text-[9px] font-black uppercase tracking-[.18em] text-[#d8bb78]\">PCG Workflow</div><div className=\"truncate text-sm font-black\">{headerLabel}</div></div>\n          <div className=\"ml-auto hidden min-w-0 items-center gap-2 lg:flex\"><CanonicalWorkspaceSidebarTrigger className=\"h-10 w-[clamp(14rem,28vw,24rem)] border-white/[.10] bg-black/35 text-white/50 hover:bg-white/[.06] hover:text-white/80\"/></div><div className=\"ml-auto lg:ml-0\"><MiscAwareAccountMenu placement=\"inline\" avatarMode=\"tenant\" singletonKey={`pcg-mode-avatar:${tenantId||'workspace'}`} tenantShellOwner/></div>\n        </div>\n        {modeTools.length>1?<div className=\"mt-2 flex flex-wrap gap-1 pb-0.5\">{modeTools.map(item=><button key={item.id} type=\"button\" onClick={()=>openTool(mode,item.id,item.vault)} className={`whitespace-nowrap rounded-xl border px-3 py-2 text-[10px] font-black uppercase tracking-[.08em] transition ${activeTab===item.id?'border-[#d8bb78]/40 bg-[#d8bb78]/[.12] text-[#f2d99f]':'border-white/[.09] bg-white/[.035] text-white/52 hover:bg-white/[.08] hover:text-white/82'}`}>{item.label}</button>)}</div>:null}\n      </div>\n      {mode==='listings'?<><PCGCompletionCenter mode=\"completed\"/><React.Suspense fallback={null}><PCGBatchPublishingCenter tenantId={tenantId}/></React.Suspense></>:null}\n      {mode==='orders'?<><PCGCompletionCenter mode=\"mailed\"/><PcgWorkspace initialTab=\"shipping\" embedded navigationScope={['shipping']}/></>:null}\n      {mode==='submissions'||mode==='grading'?<PcgWorkspace initialTab={activeTab as OperationalWorkspaceTab} initialVaultMode={vaultMode} initialVaultSubmissionId={requestedSubmissionId} onSubmissionCreated={mode==='submissions'?({id,expected_card_count})=>openCaptureForSubmission(id,expected_card_count):undefined} embedded navigationScope={allowedTabs as OperationalWorkspaceTab[]}/>:null}\n    </div>\n  }\n\n  if(adminTool){\n    return <div data-tenant-modes-shell=\"true\" data-tenant-id={tenantId||undefined} data-tenant-experience-family=\"modes\" data-pcg-admin-tool={adminTool} className=\"min-h-screen bg-[#050607] text-white\">\n      <div className=\"sticky left-0 right-0 top-0 z-[65] border-b border-white/[.08] bg-[#050607]/92 px-3 py-2.5 backdrop-blur-xl sm:px-5 lg:px-7\"><div className=\"flex items-center gap-3\"><button type=\"button\" onClick={closeAdminTool} aria-label=\"Back to PCG work queue\" className=\"grid h-11 w-11 place-items-center rounded-xl border border-white/[.10] bg-white/[.04] text-white/72\"><ArrowLeft className=\"h-4 w-4\"/></button><div className=\"grid h-10 w-10 place-items-center overflow-hidden rounded-xl border border-[#d8bb78]/25 bg-black/45\"><TenantLogo tenant={activeTenant as any} size={40} rounded=\"lg\" fallbackVariant=\"initial\" className=\"border-0 bg-transparent\"/></div><div><div className=\"text-[9px] font-black uppercase tracking-[.18em] text-[#d8bb78]\">PCG Admin</div><div className=\"text-sm font-black\">{TOOL_LABEL[adminTool]}</div></div><div className=\"ml-auto\"><MiscAwareAccountMenu placement=\"inline\" avatarMode=\"tenant\" singletonKey={`pcg-admin-avatar:${tenantId||'workspace'}`} tenantShellOwner/></div></div></div>\n      {adminTool==='population'?<CardGradingPopulationReport tenantId={tenantId}/>:<PcgWorkspace initialTab={adminTool as any} embedded navigationScope={[adminTool as any]}/>}\n    </div>\n  }\n\n\n\n\n  return <main data-tenant-modes-shell=\"true\" data-tenant-id={tenantId||undefined} data-tenant-experience-family=\"modes\" data-pcg-modes-workspace=\"true\" data-pcg-media-contract=\"tenant-configured\" className=\"relative min-h-dvh overflow-x-hidden bg-transparent pb-8 text-white\">\n    <header className=\"sticky left-0 right-0 top-0 z-[70] border-b border-white/[.08] bg-[#050607]/92 backdrop-blur-xl\">\n      <div className=\"flex min-h-[64px] items-center gap-3 px-3 sm:px-5 lg:px-7\">\n        <CanonicalWorkspaceSidebarTrigger className=\"h-11 w-[clamp(13rem,34vw,28rem)] border-white/[.10] bg-black/35 text-white/55 hover:bg-white/[.06] hover:text-white/85 max-sm:w-11 max-sm:px-0 max-sm:[&>span]:hidden\"/>\n        <div className=\"flex min-w-0 items-center gap-2.5\">\n          <div className=\"grid h-10 w-10 shrink-0 place-items-center overflow-hidden rounded-xl border border-[#d8bb78]/25 bg-black/45\"><TenantLogo tenant={activeTenant as any} size={38} rounded=\"lg\" fallbackVariant=\"initial\" className=\"border-0 bg-transparent\"/></div>\n          <div className=\"min-w-0\"><div className=\"truncate text-[9px] font-black uppercase tracking-[.18em] text-[#d8bb78]\">Prestigious Card Grading</div><div className=\"truncate text-sm font-black text-white\">Work Queue</div></div>\n        </div>\n        <div className=\"ml-auto\"><MiscAwareAccountMenu placement=\"inline\" avatarMode=\"tenant\" singletonKey={'pcg-dashboard-avatar:'+(tenantId||'workspace')} tenantShellOwner/></div>\n      </div>\n    </header>\n\n    <div className=\"relative z-10 mx-auto max-w-[1560px] px-3 pb-7 pt-4 sm:px-5 sm:pt-5 lg:px-7 lg:pt-6\">\n      <section className=\"relative overflow-hidden rounded-[24px] border border-white/[.10] bg-black/45 shadow-2xl\">\n        <div className=\"absolute inset-0\" style={{backgroundImage:'url(\"'+heroImage+'\")',backgroundSize:'cover',backgroundPosition:`${heroX}% ${heroY}%`,opacity:heroOpacity,filter:`blur(${heroBlur}px)`,transform:`scale(${heroZoom})`,transformOrigin:`${heroX}% ${heroY}%`}}/>\n        <div className=\"absolute inset-0 bg-gradient-to-r from-black/95 via-black/72 to-black/40\"/>\n        <div className=\"relative flex min-h-[158px] flex-col justify-end p-5 sm:min-h-[190px] sm:p-7 lg:p-8\">\n          <div className=\"text-[10px] font-black uppercase tracking-[.22em] text-[#d8bb78]\">PCG MODES</div>\n          <h1 className=\"mt-2 text-[clamp(2rem,4vw,3.8rem)] font-black leading-[.92] tracking-[-.05em] text-white\">Your grading command center.</h1>\n          <p className=\"mt-3 max-w-2xl text-sm leading-6 text-white/58\">Pick the part of the shop you are working in. Each mode keeps only the tools for that job in front of you.</p>\n        </div>\n      </section>\n\n      <section data-pcg-google-app-links=\"true\" className=\"mt-4\">\n        <div className=\"mb-2.5 px-1\"><div className=\"text-[9px] font-black uppercase tracking-[.18em] text-[#d8bb78]\">Connected apps</div><h2 className=\"mt-1 text-lg font-black tracking-[-.02em] text-white sm:text-xl\">Google Workspace</h2></div>\n        <div className=\"grid grid-cols-1 gap-2 sm:grid-cols-3\">\n          {PCG_GOOGLE_APPS.map(({id,label,copy,icon:Icon,path})=><button key={id} type=\"button\" data-pcg-google-app={id} onClick={()=>navigate('/'+slug+'/'+path)} className=\"group flex min-h-[82px] items-center gap-3 rounded-[16px] border border-white/[.09] bg-black/35 px-4 py-3 text-left backdrop-blur-sm transition hover:border-[#d8bb78]/35 hover:bg-[#d8bb78]/[.08]\"><span className=\"grid h-10 w-10 shrink-0 place-items-center rounded-xl border border-[#d8bb78]/20 bg-[#d8bb78]/[.08]\"><Icon className=\"h-5 w-5 text-[#d8bb78]\"/></span><span className=\"min-w-0\"><span className=\"block text-sm font-black text-white\">{label}</span><span className=\"mt-0.5 block text-[11px] text-white/45\">{copy}</span></span><ArrowRight className=\"ml-auto h-4 w-4 shrink-0 text-white/28 transition group-hover:translate-x-0.5 group-hover:text-[#d8bb78]\"/></button>)}\n        </div>\n      </section>\n\n      <section className=\"mt-4\">\n        <div className=\"mb-2.5 flex items-end justify-between gap-4 px-1\">\n          <div><div className=\"text-[9px] font-black uppercase tracking-[.18em] text-[#d8bb78]\">Work Queue</div><h2 className=\"mt-1 text-xl font-black tracking-[-.025em] text-white sm:text-2xl\">Choose a mode</h2></div>\n          <div className=\"hidden text-xs font-semibold text-white/32 sm:block\">Receive → Grade → Publish → Fulfill</div>\n        </div>\n        <div className=\"grid grid-cols-1 gap-3 sm:grid-cols-2 xl:grid-cols-4\">{modes.map(({id,title,short,copy,icon:Icon,accent,image,position,zoom,opacity,blur})=><button key={id} type=\"button\" data-pcg-mode-id={id} aria-label={'Open '+title} onClick={()=>setMode(id)} className=\"group relative min-h-[230px] overflow-hidden rounded-[22px] border border-white/[.10] bg-[#090a0b] text-left shadow-2xl transition duration-200 hover:-translate-y-0.5 hover:border-white/[.18]\">\n          <div className=\"absolute inset-0 transition duration-300\" style={{backgroundImage:'url(\"'+image+'\")',backgroundSize:'cover',backgroundPosition:position,opacity,filter:`blur(${blur}px)`,transform:`scale(${zoom})`,transformOrigin:position}}/>\n          <div className=\"absolute inset-0 bg-gradient-to-t from-black via-black/78 to-black/22\"/>\n          <div className=\"absolute inset-x-0 top-0 h-[3px]\" style={{backgroundColor:accent}}/>\n          <div className=\"relative flex h-full min-h-[230px] flex-col justify-end p-4 sm:p-5\">\n            <div className=\"mb-auto flex items-start justify-between gap-3\">\n              <span className=\"grid h-10 w-10 place-items-center rounded-xl border border-white/[.12] bg-black/45 backdrop-blur\"><Icon className=\"h-5 w-5\" style={{color:accent}}/></span>\n              <div className=\"text-right\"><div className=\"text-3xl font-black leading-none text-white\">{counts[id]}</div><div className=\"mt-1 text-[8px] font-black uppercase tracking-[.12em] text-white/38\">{short}</div></div>\n            </div>\n            <h3 className=\"text-xl font-black tracking-[-.025em] text-white\">{title}</h3>\n            <p className=\"mt-1.5 line-clamp-2 text-[11px] leading-5 text-white/46\">{copy}</p>\n            <div className=\"mt-3 flex items-center gap-1 text-[9px] font-black uppercase tracking-[.12em]\" style={{color:accent}}>Open mode <ArrowRight className=\"h-3.5 w-3.5 transition group-hover:translate-x-0.5\"/></div>\n          </div>\n        </button>)}</div>\n      </section>\n\n      <section className=\"mt-4 rounded-[18px] border border-white/[.08] bg-black/28 p-3 backdrop-blur-sm\">\n        <div className=\"flex flex-wrap items-center gap-2\">\n          <span className=\"mr-1 text-[9px] font-black uppercase tracking-[.16em] text-white/28\">Admin</span>\n          {ADMIN_TOOLS.map(({id,label,icon:Icon})=><button key={id} type=\"button\" onClick={()=>openAdminTool(id)} className=\"inline-flex min-h-10 items-center gap-2 rounded-lg border border-white/[.09] bg-white/[.04] px-3 text-[10px] font-black text-white/48 transition hover:bg-white/[.08] hover:text-white/78\"><Icon className=\"h-3.5 w-3.5 text-[#d8bb78]\"/>{label}</button>)}\n        </div>\n      </section>\n    </div>\n  </main>\n}\n"},{"path":"src/components/MiscAwareAccountMenu.tsx","content":"import { useContext, useMemo, useState, type ReactElement } from 'react';\nimport { useNavigate } from 'react-router-dom';\nimport { Bell, Building2, CalendarDays, ChevronDown, ClipboardList, FolderOpen, LogOut, Mail, PlugZap, Settings, User } from 'lucide-react';\nimport { Button } from '@/components/ui/button';\nimport { Badge } from '@/components/ui/badge';\nimport {\n  DropdownMenu,\n  DropdownMenuContent,\n  DropdownMenuItem,\n  DropdownMenuLabel,\n  DropdownMenuSeparator,\n  DropdownMenuTrigger,\n} from '@/components/ui/dropdown-menu';\nimport { useAuth } from '@/contexts/AuthContext';\nimport { useMultiTenant } from '@/contexts/MultiTenantContext';\nimport { useTenantRoles } from '@/contexts/tenantSelectors';\nimport { TenantApplicationChromeContext } from '@/contexts/TenantApplicationChromeContext';\nimport { cn } from '@/lib/utils';\nimport TenantLogo from '@/components/branding/TenantLogo';\nimport { normalizeBusinessOperatingBlueprint } from '@/lib/tenantBlueprints/businessOperatingBlueprint';\nimport { resolveAdaptiveBlueprintRoutePath } from '@/lib/applications/applicationFamilyRegistry';\nimport { isTenantAvatarMenuTargetAllowed, resolveTenantAvatarMenuContract } from '@/lib/tenants/tenantAvatarMenuContract';\nimport CRMUserMenu from './CRMUserMenu';\nimport CurriPortfolioReturnMenuItem from '@/components/curri/CurriPortfolioReturnMenuItem';\nimport { useIsMobile } from '@/hooks/use-mobile';\nimport { tenantExperienceFamily } from '@/shells/modesTenantShell';\n\ntype MiscAwareAccountMenuProps = {\n  placement?: 'fixed' | 'inline';\n  className?: string;\n  singletonKey?: string;\n  fallback?: boolean;\n  tenantShellOwner?: boolean;\n  avatarMode?: 'tenant' | 'user';\n  trigger?: ReactElement;\n};\n\ntype WorkspaceMenuAction = { label: string; path: string; icon: typeof ClipboardList };\n\nconst TENANT_SELECTOR_PATH = '/select-tenant?manual=1';\n\nfunction normalizeTenantType(value?: string | null) {\n  return String(value || '').trim().toUpperCase().replace(/[\\s-]+/g, '_');\n}\n\nfunction getTenantDisplayName(tenant?: { company_dba_name?: string | null; company_legal_name?: string | null; name?: string | null; company_slug?: string | null } | null) {\n  return tenant?.company_dba_name || tenant?.company_legal_name || tenant?.name || tenant?.company_slug || 'Workspace';\n}\n\nfunction miscWorkspacePresentation(activeTenant: any) {\n  if (tenantExperienceFamily(activeTenant) === 'modes') {\n    return { actionLabel: 'Open workspace', workspaceLabel: 'MODES' };\n  }\n  const tenantType = normalizeTenantType(activeTenant?.tenant_type);\n  const workspaceType = String(activeTenant?.settings?.workspace_type || '').trim().toLowerCase();\n  const workspaceVariant = String(activeTenant?.settings?.workspace_variant || '').trim().toLowerCase();\n  const vertical = String(activeTenant?.settings?.vertical || '').trim().toLowerCase();\n  if (tenantType === 'PORTFOLIO_CONTROL_CENTER' || workspaceType === 'executive_control_center' || workspaceVariant === 'curri_control_center') {\n    return { actionLabel: 'Open control center', workspaceLabel: 'Executive Oversight' };\n  }\n  if (workspaceType === 'state_photo_docs') {\n    return { actionLabel: 'Facility Photo Report', workspaceLabel: 'Photo Documentation' };\n  }\n  if (workspaceType === 'mobile_vendor') {\n    return { actionLabel: 'Open workspace', workspaceLabel: 'Mobile Vendor' };\n  }\n  if (vertical === 'food_beverage') {\n    return { actionLabel: 'Open workspace', workspaceLabel: 'Food & Beverage' };\n  }\n  const blueprint = normalizeBusinessOperatingBlueprint(activeTenant?.settings || {}, activeTenant);\n  return { actionLabel: 'Open workspace', workspaceLabel: blueprint.vocabulary.workspace || 'Business Operations' };\n}\n\nfunction formatRole(role?: string | null) {\n  const normalized = String(role || '').trim().toUpperCase().replace(/[\\s-]+/g, '_');\n  if (normalized === 'OWNER' || normalized === 'TENANT_OWNER') return 'Owner';\n  if (normalized === 'MANAGER') return 'Route Manager';\n  if (normalized === 'OFFICE_ADMIN' || normalized === 'OFFICE_STAFF') return 'Office Coordinator';\n  if (normalized === 'CREW') return 'Crew Member';\n  if (normalized === 'REP') return 'Field Teammate';\n  if (normalized === 'GODMODE') return 'Platform Admin';\n  return normalized ? normalized.toLowerCase().split('_').map((part) => part.charAt(0).toUpperCase()).join(' ') : 'Team Member';\n}\n\nexport default function MiscAwareAccountMenu(props: MiscAwareAccountMenuProps) {\n  const navigate = useNavigate();\n  const { user, signOut } = useAuth();\n  const { activeTenant } = useMultiTenant();\n  const { effectiveRole } = useTenantRoles();\n  const [isOpen, setIsOpen] = useState(false);\n  const [isSigningOut, setIsSigningOut] = useState(false);\n  const isMobile = useIsMobile();\n  const applicationChromeMode = useContext(TenantApplicationChromeContext);\n  const tenantShellOwner = props.tenantShellOwner === true || props.fallback === true;\n\n  const tenantType = normalizeTenantType(activeTenant?.tenant_type);\n  const tenantRoutes = resolveTenantAvatarMenuContract(activeTenant as any);\n  const isOwnerLike = ['GODMODE','ADMIN','OWNER','TENANT_OWNER'].includes(String(effectiveRole || '').trim().toUpperCase().replace(/[\\s-]+/g, '_'));\n  const placement = props.placement || 'inline';\n  const tenantLabel = getTenantDisplayName(activeTenant);\n  const displayName = user?.user_metadata?.full_name || user?.user_metadata?.name || user?.email?.split('@')[0] || 'Account';\n  const displayEmail = user?.email || '';\n  const avatarUrl = String(user?.user_metadata?.avatar_url || user?.user_metadata?.picture || '').trim();\n  const initials = useMemo(() => {\n    const parts = String(displayName).split(/[\\s._-]+/).filter(Boolean);\n    return parts.slice(0, 2).map((part) => part.charAt(0).toUpperCase()).join('') || 'A';\n  }, [displayName]);\n\n  if (applicationChromeMode === 'tenant-integrated' && !tenantShellOwner) return null;\n\n  const handleSignOut = async () => {\n    setIsSigningOut(true);\n    setIsOpen(false);\n    try {\n      await signOut();\n    } finally {\n      setIsSigningOut(false);\n    }\n  };\n\n  const handleTenantNavigate = (path: string) => {\n    if (!isTenantAvatarMenuTargetAllowed(activeTenant as any, path)) return;\n    setIsOpen(false);\n    navigate(path);\n  };\n\n  if (tenantType === 'LAWN_CARE') {\n    if (placement !== 'inline') return null;\n    const roleLabel = formatRole(effectiveRole);\n    const useTenantAvatar = props.avatarMode === 'tenant';\n    const lawnCareWorkspacePath = tenantRoutes.basePath;\n    const lawnCareGearPath = `${lawnCareWorkspacePath}#gear`;\n    const lawnCareTeamPath = `${lawnCareWorkspacePath}#team`;\n    const lawnCareMoneyPath = `${lawnCareWorkspacePath}#invoices`;\n    return (\n      <div className={cn('relative z-10 inline-flex', props.className)} data-single-role-tenant-avatar=\"true\" data-lawn-care-account-menu=\"canonical\">\n        <DropdownMenu open={isOpen} onOpenChange={setIsOpen}>\n          <DropdownMenuTrigger asChild>\n            {props.trigger ?? <Button type=\"button\" variant=\"ghost\" size=\"sm\" className=\"min-h-[44px] max-w-[240px] gap-2 rounded-full border border-white/15 bg-slate-950/88 px-2 text-white shadow-sm backdrop-blur hover:bg-slate-900\" aria-label={`Open account menu for ${displayName}`} title={`${tenantLabel} · ${roleLabel}`}>\n              <span className=\"flex h-7 w-7 shrink-0 items-center justify-center overflow-hidden rounded-full border border-white/10 bg-slate-800 text-[11px] font-bold text-white\">\n                {useTenantAvatar ? <TenantLogo tenant={activeTenant as any} size={28} rounded=\"full\" fallbackVariant=\"initial\" className=\"border-0 bg-transparent\" /> : avatarUrl ? <img src={avatarUrl} alt=\"\" className=\"h-full w-full object-cover\" referrerPolicy=\"no-referrer\" /> : initials}\n              </span>\n              <span className=\"hidden min-w-0 flex-col items-start leading-tight sm:flex\"><span className=\"max-w-[145px] truncate text-xs font-semibold\">{displayName}</span><span className=\"max-w-[145px] truncate text-[10px] text-slate-300\">{roleLabel}</span></span>\n              <ChevronDown className=\"h-3.5 w-3.5 shrink-0 text-slate-300\" />\n            </Button>}\n          </DropdownMenuTrigger>\n          <DropdownMenuContent align=\"end\" className=\"w-72 max-h-[min(82vh,720px)] overflow-y-auto\">\n            <div className=\"px-3 py-3\"><div className=\"flex items-start gap-3\"><span className=\"flex h-10 w-10 shrink-0 items-center justify-center overflow-hidden rounded-full bg-slate-900 text-sm font-bold text-white\">{useTenantAvatar ? <TenantLogo tenant={activeTenant as any} size={40} rounded=\"full\" fallbackVariant=\"initial\" className=\"border-0 bg-transparent\" /> : avatarUrl ? <img src={avatarUrl} alt=\"\" className=\"h-full w-full object-cover\" referrerPolicy=\"no-referrer\" /> : initials}</span><div className=\"min-w-0 flex-1\"><p className=\"truncate text-sm font-semibold\">{displayName}</p>{displayEmail && <p className=\"truncate text-xs text-muted-foreground\">{displayEmail}</p>}<p className=\"truncate text-xs text-muted-foreground\">{tenantLabel}</p><div className=\"mt-2 flex flex-wrap gap-1.5\"><Badge variant=\"secondary\" className=\"h-5 px-1.5 text-[10px]\">{roleLabel}</Badge><Badge variant=\"outline\" className=\"h-5 px-1.5 text-[10px]\">Lawn Care</Badge></div></div></div></div>\n            <DropdownMenuSeparator />\n            <DropdownMenuLabel className=\"text-[11px] uppercase tracking-wide text-muted-foreground\">Workspace</DropdownMenuLabel>\n            <DropdownMenuItem onClick={() => handleTenantNavigate(lawnCareGearPath)}><ClipboardList className=\"mr-2 h-4 w-4\" /> Gear</DropdownMenuItem>\n            <DropdownMenuItem onClick={() => handleTenantNavigate(lawnCareTeamPath)}><User className=\"mr-2 h-4 w-4\" /> Team</DropdownMenuItem>\n            <DropdownMenuItem onClick={() => handleTenantNavigate(lawnCareMoneyPath)}><ClipboardList className=\"mr-2 h-4 w-4\" /> Money</DropdownMenuItem>\n            <DropdownMenuSeparator />\n            <DropdownMenuLabel className=\"text-[11px] uppercase tracking-wide text-muted-foreground\">Account</DropdownMenuLabel>\n            <DropdownMenuItem onClick={() => handleTenantNavigate(tenantRoutes.settingsPath)}><Settings className=\"mr-2 h-4 w-4\" /> Settings & Profile</DropdownMenuItem>\n            <DropdownMenuItem onClick={() => handleTenantNavigate(tenantRoutes.notificationsPath)}><Bell className=\"mr-2 h-4 w-4\" /> Notification settings</DropdownMenuItem>\n            {isOwnerLike ? <DropdownMenuItem onClick={() => handleTenantNavigate(tenantRoutes.connectionsPath)}><PlugZap className=\"mr-2 h-4 w-4\" /> Connections</DropdownMenuItem> : null}\n            <DropdownMenuItem onClick={() => { setIsOpen(false); window.location.assign(TENANT_SELECTOR_PATH); }}><Building2 className=\"mr-2 h-4 w-4\" /> Switch workspace</DropdownMenuItem>\n            <DropdownMenuSeparator />\n            <DropdownMenuItem disabled={isSigningOut} onClick={() => void handleSignOut()} className=\"text-destructive focus:text-destructive\"><LogOut className=\"mr-2 h-4 w-4\" /> {isSigningOut ? 'Signing out…' : 'Sign out'}</DropdownMenuItem>\n          </DropdownMenuContent>\n        </DropdownMenu>\n      </div>\n    );\n  }\n\n  const usesNativeMiscMenu = ['MISC', 'MISCELLANEOUS', 'PORTFOLIO_CONTROL_CENTER'].includes(tenantType);\n  if (!usesNativeMiscMenu) return <CRMUserMenu {...props} placement={placement} tenantShellOwner={tenantShellOwner} />;\n\n  const settings = activeTenant?.settings && typeof activeTenant.settings === 'object' ? activeTenant.settings as Record<string, any> : {};\n  const workspaceType = String(settings.workspace_type || '').trim().toLowerCase();\n  const workspaceVariant = String(settings.workspace_variant || '').trim().toLowerCase();\n  const isModesWorkspace = tenantExperienceFamily(activeTenant) === 'modes';\n  const isPcgWorkspace = tenantRoutes.tenantSlug === 'pcg';\n  const isExecutiveControlCenter = !isModesWorkspace && (tenantType === 'PORTFOLIO_CONTROL_CENTER' || workspaceType === 'executive_control_center' || workspaceVariant === 'curri_control_center');\n  const { actionLabel: workspaceActionLabel, workspaceLabel: legacyWorkspaceLabel } = miscWorkspacePresentation(activeTenant);\n  const workspaceLabel = isModesWorkspace ? 'MODES' : legacyWorkspaceLabel;\n  const blueprint = isExecutiveControlCenter || isModesWorkspace ? null : normalizeBusinessOperatingBlueprint(settings, activeTenant);\n  const blueprintActions = (blueprint?.modules ?? [])\n    .filter((module) => Boolean(module.path))\n    .map<WorkspaceMenuAction>((module) => ({\n      label: module.label,\n      path: activeTenant\n        ? (resolveAdaptiveBlueprintRoutePath(module.id, activeTenant as any, effectiveRole) || resolveAdaptiveBlueprintRoutePath(module.path, activeTenant as any, effectiveRole) || tenantRoutes.path(module.path))\n        : tenantRoutes.path(module.path),\n      icon: ClipboardList,\n    }))\n    .filter((action, index, actions) => isTenantAvatarMenuTargetAllowed(activeTenant as any, action.path) && actions.findIndex((candidate) => candidate.path === action.path) === index)\n    .slice(0, 7);\n  const workspaceActions: WorkspaceMenuAction[] = (isModesWorkspace\n    ? isPcgWorkspace\n      ? [\n          { label: 'PCG workspace', path: tenantRoutes.workspacePath, icon: ClipboardList },\n          { label: 'Calendar', path: tenantRoutes.path('calendar'), icon: CalendarDays },\n          { label: 'Mail', path: tenantRoutes.path('mail'), icon: Mail },\n          { label: 'Drive & Documents', path: tenantRoutes.path('documents'), icon: FolderOpen },\n        ]\n      : [{ label: 'MODES home', path: tenantRoutes.workspacePath, icon: ClipboardList }]\n    : isExecutiveControlCenter\n    ? [\n        { label: 'Command Mode', path: tenantRoutes.workspacePath, icon: ClipboardList },\n        { label: 'Portfolio Mode', path: `${tenantRoutes.workspacePath}?tab=businesses`, icon: Building2 },\n        { label: 'Opportunity Mode', path: `${tenantRoutes.workspacePath}?tab=opportunities`, icon: ClipboardList },\n        { label: 'Decision Mode', path: `${tenantRoutes.workspacePath}?tab=decisions`, icon: ClipboardList },\n        { label: 'Systems', path: `${tenantRoutes.workspacePath}?tab=more`, icon: Settings },\n      ]\n    : [\n        { label: workspaceActionLabel, path: tenantRoutes.workspacePath, icon: ClipboardList },\n        ...blueprintActions.filter((action) => action.path !== tenantRoutes.workspacePath),\n      ]).filter((action) => isTenantAvatarMenuTargetAllowed(activeTenant as any, action.path)).slice(0, 8);\n  const containerClass = placement === 'fixed' ? 'fixed right-4 z-50' : 'relative z-10 inline-flex';\n  const containerStyle = placement === 'fixed' ? { top: 'calc(var(--comm-banner-h, 0px) + 1rem)' } : undefined;\n\n  return (\n    <div className={cn(containerClass, props.className)} style={containerStyle} data-single-role-tenant-avatar=\"true\" data-misc-tenant-avatar=\"true\" data-tenant-native-avatar-menu=\"true\" data-tenant-avatar-slug={tenantRoutes.tenantSlug}>\n      <DropdownMenu open={isOpen} onOpenChange={setIsOpen}>\n        <DropdownMenuTrigger asChild>\n          {props.trigger ?? <Button type=\"button\" variant=\"ghost\" size=\"sm\" className={cn('min-h-[44px] rounded-full border border-border/50 bg-background/72 text-foreground shadow-sm transition hover:bg-muted/80', isMobile ? 'w-[44px] p-0' : 'max-w-[260px] gap-2 px-2')} aria-label={`Open ${tenantLabel} workspace menu`} title={tenantLabel} onPointerDown={isExecutiveControlCenter ? (event) => { event.preventDefault(); setIsOpen((open) => !open); } : undefined}>\n            <span className=\"flex h-7 w-7 shrink-0 items-center justify-center overflow-hidden rounded-full border border-border/60 bg-background\"><TenantLogo tenant={activeTenant as any} size={28} rounded=\"full\" fallbackVariant=\"initial\" className=\"border-0 bg-transparent\" /></span>\n            <span className=\"hidden min-w-0 flex-col items-start leading-tight sm:flex\"><span className=\"max-w-[150px] truncate text-xs font-semibold\">{tenantLabel}</span><span className=\"max-w-[150px] truncate text-[10px] text-muted-foreground\">{workspaceLabel}</span></span>\n            {!isMobile ? <ChevronDown className=\"h-3.5 w-3.5 shrink-0 text-muted-foreground\" /> : null}\n          </Button>}\n        </DropdownMenuTrigger>\n        <DropdownMenuContent align=\"end\" className=\"w-72 max-h-[min(82vh,720px)] overflow-y-auto\">\n          <div className=\"px-3 py-3\"><div className=\"flex items-start gap-3\"><span className=\"flex h-10 w-10 shrink-0 items-center justify-center overflow-hidden rounded-full border border-border/60 bg-background\"><TenantLogo tenant={activeTenant as any} size={40} rounded=\"full\" fallbackVariant=\"initial\" className=\"border-0 bg-transparent\" /></span><div className=\"min-w-0 flex-1\"><p className=\"truncate text-sm font-semibold\">{tenantLabel}</p><p className=\"truncate text-xs text-muted-foreground\">{displayName}</p>{displayEmail && <p className=\"truncate text-xs text-muted-foreground\">{displayEmail}</p>}<div className=\"mt-2 flex flex-wrap gap-1.5\"><Badge variant=\"secondary\" className=\"h-5 px-1.5 text-[10px]\">Workspace</Badge><Badge variant=\"outline\" className=\"h-5 px-1.5 text-[10px]\">{workspaceLabel}</Badge></div></div></div></div>\n          <DropdownMenuSeparator />\n          <DropdownMenuLabel className=\"text-[11px] uppercase tracking-wide text-muted-foreground\">Workspace</DropdownMenuLabel>\n          {workspaceActions.map(({ label, path, icon: Icon }) => <DropdownMenuItem key={`${label}:${path}`} onClick={() => handleTenantNavigate(path)}><Icon className=\"mr-2 h-4 w-4\" />{label}</DropdownMenuItem>)}\n          <CurriPortfolioReturnMenuItem onNavigate={() => setIsOpen(false)} />\n          <DropdownMenuItem onClick={() => { setIsOpen(false); navigate(TENANT_SELECTOR_PATH); }}><Building2 className=\"mr-2 h-4 w-4\" />Switch workspace</DropdownMenuItem>\n          <DropdownMenuSeparator />\n          <DropdownMenuLabel className=\"text-[11px] uppercase tracking-wide text-muted-foreground\">My account</DropdownMenuLabel>\n          <DropdownMenuItem onClick={() => handleTenantNavigate(tenantRoutes.settingsPath)}><Settings className=\"mr-2 h-4 w-4\" />Settings & Profile</DropdownMenuItem>\n          <DropdownMenuItem onClick={() => handleTenantNavigate(tenantRoutes.notificationsPath)}><Bell className=\"mr-2 h-4 w-4\" />Notification settings</DropdownMenuItem>\n          {isOwnerLike ? <DropdownMenuItem onClick={() => handleTenantNavigate(tenantRoutes.connectionsPath)}><PlugZap className=\"mr-2 h-4 w-4\" />Connections</DropdownMenuItem> : null}\n          <DropdownMenuItem disabled={isSigningOut} onClick={() => void handleSignOut()} className=\"text-destructive focus:text-destructive\"><LogOut className=\"mr-2 h-4 w-4\" />{isSigningOut ? 'Signing out…' : 'Sign out'}</DropdownMenuItem>\n        </DropdownMenuContent>\n      </DropdownMenu>\n    </div>\n  );\n}\n\nexport function TenantMobileAccountSlot({ className, triggerClassName, label = 'Account' }: { className?: string; triggerClassName?: string; label?: string }) {\n  return (\n    <MiscAwareAccountMenu\n      placement=\"inline\"\n      className={className}\n      avatarMode=\"tenant\"\n      tenantShellOwner\n      trigger={\n        <button\n          type=\"button\"\n          data-tenant-mobile-account-slot=\"true\"\n          aria-label=\"Open tenant account menu\"\n          className={cn('flex min-h-[44px] w-full flex-col items-center justify-center gap-1 rounded-xl px-1 text-[10px] font-medium text-muted-foreground transition-colors hover:bg-accent hover:text-accent-foreground', triggerClassName)}\n        >\n          <span className=\"flex h-6 w-6 items-center justify-center overflow-hidden rounded-full border border-current/20 bg-background/70\">\n            <TenantLogo size={24} rounded=\"full\" fallbackVariant=\"initial\" className=\"border-0 bg-transparent\" />\n          </span>\n          <span className=\"max-w-full truncate\">{label}</span>\n        </button>\n      }\n    />\n  );\n}\n"},{"path":"src/__tests__/contracts/mobile-tenant-avatar-navigation.contract.test.ts","content":"import { readFileSync } from 'node:fs';\nimport { resolve } from 'node:path';\nimport { describe, expect, it } from 'vitest';\n\nconst read = (path: string) => readFileSync(resolve(process.cwd(), path), 'utf8');\n\ndescribe('mobile tenant avatar navigation contract', () => {\n  it('gives generic CRMShell workspaces a canonical mobile nav and removes the duplicate mobile header avatar', () => {\n    const shell = read('src/components/crm/CRMShell.tsx');\n    expect(shell).toContain(\"<CRMMobileNavigation/>\");\n    expect(shell).toContain(\"{!isMobile?<MiscAwareAccountMenu\");\n    expect(shell).toContain('data-pcg-mobile-navigation=\"true\"');\n    expect(shell).toContain('<TenantMobileAccountSlot');\n  });\n\n  it('builds generic mobile navigation from canonical mobile placement metadata and keeps account last', () => {\n    const mobile = read('src/components/crm/CRMMobileNavigation.tsx');\n    expect(mobile).toContain(\"navigationItemHasPlacement(item, 'mobile-more')\");\n    expect(mobile).toContain('resolveAdaptiveBlueprintRoutePath');\n    expect(mobile).toContain('data-generic-crm-mobile-navigation=\"true\"');\n    expect(mobile.lastIndexOf('<TenantMobileAccountSlot')).toBeGreaterThan(mobile.lastIndexOf('</DropdownMenu>'));\n  });\n\n  it('keeps specialized mobile navigation destinations and places the tenant account slot last', () => {\n    const sce = read('src/components/sce/SCENavigation.tsx');\n    const barbershop = read('src/components/barbershop/BarbershopNavigation.tsx');\n    expect(sce).toContain('const overflowItems=[...primaryItems.slice(4)');\n    expect(sce.lastIndexOf('<TenantMobileAccountSlot')).toBeGreaterThan(sce.lastIndexOf('</DropdownMenu>'));\n    expect(barbershop).toContain('grid-cols-6');\n    expect(barbershop.lastIndexOf('<TenantMobileAccountSlot')).toBeGreaterThan(barbershop.lastIndexOf('>More</button>'));\n    const bigPapis = read('src/pages/mobile-vendor/BigPapisOwnerShell.tsx');\n    expect(bigPapis).toContain('grid-cols-5');\n    expect(bigPapis).toContain('data-big-papis-mobile-nav-contract=\"crown-centered-v3\"');\n    expect(bigPapis).toContain('mobileShortcutItems.slice(2, 3)');\n    expect(bigPapis).toContain('data-big-papis-crown-slot=\"true\"');\n    expect(bigPapis).toContain('...modeNavigationItems.map((item) => ({ ...item, accent: modeAccent }))');\n    expect(bigPapis).not.toContain(\"label: activeMode === 'office' ? 'Back Office' : activeModeConfig.label\");\n    expect(bigPapis.lastIndexOf('data-big-papis-mobile-account-menu=\"true\"')).toBeGreaterThan(bigPapis.lastIndexOf('data-big-papis-crown-slot=\"true\"'));\n  });\n\n  it('declares one canonical mobile shell contract at the shared private tenant workspace root', () => {\n    const privateShell = read('src/PrivateAppShell.tsx');\n    expect(privateShell).toContain('data-tenant-mobile-shell-contract=\"canonical-v2\"');\n    expect(privateShell).toContain(\"const forcePcgApplicationAvatar=tenantSlug==='pcg'&&applicationRoute?.mode==='tenant-integrated'\");\n    expect(privateShell).toContain(\"(isSelfContainedPcgWorkspace&&!tenantIntegratedApp)\");\n    expect(privateShell).toContain('[data-big-papis-mobile-nav=\"true\"]');\n    expect(privateShell).toContain('<TenantLayoutPreferenceBridge/>');\n    expect(privateShell).toContain('min-w-0 w-full max-w-full');\n    expect(privateShell).toContain(\"--kl-platform-mobile-nav-h\");\n    expect(privateShell).toContain(\"const canonicalTenantNavs=selectors.map((selector)=>document.querySelector<HTMLElement>(selector))\");\n    expect(privateShell).toContain(\"const ordered=[primary,...Array.from(new Set(canonicalTenantNavs.filter((candidate)=>candidate!==primary)))]\");\n    expect(privateShell).not.toContain(\"document.body.querySelectorAll<HTMLElement>('*')).filter((candidate)=>\");\n    expect(privateShell).toContain(\"footer.style.setProperty('bottom','0px','important')\");\n    const appCss = read('src/App.css');\n    expect(appCss).toContain('bottom: calc(var(--kl-platform-mobile-nav-h, 0px) + env(safe-area-inset-bottom)) !important;');\n    expect(appCss).toContain('.kl-responsive-tenant-runtime[data-route-scroll-owner=\"tenant\"]');\n    expect(appCss).toContain('bottom: var(--kl-shell-bottom-inset) !important;');\n    expect(appCss).toContain('.kl-responsive-tenant-runtime[data-route-scroll-owner=\"document\"]');\n    expect(appCss).toContain('scroll-padding-bottom: var(--kl-shell-bottom-inset);');\n    expect(appCss).toContain('body.kl-big-papis-app-family .kl-responsive-tenant-runtime');\n  });\n\n  it('keeps private lawn-care workspaces on the canonical tenant viewport owner', () => {\n    const app = read('src/App.tsx');\n    expect(app).toContain('const documentOwnsLawnCareViewport = isLawnCareRoute && (isPublicRoute || isSelfContainedBookingRoute);');\n    expect(app).toContain('classList.toggle(\"kl-lawn-care-mobile-route\", documentOwnsLawnCareViewport)');\n  });\n\n  it('uses the tenant-aware account menu and TenantLogo for the mobile account slot', () => {\n    const menu = read('src/components/MiscAwareAccountMenu.tsx');\n    expect(menu).toContain('trigger?: ReactElement');\n    expect(menu).toContain('data-tenant-mobile-account-slot=\"true\"');\n    expect(menu).toContain('<TenantLogo size={24}');\n    expect(menu).toContain('avatarMode=\"tenant\"');\n  });\n});\n"},{"path":"src/__tests__/contracts/pcg-canonical-workspace-activation.contract.test.ts","content":"import {readFileSync} from 'node:fs';\nimport {resolve} from 'node:path';\nimport {describe,expect,it} from 'vitest';\nimport {\n  shouldHoldPcgWorkspaceLoading,\n  shouldSwitchPcgWorkspaceTenant,\n} from '@/pages/card-grading/pcgCanonicalWorkspaceState';\n\nconst mailWorkspace=readFileSync(resolve(process.cwd(),'src/components/communications/email/MailWorkspace.tsx'),'utf8');\nconst drivePanel=readFileSync(resolve(process.cwd(),'src/components/documents/DriveInboxPanel.tsx'),'utf8');\nconst driveImport=readFileSync(resolve(process.cwd(),'supabase/functions/drive-import/index.ts'),'utf8');\nconst pcgModes=readFileSync(resolve(process.cwd(),'src/pages/card-grading/PCGModesWorkspace.tsx'),'utf8');\nconst accountMenu=readFileSync(resolve(process.cwd(),'src/components/MiscAwareAccountMenu.tsx'),'utf8');\n\ndescribe('PCG canonical workspace activation contract',()=>{\n  it('switches to an exact PCG membership even while broader hydration is still in flight',()=>{\n    expect(shouldSwitchPcgWorkspaceTenant(false,true)).toBe(true);\n    expect(shouldHoldPcgWorkspaceLoading(true,false,true)).toBe(true);\n  });\n\n  it('does not switch once PCG is already active',()=>{\n    expect(shouldSwitchPcgWorkspaceTenant(true,true)).toBe(false);\n    expect(shouldHoldPcgWorkspaceLoading(true,true,true)).toBe(false);\n  });\n\n  it('uses the existing Mail and Documents applications for PCG Google Workspace',()=>{\n    expect(mailWorkspace).toContain(\"supabase.functions.invoke('send-email'\");\n    expect(mailWorkspace).toContain(\"data-google-workspace-send-only\");\n    expect(mailWorkspace).toContain(\"provider?.outboundOnly || !mailboxId\");\n    expect(mailWorkspace).toContain(\"!provider?.outboundOnly && mailboxId && !folders.length\");\n    expect(mailWorkspace).toContain(\"mailLoadError && !provider.outboundOnly\");\n    expect(mailWorkspace).toContain(\"data-google-workspace-least-privilege\");\n    expect(mailWorkspace).toContain(\"Inbox actions are intentionally unavailable.\");\n    expect(mailWorkspace).toContain(\"tenant-provider-connections\");\n    expect(drivePanel).toContain(\"Upload to Drive\");\n    expect(drivePanel).toContain(\"action: 'upload_file'\");\n    expect(driveImport).toContain(\"https://www.googleapis.com/auth/drive.file\");\n    expect(driveImport).toContain(\"https://www.googleapis.com/upload/drive/v3/files\");\n    expect(driveImport).toContain(\"knocklaunch_tenant_id\");\n  });\n\n  it('links Calendar, Mail, and Drive from the PCG workspace and avatar menu',()=>{\n    expect(pcgModes).toContain('data-pcg-google-app-links=\"true\"');\n    expect(pcgModes).toContain(\"path:'calendar'\");\n    expect(pcgModes).toContain(\"path:'mail'\");\n    expect(pcgModes).toContain(\"path:'documents'\");\n    expect(accountMenu).toContain(\"{ label: 'Calendar', path: tenantRoutes.path('calendar')\");\n    expect(accountMenu).toContain(\"{ label: 'Mail', path: tenantRoutes.path('mail')\");\n    expect(accountMenu).toContain(\"{ label: 'Drive & Documents', path: tenantRoutes.path('documents')\");\n  });\n\n  it('does not invent PCG access when no PCG membership exists',()=>{\n    expect(shouldSwitchPcgWorkspaceTenant(false,false)).toBe(false);\n    expect(shouldHoldPcgWorkspaceLoading(false,false,false)).toBe(false);\n  });\n});\n"}],"branch":"ai/objective-first-repair-993cc60565af","writes":[],"patches":[],"version":1,"approved":true,"missionId":"993cc605-65af-4af5-9855-198568558d11","objective":"Fix the PCG application shell navigation now. Keep the existing Calendar, Mail, and Documents apps. Make the tenant avatar/account menu visible on PCG tenant-integrated application routes. Add first-class Calendar, Mail, and Drive & Documents links to the PCG main workspace and the PCG avatar menu. Preserve the existing PCG branding and routes. Do not run Visual Witness after release; owner will manually confirm from live links.","repository":"noel/KnockLaunchOS","ownerApproved":true,"releaseIntent":null,"sourceTargets":["src/PrivateAppShell.tsx","src/pages/card-grading/PCGModesWorkspace.tsx","src/components/MiscAwareAccountMenu.tsx","src/__tests__/contracts/mobile-tenant-avatar-navigation.contract.test.ts","src/__tests__/contracts/pcg-canonical-workspace-activation.contract.test.ts"],"implementation":{"files":[],"writes":[]},"requestContract":null,"repairGeneration":null,"executionEnvelope":{"ship":true,"version":1,"approved":true,"missionId":null,"ownerApproved":true,"releaseIntent":null,"sourceTargets":["src/PrivateAppShell.tsx","src/pages/card-grading/PCGModesWorkspace.tsx","src/components/MiscAwareAccountMenu.tsx","src/__tests__/contracts/mobile-tenant-avatar-navigation.contract.test.ts","src/__tests__/contracts/pcg-canonical-workspace-activation.contract.test.ts"],"requestContract":null,"repairGeneration":null,"proofRequirements":null,"controlPlaneUnfreeze":false,"controlPlaneMaintenance":false,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":null},"proofRequirements":null,"controlPlaneUnfreeze":false,"durableMutationResume":true,"controlPlaneMaintenance":false,"controlPlaneMaintenancePaths":[],"controlPlaneMaintenanceReason":null},"recovery":false,"fingerprint":"cd68a36055700aa38100ce93fe2a5003c39085eea238ec8841d26675a38b4021","replayCount":0,"serializedBytes":129351},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-30T21:14:27.155504+00:00","proof_gate":"repository_mutation_intent_persisted","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent","idempotency_key":"mission:993cc605-65af-4af5-9855-198568558d11:repository-mutation-intent:cd68a36055700aa38100ce93fe2a5003c39085eea238ec8841d26675a38b4021:0","mission_step_id":"b9b2a925-e05d-4081-82ff-bd1daf1534eb","command_center_event_id":"993cc605-65af-4af5-9855-198568558d11"},{"id":"4e74f5fc-2cf4-4ee1-ba22-37054c59e9f6","source":"cc-execution","status":"blocked","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-410295fc29e6","reason":"control_plane_maintenance_authorization_required","status":"blocked","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.212-parallel-patch-planning","prNumber":null,"terminal":false,"missionId":"410295fc-29e6-4ed8-bc0f-0dd5d98431ab","operation":"execute_mission","proofGate":"repair_mission_execution_blocked","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":0,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":0,"missionSetupMs":353,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":270,"ledgerReconcileMs":0,"lineageReconcileMs":83,"resolvePreflightMs":353,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":270,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"410295fc-29e6-4ed8-bc0f-0dd5d98431ab"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1496,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-22T11:15:28.555303+00:00","proof_gate":"repair_mission_execution_blocked","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:410295fc-29e6-4ed8-bc0f-0dd5d98431ab:execute_mission:repair_mission_execution_blocked:current-generation","mission_step_id":"ef3f5ce6-d6ca-4967-9cf7-8952f5ba41ad","command_center_event_id":"410295fc-29e6-4ed8-bc0f-0dd5d98431ab"},{"id":"4e7648fc-c4d6-4fc5-befc-fa65e2b460cf","source":"cc-execution","status":"recorded","payload":{"requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"rawUtterance":"Unfreeze the control plane for corrective generation 1 on this same mission after the workflow-only PR merged. Preserve runtime proof semantics: runtime must still require at least one affected runtime target. Add a distinct request-contract proof kind `release` meaning the canonical exact-source release conductor reached verified terminal state and is contract-bound, regardless of whether affected release targets are zero or nonzero. Accept `release` as a valid production-grounding proof kind and include it in default proof-link binding; do not make runtime true for no-op releases. In mission-ledger request-contract evaluation, `release` is satisfied by releaseBound and reports release state plus activeReleaseTargets. Add regression coverage proving release kind validates/auto-binds and evaluator source retains `runtime = releaseBound && activeReleaseTargets.length > 0` while `release = releaseBound`. Bump cc-execution to 1.58.37-release-proof-noop-refreeze. This corrective generation legitimately releases cc-execution once; after live proof, future no-op orchestration contracts can terminate using release proof without fake runtime deployment. Refreeze.","wordingChanged":false,"canonicalIntent":"Unfreeze the control plane for corrective generation 1 on this same mission after the workflow-only PR merged. Preserve runtime proof semantics: runtime must still require at least one affected runtime target. Add a distinct request-contract proof kind `release` meaning the canonical exact-source release conductor reached verified terminal state and is contract-bound, regardless of whether affected release targets are zero or nonzero. Accept `release` as a valid production-grounding proof kind and include it in default proof-link binding; do not make runtime true for no-op releases. In mission-ledger request-contract evaluation, `release` is satisfied by releaseBound and reports release state plus activeReleaseTargets. Add regression coverage proving release kind validates/auto-binds and evaluator source retains `runtime = releaseBound && activeReleaseTargets.length > 0` while `release = releaseBound`. Bump cc-execution to 1.58.37-release-proof-noop-refreeze. This corrective generation legitimately releases cc-execution once; after live proof, future no-op orchestration contracts can terminate using release proof without fake runtime deployment. Refreeze.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"release-proof-kind","statement":"Canonical release completion can be proven independently of runtime deployment count via a distinct release proof kind.","proofConditionIds":["repo","runtime"]},{"id":"runtime-safety","statement":"Runtime proof continues to require at least one active affected runtime target and cannot be satisfied by a no-op release.","proofConditionIds":["repo","runtime"]},{"id":"refreeze","statement":"Updated cc-execution runtime is live and control plane is refrozen.","proofConditionIds":["runtime","refrozen"]}],"objective":"Unfreeze the control plane for corrective generation 1 on this same mission after the workflow-only PR merged. Preserve runtime proof semantics: runtime must still require at least one affected runtime target. Add a distinct request-contract proof kind `release` meaning the canonical exact-source release conductor reached verified terminal state and is contract-bound, regardless of whether affected release targets are zero or nonzero. Accept `release` as a valid production-grounding proof kind and include it in default proof-link binding; do not make runtime true for no-op releases. In mission-ledger request-contract evaluation, `release` is satisfied by releaseBound and reports release state plus activeReleaseTargets. Add regression coverage proving release kind validates/auto-binds and evaluator source retains `runtime = releaseBound && activeReleaseTargets.length > 0` while `release = releaseBound`. Bump cc-execution to 1.58.37-release-proof-noop-refreeze. This corrective generation legitimately releases cc-execution once; after live proof, future no-op orchestration contracts can terminate using release proof without fake runtime deployment. Refreeze.","constraints":[{"id":"safety","statement":"Preserve release/source/request-contract binding, affected-target ownership, duplicate-release prevention, canonical Gate/squash merge/release ownership, and all hard safety invariants.","proofConditionIds":["repo","runtime"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"repo","kind":"repository","claim":"Regression coverage proves distinct release versus runtime request-contract proof semantics.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]},{"id":"runtime","kind":"runtime","claim":"cc-execution 1.58.37-release-proof-noop-refreeze is live on the exact merged corrective source.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]},{"id":"refrozen","kind":"runtime","claim":"Control-plane maintenance is refrozen after terminal proof.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]}],"validationErrors":[]},"requestContractHash":"066445e5c6c0354ce7130623a25457ae666072d77e87ff33a10decd504bd68fe","requestContractRevision":4,"previousRequestContractHash":"8cc70b9084cd17bedc2a018cf32ffebd79736e6bba1317ab0d47915f01b9a733"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-04T12:00:57.218782+00:00","proof_gate":"request_contract_revision_recorded","source_sha":null,"external_id":null,"receipt_type":"request_contract_revision","idempotency_key":"mission:9f00e4d0-a77f-4e5f-8dae-e3a3527ef4d0:request-contract:066445e5c6c0354ce7130623a25457ae666072d77e87ff33a10decd504bd68fe","mission_step_id":"b73cfbe5-beaa-412a-82d4-13bd54bd29b9","command_center_event_id":"9f00e4d0-a77f-4e5f-8dae-e3a3527ef4d0"},{"id":"4e772a9c-228f-4aee-b8e6-2de5af324c86","source":"forgejo-runtime","status":"verified","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"success","cc-execution/runtime-proof":"success"},"mainSha":"a8c09e9ffdd550ea1b63d5668005ee5376c6ea8f","missing":[],"pending":[],"required":["forgejo-main/source","forgejo-release/workflow","cc-execution/runtime-proof"],"sourceSha":"a8c09e9ffdd550ea1b63d5668005ee5376c6ea8f","releaseState":"verified","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":false,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"ccExecution":"success"},"requestContractHash":"106acc032fa445e708928195301c8cf0af10bb9cc623677e764ace05bb9722eb","forgejoWorkflowProof":{"runId":14117,"source":"signed_push_receipt","status":"success","results":{},"conclusion":"success","targetStates":{"ccExecution":"success"},"targetJobCount":7,"observedTargetStates":{"ccExecution":"success"}},"releaseSourceVerified":true,"ccExecutionRuntimeProof":{"liveSha":"a8c09e9ffdd550ea1b63d5668005ee5376c6ea8f","proofGate":"cc_execution_target_aware_runtime_identity_verified","deploymentId":"forgejo-main-a8c09e9ffdd550ea1b63d5668005ee5376c6ea8f","compareStatus":"target_job_success_runtime_verified","workflowRunId":14117,"identitySource":"canonical_release_target_job","runtimeVersion":"1.64.40-powershell-source-resolution","workflowFailed":false,"containsSourceSha":true},"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-02T00:13:38.945564+00:00","proof_gate":"canonical_release_terminal_verified","source_sha":"a8c09e9ffdd550ea1b63d5668005ee5376c6ea8f","external_id":"forgejo-main-a8c09e9ffdd5","receipt_type":"canonical_release_status","idempotency_key":"mission:60c75259-d7d0-44cd-b467-155c8773cf01:forgejo-release-status:a8c09e9ffdd550ea1b63d5668005ee5376c6ea8f:verified:forgejo-main/source=success|forgejo-release/workflow=success|cc-execution/runtime-proof=success","mission_step_id":"b90e5fcb-aa32-43c5-a9f3-e7f8b3a6d625","command_center_event_id":"60c75259-d7d0-44cd-b467-155c8773cf01"},{"id":"4e77a396-6ae5-4b34-9aaa-ca5da673da36","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"pending","render-onrunner/runtime-proof":"pending"},"mainSha":"7a2f968c628ed6d26ebbcf4950c29c0309e7ad23","missing":[],"pending":["forgejo-release/workflow","render-onrunner/runtime-proof"],"required":["forgejo-main/source","forgejo-release/workflow","render-onrunner/runtime-proof"],"sourceSha":"7a2f968c628ed6d26ebbcf4950c29c0309e7ad23","releaseState":"pending","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":false,"onrunner":true,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"onrunner":"pending"},"requestContractHash":"007f065f65903c35be7bfc0f0a2e05e297b616236f52d0b713e1e80f323b0ded","forgejoWorkflowProof":{"runId":11184,"source":"signed_push_receipt","status":"running","results":{},"conclusion":"running","targetStates":{"onrunner":"pending"},"targetJobCount":7,"observedTargetStates":{"onrunner":"pending"}},"onrunnerRuntimeProof":{"reason":"render_onrunner_source_mismatch","hostedUrl":"https://knocklaunchcrm.onrender.com","brokerReady":true,"exactSource":false,"healthStatus":200,"runtimeReady":true,"liveSourceSha":"408a8cb75e551aba18ad4a867c877197ca7fbc2b","runnerVersion":"onrunner-408a8cb75e55","expectedSourceSha":"7a2f968c628ed6d26ebbcf4950c29c0309e7ad23"},"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-23T11:32:47.395126+00:00","proof_gate":"canonical_release_pending","source_sha":"7a2f968c628ed6d26ebbcf4950c29c0309e7ad23","external_id":"forgejo-main-7a2f968c628e","receipt_type":"canonical_release_status","idempotency_key":"mission:3f4cf290-152f-4dbd-8426-fc823416106b:forgejo-release-status:7a2f968c628ed6d26ebbcf4950c29c0309e7ad23:pending:forgejo-main/source=success|forgejo-release/workflow=pending|render-onrunner/runtime-proof=pending","mission_step_id":"838af846-dea2-458e-a6f3-171486137a2e","command_center_event_id":"3f4cf290-152f-4dbd-8426-fc823416106b"},{"id":"4e7975ac-15d6-445d-94bc-e272a8a8daba","source":"cc-execution","status":"waiting","payload":{"sourceTargets":["src/pages/card-grading/PCGWorkspace.tsx"],"continuationObjective":"Prepare a focused PCG Card Vault floating-controls repair against current protected main. Use only src/pages/card-grading/PCGWorkspace.tsx. Do not mutate until exact payload is supplied."},"tenant_id":"9602e177-0cbb-496c-bdf5-2fbc93f1b859","created_at":"2026-10-04T15:01:34.888658+00:00","proof_gate":"mission_continuation_scope_persisted","source_sha":null,"external_id":null,"receipt_type":"mission_continuation_scope_updated","idempotency_key":"mission:a07acc57-aa68-4cfe-b54b-f09382fcf50b:mission_continuation_scope_updated:mission_continuation_scope_persisted:waiting","mission_step_id":"3f07b728-b175-4591-a061-0b75c87aee90","command_center_event_id":"a07acc57-aa68-4cfe-b54b-f09382fcf50b"},{"id":"4e7ae28d-656d-4b5b-b427-9ac3321c7e81","source":"forgejo-exact-source","status":"verified","payload":{"sourceSha":"e270d9fa65210cd30a1b228099732fc01fba88b8","repository":"noel/KnockLaunchOS","repositoryProofs":[{"id":"repository-proof","path":null,"proof":"forgejo_merged_pr_exact_head_gate","headSha":"2d559a73c29c28938a91620f626886031bce91a0","prNumber":2952,"gateRunId":8972,"gateContext":"KnockLaunch Gate / KnockLaunch Gate (pull_request)","expectedText":null,"gateTargetUrl":"/noel/KnockLaunchOS/actions/runs/8972/jobs/1","mergeCommitSha":"e270d9fa65210cd30a1b228099732fc01fba88b8"}],"requestContractHash":"83fe78df0cef52bb72a7b70119f89762cff04531f21046a92f2cfc4f26dc532e","namedGateEvidenceReceiptVersion":null},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-16T21:34:10.867559+00:00","proof_gate":"request_contract_repository_verified","source_sha":"e270d9fa65210cd30a1b228099732fc01fba88b8","external_id":null,"receipt_type":"request_contract_repository_status","idempotency_key":"mission:a790862f-7b32-4d51-90b1-4f9ecc811243:request-contract-repository:83fe78df0cef52bb72a7b70119f89762cff04531f21046a92f2cfc4f26dc532e:e270d9fa65210cd30a1b228099732fc01fba88b8","mission_step_id":"94b600bc-a33a-4d55-aa7f-33c88e991642","command_center_event_id":"a790862f-7b32-4d51-90b1-4f9ecc811243"},{"id":"4e7cedac-82b2-45e2-becc-5f76afc0067d","source":"cc-execution","status":"blocked","payload":{"ok":false,"jobId":null,"phase":"implementation","branch":"ai/objective-first-repair-d42a3eb0b039","reason":"control_plane_maintenance_authorization_required","status":"blocked","metrics":{"receiptBytes":16382,"releaseCount":0,"toolCallCount":7,"repeatedCallCount":4,"executorlessWaitMs":1014956,"firstUsefulResultAt":"2026-10-02T01:03:12.672Z","recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.64.46-connection-research-human-readable-unknowns","prNumber":null,"terminal":false,"missionId":"d42a3eb0-b039-47f0-ac6b-d0fa0fd7604a","operation":"execute_mission","proofGate":"repair_mission_execution_blocked","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":0,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":0,"missionSetupMs":276,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":276,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":276,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":276,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"d42a3eb0-b039-47f0-ac6b-d0fa0fd7604a"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1562,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-02T01:20:08.58722+00:00","proof_gate":"repair_mission_execution_blocked","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:d42a3eb0-b039-47f0-ac6b-d0fa0fd7604a:execute_mission:repair_mission_execution_blocked:current-generation","mission_step_id":"1300ee83-3227-46d7-b39b-87d3539bc4f2","command_center_event_id":"d42a3eb0-b039-47f0-ac6b-d0fa0fd7604a"},{"id":"4e7db395-de2e-4994-a588-2ab76bf334d1","source":"cc-execution","status":"recorded","payload":{"requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"rawUtterance":"Continue the already-authorized Quick Tour UX repair mission after the exact-head gate passed. Reconcile PR #1436, squash merge through Forgejo, release frontend only, and complete the required live Redfish proof. Do not make any new source changes unless strictly required by a newly observed blocker; do not touch Jimmy's invitation.","wordingChanged":false,"canonicalIntent":"Continue the already-authorized Quick Tour UX repair mission after the exact-head gate passed. Reconcile PR #1436, squash merge through Forgejo, release frontend only, and complete the required live Redfish proof. Do not make any new source changes unless strictly required by a newly observed blocker; do not touch Jimmy's invitation.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"outcome-1","statement":"Redfish Connections contains no Quick Tour UI.","proofConditionIds":["proof-source"]},{"id":"outcome-2","statement":"Redfish Settings/company tools exposes Quick tour and invoking it opens a roofing-specific walkthrough.","proofConditionIds":["proof-live"]},{"id":"outcome-3","statement":"Replay does not write or consume first-login completion state.","proofConditionIds":["proof-source"]}],"objective":"Continue the already-authorized Quick Tour UX repair mission after the exact-head gate passed. Reconcile PR #1436, squash merge through Forgejo, release frontend only, and complete the required live Redfish proof. Do not make any new source changes unless strictly required by a newly observed blocker; do not touch Jimmy's invitation.","constraints":[{"id":"constraint-1","statement":"Continue existing PR #1436 and existing branch only.","proofConditionIds":["proof-source"]},{"id":"constraint-2","statement":"Frontend-only.","proofConditionIds":["proof-source"]},{"id":"constraint-3","statement":"No database/auth/control-plane/invitation changes.","proofConditionIds":["proof-source"]},{"id":"constraint-4","statement":"No public-adjusting activity or claim-negotiation language.","proofConditionIds":["proof-source"]},{"id":"constraint-5","statement":"Maximum five tour steps.","proofConditionIds":["proof-source"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"proof-source","kind":"repository","claim":"Exact merged source and diff contain only the authorized frontend Quick Tour repair, on PR #1436, with no forbidden changes and at most five steps.","route":"/redfish-roofing/today","roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]},{"id":"proof-live","kind":"runtime","claim":"On /redfish-roofing/today, Quick tour is available in the Redfish settings/company-tools area and opens the roofing-specific tour.","route":"/redfish-roofing/today","roleRef":null,"userRef":null,"required":true,"expectedText":"Quick tour","targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]}],"validationErrors":[]},"requestContractHash":"48f077075762cede046cd6494215f696b754af5885e955ca77507d3d533f71bf","requestContractRevision":2,"previousRequestContractHash":"62d4ee70b953d47c387b136837219656add0857483ff491c6be79c24cee50bf3"},"tenant_id":"de8369b6-a78f-40bb-ae1f-28ffca62bc7e","created_at":"2026-09-02T16:17:57.552088+00:00","proof_gate":"request_contract_revision_recorded","source_sha":null,"external_id":null,"receipt_type":"request_contract_revision","idempotency_key":"mission:93ef9710-4f6e-4f93-a3c2-62291941689b:request-contract-revision:2:48f077075762cede046cd6494215f696b754af5885e955ca77507d3d533f71bf","mission_step_id":"4ae2863d-f169-4ba3-85ad-5d95e9114436","command_center_event_id":"93ef9710-4f6e-4f93-a3c2-62291941689b"},{"id":"4e7dcee9-0579-42d2-8a3f-c870027cfc9b","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"pending","cc-execution/runtime-proof":"success","supabase-edge-production/live":"pending"},"mainSha":"aacaae2f9509ed2dc16724e59dcaa49cd1b3415b","missing":[],"pending":["forgejo-release/workflow","supabase-edge-production/live"],"required":["forgejo-main/source","forgejo-release/workflow","cc-execution/runtime-proof","supabase-edge-production/live"],"sourceSha":"aacaae2f9509ed2dc16724e59dcaa49cd1b3415b","releaseState":"pending","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":false,"migrations":false,"ccExecution":true,"supabaseEdge":true,"edgeFunctionSlugs":["operator-respond"]},"releaseTargetStates":{"ccExecution":"success","supabaseEdge":"pending"},"requestContractHash":"53a8f6df8a8401c6529648b175a8669c2ab4cffa43471d00ba6b8b2026e5cac4","forgejoWorkflowProof":{"runId":13114,"source":"signed_push_receipt","status":"running","results":{},"conclusion":"running","targetStates":{"ccExecution":"success","supabaseEdge":"pending"},"targetJobCount":6,"observedTargetStates":{"ccExecution":"success","supabaseEdge":"pending"}},"releaseSourceVerified":true,"ccExecutionRuntimeProof":{"liveSha":"aacaae2f9509ed2dc16724e59dcaa49cd1b3415b","proofGate":"cc_execution_target_aware_runtime_identity_verified","deploymentId":"forgejo-main-aacaae2f9509ed2dc16724e59dcaa49cd1b3415b","compareStatus":"target_job_success_runtime_verified","workflowRunId":13114,"identitySource":"canonical_release_target_job","runtimeVersion":"1.64.5-paul-efficient-reasoning","workflowFailed":false,"containsSourceSha":true},"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-29T17:07:22.773289+00:00","proof_gate":"canonical_release_pending","source_sha":"aacaae2f9509ed2dc16724e59dcaa49cd1b3415b","external_id":"forgejo-main-aacaae2f9509","receipt_type":"canonical_release_status","idempotency_key":"mission:fc69b3fa-ff32-4713-932d-9c1b78d4533f:forgejo-release-status:aacaae2f9509ed2dc16724e59dcaa49cd1b3415b:pending:forgejo-main/source=success|forgejo-release/workflow=pending|cc-execution/runtime-proof=success|supabase-edge-production/live=pending","mission_step_id":"a7e263b1-6772-4d04-8d8e-3fc2cc7af3d9","command_center_event_id":"fc69b3fa-ff32-4713-932d-9c1b78d4533f"},{"id":"4e7f82c2-9156-4ecd-83d8-fea8b5281346","source":"cc-execution","status":"pending","payload":{"ok":true,"jobId":"18b027ae-8de6-46f4-867b-fa23ce20a9da","phase":"universal_visual_witness_supervised","branch":"ai/objective-first-repair-4af9ebb3208c","reason":null,"status":"pending","metrics":{"receiptBytes":44773,"releaseCount":0,"toolCallCount":23,"repeatedCallCount":14,"executorlessWaitMs":617218,"firstUsefulResultAt":"2026-10-01T03:15:03.051Z","recoveryAttemptCount":15,"ownerInterruptionCount":0},"version":null,"prNumber":4315,"terminal":false,"missionId":"4af9ebb3-208c-4b0b-beda-3d081f7c5ed7","operation":"visual_proof_started","proofGate":"universal_visual_witness_pending","sourceSha":"84d222d7709cf1906f2b8df1f8e92717c20ec71c","timingsMs":{"queue":402,"total":400,"execution":null},"nextAction":"Execution is pending; poll inspect_route_status only when fresh progress is expected, or cancel with inspect_route_cancel.","receiptRef":{"mode":"full","missionId":"4af9ebb3-208c-4b0b-beda-3d081f7c5ed7"},"performance":null,"deploymentId":"forgejo-main-84d222d7709c","releaseState":"verified","visualWitness":{"role":"GodMode","jobId":"18b027ae-8de6-46f4-867b-fa23ce20a9da","tenant":"766cfaa7-ac42-46c8-bbef-69d13268a29d","runnerUrl":"https://paul-witness.knocklaunch.app","runnerLane":"paul","attemptsUsed":0,"supervisorId":"18b027ae-8de6-46f4-867b-fa23ce20a9da","failureReason":null,"observedRoute":null,"runnerVersion":null,"attemptLineage":[],"missionOutcome":null,"requestedRoute":"/big-papis/owner/dashboard","runnerSourceSha":null,"selectedViewports":["desktop","mobile"],"checkpointAccounting":null,"correctiveGeneration":0,"restartReplayHistory":[]},"workflowRunId":13616,"releaseTargets":{"frontend":true,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1807,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"766cfaa7-ac42-46c8-bbef-69d13268a29d","created_at":"2026-10-01T03:25:30.189773+00:00","proof_gate":"post_release_visual_proof_started","source_sha":"84d222d7709cf1906f2b8df1f8e92717c20ec71c","external_id":"18b027ae-8de6-46f4-867b-fa23ce20a9da","receipt_type":"visual_proof_started","idempotency_key":"mission:4af9ebb3-208c-4b0b-beda-3d081f7c5ed7:visual-start:18b027ae-8de6-46f4-867b-fa23ce20a9da","mission_step_id":"2ede7525-9d4f-4062-a093-f2dca3d0a925","command_center_event_id":"4af9ebb3-208c-4b0b-beda-3d081f7c5ed7"},{"id":"4e8235a9-7dc1-4abc-99c0-35b9010739a6","source":"cc-execution","status":"waiting","payload":{"body":{"ship":true,"files":[],"branch":"ai/objective-first-repair-84bf8262ebb8","writes":[],"patches":[],"version":1,"approved":true,"missionId":"84bf8262-ebb8-453f-b522-0cf48fe6a261","objective":"Continue the approved Cursor read-only MCP bootstrap repair. Allow initialize, notifications/initialized, and tools/list through the existing cursor_readonly credential path; keep only health and capabilities as callable tools; deny execute and all other methods; preserve OAuth/internal auth.","repository":"noel/KnockLaunchOS","ownerApproved":true,"releaseIntent":null,"sourceTargets":[],"anchored_edits":[{"new":"const CURSOR_READONLY_TOOLS = new Set([\\n  \\\"command_center_health\\\",\\n  \\\"command_center_capabilities\\\",\\n]);\\n\\nconst CURSOR_READONLY_PROTOCOL_METHODS = new Set([\\n  \\\"initialize\\\",\\n  \\\"notifications/initialized\\\",\\n  \\\"tools/list\\\",\\n]);","old":"const CURSOR_READONLY_TOOLS = new Set([\\n  \\\"command_center_health\\\",\\n  \\\"command_center_capabilities\\\",\\n]);","path":"workers/cc-execution/src/entrypoint-mcp-oauth.js"},{"new":"1.58.286-cursor-readonly-mcp-bootstrap","old":"1.58.285-cursor-readonly-mcp-auth","path":"workers/cc-execution/src/version.js"}],"implementation":{"files":[],"writes":[]},"requestContract":null,"repairGeneration":null,"executionEnvelope":{"ship":true,"version":1,"approved":true,"missionId":"84bf8262-ebb8-453f-b522-0cf48fe6a261","ownerApproved":true,"releaseIntent":null,"sourceTargets":[],"requestContract":null,"repairGeneration":null,"proofRequirements":null,"controlPlaneUnfreeze":true,"controlPlaneMaintenance":true,"controlPlaneMaintenancePaths":["workers/cc-execution/src/entrypoint-mcp-oauth.js","workers/cc-execution/src/version.js"],"controlPlaneMaintenanceReason":"Owner-approved Cursor Prime read-only MCP bootstrap repair."},"proofRequirements":null,"controlPlaneUnfreeze":true,"durableMutationResume":true,"controlPlaneMaintenance":true,"controlPlaneMaintenancePaths":["workers/cc-execution/src/entrypoint-mcp-oauth.js","workers/cc-execution/src/version.js"],"controlPlaneMaintenanceReason":"Owner-approved Cursor Prime read-only MCP bootstrap repair."},"recovery":false,"fingerprint":"6a0153de6761ee33c084c952ec56bc99b5ff7761c26d761da801e83d5216e1de","replayCount":0,"serializedBytes":2144},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-26T10:39:03.033662+00:00","proof_gate":"repository_mutation_intent_persisted","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent","idempotency_key":"mission:84bf8262-ebb8-453f-b522-0cf48fe6a261:repository-mutation-intent:6a0153de6761ee33c084c952ec56bc99b5ff7761c26d761da801e83d5216e1de:0","mission_step_id":"21797a43-88a7-4f06-9260-a7e484d9d590","command_center_event_id":"84bf8262-ebb8-453f-b522-0cf48fe6a261"},{"id":"4e846516-6b44-48e2-a48b-3cb70825837a","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in implementation.","nextAction":{"lane":"cc-execution","action":"continue_implementation","reason":"durable_state:implementation","automationAllowed":false,"ownerActionRequired":false},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"implementation\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"execute_mission\",\"status\":\"synthesis_required\",\"proofGate\":\"repair_mission_synthesis_ready\"},\"activeStep\":{\"key\":\"implementation\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"pull_request\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextSafeAction\":{\"action\":\"continue_implementation\",\"lane\":\"cc-execution\",\"reason\":\"durable_state:implementation\",\"automationAllowed\":false,\"ownerActionRequired\":false},\"acceptance\":{\"total\":3,\"verified\":0,\"pending\":3,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[\"source-regression\",\"popup-runtime\",\"dashboard-runtime\"]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":\"pull_request\",\"deadlineAt\":\"2026-09-23T17:13:27.779913+00:00\",\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":\"ai/objective-first-repair-08dbdd5b4b1e\",\"prNumber\":null,\"sourceSha\":null,\"deploymentId\":null}"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-23T14:46:32.376602+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:08dbdd5b-4b1e-497a-8c5a-7698151b5958:owner-progress-heartbeat:119344986","mission_step_id":"fb833975-d72b-4753-94df-c5bdfac48ea1","command_center_event_id":"08dbdd5b-4b1e-497a-8c5a-7698151b5958"},{"id":"4e84fce8-0099-4fe7-ac83-52b7a4f84202","source":"cc-execution","status":"blocked","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/generation-proof-isolation","reason":"control_plane_frozen_explicit_unfreeze_required","status":"blocked","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.184-owner-outcome-proof-ledger","prNumber":3263,"terminal":false,"missionId":"15cf6542-7456-4c36-8950-748ec91a29a7","operation":"execute_mission","proofGate":"repair_mission_execution_blocked","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":0,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":0,"missionSetupMs":463,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":321,"ledgerReconcileMs":0,"lineageReconcileMs":142,"resolvePreflightMs":463,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":321,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"15cf6542-7456-4c36-8950-748ec91a29a7"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["repository","runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1475,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-20T04:10:29.263496+00:00","proof_gate":"repair_mission_execution_blocked","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:15cf6542-7456-4c36-8950-748ec91a29a7:execute_mission:repair_mission_execution_blocked:current-generation","mission_step_id":"c1960e41-4879-4946-97ac-70df2e768c2b","command_center_event_id":"15cf6542-7456-4c36-8950-748ec91a29a7"},{"id":"4e85a37a-4db2-49ad-a7fa-23abf1e7aa26","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"implementation","branch":"ai/big-papis-phone-number-upsell","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":1818,"releaseCount":0,"toolCallCount":1,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.46.8-intent-aware-objectives","prNumber":null,"terminal":false,"missionId":"9b18f842-bc5b-46d2-8c9e-b75acfcc48b1","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":null,"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /repair/continue-mission automatically with this missionId without another owner prompt.","receiptRef":{"mode":"full","missionId":"9b18f842-bc5b-46d2-8c9e-b75acfcc48b1"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":8151,"likelyAffectedFiles":["src/components/TenantRouter.tsx","src/components/WorkflowRouter.tsx","src/components/NewLeadIntakeForm.tsx",".forgejo/workflows/knocklaunch.yml","src/__tests__/contracts/platform-experience-inventory.contract.test.ts","src/components/admin/TenantUserCommandCenters.tsx","src/components/ContactsRouter.tsx","src/components/LeadsRouter.tsx","src/components/RebuttalsRouter.tsx","src/__tests__/contracts/visual-witness-autonomous-mission.contract.test.ts","src/__tests__/contracts/platform-profile-convergence.contract.test.ts","src/components/admin/AdminFileUploadsPanel.tsx"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"766cfaa7-ac42-46c8-bbef-69d13268a29d","created_at":"2026-08-16T03:00:55.98989+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:9b18f842-bc5b-46d2-8c9e-b75acfcc48b1:execute_mission:repair_mission_synthesis_ready","mission_step_id":"631a1560-df14-4ba8-b403-89f3cef0154d","command_center_event_id":"9b18f842-bc5b-46d2-8c9e-b75acfcc48b1"},{"id":"4e8685fe-551b-4c7c-ad85-1875a912c9f5","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-0d8a5e39469a","reason":"retryable_provider_transport:forgejo_provider_read_timeout","status":"retryable","metrics":{"receiptBytes":38552,"releaseCount":0,"toolCallCount":18,"repeatedCallCount":11,"executorlessWaitMs":212451,"firstUsefulResultAt":"2026-10-06T18:14:54.135Z","recoveryAttemptCount":13,"ownerInterruptionCount":0},"version":null,"prNumber":5223,"terminal":false,"missionId":"0d8a5e39-469a-4222-b923-4f4ddf41657f","operation":"automatic_mission_resume","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"prReadinessMs":2271,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"0d8a5e39-469a-4222-b923-4f4ddf41657f"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":819,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T18:17:59.879253+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"5223","receipt_type":"automatic_mission_resume","idempotency_key":"mission:0d8a5e39-469a-4222-b923-4f4ddf41657f:automatic-mission-resume:5223:repair_mission_pr_ready_retryable","mission_step_id":"9c5a33b3-c5ec-4649-93ba-573976a6e71f","command_center_event_id":"0d8a5e39-469a-4222-b923-4f4ddf41657f"},{"id":"4e87c889-bd4e-4b45-92c0-2d7ca1a17e99","source":"cc-execution","status":"recorded","payload":{"requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"rawUtterance":"Continue the same universal Settings + Profile mission using these exact authoritative source targets. Implement a shared settings/profile primitive and no per-tenant copies. Canonical tenant Profile is settings/profile. Preserve existing Settings cards and add Profile as a first-class card. Keep legacy profile entry points as redirects to the canonical tenant settings/profile destination. Make tenantAvatarMenuContract produce settings/profile for every tenant type automatically. Add regression coverage using a synthetic future business type to prove no allowlist is required.","wordingChanged":false,"canonicalIntent":"Continue the same universal Settings + Profile mission using these exact authoritative source targets. Implement a shared settings/profile primitive and no per-tenant copies. Canonical tenant Profile is settings/profile. Preserve existing Settings cards and add Profile as a first-class card. Keep legacy profile entry points as redirects to the canonical tenant settings/profile destination. Make tenantAvatarMenuContract produce settings/profile for every tenant type automatically. Add regression coverage using a synthetic future business type to prove no allowlist is required.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"universal-settings","statement":"Every existing tenant/business type opens the same shared tenant-aware Settings hub, preserving the current card-based Settings architecture.","proofConditionIds":["repo-universal","live-settings"]},{"id":"profile-card","statement":"Profile is a first-class card in the Settings hub and opens the shared tenant-aware profile experience without escaping or changing the active tenant.","proofConditionIds":["repo-universal","live-settings-profile"]},{"id":"shared-navigation","statement":"Shared shell/header/avatar Profile and Settings links resolve to the canonical shared implementation, and legacy divergent entry points are normalized without breaking working deep links.","proofConditionIds":["repo-navigation","live-settings-profile"]},{"id":"future-inheritance","statement":"Future tenants inherit Settings and Profile automatically from shared routing/default registry behavior with no tenant-specific code, configuration, or business-type allowlist.","proofConditionIds":["repo-future-regression"]},{"id":"release-live","statement":"The exact change passes the canonical gate, squash-merges, releases only the affected frontend target, and is proven in production.","proofConditionIds":["gate-merge-release","live-settings","live-settings-profile"]}],"objective":"Continue the same universal Settings + Profile mission using these exact authoritative source targets. Implement a shared settings/profile primitive and no per-tenant copies. Canonical tenant Profile is settings/profile. Preserve existing Settings cards and add Profile as a first-class card. Keep legacy profile entry points as redirects to the canonical tenant settings/profile destination. Make tenantAvatarMenuContract produce settings/profile for every tenant type automatically. Add regression coverage using a synthetic future business type to prove no allowlist is required.","constraints":[{"id":"no-per-tenant","statement":"Do not create tenant-specific Settings/Profile implementations when they can resolve through the shared primitive.","proofConditionIds":["repo-universal","repo-future-regression"]},{"id":"no-allowlist","statement":"Do not use a business-type or tenant allowlist to provide Settings/Profile.","proofConditionIds":["repo-future-regression"]},{"id":"preserve-settings-ui","statement":"Preserve the newly standardized card-based Settings implementation and existing working settings cards.","proofConditionIds":["repo-universal","live-settings"]},{"id":"tenant-isolation","statement":"Settings/Profile navigation must preserve active tenant context and tenant isolation.","proofConditionIds":["repo-navigation","live-settings-profile"]},{"id":"minimal-scope","statement":"Prefer shared frontend routing/default-registry primitives; do not add backend, schema, auth, or data changes unless current source proves they are required.","proofConditionIds":["repo-universal"]},{"id":"canonical-release","statement":"Use Forgejo only: one fresh ai/* branch, one PR, KnockLaunch Gate, squash merge, deploy only affected production targets, no GitHub.","proofConditionIds":["gate-merge-release"]},{"id":"capability-completeness","statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","proofConditionIds":["repo-universal","repo-navigation","repo-future-regression","gate-merge-release","live-settings"]},{"id":"atomic-capability-lifecycle","statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","proofConditionIds":["repo-universal","repo-navigation","repo-future-regression","gate-merge-release","live-settings"]}],"terminalPolicy":"Terminal only after all required repository, gate/merge/release, and live Settings-to-Profile proof conditions are satisfied for the exact released source.","proofConditions":[{"id":"repo-universal","kind":"repository","claim":"Current Forgejo source contains one shared tenant-aware Settings/Profile implementation rather than tenant-specific copies.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false},{"id":"repo-navigation","kind":"repository","claim":"Current Forgejo source wires shared shell/header/avatar Profile and Settings entries to canonical settings/profile and safely normalizes legacy profile entry points.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false},{"id":"repo-future-regression","kind":"repository","claim":"Current Forgejo source/regression coverage proves Settings/Profile are inherited by default for a synthetic future tenant/business type with no allowlist.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false},{"id":"gate-merge-release","kind":"release","claim":"Exact changed source passed KnockLaunch Gate, squash-merged to protected main, and the affected frontend production target released.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false},{"id":"live-settings","kind":"runtime","claim":"On production, a representative tenant user can open Settings and see the existing Settings card hub with a visible Profile card.","route":"/settings","roleRef":null,"userRef":null,"required":true,"expectedText":"Profile","targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false},{"id":"live-settings-profile","kind":"interaction","claim":"On production, opening Profile from Settings renders the shared profile experience and preserves the active tenant context.","route":"/settings","roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[{"action":"click","targetText":"Profile"}],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false}],"validationErrors":[],"capabilityManifest":{"id":"Continue-the-same-universal-Settings-Profile-mission-using-these-exact-authoritative-source-targets.","driftPolicy":"exact_manifest_source_release_dependency_or_runtime_identity_mismatch_is_nonterminal","proofLedger":"command_center_mission_ledger_request_contract_hash_bound","schemaVersion":1,"releaseTargets":[],"lifecycleStates":["prepare","deploy","verify","activate"],"activationPolicy":"dependencies_and_claim_matched_live_proof_before_exposure","dependencyDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_required_not_runtime_failures","compatibilityWindow":["N","N-1"],"failureIsolationPolicy":"quarantine_or_rollback_affected_capability_only_preserve_unrelated_working_capabilities","canaryProofConditionIds":["repo-universal","repo-navigation","repo-future-regression","gate-merge-release","live-settings"]},"capabilityCompleteness":{"domains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"required":true,"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_states_not_runtime_failures"}},"requestContractHash":"9f076b9e0a81a7cf92d262e997211435404ef4418ccbac547d7b39d85e15491e","requestContractRevision":2,"previousRequestContractHash":"91c85c7a9cbe4644fa7203c8310b67a6da7dc55defbcd0f54d53502fbed9ea1a"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-15T16:45:58.105112+00:00","proof_gate":"request_contract_revision_recorded","source_sha":null,"external_id":null,"receipt_type":"request_contract_revision","idempotency_key":"mission:f672ddee-76c6-42ec-8f55-cbdc0c4ba367:request-contract:9f076b9e0a81a7cf92d262e997211435404ef4418ccbac547d7b39d85e15491e","mission_step_id":"65c64fa4-31f2-418e-8029-92cafa7b70f6","command_center_event_id":"f672ddee-76c6-42ec-8f55-cbdc0c4ba367"},{"id":"4e881d5a-1ead-4acc-bd35-5e008be1a3c2","source":"cc-execution","status":"blocked","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-mthfq4d4","reason":"anchored_edit_invalid","status":"blocked","metrics":{"receiptBytes":9197,"releaseCount":0,"toolCallCount":5,"repeatedCallCount":1,"ownerInterruptionCount":0},"version":"1.56.5-premium-motion-source-targets","prNumber":1199,"terminal":false,"missionId":"c9cccd2c-d333-4fe8-bc0d-89a248388bb3","operation":"execute_mission","proofGate":"repair_mission_execution_blocked","sourceSha":null,"timingsMs":{"handlerMs":849,"prReadinessMs":0,"approvedPlanMs":849,"missionSetupMs":623,"shipAndProveMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"c9cccd2c-d333-4fe8-bc0d-89a248388bb3"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":954,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"385f3582-1b06-5a13-85b5-ad36fa03b397","created_at":"2026-08-31T16:15:44.529411+00:00","proof_gate":"repair_mission_execution_blocked","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:c9cccd2c-d333-4fe8-bc0d-89a248388bb3:execute_mission:repair_mission_execution_blocked:current-generation","mission_step_id":"2909bac9-9ed3-4bab-9903-5a22a0e7cbc7","command_center_event_id":"c9cccd2c-d333-4fe8-bc0d-89a248388bb3"},{"id":"4e8848aa-e36d-4d23-a351-0b4efa9ef1c4","source":"cc-execution","status":"in_progress","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-mtkmro11","reason":null,"status":"in_progress","metrics":{"receiptBytes":8348,"releaseCount":0,"toolCallCount":4,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.4-refresh-fastpath","prNumber":1486,"terminal":false,"missionId":"efd1e53b-1370-4771-8873-afbd0fd2d34a","operation":"execute_mission","proofGate":"canonical_release_reconciliation_pending","sourceSha":null,"timingsMs":{"handlerMs":10766,"prReadinessMs":2296,"approvedPlanMs":0,"missionSetupMs":1999,"shipAndProveMs":7770},"nextAction":"Reconcile this same mission and pull request automatically; do not create replacement work.","receiptRef":{"mode":"full","missionId":"efd1e53b-1370-4771-8873-afbd0fd2d34a"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1013,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"b565f644-6d3c-4b61-97d6-f91a06dae0ec","created_at":"2026-09-02T22:05:45.57694+00:00","proof_gate":"canonical_release_reconciliation_pending","source_sha":null,"external_id":"1486","receipt_type":"execute_mission","idempotency_key":"mission:efd1e53b-1370-4771-8873-afbd0fd2d34a:execute_mission:canonical_release_reconciliation_pending:current-generation","mission_step_id":"f7d69fa5-1132-455a-825b-2387d1424010","command_center_event_id":"efd1e53b-1370-4771-8873-afbd0fd2d34a"},{"id":"4e8de65e-3525-4d87-9fa5-67d77ee708ff","source":"cc-execution","status":"blocked","payload":{"ok":false,"jobId":null,"phase":"objective_received","branch":"ai/security-role-scope-invariant-20260903","reason":"orphaned_branch_recovery_requires_exact_applied_state:ai/security-role-scope-invariant-20260903","status":"blocked","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.5-merge-queue-operators","prNumber":null,"terminal":false,"missionId":"51932315-c6c6-40c7-9532-47f01107e2a3","operation":"execute_mission","proofGate":"repair_mission_execution_blocked","sourceSha":null,"timingsMs":{"handlerMs":719,"prReadinessMs":0,"approvedPlanMs":719,"missionSetupMs":2648,"shipAndProveMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"51932315-c6c6-40c7-9532-47f01107e2a3"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1105,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-03T03:47:55.084302+00:00","proof_gate":"repair_mission_execution_blocked","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:51932315-c6c6-40c7-9532-47f01107e2a3:execute_mission:repair_mission_execution_blocked:current-generation","mission_step_id":"032ca757-376e-4b1b-afc5-85b1651bd8e9","command_center_event_id":"51932315-c6c6-40c7-9532-47f01107e2a3"},{"id":"4e915fe0-b392-48d5-8e81-4fca3e546ed3","source":"durable-mission-ledger","status":"verified","payload":{"sourceSha":"1858461dafcaf38f423760610af29c5d2138f39c","requestContractProof":{"legacy":false,"present":true,"outcomes":[{"id":"outcome-control-plane-hot-path","satisfied":true,"statement":"The control plane must require an artifact-producing canonical Gate for qualifying routine frontend work so the expensive frontend build occurs before protected-main merge.","proofConditionIds":["proof-repository","proof-runtime"]}],"satisfied":true,"constraints":[{"id":"constraint-control-plane-release-safety","satisfied":true,"statement":"The control plane must preserve non-cancellable in-flight production release leases, exact-source verification, startup proof, zero-traffic candidate proof, rollback protection, and cold-build fallback.","proofConditionIds":["proof-repository","proof-runtime"]},{"id":"capability-completeness","satisfied":true,"statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","proofConditionIds":["proof-repository","proof-runtime"]},{"id":"atomic-capability-lifecycle","satisfied":true,"statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","proofConditionIds":["proof-repository","proof-runtime"]}],"contractHash":"38856a2250c764d0ebd8a385b31ca5a7077b6b4e095cef743ab01c206257dbe2","releaseBound":true,"witnessBound":false,"visualRequested":false,"visualSatisfied":true,"conditionResults":[{"id":"proof-repository","kind":"repository","evidence":{"reason":null,"gateRunId":16011,"satisfied":true,"gateTestProof":null,"gateTestPassed":false,"missingTargets":[],"gateTestExecuted":false,"disallowedTargets":[],"migrationRequired":false,"namedGateTestPath":null,"releaseTargetStates":{"ccExecution":"success"},"repositoryProofGate":"request_contract_repository_verified","repositoryProofPath":null,"requestContractHash":"38856a2250c764d0ebd8a385b31ca5a7077b6b4e095cef743ab01c206257dbe2","unsuccessfulTargets":[],"activeReleaseTargets":["ccExecution"],"allowedReleaseTargets":[],"repositoryProofStatus":"verified","expectedRepositoryPath":null,"namedGateTestSatisfied":true,"requiredReleaseTargets":[],"migrationReleaseVerified":null,"repositoryConditionBound":true,"repositoryProofSourceSha":"1858461dafcaf38f423760610af29c5d2138f39c"},"required":true,"satisfied":true},{"id":"proof-runtime","kind":"runtime","evidence":{"reason":null,"satisfied":true,"releaseState":"verified","missingTargets":[],"disallowedTargets":[],"migrationRequired":false,"releaseTargetStates":{"ccExecution":"success"},"unsuccessfulTargets":[],"activeReleaseTargets":["ccExecution"],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"migrationReleaseVerified":null,"releaseRequestContractHash":"38856a2250c764d0ebd8a385b31ca5a7077b6b4e095cef743ab01c206257dbe2"},"required":true,"satisfied":true}],"validationErrors":[],"pendingProofKinds":[],"activeReleaseTargets":["ccExecution"]},"authoritativeMissionRefresh":true,"evaluatedRequestContractRevision":1},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-05T20:39:17.789292+00:00","proof_gate":"request_contract_terminal_verified","source_sha":"1858461dafcaf38f423760610af29c5d2138f39c","external_id":null,"receipt_type":"request_contract_reconciliation","idempotency_key":"mission:ea221b87-387a-4865-a296-3dac874796f7:request-contract:38856a2250c764d0ebd8a385b31ca5a7077b6b4e095cef743ab01c206257dbe2:1858461dafcaf38f423760610af29c5d2138f39c:verified:","mission_step_id":"9f11c4fe-4bbf-4f0b-a246-61d1e079efb4","command_center_event_id":"ea221b87-387a-4865-a296-3dac874796f7"},{"id":"4e9220da-c8d7-4da4-817c-a3f7c8fc2353","source":"cc-execution","status":"recorded","payload":{"objective":"From current Forgejo main, simplify only the Roof Help Finder root `/` landing page in src/pages/RoofHelpLandingPage.tsx. Keep the current forest/mint/off-white colors, exact R2 logo, exact ElevenLabs MP4, existing request form behavior, referral attribution, IP capture, SEO city/service routes, and backend unchanged. Root should be extremely simple: logo, prominent video, headline 'Need help with your roof?', one short sentence telling the homeowner to submit their information and that an appropriate licensed roofer can contact them, one GET ROOF HELP button, then the short intake form. Remove root-only trust cards, multi-step explainer, long coordination copy, and unnecessary sections. Preserve /palm-bay and every city/service route exactly as they are. Ship frontend-only through one PR, gate, squash merge, Cloudflare release, and verify root desktop/mobile.","tenantRef":"c3f09b56-5ff5-4521-8a0a-39cbeb4b5275","receivedAt":"2026-08-28T14:34:43.155Z","fingerprint":"1973817cf61b9f117c274f2b128765817de2956994379a0daad58cf4806c87d1","workstreamRef":"c3f09b565ff545218a0a39cbeb4b5275","conversationId":null,"canonicalBranch":"ai/roofhelpfinder-root-video-home-20260828","requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"rawUtterance":"From current Forgejo main, simplify only the Roof Help Finder root `/` landing page in src/pages/RoofHelpLandingPage.tsx. Keep the current forest/mint/off-white colors, exact R2 logo, exact ElevenLabs MP4, existing request form behavior, referral attribution, IP capture, SEO city/service routes, and backend unchanged. Root should be extremely simple: logo, prominent video, headline 'Need help with your roof?', one short sentence telling the homeowner to submit their information and that an appropriate licensed roofer can contact them, one GET ROOF HELP button, then the short intake form. Remove root-only trust cards, multi-step explainer, long coordination copy, and unnecessary sections. Preserve /palm-bay and every city/service route exactly as they are. Ship frontend-only through one PR, gate, squash merge, Cloudflare release, and verify root desktop/mobile.","wordingChanged":false,"canonicalIntent":"From current Forgejo main, simplify only the Roof Help Finder root `/` landing page in src/pages/RoofHelpLandingPage.tsx. Keep the current forest/mint/off-white colors, exact R2 logo, exact ElevenLabs MP4, existing request form behavior, referral attribution, IP capture, SEO city/service routes, and backend unchanged. Root should be extremely simple: logo, prominent video, headline 'Need help with your roof?', one short sentence telling the homeowner to submit their information and that an appropriate licensed roofer can contact them, one GET ROOF HELP button, then the short intake form. Remove root-only trust cards, multi-step explainer, long coordination copy, and unnecessary sections. Preserve /palm-bay and every city/service route exactly as they are. Ship frontend-only through one PR, gate, squash merge, Cloudflare release, and verify root desktop/mobile.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"simple-root","statement":"Root renders only the essential homeowner flow: logo, prominent video, headline, one CTA, and short intake form.","proofConditionIds":["source","live"]},{"id":"licensed-roofer-copy","statement":"Root plainly says an appropriate licensed roofer can contact the homeowner after submission, without sales language.","proofConditionIds":["source","live"]},{"id":"child-routes-preserved","statement":"Palm Bay and other city/service routes remain unchanged.","proofConditionIds":["source"]}],"objective":"From current Forgejo main, simplify only the Roof Help Finder root `/` landing page in src/pages/RoofHelpLandingPage.tsx. Keep the current forest/mint/off-white colors, exact R2 logo, exact ElevenLabs MP4, existing request form behavior, referral attribution, IP capture, SEO city/service routes, and backend unchanged. Root should be extremely simple: logo, prominent video, headline 'Need help with your roof?', one short sentence telling the homeowner to submit their information and that an appropriate licensed roofer can contact them, one GET ROOF HELP button, then the short intake form. Remove root-only trust cards, multi-step explainer, long coordination copy, and unnecessary sections. Preserve /palm-bay and every city/service route exactly as they are. Ship frontend-only through one PR, gate, squash merge, Cloudflare release, and verify root desktop/mobile.","constraints":[{"id":"frontend-only","statement":"Only src/pages/RoofHelpLandingPage.tsx changes.","proofConditionIds":["source"]},{"id":"brand-preserved","statement":"Current forest/mint/off-white palette, exact R2 logo, and exact ElevenLabs MP4 remain unchanged.","proofConditionIds":["source","live"]},{"id":"backend-preserved","statement":"No backend, intake endpoint, referral attribution, IP capture, or SEO route generation changes.","proofConditionIds":["source"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"source","kind":"repository","claim":"Diff is limited to src/pages/RoofHelpLandingPage.tsx and implements a root-only simplified layout while preserving non-root layout and submission logic.","route":"/","required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]},{"id":"live","kind":"runtime","claim":"Production root `/` renders 'Need help with your roof?', the video, one GET ROOF HELP CTA, and the intake form.","route":"/","required":true,"expectedText":"Need help with your roof?","targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[]}],"validationErrors":[]},"requestedBranch":"ai/roofhelpfinder-simple-root-20260828","conversationContext":null,"requestContractHash":"4ede421f111516791d56297f7620e48148fdd3fef35d817381a60fa8377149b5","requestContractRevision":1},"tenant_id":"c3f09b56-5ff5-4521-8a0a-39cbeb4b5275","created_at":"2026-08-28T14:34:43.645791+00:00","proof_gate":"tenant_workstream_contribution_recorded","source_sha":null,"external_id":null,"receipt_type":"tenant_workstream_contribution","idempotency_key":"mission:a2aeeb9e-e949-45a9-b69b-09755df6516b:tenant-workstream-contribution:1973817cf61b9f117c274f2b128765817de2956994379a0daad58cf4806c87d1","mission_step_id":"ba989b08-0b45-4ce1-9770-8f25347e5a38","command_center_event_id":"a2aeeb9e-e949-45a9-b69b-09755df6516b"},{"id":"4e96ad80-2d97-46f8-b6c8-8a8d1f8c7d1c","source":"cc-execution","status":"recorded","payload":{"requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"rawUtterance":"Unfreeze control plane only as needed to complete already-green PR #1736 at exact head 31879f355ee6577713bfb2bdd2c98b68a5e5968e. Squash merge it, release cc-execution only, verify live runtime version 1.58.59-mcp-queue-reconcile-registration at the merged protected-main SHA, then refreeze the control plane. Do not modify source further.","wordingChanged":false,"canonicalIntent":"Unfreeze control plane only as needed to complete already-green PR #1736 at exact head 31879f355ee6577713bfb2bdd2c98b68a5e5968e. Squash merge it, release cc-execution only, verify live runtime version 1.58.59-mcp-queue-reconcile-registration at the merged protected-main SHA, then refreeze the control plane. Do not modify source further.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"tool-registered","statement":"forgejo_queue_reconcile is registered in the live MCP catalog.","proofConditionIds":["runtime"]}],"objective":"Unfreeze control plane only as needed to complete already-green PR #1736 at exact head 31879f355ee6577713bfb2bdd2c98b68a5e5968e. Squash merge it, release cc-execution only, verify live runtime version 1.58.59-mcp-queue-reconcile-registration at the merged protected-main SHA, then refreeze the control plane. Do not modify source further.","constraints":[{"id":"scope","statement":"No source changes beyond already-green PR #1736; only ccExecution releases and the control plane is refrozen.","proofConditionIds":["runtime"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"runtime","kind":"runtime","claim":"Live cc-execution reports 1.58.59-mcp-queue-reconcile-registration at the merged main SHA after refreeze.","route":null,"roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":["ccExecution"]}],"validationErrors":[]},"requestContractHash":"5a98d53d45cfed7356e9aa79fe621ffac2204c44b489a71d204cfd69c74f1622","requestContractRevision":5,"previousRequestContractHash":"0342286d26db1b54d391e023fac882ce533f4898e49f3715f81fccfdcb45d1ec"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-04T18:29:26.148938+00:00","proof_gate":"request_contract_revision_recorded","source_sha":null,"external_id":null,"receipt_type":"request_contract_revision","idempotency_key":"mission:bcd9c982-fae5-4a33-acf1-32b699213213:request-contract:5a98d53d45cfed7356e9aa79fe621ffac2204c44b489a71d204cfd69c74f1622","mission_step_id":"297c0415-364a-4442-8bf8-38a8005dfdfe","command_center_event_id":"bcd9c982-fae5-4a33-acf1-32b699213213"},{"id":"4e96f068-3103-437b-9c96-df15c86050d5","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"pending","cc-execution/runtime-proof":"pending"},"mainSha":"a1c9a5e5cd4e0f8091ea47cbb4b42f67e9619762","missing":[],"pending":["forgejo-release/workflow","cc-execution/runtime-proof"],"required":["forgejo-main/source","forgejo-release/workflow","cc-execution/runtime-proof"],"sourceSha":"a1c9a5e5cd4e0f8091ea47cbb4b42f67e9619762","releaseState":"pending","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":false,"onrunner":false,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"ccExecution":"pending"},"requestContractHash":"6ea556df49ed75ea57acc014096def2a83ee4f9daf892a09c93eb4a3b64e2c7b","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/11970","runId":11970,"status":"running","sourceSha":"a1c9a5e5cd4e0f8091ea47cbb4b42f67e9619762","conclusion":null,"failedJobs":[],"diagnostics":null,"exactSource":true,"targetStates":{"ccExecution":"pending"},"targetJobCount":7,"observedTargetStates":{"ccExecution":"pending"}},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":{"liveSha":"ad9babec98b74c3eacc9945578a6b025f525eb37","deploymentId":"forgejo-main-ad9babec98b74c3eacc9945578a6b025f525eb37","compareStatus":null,"identitySource":"local_build_metadata","runtimeVersion":"1.58.285-cursor-readonly-mcp-auth","containsSourceSha":false},"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-26T10:45:17.336926+00:00","proof_gate":"canonical_release_pending","source_sha":"a1c9a5e5cd4e0f8091ea47cbb4b42f67e9619762","external_id":"forgejo-main-a1c9a5e5cd4e","receipt_type":"canonical_release_status","idempotency_key":"mission:bb4d374d-728a-4fe3-9d4d-91250d3a2a9e:forgejo-release-status:a1c9a5e5cd4e0f8091ea47cbb4b42f67e9619762:pending:forgejo-main/source=success|forgejo-release/workflow=pending|cc-execution/runtime-proof=pending","mission_step_id":"85f292ee-4a68-4d7a-97b0-b843df017eab","command_center_event_id":"bb4d374d-728a-4fe3-9d4d-91250d3a2a9e"},{"id":"4e9701cb-b0f3-4fc0-adc6-ea4c57ee9719","source":"cc-execution","status":"waiting","payload":{"body":{"ship":true,"files":[],"branch":"ai/objective-first-repair-10086c0fdc37","writes":[],"patches":[],"version":1,"approved":true,"missionId":"10086c0f-dc37-47cd-9d69-6bfc4878489a","repository":"noel/KnockLaunchOS","ownerApproved":true,"releaseIntent":null,"sourceTargets":[],"anchored_edits":[{"path":"workers/cc-execution/src/objective-intent.js","edits":[{"new_content":"export function classifyVisualWorkIntent(body = {}) {\n  const objective = String(body.objective || body.issue || body.body || body.title || \"\").trim().toLowerCase();\n  const positiveObjective = objective\n    .replace(/\\x60[^\\x60]*\\x60|\"[^\"]*\"/g, \" \")\n    .replace(/\\b(?:do not|don't|dont|never|without|exclude|excluding|avoid|not)\\b[\\s\\S]*?(?=\\b(?:but|instead|then)\\b|[.;\\n]|$)/g, \" \")\n    .replace(/\\s+/g, \" \")\n    .trim();\n  const referenceVisualPresent = body.referenceVisual === true\n    || body.reference_visual === true\n    || body.referenceImage === true\n    || body.reference_image === true\n    || body.approvedMockup === true\n    || body.approved_mockup === true\n    || /\\b(?:this|the|approved|attached|reference)\\s+(?:mockup|mock-up|design|screenshot|image|graphic|visual)\\b/.test(positiveObjective);\n  const implementationVerb = /\\b(?:apply|implement|build|match|recreate|translate|port|integrate|install|use)\\b/.test(positiveObjective)\n    || /\\bmake\\b[^.;\\n]{0,80}\\b(?:tenant|app|application|page|screen|workspace|route|site|website)\\b[^.;\\n]{0,80}\\bmatch\\b/.test(positiveObjective);\n  const implementationTarget = /\\b(?:tenant|app|application|page|screen|workspace|route|site|website|frontend|ui)\\b/.test(positiveObjective);\n  const creationVerb = /\\b(?:create|design|draw|generate|mock\\s*up|mockup|show|make)\\b/.test(positiveObjective);\n  const artifactNoun = /\\b(?:mockup|mock-up|graphic|flyer|poster|logo|image|visual|design|concept|concept art)\\b/.test(positiveObjective);\n  const implementation = implementationVerb && (referenceVisualPresent || implementationTarget);\n  const creation = !implementation && creationVerb && artifactNoun;\n  return {\n    kind: implementation ? \"reference_implementation\" : creation ? \"visual_artifact_generation\" : \"not_visual_work\",\n    referenceVisualPresent,\n    implementation,\n    creation,\n  };\n}","old_content":"export function classifyVisualWorkIntent(body = {}) {\n  const objective = String(body.objective || body.issue || body.body || body.title || \"\").trim().toLowerCase();\n  const referenceVisualPresent = body.referenceVisual === true\n    || body.reference_visual === true\n    || body.referenceImage === true\n    || body.reference_image === true\n    || body.approvedMockup === true\n    || body.approved_mockup === true\n    || /\\b(?:this|the|approved|attached|reference)\\s+(?:mockup|mock-up|design|screenshot|image|graphic|visual)\\b/.test(objective);\n  const implementationVerb = /\\b(?:apply|implement|build|match|recreate|translate|port|integrate|install|use)\\b/.test(objective)\n    || /\\bmake\\b[^.;\\n]{0,80}\\b(?:tenant|app|application|page|screen|workspace|route|site|website)\\b[^.;\\n]{0,80}\\bmatch\\b/.test(objective);\n  const implementationTarget = /\\b(?:tenant|app|application|page|screen|workspace|route|site|website|frontend|ui)\\b/.test(objective);\n  const creationVerb = /\\b(?:create|design|draw|generate|mock\\s*up|mockup|show|make)\\b/.test(objective);\n  const artifactNoun = /\\b(?:mockup|mock-up|graphic|flyer|poster|logo|image|visual|design|concept|concept art)\\b/.test(objective);\n  const implementation = implementationVerb && (referenceVisualPresent || implementationTarget);\n  const creation = !implementation && creationVerb && artifactNoun;\n  return {\n    kind: implementation ? \"reference_implementation\" : creation ? \"visual_artifact_generation\" : \"not_visual_work\",\n    referenceVisualPresent,\n    implementation,\n    creation,\n  };\n}"}]},{"path":"workers/cc-execution/src/version.js","edits":[{"new_content":"export const CC_EXECUTION_VERSION = \"1.58.262-negated-visual-intent-guard\";","old_content":"export const CC_EXECUTION_VERSION = \"1.58.261-nonvisual-proof-precedence\";"}]}],"implementation":{"files":[],"writes":[]},"requestContract":null,"repairGeneration":null,"executionEnvelope":{"ship":true,"version":1,"approved":true,"missionId":"10086c0f-dc37-47cd-9d69-6bfc4878489a","ownerApproved":true,"releaseIntent":null,"sourceTargets":[],"requestContract":null,"repairGeneration":null,"proofRequirements":null,"controlPlaneUnfreeze":true,"controlPlaneMaintenance":true,"controlPlaneMaintenancePaths":["workers/cc-execution/src/objective-intent.js","workers/cc-execution/src/version.js"],"controlPlaneMaintenanceReason":"Repair request-contract intent classification so negated frontend/reference language cannot contaminate non-frontend infrastructure missions."},"proofRequirements":null,"controlPlaneUnfreeze":true,"durableMutationResume":true,"controlPlaneMaintenance":true,"controlPlaneMaintenancePaths":["workers/cc-execution/src/objective-intent.js","workers/cc-execution/src/version.js"],"controlPlaneMaintenanceReason":"Repair request-contract intent classification so negated frontend/reference language cannot contaminate non-frontend infrastructure missions."},"recovery":false,"fingerprint":"eba4dcf36d950979d289cc53b6c83f4ec00f16580038aba27012804cc2861fed","replayCount":0,"serializedBytes":5257},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-24T20:45:56.464531+00:00","proof_gate":"repository_mutation_intent_persisted","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent","idempotency_key":"mission:10086c0f-dc37-47cd-9d69-6bfc4878489a:repository-mutation-intent:eba4dcf36d950979d289cc53b6c83f4ec00f16580038aba27012804cc2861fed:0","mission_step_id":"a661a61b-03a7-4973-a7c7-e26fb9bbd751","command_center_event_id":"10086c0f-dc37-47cd-9d69-6bfc4878489a"},{"id":"4e98c2f6-b00e-48ba-99d0-924c99a63f2e","source":"forgejo-runtime","status":"pending","payload":{"mainSha":"24feb1e64c50421e23f45750580066bfb1abac83","sourceSha":"ddf9714987cabd9dccb38dcac71c5d8239a7001a","sourceInMain":false,"compareStatus":"main_history_page_inconclusive","ancestryProofResolved":false},"tenant_id":"a2929648-19db-46c8-9e93-07378ed1aa5f","created_at":"2026-10-04T20:29:03.848608+00:00","proof_gate":"canonical_release_ancestry_pending","source_sha":"ddf9714987cabd9dccb38dcac71c5d8239a7001a","external_id":"canonical-release-ddf9714987ca","receipt_type":"canonical_release_status","idempotency_key":"mission:b2a67a71-d9f8-4bfd-ad85-0fbb5efd150b:forgejo-release-ancestry:ddf9714987cabd9dccb38dcac71c5d8239a7001a:24feb1e64c50421e23f45750580066bfb1abac83:main_history_page_inconclusive","mission_step_id":"eb4f45e4-3587-4440-98e0-865450ecae5b","command_center_event_id":"b2a67a71-d9f8-4bfd-ad85-0fbb5efd150b"},{"id":"4e9b9971-779d-4796-962a-e4bd9558468f","source":"cc-execution","status":"waiting_for_gate","payload":{"ok":true,"jobId":null,"phase":"pull_request","branch":"ai/generated-doc-specialization-7a457640","reason":"pull_request_checks_pending","status":"waiting_for_gate","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":null,"prNumber":2397,"terminal":false,"missionId":"7a457640-8756-4282-8edb-c716d1e55484","operation":"automatic_mission_resume","proofGate":"repair_mission_waiting_for_gate","sourceSha":null,"timingsMs":{"prReadinessMs":1161,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request after the exact-head KnockLaunch Gate changes state.","receiptRef":{"mode":"full","missionId":"7a457640-8756-4282-8edb-c716d1e55484"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1286,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-11T16:18:21.017273+00:00","proof_gate":"repair_mission_waiting_for_gate","source_sha":null,"external_id":"2397","receipt_type":"automatic_mission_resume","idempotency_key":"mission:7a457640-8756-4282-8edb-c716d1e55484:automatic-mission-resume:2397:repair_mission_waiting_for_gate","mission_step_id":"ebdfb344-ce59-4647-a811-d329d7183d40","command_center_event_id":"7a457640-8756-4282-8edb-c716d1e55484"},{"id":"4e9cd81e-2fe7-4777-aec8-553f6088d362","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-a71e3e78eb18","reason":"auto_progress_pr_read_failed:The operation was aborted due to timeout","status":"retryable","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":null,"prNumber":2554,"terminal":false,"missionId":"a71e3e78-eb18-4de4-b01f-2abc6cc79e65","operation":"automatic_mission_resume","proofGate":"repair_mission_auto_progress_authorization_retryable","sourceSha":null,"timingsMs":{"prReadinessMs":0,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"a71e3e78-eb18-4de4-b01f-2abc6cc79e65"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":785,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-12T22:00:08.600823+00:00","proof_gate":"repair_mission_auto_progress_authorization_retryable","source_sha":null,"external_id":"2554","receipt_type":"automatic_mission_resume","idempotency_key":"mission:a71e3e78-eb18-4de4-b01f-2abc6cc79e65:automatic-mission-resume:2554:repair_mission_auto_progress_authorization_retryable","mission_step_id":"b18c6121-aaad-42c3-97e5-7bfc9bdd3869","command_center_event_id":"a71e3e78-eb18-4de4-b01f-2abc6cc79e65"},{"id":"4e9e4322-d98a-4601-a821-794993116e47","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"pending","cc-execution/runtime-proof":"pending"},"mainSha":"58f895d0be42f89e1ac6ffe947026160747a8a8f","missing":[],"pending":["forgejo-release/workflow","cc-execution/runtime-proof"],"required":["forgejo-main/source","forgejo-release/workflow","cc-execution/runtime-proof"],"sourceSha":"58f895d0be42f89e1ac6ffe947026160747a8a8f","releaseState":"pending","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":false,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"ccExecution":"pending"},"requestContractHash":"7f54b8d7ddd3e97d711b973ef6ce2b8eaea347bfdfd20bcaf6bac14a9b8ac730","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/15790","runId":15790,"status":"running","sourceSha":"58f895d0be42f89e1ac6ffe947026160747a8a8f","conclusion":null,"failedJobs":[],"diagnostics":null,"exactSource":true,"targetStates":{"ccExecution":"pending"},"targetJobCount":7,"observedTargetStates":{"ccExecution":"pending"}},"releaseSourceVerified":true,"ccExecutionRuntimeProof":{"liveSha":"cf45771b5e55941bd80cc6ff4f47f6822b9aed3a","deploymentId":"forgejo-main-cf45771b5e55941bd80cc6ff4f47f6822b9aed3a","compareStatus":null,"identitySource":"local_build_metadata","runtimeVersion":"1.64.97-boring-release-v1","containsSourceSha":false},"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-05T16:16:51.891873+00:00","proof_gate":"canonical_release_pending","source_sha":"58f895d0be42f89e1ac6ffe947026160747a8a8f","external_id":"forgejo-main-58f895d0be42","receipt_type":"canonical_release_status","idempotency_key":"mission:72b21c3e-664f-49a0-ae3b-c0d3d178e4c3:forgejo-release-status:58f895d0be42f89e1ac6ffe947026160747a8a8f:pending:forgejo-main/source=success|forgejo-release/workflow=pending|cc-execution/runtime-proof=pending","mission_step_id":"f40ae755-6ab0-4cb3-8cf8-98243527bc2d","command_center_event_id":"72b21c3e-664f-49a0-ae3b-c0d3d178e4c3"},{"id":"4e9e61e2-3964-49b1-8457-cc2ba622af06","source":"cc-execution","status":"blocked","payload":{"ok":false,"jobId":null,"phase":"release","branch":"ai/objective-first-repair-66a3c720fa2e","reason":"canonical_release_queue_busy:16343","status":"blocked","metrics":{"receiptBytes":68409,"releaseCount":0,"toolCallCount":37,"repeatedCallCount":17,"executorlessWaitMs":2771530,"firstUsefulResultAt":"2026-10-06T14:11:53.591Z","recoveryAttemptCount":4,"ownerInterruptionCount":0},"version":"1.67.0-stopless-self-heal","prNumber":5185,"terminal":false,"missionId":"66a3c720-fa2e-4f0d-9cfd-b0cd50838aa0","operation":"execute_mission","proofGate":"canonical_release_blocked","sourceSha":"05c011fa85baac9cd2000d2c7cdf4d332eb27654","timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":1252,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":97,"approvedPlanMs":0,"missionSetupMs":408,"providerAuthMs":0,"shipAndProveMs":569,"ledgerPrepareMs":408,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":408,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":408,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"66a3c720-fa2e-4f0d-9cfd-b0cd50838aa0"},"performance":null,"deploymentId":"forgejo-main-05c011fa85ba","releaseState":"pending","workflowRunId":16343,"releaseTargets":{"frontend":false,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["repository"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1403,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T14:57:36.10377+00:00","proof_gate":"canonical_release_blocked","source_sha":"05c011fa85baac9cd2000d2c7cdf4d332eb27654","external_id":"forgejo-main-05c011fa85ba","receipt_type":"execute_mission","idempotency_key":"mission:66a3c720-fa2e-4f0d-9cfd-b0cd50838aa0:execute_mission:canonical_release_blocked:current-generation","mission_step_id":"a9002bd6-93b6-45cf-a8a1-574967e26b7c","command_center_event_id":"66a3c720-fa2e-4f0d-9cfd-b0cd50838aa0"},{"id":"4ea17f19-2f24-48d0-94ce-d92a53a42a54","source":"cc-execution","status":"deployment_dispatched","payload":{"ok":true,"jobId":null,"phase":"release","branch":"ai/objective-first-repair-a50aaee3c45c","reason":null,"status":"deployment_dispatched","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.151-mission-create-single-rpc","prNumber":2827,"terminal":false,"missionId":"a50aaee3-c45c-48f4-b190-ead1f4bc704d","operation":"execute_mission","proofGate":"canonical_release_dispatched","sourceSha":"c0567ea2a8db34df9d7becab8f4abba85de283f0","timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":4173,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":535,"approvedPlanMs":0,"missionSetupMs":4416,"providerAuthMs":0,"shipAndProveMs":2887,"ledgerPrepareMs":1727,"ledgerReconcileMs":0,"lineageReconcileMs":2689,"resolvePreflightMs":4416,"repositoryMutationMs":0,"repositoryProviderMs":0,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":1727,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":0},"nextAction":null,"receiptRef":{"mode":"full","missionId":"a50aaee3-c45c-48f4-b190-ead1f4bc704d"},"performance":null,"deploymentId":"forgejo-main-c0567ea2a8db","workflowRunId":null,"releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":2744,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-15T15:36:40.941335+00:00","proof_gate":"canonical_release_dispatched","source_sha":"c0567ea2a8db34df9d7becab8f4abba85de283f0","external_id":"forgejo-main-c0567ea2a8db","receipt_type":"execute_mission","idempotency_key":"mission:a50aaee3-c45c-48f4-b190-ead1f4bc704d:execute_mission:canonical_release_dispatched:current-generation","mission_step_id":"4ea12134-df80-4aa3-b1a7-3d5f50cfcf51","command_center_event_id":"a50aaee3-c45c-48f4-b190-ead1f4bc704d"},{"id":"4ea31844-368d-4ea7-affb-4400fae487b6","source":"cc-execution","status":"source_resolution_required","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":null,"reason":null,"status":"source_resolution_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"executorlessWaitMs":0,"firstUsefulResultAt":null,"recoveryAttemptCount":0,"ownerInterruptionCount":0},"version":"1.64.38-paul-owner-velocity","prNumber":null,"terminal":false,"missionId":"a6c3f8c2-cd8d-4dc3-a1a7-c5e98dc3fe4b","operation":"execute_mission","proofGate":"repair_mission_source_resolution_required","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":1444,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":1760,"providerAuthMs":0,"ledgerPrepareMs":1057,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":1760,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":1057,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"Supply exact sourceTargets on the same mission; planner guesses cannot replace missing mission scope.","receiptRef":{"mode":"full","missionId":"a6c3f8c2-cd8d-4dc3-a1a7-c5e98dc3fe4b"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":1180,"likelyAffectedFiles":[],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"669daee1-57e8-4960-937c-ce397106f32e","created_at":"2026-10-01T16:47:53.427121+00:00","proof_gate":"repair_mission_source_resolution_required","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:a6c3f8c2-cd8d-4dc3-a1a7-c5e98dc3fe4b:execute_mission:repair_mission_source_resolution_required:current-generation","mission_step_id":"35581225-aa0e-404f-88d4-953adc79b72d","command_center_event_id":"a6c3f8c2-cd8d-4dc3-a1a7-c5e98dc3fe4b"},{"id":"4ea5050d-df6a-4ee0-b283-e7401a1cd61f","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"pending","cc-execution/runtime-proof":"pending"},"mainSha":"da9f93cb926f1310c90576e046d2c08bdbf26bc5","missing":[],"pending":["forgejo-release/workflow","cc-execution/runtime-proof"],"required":["forgejo-main/source","forgejo-release/workflow","cc-execution/runtime-proof"],"sourceSha":"da9f93cb926f1310c90576e046d2c08bdbf26bc5","releaseState":"pending","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":false,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"ccExecution":"pending"},"requestContractHash":"5fa6d975e0f2e72d7c0e7eb282ab8f0352ae1dd9f364293eeae8d04f1ed3eae4","forgejoWorkflowProof":{"runId":13483,"source":"signed_push_receipt","status":"waiting","results":{},"conclusion":"waiting","targetStates":{"ccExecution":"pending"},"targetJobCount":6,"observedTargetStates":{"ccExecution":"pending"}},"releaseSourceVerified":true,"ccExecutionRuntimeProof":{"liveSha":"c10990eca12130633e5d4198df785e3f1b783069","deploymentId":"forgejo-main-c10990eca12130633e5d4198df785e3f1b783069","compareStatus":null,"identitySource":"local_build_metadata","runtimeVersion":"1.64.27-paul-operational-awareness","containsSourceSha":false},"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-30T21:16:16.389929+00:00","proof_gate":"canonical_release_pending","source_sha":"da9f93cb926f1310c90576e046d2c08bdbf26bc5","external_id":"forgejo-main-da9f93cb926f","receipt_type":"canonical_release_status","idempotency_key":"mission:e1ea24fd-915e-417f-9164-27900289f7e2:forgejo-release-status:da9f93cb926f1310c90576e046d2c08bdbf26bc5:pending:forgejo-main/source=success|forgejo-release/workflow=pending|cc-execution/runtime-proof=pending","mission_step_id":"c44aacd4-ed3b-4a94-b08c-79716e1d922e","command_center_event_id":"e1ea24fd-915e-417f-9164-27900289f7e2"},{"id":"4ea6ea75-77e9-43ce-ace2-1768a42d1420","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"pending","frontend-cloudflare/live":"pending","cc-execution/runtime-proof":"success"},"mainSha":"0055e25bb74cf4434f5e29c31e26d0056a2f4d91","missing":[],"pending":["forgejo-release/workflow","frontend-cloudflare/live"],"required":["forgejo-main/source","forgejo-release/workflow","cc-execution/runtime-proof","frontend-cloudflare/live"],"sourceSha":"0055e25bb74cf4434f5e29c31e26d0056a2f4d91","releaseState":"pending","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":true,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"frontend":"pending","ccExecution":"success"},"requestContractHash":"b041e20e418271c39a0b2dd4f5da51ba12ce8455d6b4dca38a1bf64647fbfb36","forgejoWorkflowProof":{"runId":8408,"source":"signed_push_receipt","status":"waiting","results":{},"conclusion":"waiting","targetStates":{"frontend":"pending","ccExecution":"success"},"targetJobCount":7,"observedTargetStates":{"frontend":"pending","ccExecution":"success"}},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":{"liveSha":"0055e25bb74cf4434f5e29c31e26d0056a2f4d91","proofGate":"cc_execution_target_aware_runtime_identity_verified","deploymentId":"forgejo-main-0055e25bb74cf4434f5e29c31e26d0056a2f4d91","compareStatus":"target_job_success_runtime_verified","workflowRunId":8408,"identitySource":"canonical_release_target_job","runtimeVersion":"1.58.151-mission-create-single-rpc","workflowFailed":false,"containsSourceSha":true},"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-15T16:53:05.362552+00:00","proof_gate":"canonical_release_pending","source_sha":"0055e25bb74cf4434f5e29c31e26d0056a2f4d91","external_id":"forgejo-main-0055e25bb74c","receipt_type":"canonical_release_status","idempotency_key":"mission:3604556c-0edb-4be1-b626-a467bb36cc72:forgejo-release-status:0055e25bb74cf4434f5e29c31e26d0056a2f4d91:pending:forgejo-main/source=success|forgejo-release/workflow=pending|cc-execution/runtime-proof=success|frontend-cloudflare/live=pending","mission_step_id":"2aa96d54-88b7-4bab-8cab-610391da8be9","command_center_event_id":"3604556c-0edb-4be1-b626-a467bb36cc72"},{"id":"4ea980bf-a452-4e5d-94f8-d97ee2bc7e39","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in reasoning required.","nextAction":{"lane":"cc-execution","action":"continue_implementation","reason":"persisted_continuation_scope_ready","handoff":null,"capability":"heavy-build-gate","automationAllowed":true,"ownerActionRequired":false,"resumeFromCheckpoint":null},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"reasoning_required\",\"ownerFacingState\":null,\"latest\":null,\"activeStep\":null,\"nextStep\":null,\"nextSafeAction\":{\"action\":\"continue_implementation\",\"lane\":\"cc-execution\",\"reason\":\"persisted_continuation_scope_ready\",\"automationAllowed\":true,\"ownerActionRequired\":false,\"capability\":\"heavy-build-gate\",\"resumeFromCheckpoint\":null,\"handoff\":null},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"cc-execution\",\"nextAction\":\"continue_implementation\",\"recoveryOwner\":\"cc-execution\",\"capability\":\"heavy-build-gate\",\"resumeFromCheckpoint\":null,\"handoff\":null},\"acceptance\":{\"total\":1,\"verified\":0,\"pending\":1,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[\"proof-production\"]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":null,\"deadlineAt\":null,\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":null,\"prNumber\":null,\"sourceSha\":null,\"deploymentId\":null}"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T19:45:02.446188+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:6f2e8769-9a1f-4083-b735-6ff566b6a372:owner-progress-heartbeat:119421060","mission_step_id":"866ffadd-7c19-424a-a9cd-005198dfa99f","command_center_event_id":"6f2e8769-9a1f-4083-b735-6ff566b6a372"},{"id":"4eab6943-4c92-4229-8b0b-2ab8f5ca7488","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"pending","cc-execution/runtime-proof":"pending"},"mainSha":"ef69c1444ff905130d5696d0f4b9aa91265e92c7","missing":[],"pending":["forgejo-release/workflow","cc-execution/runtime-proof"],"required":["forgejo-main/source","forgejo-release/workflow","cc-execution/runtime-proof"],"sourceSha":"ef69c1444ff905130d5696d0f4b9aa91265e92c7","releaseState":"pending","sourceInMain":true,"compareStatus":"identical","forgejoWorkflowProof":{"error":"workflow_run_id_missing","runId":null},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":{"liveSha":"a0669093e3c28c623ded8a37d4ec00436b5b62bb","deploymentId":"forgejo-main-a0669093e3c28c623ded8a37d4ec00436b5b62bb","compareStatus":null,"identitySource":"local_build_metadata","runtimeVersion":"1.50.24-queue-hygiene-exact-head-actions","containsSourceSha":false},"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-08-24T19:05:07.459408+00:00","proof_gate":"canonical_release_pending","source_sha":"ef69c1444ff905130d5696d0f4b9aa91265e92c7","external_id":null,"receipt_type":"canonical_release_status","idempotency_key":"mission:79ab4b67-ea36-4eb7-bf97-657b4a90b459:forgejo-release-status:ef69c1444ff905130d5696d0f4b9aa91265e92c7:pending:forgejo-main/source=success|forgejo-release/workflow=pending|cc-execution/runtime-proof=pending","mission_step_id":"6c4033c0-4a24-4ef2-bc0b-6dbce6846ccd","command_center_event_id":"79ab4b67-ea36-4eb7-bf97-657b4a90b459"},{"id":"4eab99d0-9c26-4b43-a22a-726ace893902","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in implementation.","nextAction":{"lane":"cc-execution","action":"reconcile_pull_request","reason":"durable_state:pull_request","automationAllowed":true,"ownerActionRequired":false},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"implementation\",\"ownerFacingState\":null,\"latest\":{\"kind\":\"receipt\",\"key\":\"owner_progress_heartbeat\",\"status\":\"waiting\",\"proofGate\":\"owner_progress_heartbeat\"},\"activeStep\":{\"key\":\"pull_request\",\"status\":\"ready\",\"lane\":\"cc-execution\"},\"nextStep\":{\"key\":\"release\",\"status\":\"ready\",\"lane\":\"production-release-conductor\"},\"nextSafeAction\":{\"action\":\"reconcile_pull_request\",\"lane\":\"cc-execution\",\"reason\":\"durable_state:pull_request\",\"automationAllowed\":true,\"ownerActionRequired\":false},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"cc-execution\",\"nextAction\":\"reconcile_pull_request\",\"recoveryOwner\":\"cc-execution\"},\"acceptance\":{\"total\":1,\"verified\":0,\"pending\":1,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[\"proof-production\"]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":\"runtime_proof\",\"deadlineAt\":\"2026-10-06T14:54:20.947247+00:00\",\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":null,\"prNumber\":null,\"sourceSha\":null,\"deploymentId\":null}"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-06T12:11:56.265166+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:8461f374-86b0-422f-bb81-3fb39febaab9:owner-progress-heartbeat:119419247","mission_step_id":"a036e1a4-6bb7-4248-b530-a16b22bcaaa4","command_center_event_id":"8461f374-86b0-422f-bb81-3fb39febaab9"},{"id":"4eabdad9-fcf9-4f39-a469-3391b2346b33","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"pending","frontend-cloudflare/live":"pending"},"mainSha":"699bd3396a67931569c6fca1e5fc86424a9cff3b","missing":[],"pending":["forgejo-release/workflow","frontend-cloudflare/live"],"required":["forgejo-main/source","forgejo-release/workflow","frontend-cloudflare/live"],"sourceSha":"699bd3396a67931569c6fca1e5fc86424a9cff3b","releaseState":"pending","sourceInMain":true,"compareStatus":"identical","forgejoWorkflowProof":{"url":"https://git.knocklaunch.app/noel/KnockLaunchOS/actions/runs/774","runId":774,"status":"running","conclusion":null,"failedJobs":[]},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"766cfaa7-ac42-46c8-bbef-69d13268a29d","created_at":"2026-08-16T15:27:59.373136+00:00","proof_gate":"canonical_release_pending","source_sha":"699bd3396a67931569c6fca1e5fc86424a9cff3b","external_id":"forgejo-main-699bd3396a67","receipt_type":"canonical_release_status","idempotency_key":"mission:26a5a3a4-114b-44a8-bb29-4dfc07a65af0:forgejo-release-status:699bd3396a67931569c6fca1e5fc86424a9cff3b:pending:forgejo-main/source=success|forgejo-release/workflow=pending|frontend-cloudflare/live=pending","mission_step_id":"3910aade-cc80-4480-97dc-66d6080772c8","command_center_event_id":"26a5a3a4-114b-44a8-bb29-4dfc07a65af0"},{"id":"4eac05c5-808d-4f19-b0cf-9c075a95cb93","source":"cc-execution","status":"authorized","payload":{"paths":["workers/cc-execution/src/index-mission-control.js"],"reason":"Owner explicitly authorized the completion machinery repair; this is the proven final dropped-source-scope defect.","baseSha":"d3d2eb8f370022f3aeff1062c5bc5c8ad605158a","issuedAt":1791128463386,"expiresAt":1791128643386,"missionId":"294d5eb5-2ede-403a-b336-dac8dc2011bf","authorizationId":"2741dfe8-d947-4250-883a-f6f7b4e7e629","retryableWithinExactScope":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-04T15:41:03.679434+00:00","proof_gate":"control_plane_maintenance_scope_authorized","source_sha":"d3d2eb8f370022f3aeff1062c5bc5c8ad605158a","external_id":null,"receipt_type":"control_plane_maintenance_authorization","idempotency_key":"control-plane-maintenance-authorize:2741dfe8-d947-4250-883a-f6f7b4e7e629","mission_step_id":"01141b5c-0bfb-42df-ab9e-69c26a3eeb67","command_center_event_id":"294d5eb5-2ede-403a-b336-dac8dc2011bf"},{"id":"4eacfd27-c554-484c-80d1-ba36fab53461","source":"cc-execution","status":"waiting","payload":{"kind":"heartbeat","message":"Still active in visual proof.","nextAction":{"lane":"visual-sandbox","action":"verify_visual","reason":"release_verified_visual_proof_pending","automationAllowed":true,"ownerActionRequired":false},"silenceBudgetMs":15000,"semanticCheckpointSignature":"{\"stateMachineVersion\":1,\"phase\":\"visual_proof\",\"ownerFacingState\":null,\"latest\":null,\"activeStep\":null,\"nextStep\":null,\"nextSafeAction\":{\"action\":\"verify_visual\",\"lane\":\"visual-sandbox\",\"reason\":\"release_verified_visual_proof_pending\",\"automationAllowed\":true,\"ownerActionRequired\":false},\"executionOwnership\":{\"active\":false,\"state\":\"waiting\",\"executor\":null,\"lane\":\"visual-sandbox\",\"nextAction\":\"verify_visual\",\"recoveryOwner\":\"visual-sandbox\"},\"acceptance\":{\"total\":0,\"verified\":0,\"pending\":0,\"percent\":0,\"satisfied\":false,\"verifiedIds\":[],\"pendingIds\":[]},\"stall\":{\"stalled\":false,\"reason\":\"within_deadline\",\"step\":null,\"deadlineAt\":null,\"recoveryAction\":null},\"blocker\":null,\"terminal\":false,\"branch\":\"ai/seaside-uppercase-crm-alias-20260806-r202608070236\",\"prNumber\":4173,\"sourceSha\":\"5f81a86377881067b936e61d13d4a7084f4ae2fc\",\"deploymentId\":\"canonical-release-5f81a8637788\"}"},"tenant_id":"c55998b4-82a3-467e-8d35-177bb4785f6e","created_at":"2026-10-04T18:39:06.225144+00:00","proof_gate":"owner_progress_heartbeat","source_sha":null,"external_id":null,"receipt_type":"owner_progress_heartbeat","idempotency_key":"mission:95d76124-e770-4391-9135-9468bf52f936:owner-progress-heartbeat:119409275","mission_step_id":"7fb8378b-9573-4591-bb93-0b26fec21452","command_center_event_id":"95d76124-e770-4391-9135-9468bf52f936"},{"id":"4eaf1701-b759-4293-9fee-432ccfe8aa44","source":"cc-execution","status":"retryable","payload":{"ok":false,"jobId":null,"phase":"pull_request","branch":"ai/objective-first-repair-7c4bbef2985a","reason":"retryable_provider_transport:forgejo_provider_read_timeout","status":"retryable","metrics":{"receiptBytes":25077,"releaseCount":0,"toolCallCount":11,"repeatedCallCount":2,"executorlessWaitMs":44048,"firstUsefulResultAt":"2026-10-03T02:30:39.294Z","recoveryAttemptCount":4,"ownerInterruptionCount":0},"version":null,"prNumber":4595,"terminal":false,"missionId":"7c4bbef2-985a-485b-ae8c-33aac34fc064","operation":"automatic_mission_resume","proofGate":"repair_mission_pr_ready_retryable","sourceSha":null,"timingsMs":{"prReadinessMs":2170,"approvedPlanMs":0,"shipAndProveMs":0,"repositoryMutationMs":0,"repositoryProviderMs":0,"repositoryAtomicCommitMs":0,"repositoryBranchCreateMs":0,"repositoryPullRequestCreateMs":0},"nextAction":"Reconcile this same mission and pull request automatically; do not create a replacement branch or PR.","receiptRef":{"mode":"full","missionId":"7c4bbef2-985a-485b-ae8c-33aac34fc064"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":819,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-03T02:31:14.546925+00:00","proof_gate":"repair_mission_pr_ready_retryable","source_sha":null,"external_id":"4595","receipt_type":"automatic_mission_resume","idempotency_key":"mission:7c4bbef2-985a-485b-ae8c-33aac34fc064:automatic-mission-resume:4595:repair_mission_pr_ready_retryable","mission_step_id":"5b7f7fe5-8ad6-4f22-8928-a4437c75888f","command_center_event_id":"7c4bbef2-985a-485b-ae8c-33aac34fc064"},{"id":"4eb04001-7f02-4b6e-8d64-a3f64a44c5de","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"implementation","branch":"ai/objective-first-repair-df7c9c96b8aa","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.209-visual-certification-hardening","prNumber":null,"terminal":false,"missionId":"df7c9c96-b8aa-40c4-90ab-e77b8278c889","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":20,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":429,"providerAuthMs":0,"ledgerPrepareMs":429,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":429,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":429,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /mission/execute again automatically with this same missionId without another owner prompt or workflow switch.","receiptRef":{"mode":"full","missionId":"df7c9c96-b8aa-40c4-90ab-e77b8278c889"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":["runtime","visual"],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":6271,"likelyAffectedFiles":["src/PrivateAppShell.tsx","config/capabilities/big-papis-proposal-workflow.json","config/capabilities/tenant-type-platform-primitive.json","config/capabilities/tenant-type-registry.json","config/capabilities/tenant-workspace-ui-contract-v2.json","scripts/resolve-supabase-function-targets.mjs","src/__tests__/contracts/big-papis-back-office-modes.contract.test.ts","config/capabilities/big-papis-proposal-screenshot-intake.json","config/capabilities/big-papis-public-stop-board.json","src/__tests__/contracts/big-papis-mode-card-route-data.contract.test.ts","src/__tests__/contracts/big-papis-shell-route-context.contract.test.ts","src/__tests__/contracts/platform-membership-route-isolation.contract.test.ts"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-22T00:45:12.057041+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:df7c9c96-b8aa-40c4-90ab-e77b8278c889:execute_mission:repair_mission_synthesis_ready:current-generation","mission_step_id":"9673f940-2148-4121-947d-7e1ce992b58d","command_center_event_id":"df7c9c96-b8aa-40c4-90ab-e77b8278c889"},{"id":"4eb19d9d-8664-4a9e-b3c0-61f18eef38aa","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","forgejo-release/workflow":"pending","frontend-cloudflare/live":"pending"},"mainSha":"78484f0a679c9e4912c92bd0d39647cff21afbb5","missing":[],"pending":["forgejo-release/workflow","frontend-cloudflare/live"],"required":["forgejo-main/source","forgejo-release/workflow","frontend-cloudflare/live"],"sourceSha":"78484f0a679c9e4912c92bd0d39647cff21afbb5","releaseState":"pending","sourceInMain":true,"compareStatus":"protected_main_push_exact_source","releaseTargets":{"frontend":true,"onrunner":false,"migrations":false,"ccExecution":false,"supabaseEdge":false,"edgeFunctionSlugs":[]},"releaseTargetStates":{"frontend":"pending"},"requestContractHash":"97d65bf76f567280d5f66cc3e21b567ac9fc9f8a466648e43362490b63365b0f","forgejoWorkflowProof":{"runId":6913,"source":"signed_push_receipt","status":"running","results":{},"conclusion":"running","targetStates":{"frontend":"pending"},"targetJobCount":7,"observedTargetStates":{"frontend":"pending"}},"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-10T23:39:15.485488+00:00","proof_gate":"canonical_release_pending","source_sha":"78484f0a679c9e4912c92bd0d39647cff21afbb5","external_id":"forgejo-main-78484f0a679c","receipt_type":"canonical_release_status","idempotency_key":"mission:01538fd2-9907-4585-91a3-2d5879d20223:forgejo-release-status:78484f0a679c9e4912c92bd0d39647cff21afbb5:pending:forgejo-main/source=success|forgejo-release/workflow=pending|frontend-cloudflare/live=pending","mission_step_id":"bf688094-5e51-4dd5-8db9-49e2626d2d1c","command_center_event_id":"01538fd2-9907-4585-91a3-2d5879d20223"},{"id":"4eb44448-2856-4bec-9973-309851d66610","source":"cc-execution","status":"synthesis_required","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":"ai/objective-first-repair-5fd77504347c","reason":null,"status":"synthesis_required","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.197-deterministic-owner-progress","prNumber":null,"terminal":false,"missionId":"5fd77504-347c-4f93-bb45-6965e8352a92","operation":"execute_mission","proofGate":"repair_mission_synthesis_ready","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":9,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"missionSetupMs":384,"providerAuthMs":0,"ledgerPrepareMs":384,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":384,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"totalSynchronousLedgerMs":384,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0},"nextAction":"Inspect the bounded repository paths, synthesize exact files or anchored_edits, and call /mission/execute again automatically with this same missionId without another owner prompt or workflow switch.","receiptRef":{"mode":"full","missionId":"5fd77504-347c-4f93-bb45-6965e8352a92"},"performance":null,"deploymentId":null,"releaseState":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","pendingProofKinds":[],"verificationState":null,"workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":4432,"likelyAffectedFiles":["workers/cc-execution/src/index.js","workers/cc-execution/src/index-release-fast-lane.js","config/control-plane-capabilities.json"],"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true,"requestContractState":"pending"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-20T22:32:47.453539+00:00","proof_gate":"repair_mission_synthesis_ready","source_sha":null,"external_id":null,"receipt_type":"execute_mission","idempotency_key":"mission:5fd77504-347c-4f93-bb45-6965e8352a92:execute_mission:repair_mission_synthesis_ready:current-generation","mission_step_id":"8e9b883c-d07c-4dfb-8ee2-2ec2d9387ef4","command_center_event_id":"5fd77504-347c-4f93-bb45-6965e8352a92"},{"id":"4eb6ced2-34d4-4a0e-931a-fa65bcdbe2d5","source":"cc-execution","status":"recorded","payload":{"requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"rawUtterance":"Keep the current Console cockpit runtime fix unchanged and make this corrective generation cloud-routable while local runners are offline. Add a documentation-only comment to the existing gate-route job noting that routing control stays on docker-8g so local runner shutdown cannot block routing. Do not alter routing logic, release behavior, or application behavior.","wordingChanged":false,"canonicalIntent":"Keep the current Console cockpit runtime fix unchanged and make this corrective generation cloud-routable while local runners are offline. Add a documentation-only comment to the existing gate-route job noting that routing control stays on docker-8g so local runner shutdown cannot block routing. Do not alter routing logic, release behavior, or application behavior.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"explicit","version":1,"outcomes":[{"id":"candidate-review-loop","statement":"Implement the missing Console Candidate review workflow on /admin/console without changing the accepted compact cockpit layout. A change request must create a non-production candidate branch and exact candidate SHA. The UI must expose Live / Candidate / Compare plus a review drawer showing branch, exact SHA, changed scope, Gate state, and preview state. Accept must bind to that exact SHA and only then run canonical Gate, squash merge, affected-target release, and production proof. Revise and Reject must leave production unchanged; Revise must yield a reviewable candidate SHA and Reject must close/discard the candidate path. Stale SHA, missing preview, failed Gate, auth failure, source drift, or unavailable Laptop witness must fail closed. Desktop and mobile must work. Verification must exercise candidate creation, revise, reject, and accept with exact SHA semantics; route rendering alone is insufficient. Reuse existing mission, witness, Gate, merge, and release primitives; do not create a parallel orchestration system.","provenance":{"reason":null,"source":"explicit_request_contract","inherited":false,"blockingAuthority":true},"proofConditionIds":["runtime","visual"]}],"objective":"Keep the current Console cockpit runtime fix unchanged and make this corrective generation cloud-routable while local runners are offline. Add a documentation-only comment to the existing gate-route job noting that routing control stays on docker-8g so local runner shutdown cannot block routing. Do not alter routing logic, release behavior, or application behavior.","constraints":[{"id":"preserve-cockpit","statement":"Preserve one compact toolbar, one giant Witness canvas, Routes in the toolbar, Commentary and Activity/History as slide-out drawers, tiny status chips, and no stacked panels below the preview.","provenance":{"reason":null,"source":"explicit_request_contract","inherited":false,"blockingAuthority":true},"proofConditionIds":["visual"]},{"id":"exact-sha-review","statement":"Owner approval must bind the exact candidate SHA; production must remain unchanged before Accept; stale SHA and proof drift fail closed.","provenance":{"reason":null,"source":"explicit_request_contract","inherited":false,"blockingAuthority":true},"proofConditionIds":["runtime"]},{"id":"visual-content-truth","statement":"Do not present invented source identity, Gate state, preview state, branch, SHA, status, or other unknown operational facts as real.","provenance":{"reason":null,"source":"explicit_request_contract","inherited":false,"blockingAuthority":true},"proofConditionIds":["visual"]},{"id":"visual-viewport-authority","statement":"Desktop and mobile are both authoritative acceptance viewports for this workflow and must preserve the same review capability without a second design.","provenance":{"reason":null,"source":"explicit_request_contract","inherited":false,"blockingAuthority":true},"proofConditionIds":["visual"]},{"id":"capability-completeness","statement":"Every dependency the implementation relies on must be wired and proven across frontend, backend/runtime, auth, provider/prerequisite states, release ownership, and live production behavior.","provenance":{"reason":null,"source":"hard_safety_invariant","inherited":false,"blockingAuthority":true},"proofConditionIds":["runtime"]},{"id":"atomic-capability-lifecycle","statement":"Changed capabilities remain non-active until dependency readiness, affected-target release, and claim-matched production proof are satisfied; missing dependencies become prerequisite states and runtime drift fails closed.","provenance":{"reason":null,"source":"hard_safety_invariant","inherited":false,"blockingAuthority":true},"proofConditionIds":["runtime"]},{"id":"reference-visual-fidelity","statement":"The approved reference owns the material visual composition: hierarchy, major geometry, typography scale, spacing rhythm, image placement/crop, color treatment, radii, shadows/glow, and overall density. Material deviation is a failed visual acceptance, not a stylistic reinterpretation.","provenance":{"reason":null,"source":"heuristic_current_objective","inherited":false,"blockingAuthority":true},"proofConditionIds":["visual"]},{"id":"responsive-visual-continuity","statement":"Responsive adaptation may reflow for the target viewport, but it must preserve information hierarchy, branding, functionality, and design language. It must not invent a second design.","provenance":{"reason":null,"source":"heuristic_current_objective","inherited":false,"blockingAuthority":true},"proofConditionIds":["visual"]},{"id":"reference-visual-authority","statement":"The supplied or approved reference visual is immutable acceptance evidence. Generating another mockup, image, or concept cannot satisfy this implementation request; completion requires source implementation, deployment, and reference-matched visual proof.","provenance":{"reason":null,"source":"heuristic_current_objective","inherited":false,"blockingAuthority":true},"proofConditionIds":["visual"]}],"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"runtime","kind":"runtime","claim":"Authenticated end-to-end candidate creation, review, revise, reject, and exact-SHA accept/promotion work without production mutation before Accept.","route":"/admin/console","roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false},{"id":"visual","kind":"visual","claim":"Live / Candidate / Compare and the candidate review drawer render in the accepted cockpit on desktop and mobile with real candidate source identity.","route":"/admin/console","roleRef":null,"userRef":null,"required":true,"expectedText":"Candidate","targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false}],"validationErrors":[],"capabilityManifest":{"id":"console-candidate-review-loop","driftPolicy":"exact_manifest_source_release_dependency_or_runtime_identity_mismatch_is_nonterminal","proofLedger":"command_center_mission_ledger_request_contract_hash_bound","schemaVersion":1,"releaseTargets":[],"lifecycleStates":["prepare","deploy","verify","activate"],"activationPolicy":"dependencies_and_claim_matched_live_proof_before_exposure","dependencyDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_required_not_runtime_failures","compatibilityWindow":["N","N-1"],"failureIsolationPolicy":"quarantine_or_rollback_affected_capability_only_preserve_unrelated_working_capabilities","canaryProofConditionIds":["runtime"]},"capabilityCompleteness":{"domains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"required":true,"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_states_not_runtime_failures"}},"requestContractHash":"007fbe96d23cc6df21d0ae4815be8ef6469d76cb81fdd3d3d103972b0044a05c","requestContractRevision":15,"previousRequestContractHash":"5014d77ce94858696261d1c8ace013b115dad8515de12e95abbdd01a29a66e08"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-27T06:47:06.786501+00:00","proof_gate":"request_contract_revision_recorded","source_sha":null,"external_id":null,"receipt_type":"request_contract_revision","idempotency_key":"mission:1297fc3e-a836-406c-ae04-a0aa8f124741:request-contract:007fbe96d23cc6df21d0ae4815be8ef6469d76cb81fdd3d3d103972b0044a05c","mission_step_id":"2266f7cf-e64b-4bf0-be59-708167719cb5","command_center_event_id":"1297fc3e-a836-406c-ae04-a0aa8f124741"},{"id":"4eb75b3a-a446-4874-99f1-8bdc66a2c506","source":"forgejo-runtime","status":"pending","payload":{"failed":[],"states":{"forgejo-main/source":"success","release-targets/detection":"pending"},"mainSha":"cb4f2d79da4d92124c9fb6b85022945828351ea1","missing":[],"pending":["release-targets/detection"],"required":["forgejo-main/source","release-targets/detection"],"sourceSha":"cb4f2d79da4d92124c9fb6b85022945828351ea1","releaseState":"pending","sourceInMain":true,"compareStatus":"identical","releaseTargets":null,"releaseTargetStates":{},"requestContractHash":"a03cedb41333a8339dbcbfa06fc41ef678ac0bb9a60cf5b158467886d073b908","forgejoWorkflowProof":null,"onrunnerRuntimeProof":null,"releaseSourceVerified":true,"ccExecutionRuntimeProof":null,"releaseTargetRecoveryProof":null,"exactReleaseVerifiedAfterMainAdvanced":false},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-11T03:01:02.663499+00:00","proof_gate":"canonical_release_pending","source_sha":"cb4f2d79da4d92124c9fb6b85022945828351ea1","external_id":null,"receipt_type":"canonical_release_status","idempotency_key":"mission:213c833d-7321-4460-b12a-5e0219c339b4:forgejo-release-status:cb4f2d79da4d92124c9fb6b85022945828351ea1:pending:forgejo-main/source=success|release-targets/detection=pending","mission_step_id":"f5e99147-a3cf-4ee3-928e-a8f2f1eaca19","command_center_event_id":"213c833d-7321-4460-b12a-5e0219c339b4"},{"id":"4eb7bba1-f854-49ec-9176-588648332838","source":"cc-execution","status":"recorded","payload":{"objective":"Fix the shared uploaded-background renderer so profile media settings are visually truthful. In src/components/backgrounds/SpaceBackground.tsx only: (1) for custom tenant media, use tenantBranding.backgroundOverlay exactly, including 0, rather than falling back to platform overlay; (2) for custom GodMode media, use godModeBranding.backgroundOverlay exactly, including 0; (3) do not paint hard-coded cinematic darkening gradient layers over custom uploaded tenant or GodMode media. Preserve those cinematic gradients only for default/fallback backgrounds. Background opacity, overlay, blur, fit, position, and zoom must therefore render exactly from the saved media settings. Keep the diff frontend-only and minimal. Ship through canonical PR/Gate/squash/Cloudflare frontend release and prove the behavior on PCG.","tenantRef":"pcg","receivedAt":"2026-09-30T14:02:43.682Z","fingerprint":"02f83cc9994e18e4abfd2bbe2a29c3ab7b966e6920c9cfbb209287c03c6dbddb","workstreamRef":"pcg","conversationId":null,"canonicalBranch":null,"requestContract":{"valid":true,"intent":{"evidence":[],"confidence":null,"compilation":{"stages":["owner_intent","conversation_context","scope","live_state","mutation_authority","affected_systems","dependencies","risk_and_blast_radius","execution_tactics","required_proof","release_plan","recovery_plan"],"version":2,"explicit":false,"objective":"Fix the shared uploaded-background renderer so profile media settings are visually truthful. In src/components/backgrounds/SpaceBackground.tsx only: (1) for custom tenant media, use tenantBranding.backgroundOverlay exactly, including 0, rather than falling back to platform overlay; (2) for custom GodMode media, use godModeBranding.backgroundOverlay exactly, including 0; (3) do not paint hard-coded cinematic darkening gradient layers over custom uploaded tenant or GodMode media. Preserve those cinematic gradients only for default/fallback backgrounds. Background opacity, overlay, blur, fit, position, and zoom must therefore render exactly from the saved media settings. Keep the diff frontend-only and minimal. Ship through canonical PR/Gate/squash/Cloudflare frontend release and prove the behavior on PCG.","proofKinds":[],"adaptiveDomains":["intent","tenant_route_role_viewport","urgency_deadline","dependency_scope","risk_blast_radius","runner_capacity","queue_active_work","provider_failure_circuits","qa_scope","retry_recovery","release_ownership","proof_depth"],"expansionPolicy":"later_stages_may_only_narrow_or_expand_with_machine_readable_dependency_evidence","dynamicStatePolicy":"live_state_may_change_execution_tactics_but_never_owner_outcome_or_explicit_constraints","dynamicRefreshStages":["preflight","gate","release","runtime_proof"],"adaptiveCompilerVersion":"paul-adaptive-objective-v1","inheritedContextBlockingAuthority":false},"rawUtterance":"Fix the shared uploaded-background renderer so profile media settings are visually truthful. In src/components/backgrounds/SpaceBackground.tsx only: (1) for custom tenant media, use tenantBranding.backgroundOverlay exactly, including 0, rather than falling back to platform overlay; (2) for custom GodMode media, use godModeBranding.backgroundOverlay exactly, including 0; (3) do not paint hard-coded cinematic darkening gradient layers over custom uploaded tenant or GodMode media. Preserve those cinematic gradients only for default/fallback backgrounds. Background opacity, overlay, blur, fit, position, and zoom must therefore render exactly from the saved media settings. Keep the diff frontend-only and minimal. Ship through canonical PR/Gate/squash/Cloudflare frontend release and prove the behavior on PCG.","wordingChanged":false,"canonicalIntent":"Fix the shared uploaded-background renderer so profile media settings are visually truthful. In src/components/backgrounds/SpaceBackground.tsx only: (1) for custom tenant media, use tenantBranding.backgroundOverlay exactly, including 0, rather than falling back to platform overlay; (2) for custom GodMode media, use godModeBranding.backgroundOverlay exactly, including 0; (3) do not paint hard-coded cinematic darkening gradient layers over custom uploaded tenant or GodMode media. Preserve those cinematic gradients only for default/fallback backgrounds. Background opacity, overlay, blur, fit, position, and zoom must therefore render exactly from the saved media settings. Keep the diff frontend-only and minimal. Ship through canonical PR/Gate/squash/Cloudflare frontend release and prove the behavior on PCG.","resolutionStatus":"exact","uniqueResolution":true,"clarificationRequired":false},"source":"legacy_derived","version":1,"outcomes":[{"id":"outcome-1","statement":"Fix the shared uploaded-background renderer so profile media settings are visually truthful. In src/components/backgrounds/SpaceBackground.tsx only: (1) for custom tenant media, use tenantBranding.backgroundOverlay exactly, including 0, rather than falling back to platform overlay; (2) for custom GodMode media, use godModeBranding.backgroundOverlay exactly, including 0; (3) do not paint hard-coded cinematic darkening gradient layers over custom uploaded tenant or GodMode media. Preserve those cinematic gradients only for default/fallback backgrounds. Background opacity, overlay, blur, fit, position, and zoom must therefore render exactly from the saved media settings. Keep the diff frontend-only and minimal. Ship through canonical PR/Gate/squash/Cloudflare frontend release and prove the behavior on PCG.","provenance":{"reason":null,"source":"current_request_inference","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production","proof-visual"]}],"objective":"Fix the shared uploaded-background renderer so profile media settings are visually truthful. In src/components/backgrounds/SpaceBackground.tsx only: (1) for custom tenant media, use tenantBranding.backgroundOverlay exactly, including 0, rather than falling back to platform overlay; (2) for custom GodMode media, use godModeBranding.backgroundOverlay exactly, including 0; (3) do not paint hard-coded cinematic darkening gradient layers over custom uploaded tenant or GodMode media. Preserve those cinematic gradients only for default/fallback backgrounds. Background opacity, overlay, blur, fit, position, and zoom must therefore render exactly from the saved media settings. Keep the diff frontend-only and minimal. Ship through canonical PR/Gate/squash/Cloudflare frontend release and prove the behavior on PCG.","constraints":[{"id":"visual-content-truth","statement":"Do not present invented names, metrics, prices, dates, services, testimonials, credentials, customer records, or other unknown business facts as real. Omit unknowns or mark them clearly as placeholder/example content.","provenance":{"reason":null,"source":"heuristic_current_objective","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production","proof-visual"]},{"id":"tenant-visual-isolation","statement":"Visual work is isolated to pcg. Do not import another tenant's logo, colors, imagery, copy, shell, customer data, business facts, or visual identity unless explicitly requested.","provenance":{"reason":null,"source":"heuristic_current_objective","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production","proof-visual"]},{"id":"reference-visual-fidelity","statement":"The approved reference owns the material visual composition: hierarchy, major geometry, typography scale, spacing rhythm, image placement/crop, color treatment, radii, shadows/glow, and overall density. Material deviation is a failed visual acceptance, not a stylistic reinterpretation.","provenance":{"reason":null,"source":"heuristic_current_objective","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-visual"]},{"id":"responsive-visual-continuity","statement":"Responsive adaptation may reflow for the target viewport, but it must preserve information hierarchy, branding, functionality, and design language. It must not invent a second design.","provenance":{"reason":null,"source":"heuristic_current_objective","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-visual"]},{"id":"reference-visual-authority","statement":"The supplied or approved reference visual is immutable acceptance evidence. Generating another mockup, image, or concept cannot satisfy this implementation request; completion requires source implementation, deployment, and reference-matched visual proof.","provenance":{"reason":null,"source":"heuristic_current_objective","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-visual"]},{"id":"capability-completeness","statement":"Every dependency the implementation declares or relies on must be wired and proven across applicable frontend, backend/runtime, schema/data/storage, authentication/authorization, provider configuration, prerequisite/loading/empty/error states, release ownership, and live production behavior; owner-authorized unavailable dependencies must become explicit prerequisite states rather than runtime failures.","provenance":{"reason":null,"source":"heuristic_current_objective","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]},{"id":"atomic-capability-lifecycle","statement":"Changed capabilities remain non-active until dependency readiness, N/N-1 compatibility, affected-target release, and claim-matched production canary proof are satisfied; missing optional dependencies become prerequisite_required, and runtime drift or health-contract violation quarantines only the affected capability instead of breaking unrelated working capability.","provenance":{"reason":null,"source":"heuristic_current_objective","inherited":false,"blockingAuthority":true},"proofConditionIds":["proof-production"]}],"adaptivePolicy":{"risk":{"tier":"bounded","blastRadius":"narrow"},"proof":{"requiredKinds":["runtime","visual"],"visualProofScope":"targeted","interactionRequired":false,"runtimeProofRequired":true},"scope":{"route":"/pcg/workspace","roleRef":null,"tenantRef":"pcg","sourceTargets":["src/components/backgrounds/SpaceBackground.tsx"]},"dynamic":{"variables":["main_and_runtime_lineage","runner_capacity","queue_and_active_work","provider_health","failure_clusters_and_circuits","release_target_state","current_pr_and_gate_state"],"refreshStages":["preflight","gate","release","runtime_proof"],"refreshMayChange":["runner_selection","parallelism","retry_path","qa_depth","release_recovery","proof_timing"],"refreshMayNotChange":["owner_outcome","explicit_no_go_constraints","tenant_identity","credential_boundary","hard_safety_invariants"]},"urgency":{"priority":"normal","deadlineSignals":[],"deadlineExplicit":false},"version":"paul-adaptive-objective-v1","recovery":{"transient":"one_bounded_retry_then_alternate_eligible_pool_or_provider_path","deterministic":"repair_source_or_contract_do_not_blind_rerun","mutationDependencyFailure":"prerequisite_required_or_targeted_recovery_never_invent","readOnlyDependencyFailure":"degrade_to_available_grounded_context_and_keep_conversation_alive"},"unknowns":["deadline"],"authority":{"outcome":"current_explicit_owner_request","tactics":"live_prime_truth","unknownPolicy":"preserve_unknown_never_invent","historicalContext":"advisory_unless_current_request_confirms"},"execution":{"mutation":true,"concurrency":"parallel_non_overlapping_tenant_work","scopePolicy":"start_bounded_expand_only_with_machine_readable_dependency_evidence","staleStatePolicy":"refresh_dynamic_state_before_irreversible_or_acceptance_stage","conversationIsolation":true,"ownerOutcomeMayBeChangedByAdaptation":false},"experience":{"visual":true,"viewports":["desktop","mobile"],"behavioral":false,"visualProofScope":"targeted"},"dependencies":{"requiredDomains":["frontend","provider_configuration","release_ownership"],"capabilityDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"releaseTargetHints":["frontend"]},"inputSignals":{"rawUtterance":"Fix the shared uploaded-background renderer so profile media settings are visually truthful. In src/components/backgrounds/SpaceBackground.tsx only: (1) for custom tenant media, use tenantBranding.backgroundOverlay exactly, including 0, rather than falling back to platform overlay; (2) for custom GodMode media, use godModeBranding.backgroundOverlay exactly, including 0; (3) do not paint hard-coded cinematic darkening gradient layers over custom uploaded tenant or GodMode media. Preserve those cinematic gradients only for default/fallback backgrounds. Background opacity, overlay, blur, fit, position, and zoom must therefore render exactly from the saved media settings. Keep the diff frontend-only and minimal. Ship through canonical PR/Gate/squash/Cloudflare frontend release and prove the behavior on PCG.","canonicalIntent":"Fix the shared uploaded-background renderer so profile media settings are visually truthful. In src/components/backgrounds/SpaceBackground.tsx only: (1) for custom tenant media, use tenantBranding.backgroundOverlay exactly, including 0, rather than falling back to platform overlay; (2) for custom GodMode media, use godModeBranding.backgroundOverlay exactly, including 0; (3) do not paint hard-coded cinematic darkening gradient layers over custom uploaded tenant or GodMode media. Preserve those cinematic gradients only for default/fallback backgrounds. Background opacity, overlay, blur, fit, position, and zoom must therefore render exactly from the saved media settings. Keep the diff frontend-only and minimal. Ship through canonical PR/Gate/squash/Cloudflare frontend release and prove the behavior on PCG.","conversationContextPresent":false}},"terminalPolicy":"all_required_proof_conditions_satisfied_after_live_release","proofConditions":[{"id":"proof-production","kind":"runtime","claim":"Fix the shared uploaded-background renderer so profile media settings are visually truthful. In src/components/backgrounds/SpaceBackground.tsx only: (1) for custom tenant media, use tenantBranding.backgroundOverlay exactly, including 0, rather than falling back to platform overlay; (2) for custom GodMode media, use godModeBranding.backgroundOverlay exactly, including 0; (3) do not paint hard-coded cinematic darkening gradient layers over custom uploaded tenant or GodMode media. Preserve those cinematic gradients only for default/fallback backgrounds. Background opacity, overlay, blur, fit, position, and zoom must therefore render exactly from the saved media settings. Keep the diff frontend-only and minimal. Ship through canonical PR/Gate/squash/Cloudflare frontend release and prove the behavior on PCG.","route":"/pcg/workspace","roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false},{"id":"proof-visual","kind":"visual","claim":"Fix the shared uploaded-background renderer so profile media settings are visually truthful. In src/components/backgrounds/SpaceBackground.tsx only: (1) for custom tenant media, use tenantBranding.backgroundOverlay exactly, including 0, rather than falling back to platform overlay; (2) for custom GodMode media, use godModeBranding.backgroundOverlay exactly, including 0; (3) do not paint hard-coded cinematic darkening gradient layers over custom uploaded tenant or GodMode media. Preserve those cinematic gradients only for default/fallback backgrounds. Background opacity, overlay, blur, fit, position, and zoom must therefore render exactly from the saved media settings. Keep the diff frontend-only and minimal. Ship through canonical PR/Gate/squash/Cloudflare frontend release and prove the behavior on PCG.","route":"/pcg/workspace","roleRef":null,"userRef":null,"required":true,"expectedText":null,"targetedActions":[],"allowedReleaseTargets":[],"requiredReleaseTargets":[],"requireCapacityAdmissible":false,"expectedWatchdogPolicyVersion":null,"minConsecutiveHealthyHeartbeats":1,"requirePositiveMemoryAttribution":false,"requireMemoryAdmissionPressureFalse":false}],"validationErrors":[],"capabilityManifest":{"id":"Fix-the-shared-uploaded-background-renderer-so-profile-media-settings-are-visually-truthful.-In-src-","driftPolicy":"exact_manifest_source_release_dependency_or_runtime_identity_mismatch_is_nonterminal","proofLedger":"command_center_mission_ledger_request_contract_hash_bound","schemaVersion":1,"releaseTargets":[],"lifecycleStates":["prepare","deploy","verify","activate"],"activationPolicy":"dependencies_and_claim_matched_live_proof_before_exposure","dependencyDomains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_required_not_runtime_failures","compatibilityWindow":["N","N-1"],"failureIsolationPolicy":"quarantine_or_rollback_affected_capability_only_preserve_unrelated_working_capabilities","canaryProofConditionIds":["proof-production"]},"capabilityCompleteness":{"domains":["frontend","backend_runtime","schema_data_storage","authentication_authorization","provider_configuration","prerequisite_loading_empty_error_states","release_ownership","live_production_proof"],"required":true,"prerequisitePolicy":"expected_unavailable_dependencies_are_prerequisite_states_not_runtime_failures"}},"requestedBranch":null,"conversationContext":null,"requestContractHash":"133cd20ed57ebc7954ce9bfa1d74fbf9662b21c8a12f76f8a5bbcca8254d1312","requestContractRevision":1},"tenant_id":"9602e177-0cbb-496c-bdf5-2fbc93f1b859","created_at":"2026-09-30T14:02:44.107717+00:00","proof_gate":"tenant_workstream_contribution_recorded","source_sha":null,"external_id":null,"receipt_type":"tenant_workstream_contribution","idempotency_key":"mission:47d7bcd8-44ff-4775-bc64-0a716a4cb5f8:tenant-workstream-contribution:02f83cc9994e18e4abfd2bbe2a29c3ab7b966e6920c9cfbb209287c03c6dbddb","mission_step_id":null,"command_center_event_id":"47d7bcd8-44ff-4775-bc64-0a716a4cb5f8"},{"id":"4ebb0cb7-3c08-42a0-822e-6c8f239f6077","source":"forgejo-exact-source","status":"verified","payload":{"sourceSha":"eebed0669a272f2308d07be6a3f570d3eee6320e","repository":"noel/KnockLaunchOS","repositoryProofs":[{"id":"source-proof","path":"workers/cc-execution/test/release-orchestration-invariants.test.js","blobSha":"f8964ed88fe18ed3b48098cc326bd925f643ff13","expectedText":"named Gate repository proof can upgrade a legacy generic receipt without breaking idempotency"}],"requestContractHash":"5b49081ed5123d79cb999e9ec9cbf0404ee9f32e8771bccb81e5bb9641c5ebdc","namedGateEvidenceReceiptVersion":null},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-16T04:19:22.813057+00:00","proof_gate":"request_contract_repository_verified","source_sha":"eebed0669a272f2308d07be6a3f570d3eee6320e","external_id":null,"receipt_type":"request_contract_repository_status","idempotency_key":"mission:0181dc8f-d06e-4d7a-afef-9c070d51b28d:request-contract-repository:5b49081ed5123d79cb999e9ec9cbf0404ee9f32e8771bccb81e5bb9641c5ebdc:eebed0669a272f2308d07be6a3f570d3eee6320e","mission_step_id":"a79b57ce-8521-4d3b-8362-403e071168f4","command_center_event_id":"0181dc8f-d06e-4d7a-afef-9c070d51b28d"},{"id":"4ebd1ac4-5632-4a41-af31-0b71b021bedf","source":"cc-execution","status":"waiting_for_gate","payload":{"ok":true,"jobId":null,"phase":"objective_received","branch":"ai/cloudflare-permission-catalog-pagination","reason":"fresh_pr_provider_receipt_already_proves_auto_progress_gate_notifier_owns_next_state","status":"waiting_for_gate","metrics":{"receiptBytes":0,"releaseCount":0,"toolCallCount":0,"repeatedCallCount":0,"ownerInterruptionCount":0},"version":"1.58.61-known-cleanup-runs-fallback","prNumber":1755,"terminal":false,"missionId":"630dd46d-8979-4c29-be70-2020f106e5d0","operation":"execute_mission","proofGate":"repair_mission_fresh_pr_handed_off_to_gate","sourceSha":null,"timingsMs":{"gateMs":0,"proofMs":0,"handlerMs":4549,"releaseMs":0,"mutationMs":0,"repositoryMs":0,"prReadinessMs":0,"approvedPlanMs":0,"missionSetupMs":818,"providerAuthMs":0,"shipAndProveMs":0,"ledgerPrepareMs":818,"ledgerReconcileMs":0,"lineageReconcileMs":0,"resolvePreflightMs":818,"repositoryMutationMs":4549,"repositoryProviderMs":2813,"authoritativeLedgerMs":0,"ledgerAsyncDispatchMs":0,"repositoryAtomicCommitMs":1942,"repositoryBranchCreateMs":0,"totalSynchronousLedgerMs":818,"asyncBookkeepingDispatchMs":0,"ledgerAuthoritativeCommitMs":0,"repositoryPullRequestCreateMs":871},"nextAction":"Canonical KnockLaunch Gate notifier and mission supervisor own progression from this exact PR head; do not synchronously poll Forgejo from the owner request.","receiptRef":{"mode":"full","missionId":"630dd46d-8979-4c29-be70-2020f106e5d0"},"performance":null,"deploymentId":null,"workflowRunId":null,"releaseTargets":null,"detailsAvailable":true,"ownerFacingState":"IN_PROGRESS","workflowInvariant":{"oneBranch":true,"oneMission":true,"oneRelease":true,"invariantScope":"repair_generation","onePullRequest":true,"terminalProofRequired":true,"correctiveGenerationsAllowed":true},"sourceReceiptBytes":4037,"ownerActionRequired":false,"ownerFacingTerminal":false,"continuationRequired":true},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-09-04T21:14:48.463323+00:00","proof_gate":"repair_mission_fresh_pr_handed_off_to_gate","source_sha":null,"external_id":"1755","receipt_type":"execute_mission","idempotency_key":"mission:630dd46d-8979-4c29-be70-2020f106e5d0:execute_mission:repair_mission_fresh_pr_handed_off_to_gate:current-generation","mission_step_id":"9c564114-17fa-4b82-b594-17047118e326","command_center_event_id":"630dd46d-8979-4c29-be70-2020f106e5d0"},{"id":"4ec14f08-fee9-4ccf-9491-50ee7831cf0b","source":"cc-execution","status":"blocked","payload":{"reason":"anchored_edit_invalid","fingerprint":"d422a5965b20799787a58521047cb78ee80e26f49aa3c0e671185e0c36ab4003"},"tenant_id":"a3ffa31f-0c88-4fdd-b872-051db013ca3e","created_at":"2026-10-05T01:34:39.156851+00:00","proof_gate":"repository_mutation_intent_deterministic_failure","source_sha":null,"external_id":null,"receipt_type":"repository_mutation_intent_blocked","idempotency_key":"mission:c49f3e64-9244-4c27-8235-ecb6e91b9825:repository-mutation-intent-blocked:d422a5965b20799787a58521047cb78ee80e26f49aa3c0e671185e0c36ab4003","mission_step_id":"12b72270-838e-4a89-9657-992b9c553749","command_center_event_id":"c49f3e64-9244-4c27-8235-ecb6e91b9825"}],"rows":400,"limit":400,"table":"command_center_receipts","format":"knocklaunch-table-chunk-v1","offset":13200,"schema":"public","order_key":"id"}