NODEDC_1C/llm_normalizer/backend/dist/services/assistantLivingChatHandlerR...

77 lines
4.3 KiB
JavaScript

"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,
hasLivingChatSignal: input.hasLivingChatSignal,
shouldEmitOrganizationSelectionReply: input.shouldEmitOrganizationSelectionReply,
hasAssistantCapabilityQuestionSignal: input.hasAssistantCapabilityQuestionSignal,
resolveOrganizationSelectionFromMessage: input.resolveOrganizationSelectionFromMessage,
resolveDataScopeProbe: input.resolveDataScopeProbe,
executeLlmChat: input.executeLlmChat,
applyScriptGuard: input.applyScriptGuard,
applyGroundingGuard: input.applyGroundingGuard,
buildAssistantSafetyRefusalReply: input.buildAssistantSafetyRefusalReply,
buildAssistantDataScopeContractReply: input.buildAssistantDataScopeContractReply,
buildAssistantProactiveOrganizationOfferReply: input.buildAssistantProactiveOrganizationOfferReply,
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;
}
}