"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.tryHandleAssistantLivingChatRuntime = tryHandleAssistantLivingChatRuntime; const assistantLivingChatRuntimeAdapter_1 = require("./assistantLivingChatRuntimeAdapter"); const assistantLivingChatTurnFinalizeRuntimeAdapter_1 = require("./assistantLivingChatTurnFinalizeRuntimeAdapter"); async function tryHandleAssistantLivingChatRuntime(input) { const runLivingChatRuntimeSafe = input.runLivingChatRuntime ?? assistantLivingChatRuntimeAdapter_1.runAssistantLivingChatRuntime; const finalizeLivingChatTurnSafe = input.finalizeLivingChatTurn ?? assistantLivingChatTurnFinalizeRuntimeAdapter_1.finalizeAssistantLivingChatTurn; try { const runtime = await runLivingChatRuntimeSafe({ userMessage: input.userMessage, sessionItems: input.sessionItems, modeDecision: input.modeDecision, sessionScope: input.sessionScope, addressRuntimeMeta: input.addressRuntimeMeta, traceIdFactory: input.traceIdFactory, toNonEmptyString: input.toNonEmptyString, mergeKnownOrganizations: input.mergeKnownOrganizations, hasAssistantDataScopeMetaQuestionSignal: input.hasAssistantDataScopeMetaQuestionSignal, shouldHandleAsAssistantCapabilityMetaQuery: input.shouldHandleAsAssistantCapabilityMetaQuery, hasDestructiveDataActionSignal: input.hasDestructiveDataActionSignal, hasDangerOrCoercionSignal: input.hasDangerOrCoercionSignal, hasOperationalAdminActionRequestSignal: input.hasOperationalAdminActionRequestSignal, hasOrganizationFactLookupSignal: input.hasOrganizationFactLookupSignal, hasOrganizationFactFollowupSignal: input.hasOrganizationFactFollowupSignal, shouldEmitOrganizationSelectionReply: input.shouldEmitOrganizationSelectionReply, hasAssistantCapabilityQuestionSignal: input.hasAssistantCapabilityQuestionSignal, resolveDataScopeProbe: input.resolveDataScopeProbe, executeLlmChat: input.executeLlmChat, applyScriptGuard: input.applyScriptGuard, applyGroundingGuard: input.applyGroundingGuard, buildAssistantSafetyRefusalReply: input.buildAssistantSafetyRefusalReply, buildAssistantDataScopeContractReply: input.buildAssistantDataScopeContractReply, buildAssistantOrganizationFactBoundaryReply: input.buildAssistantOrganizationFactBoundaryReply, buildAssistantDataScopeSelectionReply: input.buildAssistantDataScopeSelectionReply, buildAssistantOperationalBoundaryReply: input.buildAssistantOperationalBoundaryReply, buildAssistantCapabilityContractReply: input.buildAssistantCapabilityContractReply }); if (!runtime.handled || !runtime.debug) { return null; } const finalization = finalizeLivingChatTurnSafe({ sessionId: input.sessionId, userMessage: input.userMessage, assistantReply: runtime.chatText, replyType: "factual_with_explanation", debug: runtime.debug, modeDecision: input.modeDecision, appendItem: input.appendItem, getSession: input.getSession, persistSession: input.persistSession, cloneConversation: input.cloneConversation, logEvent: input.logEvent, messageIdFactory: input.messageIdFactory }); return finalization.response; } catch (error) { input.logEvent({ timestamp: input.nowIso(), level: "warn", service: "assistant_loop", message: "assistant_living_chat_failed_fallback_to_deep", sessionId: input.sessionId, details: { session_id: input.sessionId, user_message: input.userMessage, reason: error instanceof Error ? error.message : String(error) } }); return null; } }