{"status":"RADIO_REVENUE_LOOP_V1_CONTROLLED_PREVIEW","generatedAt":"2026-07-13T00:00:00.000Z","runtimeState":"CONTROLLED_NO_GO","productionState":"PRODUCTION_READY_NO","productionReady":false,"controlledYesGoReady":false,"realProviderUsed":false,"fakePaymentSuccess":false,"fakeFullTrackAccess":false,"catalog":{"tracks":1,"previewRequiresPayment":false},"paymentBoundary":{"providerConfigured":false,"razorpayConfigured":false,"manualVerificationEnabled":true,"mode":"controlled-preview-manual-verification","requiredEnv":["RAZORPAY_KEY_ID","RAZORPAY_KEY_SECRET","NEXT_PUBLIC_RAZORPAY_KEY_ID"],"missingEnv":["RAZORPAY_KEY_ID","RAZORPAY_KEY_SECRET","NEXT_PUBLIC_RAZORPAY_KEY_ID"],"productionReady":false,"controlledYesGoReady":false,"realChargeCreated":false,"fullTrackPlaybackEnabledFromFixture":false},"routes":["/radio","/radio/[slug]","/radio/unlock","/radio/restore","/radio/dashboard","/admin/radio/payments","/api/unlock/check","/api/unlock/create-order","/api/unlock/verify","/api/radio/restore","/api/radio/revenue"],"dataContracts":["RadioRevenueTrack","RadioPreviewPlayerContract","RadioPaymentOrder","RadioAccessGrant","RadioRestoreRequest","RadioPaymentReviewEntry"],"blockers":["No production readiness claim","No automatic Razorpay success without signed webhook proof","No fixture enables full-track playback","Operator evidence import remains required for real access"],"tracks":[{"id":"","title":"","artist":"","lyricist":"Vaigyaaniq","producer":"Maataa Runtime","genre":"Knowledge audio","mood":"Cinematic calm","previewSrc":"/audio/vaigyaaniq-radio-alpha-preview.wav","fullSrc":"/audio/vaigyaaniq-radio-alpha-full.wav","lyrics":["Lyrics are shown here when attached to a released track."],"unlockPriceInr":10,"slug":"","previewDurationSeconds":45,"previewRequiresPayment":false,"fullTrackPlaybackEnabledFromFixture":false,"productionReady":false,"controlledYesGoReady":false}],"adminReview":{"entries":[{"id":"radio-preview-order-pending-001","trackId":"","email":"listener.pending@vaigyaaniq.local","amountPaise":1000,"currency":"INR","method":"manual-upi","status":"pending_verification","createdAt":"2026-07-13T00:00:00.000Z","providerConfigured":false,"providerOrderCreated":false,"realChargeCreated":false,"productionReady":false,"controlledYesGoReady":false,"verificationRequired":["operator evidence import","UPI reference review"],"verification":{"status":"pending_verification","method":"manual-upi","webhookVerified":false,"proofAccepted":false,"note":"Pending controlled-preview review; no access grant is created."},"reviewLane":"operator-review","accessGrantId":null},{"id":"radio-preview-order-verified-001","trackId":"","email":"listener.verified@vaigyaaniq.local","amountPaise":1000,"currency":"INR","method":"operator-import","status":"verified_with_operator_evidence","createdAt":"2026-07-13T00:00:00.000Z","providerConfigured":false,"providerOrderCreated":false,"realChargeCreated":false,"productionReady":false,"controlledYesGoReady":false,"verificationRequired":["operator evidence import"],"verification":{"status":"verified_with_operator_evidence","method":"operator-import","operator":"preview-operator","evidenceRef":"release/evidence/radio-revenue-loop-v1.json","webhookVerified":false,"proofAccepted":true,"note":"Deterministic preview fixture for access-grant logic; it does not enable full-track playback."},"reviewLane":"operator-review","accessGrantId":"radio-preview-grant-001"}],"pending":[{"id":"radio-preview-order-pending-001","trackId":"","email":"listener.pending@vaigyaaniq.local","amountPaise":1000,"currency":"INR","method":"manual-upi","status":"pending_verification","createdAt":"2026-07-13T00:00:00.000Z","providerConfigured":false,"providerOrderCreated":false,"realChargeCreated":false,"productionReady":false,"controlledYesGoReady":false,"verificationRequired":["operator evidence import","UPI reference review"],"verification":{"status":"pending_verification","method":"manual-upi","webhookVerified":false,"proofAccepted":false,"note":"Pending controlled-preview review; no access grant is created."},"reviewLane":"operator-review","accessGrantId":null}],"verified":[{"id":"radio-preview-order-verified-001","trackId":"","email":"listener.verified@vaigyaaniq.local","amountPaise":1000,"currency":"INR","method":"operator-import","status":"verified_with_operator_evidence","createdAt":"2026-07-13T00:00:00.000Z","providerConfigured":false,"providerOrderCreated":false,"realChargeCreated":false,"productionReady":false,"controlledYesGoReady":false,"verificationRequired":["operator evidence import"],"verification":{"status":"verified_with_operator_evidence","method":"operator-import","operator":"preview-operator","evidenceRef":"release/evidence/radio-revenue-loop-v1.json","webhookVerified":false,"proofAccepted":true,"note":"Deterministic preview fixture for access-grant logic; it does not enable full-track playback."},"reviewLane":"operator-review","accessGrantId":"radio-preview-grant-001"}],"productionReady":false,"controlledYesGoReady":false,"fakePaymentSuccess":false},"sourceMirror":{"status":"RADIO_SOURCE_STATUS_MIRROR_V1_CONTROLLED_PREVIEW","mirroredAt":"2026-07-13T00:00:00.000Z","sourceRepository":{"fullName":"wortforfilms/radio","visibility":"public","description":"radio on","defaultBranch":"main","language":"HTML","sizeKb":157372,"openIssues":1,"createdAt":"2026-06-26T19:30:03Z","updatedAt":"2026-07-10T01:04:39Z","pushedAt":"2026-07-10T05:17:04Z","treeSha":"f2b273ed3867e0a9ecfb3e86d5c962b72c180244","security":{"secretScanning":"enabled","pushProtection":"enabled"}},"sourceFiles":["RADIO_RELEASE_ROADMAP.md","RIGHTS_CLOSURE_RUNBOOK.md","apps/web/public/radio-html/data/payment-proof-report.json","apps/web/public/radio-html/data/payment-proof-lane.json","apps/web/public/radio-html/data/rights-closure-report.json","apps/web/public/radio-html/data/rights-evidence.json","apps/radio/public/registry/compiled-manifest.json","apps/radio/lib/compiled-manifest.json","apps/radio-backend/README.md","apps/radio-backend/package.json"],"runtimeState":"CONTROLLED_NO_GO","productionState":"PRODUCTION_READY_NO","productionReady":false,"controlledYesGoReady":false,"productionReadinessClaimed":false,"releaseAllowed":false,"shipDecision":"NO_SHIP","releaseRoadmap":{"sourcePath":"RADIO_RELEASE_ROADMAP.md","title":"Radio Vaigyaaniq - Path to 100% Release Readiness","productBuiltPercent":70,"releaseReadinessPercent":15,"shipDecision":"NO_SHIP","pipelineMode":"fail_closed","phases":[{"phase":"0","label":"baseline evidence","status":"complete","summary":"Baseline roadmap and release evidence are present."},{"phase":"1","label":"engineering","status":"engineering_complete","summary":"Core engineering is complete enough for preview assessment."},{"phase":"2","label":"rights closure","status":"awaiting_signoff","summary":"Rights closure tooling exists, but sign-off evidence is missing."},{"phase":"3","label":"payments","status":"awaiting_provider_evidence","summary":"Payment integration exists, but keys and one real transaction are missing."},{"phase":"4","label":"packaging and signing","status":"awaiting_certificate","summary":"Packaging and signing config exist, but certificate proof is missing."},{"phase":"5","label":"review approvals","status":"blocked","summary":"Reviewer approvals exist, but three items wait on payment and signing evidence."},{"phase":"6","label":"standalone extraction","status":"scaffolded","summary":"Standalone extraction is scaffolded under apps/radio."},{"phase":"7","label":"go-live","status":"blocked","summary":"Go-live requires final release check and human flip."}],"gatesToReachHundredPercent":["rights/ownership/license evidence","real settled payment","signing certificate","deploy target","human release-review sign-off"]},"paymentGate":{"sourcePaths":["apps/web/public/radio-html/data/payment-proof-report.json","apps/web/public/radio-html/data/payment-proof-lane.json"],"verificationState":"blocked-payment-proof-null","laneState":"draft-payment-proof-blocked","status":"blocked","shipDecision":"NO_SHIP","productionReady":false,"releaseAllowed":false,"importEnv":"EVIDENCE_PAYMENT_IMPORT","importStatus":"not-run","importedProofs":0,"candidateOnlyProofs":0,"giftIntents":0,"checkoutSessions":0,"paymentReceipts":0,"webhookEvents":0,"fulfilledGifts":0,"verifiedStates":0,"blockedStates":5,"realPaymentVerified":false,"fakePaymentSuccess":false,"webhookVerifier":{"provider":null,"signatureHeader":null,"status":"blocked","blocker":"checkout provider, signing secret, and receipt evidence are NULL"},"requiredEvidence":["payerId","recipientId","checkoutProvider","checkoutSessionId","paymentReceiptId","amount","currency","webhook signature verification","deliveredAt","AuditLog.created"]},"rightsGate":{"sourcePaths":["apps/web/public/radio-html/data/rights-closure-report.json","apps/web/public/radio-html/data/rights-evidence.json"],"verificationState":"blocked-rights-proof-null","status":"blocked","shipDecision":"NO_SHIP","productionReady":false,"releaseAllowed":false,"importEnv":"EVIDENCE_RIGHTS_IMPORT","importPath":null,"importStatus":"not-run","records":19,"importedProofs":0,"matchedProofs":0,"unmatchedProofs":0,"closed":0,"blocked":19,"releaseAllowedRecords":0,"missingSource":19,"missingCreator":19,"missingLicense":19,"missingCitation":19,"missingReviewer":19,"missingReviewedAt":19,"auditUnverified":19,"checksumIssues":0,"rightsReleaseAllowed":false,"requiredEvidence":["source","creator","license","rightsStatus=verified","checksum","citation","reviewer","reviewedAt","AuditLog.verified","releaseAllowed=true"]},"registry":{"sourcePaths":["apps/radio/public/registry/compiled-manifest.json","apps/radio/lib/compiled-manifest.json"],"id":"radio-vaigyaaniq-compiled-manifest","schemaVersion":3,"compiledAt":"2026-07-10T00:01:20.391Z","sourceHash":"5cdc0261b4536a4c09a2f38d3614eea3aca5760a8711b7606990f39f5b5ca0d8","productionReady":false,"plannedRoutesFailClosed":true,"counts":{"routes":197,"components":19,"layouts":10,"contentTypes":10,"workflows":2,"apps":9,"agentCapabilities":10,"graphNodes":248,"graphEdges":452}},"backend":{"sourcePaths":["apps/radio-backend/README.md","apps/radio-backend/package.json"],"packageName":"@radio/engine-backend","version":"0.1.0","private":true,"moduleType":"commonjs","status":"thin_backend_preview","productionReady":false,"duplicatesBusinessLogic":false,"failClosed":true,"businessLogicAuthority":"MOM/Next.js API routes","endpoints":["/health","/api/evidence","/api/stations","/api/schedule","/api/ads","/api/weather","/api/stream-candidates","/api/entitlements","/api/offline-bundle","/api/sync","/api/payments/*","/api/radio-release","/api/search","/api/analytics"],"gates":{"ads":"blocked without verified inventory and ENABLE_ADS=1","weather":"blocked without WEATHER_API_KEY","liveStreams":"null until real stream URLs are rights-verified","entitlements":"none without signature-verified webhook","commercialRights":"unverified and never claimed","adminPublishes":"admin intent alone never publishes"}},"blockers":["rights evidence import has not run","19 rights records remain blocked","payment evidence import has not run","5 payment states remain blocked","no real settled payment proof","no signing certificate","no deploy target proof","final human go-live flip is missing"],"mirrorBoundary":{"sourceAbsorbedAsStatusMirror":true,"liveInfraMutation":false,"paymentMutation":false,"rightsPromotion":false,"registryPromotion":false,"backendPromotion":false,"productionClaim":false}},"runtimeStatus":{"id":"radio-payments-access","lane":"radio","status":"RADIO_REVENUE_LOOP_V1_CONTROLLED_PREVIEW","runtimeState":"CONTROLLED_NO_GO","productionState":"PRODUCTION_READY_NO","productionReady":false,"controlledYesGoReady":false,"blockers":["No production readiness claim","No automatic Razorpay success without signed webhook proof","No fixture enables full-track playback","Operator evidence import remains required for real access"],"evidenceRefs":["release/evidence/radio-revenue-loop-v1.json"]},"policy":{"runtimeState":"CONTROLLED_NO_GO","productionState":"PRODUCTION_READY_NO","productionReady":false,"controlledYesGoReady":false,"disabledActions":["production promotion","fake payment success","capital action","securities workflow","KYC","contract execution","money movement","Lipi certification","installer publish","runtime promotion","release gate override"]}}