{"overallScore":88,"checks":[{"id":"app-registry-10","label":"App registry includes the 10 canonical apps","passed":true,"severity":"blocker","status":"pass","detail":"11 registry entries available, including the canonical 10-app ecosystem."},{"id":"github-oauth-config","label":"GitHub OAuth config present or optional","passed":false,"severity":"warning","status":"warn","detail":"GitHub OAuth may be optional for registry-only proof runs."},{"id":"db-persistence","label":"DB persistence configured","passed":true,"severity":"blocker","status":"pass","detail":"Supabase/Postgres database URL configured."},{"id":"live-session-persistence","label":"Live session persistence configured","passed":true,"severity":"blocker","status":"pass","detail":"Live sessions can use DB."},{"id":"embeddings-known","label":"Embeddings status known","passed":true,"severity":"info","status":"pass","detail":"Embeddings disabled; keyword fallback remains available."},{"id":"phone-signing-secret","label":"Phone bridge signing secret configured","passed":true,"severity":"warning","status":"pass","detail":"Production should configure GLASSES_BRIDGE_SIGNING_SECRET."},{"id":"device-token-auth","label":"Device token auth working","passed":true,"severity":"blocker","status":"pass","detail":"Device token auth helpers and tests are in place."},{"id":"browser-hud","label":"Browser HUD available","passed":true,"severity":"blocker","status":"pass","detail":"Browser HUD adapter is the guaranteed fallback."},{"id":"phone-bridge-route","label":"Phone bridge route available","passed":true,"severity":"warning","status":"pass","detail":"/phone-bridge is built as a PWA/native-ready runtime."},{"id":"even-g2-not-configured","label":"Even G2 honestly not_configured","passed":true,"severity":"blocker","status":"pass","detail":"Even G2 status: not_configured."},{"id":"capacitor-prepared","label":"Capacitor prepared but native not deployed","passed":true,"severity":"info","status":"pass","detail":"Capacitor config exists; native app is not deployed."},{"id":"status-secrets-safe","label":"No secret values exposed in status APIs","passed":true,"severity":"blocker","status":"pass","detail":"Status APIs return booleans and modes, not raw secret values."},{"id":"supabase-persistence-required","label":"Supabase persistence required","passed":true,"severity":"blocker","status":"pass","detail":"GitHub knowledge, live sessions, and phone bridge storage require Supabase/Postgres persistence."},{"id":"db-migrations-expected","label":"DB migrations expected","passed":true,"severity":"warning","status":"pass","detail":"Migration SQL files exist; applied state requires manual verification because migration tracking is not wired."},{"id":"github-token-encryption","label":"GitHub token encryption configured","passed":false,"severity":"warning","status":"warn","detail":"GITHUB_TOKEN_ENCRYPTION_KEY is required before production GitHub OAuth token storage."},{"id":"phone-bridge-session-storage","label":"Phone bridge session token storage configured","passed":true,"severity":"blocker","status":"pass","detail":"Phone bridge session token storage is DB-backed."},{"id":"proof-mutation-disabled","label":"Proof mutation disabled by default","passed":true,"severity":"warning","status":"pass","detail":"GLASSES_PROOF_MUTATION_ENABLED should stay disabled except for controlled proof runs."}],"blockers":[],"warnings":[{"id":"github-oauth-config","label":"GitHub OAuth config present or optional","passed":false,"severity":"warning","status":"warn","detail":"GitHub OAuth may be optional for registry-only proof runs."},{"id":"github-token-encryption","label":"GitHub token encryption configured","passed":false,"severity":"warning","status":"warn","detail":"GITHUB_TOKEN_ENCRYPTION_KEY is required before production GitHub OAuth token storage."}],"nextRecommendedAction":"GitHub OAuth may be optional for registry-only proof runs."}