{"ok":true,"schema":"web.status.v1","schemaVersion":"web.status.v1","service":"kanban","site":"https://kanban.platphormnews.com","productRole":"public task, workflow, board, project, automation, remediation, queue, handoff, and operational execution layer","url":"https://kanban.platphormnews.com","generatedAt":"2026-08-25T16:51:15.379Z","environment":"production","storage":{"databaseRequired":false,"mode":"local_browser_or_public_server","degraded":false,"serverBackedBoardCount":0},"readiness":{"rootRoute":"pass","boardUi":"pass","localPersistence":"pass","jsonImportExport":"pass","canonicalObjectUrls":"pass","confirmationEndpoints":"pass","automation":"pass","automationRunHistory":"pass","idempotentAutomation":"pass","calendarIntegration":"partial","docsIntegration":"partial","evalsIntegration":"partial","browseropsIntegration":"partial","openapi":"pass","mcp":"pass","llms":"pass","feeds":"pass","sitemap":"pass","graphs":"pass"},"counts":{"boards":0,"cards":0,"columns":0,"swimlanes":0,"automations":0,"automationRuns":0,"integrations":5},"webReadiness":{"status":"ready","score":1,"routeComplianceScore":1,"discoveryStatus":"available","storageStatus":"local_browser_primary","noFakeDataPolicy":"enforced_by_empty_or_degraded_states"},"webCompliance":{"naming":"Web Status","schemaName":"web.status.v1","canonicalRoutes":["/web/status","/api/web/status"],"compatibilityAliases":["/.well-known/web4.json"],"missingRoutes":[],"implementedRoutes":["/","/api/health","/api/v1/health","/api/docs","/openapi.yaml","/openapi.json","/llms.txt","/llms-full.txt","/llms-index.json","/robots.txt","/sitemap.xml","/sitemap-index.xml","/rss.xml","/feed.xml","/atom.xml","/manifest.webmanifest","/.well-known/mcp.json","/.well-known/agents.json","/.well-known/ai-plugin.json","/.well-known/security.txt","/.well-known/trust.json","/.well-known/web.json","/web/status","/api/web/status","/api/mcp","/boards","/boards/default","/cards","/handoffs/{id}","/automation","/automations","/calendar","/projects","/imports","/exports","/integrations","/docs","/api","/mcp","/graph.json","/kanban.graph.json","/api/v1/status","/api/v1/storage/status","/api/v1/boards","/api/v1/cards/{id}","/api/v1/automations","/api/v1/import/preview","/api/v1/export/json"]},"webScorecard":{"requiredRouteCount":25,"implementedRequiredRouteCount":25,"serverBackedBoardCount":0,"publicProjectCount":4,"activeCardCount":0,"evidenceMode":"static route inventory plus current in-memory board store"},"storageModes":[{"mode":"local_browser","status":"available","evidence":"IndexedDB with localStorage fallback is implemented in lib/storage.ts."},{"mode":"server_public","status":"degraded","evidence":"No server board has been saved in this runtime."},{"mode":"degraded","status":"available","evidence":"Unavailable integrations return degraded metadata instead of fake confirmations."}],"integrations":[{"service":"calendar","url":"https://calendar.platphormnews.com","status":"configured","publicSafe":true,"supportedActions":["Send to Calendar","Import public events","Export board due dates"],"evidence":"calendar has server-side PLATPHORM_API_KEY available for service-to-service calls. Kanban still waits for a downstream artifact before marking handoffs confirmed.","executionMode":"backend_execution_ready","confirmationState":"pending_downstream_artifact"},{"service":"docs","url":"https://docs.platphormnews.com","status":"configured","publicSafe":true,"supportedActions":["Publish to Docs"],"evidence":"docs has server-side PLATPHORM_API_KEY available for service-to-service calls. Kanban still waits for a downstream artifact before marking handoffs confirmed.","executionMode":"backend_execution_ready","confirmationState":"pending_downstream_artifact"},{"service":"evals","url":"https://evals.platphormnews.com","status":"configured","publicSafe":true,"supportedActions":["Send to Evals","Evaluate Kanban API/MCP/UI"],"evidence":"evals has server-side PLATPHORM_API_KEY available for service-to-service calls. Kanban still waits for a downstream artifact before marking handoffs confirmed.","executionMode":"backend_execution_ready","confirmationState":"pending_downstream_artifact"},{"service":"browserops","url":"https://browserops.platphormnews.com","status":"configured","publicSafe":true,"supportedActions":["Validate in BrowserOps"],"evidence":"browserops has server-side PLATPHORM_API_KEY available for service-to-service calls. Kanban still waits for a downstream artifact before marking handoffs confirmed.","executionMode":"backend_execution_ready","confirmationState":"pending_downstream_artifact"},{"service":"claws","url":"https://claws.platphormnews.com","status":"configured","publicSafe":true,"supportedActions":["Generate Claws Plan"],"evidence":"claws has server-side PLATPHORM_API_KEY available for service-to-service calls. Kanban still waits for a downstream artifact before marking handoffs confirmed.","executionMode":"backend_execution_ready","confirmationState":"pending_downstream_artifact"}],"auth":{"platformKey":"PLATPHORM_API_KEY","acceptedHeaders":["Authorization: Bearer $PLATPHORM_API_KEY","X-PlatPhorm-API-Key: $PLATPHORM_API_KEY"],"publicUiKeyPrompt":false},"trace":{"acceptsTraceparent":true,"propagatesPlatphormTraceHeaders":true,"traceExportEnabled":false,"status":"degraded"},"warnings":[],"errors":[]}