{"ok":false,"ready":false,"openwa":{"enabled":true,"mode":"openwa","runtimeOk":false,"runtimeStatus":"HTTP 404","runtimeSession":{"sessionCheck":"skipped","sessionName":"default","sessionConnected":null,"sessionStatus":null,"sessionCount":null,"error":null},"shadowRuntime":{"enabled":true,"primaryTransport":true,"mode":"primary","status":"session_present","runtimeUrl":"127.0.0.1:2790","sessionName":"default","sessionId":"***","sessionStatus":"ready","sessionConnected":true,"sessionCount":1,"qrAvailable":false,"qrLength":0,"webhookCount":0,"webhookHeadersConfigured":false,"checkedAt":"2026-10-07T02:29:38.995Z","autoEnsure":{"enabled":false,"running":false,"lastAttemptAt":null,"lastResult":null},"error":null},"sessionConnected":null,"sessionName":"default","inboundWebhookEndpoint":"/api/openwa/webhook","outboundWebhookConfigured":false,"apiKeyEnabled":true,"gatewayReady":true,"ready":false,"lastInboundAt":"2026-10-06T04:40:08.990Z","lastInboundAgeMs":78570005,"lastReplyAt":"2026-10-06T04:40:09.039Z","lastReplyAgeMs":78569956,"stale":true,"staleAfterMs":21600000},"runtime":{"enabled":true,"ok":false,"status":"HTTP 404","httpStatusCode":404,"url":"127.0.0.1:2790","latencyMs":2,"checkedAt":"2026-10-07T02:29:38.988Z","error":null,"session":{"sessionCheck":"skipped","sessionName":"default","sessionConnected":null,"sessionStatus":null,"sessionCount":null,"error":null}},"shadowRuntime":{"enabled":true,"primaryTransport":true,"mode":"primary","status":"session_present","runtimeUrl":"127.0.0.1:2790","sessionName":"default","sessionId":"***","sessionStatus":"ready","sessionConnected":true,"sessionCount":1,"qrAvailable":false,"qrLength":0,"webhookCount":0,"webhookHeadersConfigured":false,"checkedAt":"2026-10-07T02:29:38.995Z","autoEnsure":{"enabled":false,"running":false,"lastAttemptAt":null,"lastResult":null},"error":null},"legacyTransport":{"ok":true,"waState":"CONNECTED","lastProbeAt":"2026-10-07T02:29:36.820Z","lastOkAt":"2026-10-07T02:29:36.820Z","lastErrorAt":null,"lastError":null,"latencyMs":null,"probeTimeoutMs":2500},"state":{"type":"state","session":"default","paused":false,"status":"ready","transportMode":"openwa","info":{"name":null,"redactedNumber":null},"totalConsented":15158,"totalPending":12,"uptimeSeconds":590838,"inbound":{"receivedTotal":194196,"ignoredTotal":311,"repliedTotal":194088,"syntheticInboundTotal":23391,"syntheticIgnoredTotal":0,"syntheticReplyTotal":23269,"syntheticAudioTranscribedTotal":183,"syntheticAudioTranscriptionErrorTotal":1,"syntheticVoiceReplyGeneratedTotal":274,"syntheticVoiceReplyPayloadTotal":274,"syntheticVoiceReplySentTotal":0,"syntheticVoiceReplyErrorTotal":5,"syntheticVoiceReplyCooldownSkipTotal":77,"syntheticProcessingTimeoutTotal":50,"syntheticHandlerErrorTotal":0,"audioTranscribedTotal":277,"audioTranscriptionErrorTotal":0,"voiceReplyGeneratedTotal":292,"voiceReplyPayloadTotal":248,"voiceReplySentTotal":0,"voiceReplyErrorTotal":40,"voiceReplyCooldownSkipTotal":26,"processingTimeoutTotal":46,"handlerErrorTotal":2,"ignoredByReason":{"empty_text":5,"status":293,"notification":12,"unsupported_event":1},"processStartedAt":"2026-09-30T06:22:30.664Z","updatedAt":"2026-10-06T04:40:09.039Z","lastInboundAt":"2026-10-06T04:40:08.990Z","lastInboundTransport":"openwa","lastInboundChat":"***6001","lastInboundType":"chat","lastPrimaryInboundAt":"2026-10-06T04:40:08.990Z","lastPrimaryInboundTransport":"openwa","lastPrimaryInboundChat":"***6001","lastPrimaryInboundType":"chat","lastOpenWAInboundAt":"2026-10-06T04:40:08.990Z","lastOpenWAInboundChat":"***6001","lastSyntheticInboundAt":"2026-10-06T04:40:07.863Z","lastSyntheticInboundTransport":"openwa","lastSyntheticInboundChat":"***9501","lastSyntheticInboundType":"chat","lastSyntheticIgnoredAt":null,"lastSyntheticIgnoredReason":null,"lastSyntheticReplyAt":"2026-10-06T04:40:07.922Z","lastSyntheticReplyTransport":"openwa","lastSyntheticReplyChat":"***9501","lastIgnoredAt":"2026-08-17T11:18:47.738Z","lastIgnoredReason":"notification","lastIgnoredTransport":"whatsapp-web.js","lastIgnoredChat":"***9491","lastReplyAt":"2026-10-06T04:40:09.039Z","lastReplyTransport":"openwa","lastReplyChat":"***6001","lastPrimaryReplyAt":"2026-10-06T04:40:09.039Z","lastPrimaryReplyTransport":"openwa","lastPrimaryReplyChat":"***6001","lastOpenWAReplyAt":"2026-10-06T04:40:09.039Z","lastOpenWAReplyChat":"***6001","lastAudioTranscribedAt":"2026-06-30T11:52:14.344Z","lastAudioTranscriptionTransport":"openwa","lastAudioTranscriptionChat":"***7049","lastAudioTranscriptionType":"ptt","lastAudioTranscriptionMimeType":"audio/wav","lastAudioTranscriptionSizeBytes":74016,"lastAudioTranscriptionErrorAt":null,"lastAudioTranscriptionError":null,"lastVoiceReplyGeneratedAt":"2026-06-30T11:52:14.363Z","lastVoiceReplyPayloadAt":"2026-06-30T11:52:14.364Z","lastVoiceReplySentAt":null,"lastVoiceReplyTransport":"openwa","lastVoiceReplyChat":"***7049","lastVoiceReplyErrorAt":null,"lastVoiceReplyError":null,"voiceReplyTtsCooldownUntil":null,"voiceReplyTtsCooldownReason":null,"voiceReplyTtsCooldownSetAt":"2026-09-14T15:30:38.838Z","lastVoiceReplyCooldownSkipAt":"2026-06-30T11:52:14.363Z","lastProcessingTimeoutAt":"2026-09-11T21:43:21.852Z","lastProcessingTimeoutTransport":"openwa","lastProcessingTimeoutChat":"***6008","lastProcessingTimeoutMs":14000,"lastHandlerErrorAt":"2026-06-29T11:35:46.039Z","lastHandlerError":"t","latency":{"count":22,"p50":174,"p95":911,"max":3530,"timeoutsLastHour":0}},"primaryInbound":{"ok":true,"transportMode":"openwa","verificationRequired":false,"blockingProductionOnly":false,"transportReachable":true,"lastPrimaryActivityAt":"2026-10-06T04:40:09.039Z","lastPrimaryAgeMs":78569956,"validMaxAgeMs":86400000,"lastAnyActivityAt":"2026-10-06T04:40:09.039Z","lastInboundTransport":"openwa","lastReplyTransport":"openwa","anyIsOnlyShadow":false,"reason":"primary_transport_observed"},"responseReadiness":{"canAnswer":true,"reason":"ready","paused":false,"status":"ready","unresolved":0,"tolerance":2,"receivedTotal":194196,"repliedTotal":194088,"ignoredTotal":311,"primaryInbound":{"ok":true,"transportMode":"openwa","verificationRequired":false,"blockingProductionOnly":false,"transportReachable":true,"lastPrimaryActivityAt":"2026-10-06T04:40:09.039Z","lastPrimaryAgeMs":78569956,"validMaxAgeMs":86400000,"lastAnyActivityAt":"2026-10-06T04:40:09.039Z","lastInboundTransport":"openwa","lastReplyTransport":"openwa","anyIsOnlyShadow":false,"reason":"primary_transport_observed"},"lastInboundAt":"2026-10-06T04:40:08.990Z","lastReplyAt":"2026-10-06T04:40:09.039Z","lastIgnoredAt":"2026-08-17T11:18:47.738Z","lastIgnoredReason":"notification","lastHandlerErrorAt":"2026-06-29T11:35:46.039Z","lastHandlerError":"t","processingTimeoutTotal":46},"transport":{"ok":true,"waState":"CONNECTED","lastProbeAt":"2026-10-07T02:29:36.820Z","lastOkAt":"2026-10-07T02:29:36.820Z","lastErrorAt":null,"lastError":null,"latencyMs":null,"probeTimeoutMs":2500},"recentChats":{"ok":false,"lastProbeAt":null,"lastOkAt":null,"lastErrorAt":null,"lastError":null,"totalChats":0,"directChats":0,"groupChats":0,"unreadDirectChats":0,"unreadDirectTotal":0,"latestDirectAt":null,"latestDirectChat":null,"latestDirectFromMe":null,"latestDirectMessageAt":null,"latestDirectMessageType":null,"recentDirectWithin15m":0,"sample":[]},"missedInbound":{"enabled":true,"lastRunAt":null,"lastRecoveredAt":null,"lastErrorAt":null,"lastError":null,"runTotal":0,"recoveredTotal":0,"recoveredUnreadTotal":0,"recoveredRecentReadTotal":0,"skippedTotal":0,"recentReadScanTotal":0,"recentReadCandidateTotal":0,"recentReadSkippedTotal":0,"recentReadErrorTotal":0,"lastRecentReadErrorAt":null,"lastRecentReadError":null,"cachedFetchTotal":0,"cachedFetchHitTotal":0,"cachedFetchErrorTotal":0,"lastMessageFallbackTotal":0,"messageCreateBackstopSeenTotal":0,"messageCreateBackstopRecoveredTotal":0,"messageCreateBackstopSkippedTotal":0,"messageCreateBackstopDeferredTotal":0,"messageCreateBackstopErrorTotal":0,"lastMessageCreateBackstopErrorAt":null,"lastMessageCreateBackstopError":null,"transportMode":"openwa","recentReadLookbackMs":600000,"recentReadMaxChats":3},"connectedAccount":{"name":null,"redactedNumber":null},"inboundTesting":{"ready":true,"primaryInboundVerified":true,"primaryInboundReason":"primary_transport_observed","connectedAccount":{"name":null,"redactedNumber":null},"selfAccountInboundBlocked":false,"requiredTestNumber":"external_consented_contact","pendingExternalCount":12,"consentedExternalCount":14911,"recommendedContact":{"chat":"***1490","status":"consented","since":"2026-09-30T09:34:12.998Z","reason":null,"action":"send_test_message_from_contact"},"candidates":[{"chat":"***1490","status":"consented","since":"2026-09-30T09:34:12.998Z","reason":null,"action":"send_test_message_from_contact"},{"chat":"***2089","status":"consented","since":"2026-09-28T17:58:45.453Z","reason":null,"action":"send_test_message_from_contact"},{"chat":"***2475","status":"consented","since":"2026-09-23T16:47:46.138Z","reason":null,"action":"send_test_message_from_contact"}],"nextAction":"Inbound primario verificato.","canUseConnectedAccountForInbound":false,"reason":"connected_account_not_available","operatorHint":"Per i test inbound usa un numero WhatsApp diverso da quello collegato al bot."},"capabilities":{"audioTranscription":true,"voiceReply":true,"voiceReplyForAudio":true,"voiceReplyPrimaryDelivery":"openwa_payload","voiceReplyDeliveryModes":{"openwa":"response_payload","whatsappWebJs":"direct_media"},"voiceReplyForAudioDailyLimit":3,"voiceReplyForAudioMaxChars":650,"voiceReplyFallback":{"available":true,"bytes":160464},"voiceReplyTtsCooldown":{"active":false,"until":null,"remainingMs":0,"reason":null,"label":null}},"productionGate":{"available":true,"status":"failed","stale":true,"finishedAt":"2026-07-23T10:16:44.421Z","currentProcessStartedAt":"2026-09-30T06:22:30.664Z","durationMs":1696931,"failedStep":"Health gate","totalSteps":5,"expectedStepCount":5,"passedSteps":2,"skippedSteps":0,"failedSteps":3,"valid":false},"preCutoverGate":{"available":true,"status":"failed","stale":true,"finishedAt":"2026-07-23T10:52:28.715Z","currentProcessStartedAt":"2026-09-30T06:22:30.664Z","durationMs":1098,"failedStep":"Full gate fresco","totalSteps":5,"expectedStepCount":5,"passedSteps":3,"skippedSteps":0,"failedSteps":2,"valid":false},"cutoverPreflight":{"available":true,"status":"failed","stale":true,"finishedAt":"2026-06-30T13:17:16.993Z","currentProcessStartedAt":"2026-09-30T06:22:30.664Z","durationMs":197,"failedStep":"Transport legacy operativo","totalSteps":18,"expectedStepCount":18,"passedSteps":13,"skippedSteps":0,"failedSteps":5,"valid":false},"cutoverGate":{"available":true,"status":"failed","stale":true,"finishedAt":"2026-06-30T13:17:31.279Z","currentProcessStartedAt":"2026-09-30T06:22:30.664Z","durationMs":5288,"failedStep":"OpenWA connected","totalSteps":1,"expectedStepCount":1,"passedSteps":0,"skippedSteps":0,"failedSteps":1,"valid":false},"primaryInboundWatch":{"available":true,"status":"failed","ok":false,"stale":true,"refreshedFromCurrentStatus":true,"checkedAt":"2026-07-08T20:13:03.555Z","currentProcessStartedAt":"2026-09-30T06:22:30.664Z","durationMs":11432,"attempts":5,"failedReason":"primary_transport_observed","recommendedContact":{"chat":"***1490","status":"consented","since":"2026-09-30T09:34:12.998Z","reason":null,"action":"send_test_message_from_contact"},"operatorHint":"Non usare ***8221 per test inbound: è il numero collegato al bot. Far inviare un messaggio WhatsApp di test dal numero ***3375.","lastPrimaryActivityAt":"2026-10-06T04:40:09.039Z","lastAnyActivityAt":"2026-10-06T04:40:09.039Z","valid":false},"goLiveVerify":{"available":true,"status":"failed","stale":true,"finishedAt":"2026-07-04T12:33:23.794Z","currentProcessStartedAt":"2026-09-30T06:22:30.664Z","durationMs":182966,"failedStep":"Primary inbound watch","totalSteps":1,"expectedStepCount":3,"passedSteps":0,"skippedSteps":0,"failedSteps":1,"valid":false},"deploymentReadiness":{"stage":"not_ready","message":"Il sistema non ha ancora superato i controlli minimi.","nextAction":"Correggere i blocker prima di procedere.","productionReady":false,"liveOperationalReady":false,"preCutoverReady":false,"readyForPartnerTesting":false,"readyExceptPrimaryInbound":false,"readyExceptCutover":false,"readyExceptOpenWAQr":false,"requiresCutover":true,"requiresOpenWAQrScan":false,"primaryTransport":"openwa","primaryTransportReady":false,"primaryInboundVerified":true,"inboundVerification":{"ready":true,"primaryInboundVerified":true,"primaryInboundReason":"primary_transport_observed","connectedAccount":{"name":null,"redactedNumber":null},"selfAccountInboundBlocked":false,"requiredTestNumber":"external_consented_contact","pendingExternalCount":12,"consentedExternalCount":14911,"recommendedContact":{"chat":"***1490","status":"consented","since":"2026-09-30T09:34:12.998Z","reason":null,"action":"send_test_message_from_contact"},"candidates":[{"chat":"***1490","status":"consented","since":"2026-09-30T09:34:12.998Z","reason":null,"action":"send_test_message_from_contact"},{"chat":"***2089","status":"consented","since":"2026-09-28T17:58:45.453Z","reason":null,"action":"send_test_message_from_contact"},{"chat":"***2475","status":"consented","since":"2026-09-23T16:47:46.138Z","reason":null,"action":"send_test_message_from_contact"}],"nextAction":"Inbound primario verificato.","canUseConnectedAccountForInbound":false,"reason":"connected_account_not_available","operatorHint":"Per i test inbound usa un numero WhatsApp diverso da quello collegato al bot."},"remainingActions":["connect_openwa_session","refresh_full_gate","refresh_precutover_gate","refresh_cutover_gate"],"gates":{"production":false,"preCutover":false,"cutover":false},"components":{"response":true,"graph":true,"events":true,"primaryTransportReady":false,"primaryInboundVerified":true,"readyExceptPrimaryInbound":false,"openwaConnected":false,"openwaQrReady":false,"openwaShadowQrReady":false,"openwaShadowConnected":true},"blockers":["openwa_session_not_connected"]},"operationalReadiness":{"openwa":{"enabled":true,"mode":"openwa","runtimeOk":false,"runtimeStatus":"HTTP 404","runtimeSession":{"sessionCheck":"skipped","sessionName":"default","sessionConnected":null,"sessionStatus":null,"sessionCount":null,"error":null},"shadowRuntime":{"enabled":true,"primaryTransport":true,"mode":"primary","status":"session_present","runtimeUrl":"127.0.0.1:2790","sessionName":"default","sessionId":"***","sessionStatus":"ready","sessionConnected":true,"sessionCount":1,"qrAvailable":false,"qrLength":0,"webhookCount":0,"webhookHeadersConfigured":false,"checkedAt":"2026-10-07T02:29:38.995Z","autoEnsure":{"enabled":false,"running":false,"lastAttemptAt":null,"lastResult":null},"error":null},"sessionConnected":null,"sessionName":"default","inboundWebhookEndpoint":"/api/openwa/webhook","outboundWebhookConfigured":false,"apiKeyEnabled":true,"gatewayReady":true,"ready":false,"lastInboundAt":"2026-10-06T04:40:08.990Z","lastInboundAgeMs":78570010,"lastReplyAt":"2026-10-06T04:40:09.039Z","lastReplyAgeMs":78569961,"stale":true,"staleAfterMs":21600000},"openwaShadowRuntime":{"enabled":true,"primaryTransport":true,"mode":"primary","status":"session_present","runtimeUrl":"127.0.0.1:2790","sessionName":"default","sessionId":"***","sessionStatus":"ready","sessionConnected":true,"sessionCount":1,"qrAvailable":false,"qrLength":0,"webhookCount":0,"webhookHeadersConfigured":false,"checkedAt":"2026-10-07T02:29:38.995Z","autoEnsure":{"enabled":false,"running":false,"lastAttemptAt":null,"lastResult":null},"error":null},"eventsCache":{"mode":"fresh","ready":true,"usableEntries":2,"fallbackEntries":1,"futureItems":270,"totalItems":612,"completeEntries":4,"freshestUpdatedAt":"2026-10-07T02:22:46.571Z","refresh":{"enabled":true,"intervalMs":1800000,"startupDelayMs":20000,"running":false,"runTotal":330,"lastReason":"timer","lastStartedAt":"2026-10-07T02:22:36.164Z","lastFinishedAt":"2026-10-07T02:22:46.574Z","lastDurationMs":10410,"lastStatus":"ok","lastError":null,"lastResults":[{"key":"comune","label":"Calendario Comune","ok":true,"empty":false,"items":551,"durationMs":10410},{"key":"cinemazero-cinema","label":"Cinema Sotto le Stelle","ok":true,"empty":false,"items":1,"durationMs":225},{"key":"pordenone2027","label":"Pordenone 2027","ok":true,"empty":true,"items":0,"durationMs":831},{"key":"comune-news","label":"Novità Comune","ok":true,"empty":false,"items":60,"durationMs":3587}]}},"graph":{"enabled":true,"reachable":true,"ok":true,"neo4jAvailable":true,"ready":true,"stale":false,"pages":39,"candidatePending":0,"answerIssueOpen":1,"candidatePendingTarget":400,"candidatePendingMax":500,"candidateAtTarget":false,"queueDepth":0,"queueDropped":0,"crawlOk":37,"crawlFail":0,"crawlOptionalUnavailable":4,"refreshStartedAt":"2026-10-07T02:22:21.210Z","refreshFinishedAt":"2026-10-07T02:22:37.210Z"},"localRouter":{"enabled":true,"model":"qwen3:1.7b","timeoutMs":3500,"status":"unavailable_non_blocking","nonBlocking":true,"hotPathAvailable":false,"coolingDownUntil":null,"lastError":"This operation was aborted","lastResolvedError":null,"health":{"ok":false,"running":false,"checkedAt":"2026-10-07T02:27:52.286Z","ageMs":106718,"latencyMs":null,"error":"This operation was aborted","reason":"interval","maxLatencyMs":10000,"ttlMs":600000,"failureRetryMs":60000}},"siteIndex":{"enabled":true,"documents":5847,"updatedAt":"2026-10-06T22:30:02.504Z","buildMs":1364},"semanticRouter":{"calls":346,"cacheHits":0,"templateHits":316,"dynamicSkips":6,"lowConfidence":0,"errors":0,"specificPageGuard":7,"happeningGuard":2,"adjudications":9,"adjudicationChanges":4,"askedFactGuard":1,"latency":{"samples":200,"p50":572,"p95":664,"max":1197,"failures":0,"timeoutMs":2500}},"aiProvider":{"fast":{"samples":200,"p50":569,"p95":887,"max":2464,"failures":0},"smart":{"samples":19,"p50":1501,"p95":5343,"max":5343,"failures":0}},"anonymize":{"ner":82,"regex":47,"busy":38,"failures":9,"cacheHits":9,"tooSlow":13,"skipped":330,"inFlight":0,"healthy":true},"eventLoop":{"current":{"p50Ms":20,"p99Ms":23,"maxMs":488,"at":"2026-10-07T02:29:39.004Z"},"lastWindow":{"p50Ms":20,"p99Ms":23,"maxMs":483,"at":"2026-10-07T02:27:31.508Z"},"windowMs":300000,"hostLoad":[3.73,4.13,3.99]},"replyReview":{"enabled":true,"mode":"audit","timeoutMs":4000,"runs":18,"confirmed":10,"rewritten":0,"rejected":0,"failures":0,"skippedForTime":8,"auditOk":10,"problemsFound":8,"auditProblems":8},"codexCli":{"enabled":false,"model":"gpt-5.4-mini","reasoningFast":"low","reasoningSmart":"medium","coolingDownUntil":null,"lastError":null},"eventAiReview":{"enabled":true,"coolingDownUntil":null,"lastError":null}}},"inboundWebhookEndpoint":"/api/openwa/webhook","outboundWebhookConfigured":false,"apiKeyEnabled":true}