{"ok":true,"ready":true,"productionReady":true,"product":"Communications Command & Control","company":"Solstera Labs","architecture":"backend-owned SaaS foundation","checks":{"configuration":{"database":{"configured":true,"message":"DATABASE_URL configured"},"tokenEncryption":{"configured":true,"message":"Token encryption key configured"},"microsoftOAuth":{"configured":true,"message":"Microsoft OAuth configured"},"googleOAuth":{"configured":true,"message":"Google OAuth configured"},"inviteEmail":{"configured":true,"message":"Invite email delivery configured"},"ai":{"configured":true,"message":"Backend AI key configured"},"liveSmokeSafeAccounts":{"configured":false,"message":"LIVE_SMOKE_SAFE_ACCOUNTS missing"},"billing":{"configured":false,"message":"Billing provider is off"},"production":{"configured":true,"message":"Production configuration ready"}},"backgroundJobProcessors":{"globallyEnabled":false,"readyTypes":[],"processors":[{"type":"readiness_snapshot","label":"Readiness snapshot","ready":false,"implemented":true,"configured":false,"enableEnv":"BACKGROUND_JOB_READINESS_SNAPSHOT_ENABLED","status":"globally_disabled","externalEffects":["local database writes"],"nextStep":"Use this safe canary processor to prove hosted worker execution before enabling provider, AI, retention, or cleanup processors."},{"type":"provider_sync","label":"Provider sync","ready":false,"implemented":true,"configured":false,"enableEnv":"BACKGROUND_JOB_PROVIDER_SYNC_ENABLED","status":"globally_disabled","externalEffects":["provider API reads","local database writes"],"nextStep":"Keep this processor disabled in production until Outlook, Gmail, and IMAP/SMTP test accounts have completed queued sync validation."},{"type":"ai_daily_brief","label":"AI daily brief","ready":false,"implemented":false,"configured":false,"enableEnv":"BACKGROUND_JOB_AI_DAILY_BRIEF_ENABLED","status":"globally_disabled","externalEffects":["backend AI calls","usage events","local database writes"],"nextStep":"Implement a scheduled daily brief processor with workspace token guards and harmless test content before enabling."},{"type":"ai_thread_summary","label":"AI thread summary","ready":false,"implemented":false,"configured":false,"enableEnv":"BACKGROUND_JOB_AI_THREAD_SUMMARY_ENABLED","status":"globally_disabled","externalEffects":["backend AI calls","usage events","local database writes"],"nextStep":"Implement a thread-summary processor that loads workspace-scoped thread content and respects AI cost controls."},{"type":"retention","label":"Retention maintenance","ready":false,"implemented":false,"configured":false,"enableEnv":"BACKGROUND_JOB_RETENTION_ENABLED","status":"globally_disabled","externalEffects":["local database deletes"],"nextStep":"Implement retention as a scheduled maintenance processor after backup and restore rehearsal is complete."},{"type":"operational_cleanup","label":"Operational cleanup","ready":false,"implemented":false,"configured":false,"enableEnv":"BACKGROUND_JOB_OPERATIONAL_CLEANUP_ENABLED","status":"globally_disabled","externalEffects":["local database deletes and stale lock recovery"],"nextStep":"Implement cleanup as a scheduled maintenance processor after dry-run output is reviewed in the hosted environment."}]},"hostedWorkerScheduler":{"enabled":false,"intervalMs":900000,"limit":5,"runOnStart":false,"status":"disabled"},"databaseConnection":{"configured":true,"reachable":true,"latencyMs":19},"databaseSchema":{"configured":true,"ready":true,"missingTables":[],"missingIndexes":[]}},"timestamp":"2026-05-30T12:54:57.200Z"}