"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ASSISTANT_ROUTE_POLICY_RUNTIME_SCHEMA_VERSION = void 0; exports.runAssistantRoutePolicyRuntime = runAssistantRoutePolicyRuntime; exports.ASSISTANT_ROUTE_POLICY_RUNTIME_SCHEMA_VERSION = "assistant_route_policy_runtime_v1"; function hasObject(value) { return Boolean(value && typeof value === "object"); } function runAssistantRoutePolicyRuntime(input) { const orchestrationDecision = input.resolveAssistantOrchestrationDecision({ rawUserMessage: input.rawUserMessage, effectiveAddressUserMessage: input.effectiveAddressUserMessage, followupContext: input.followupContext, llmPreDecomposeMeta: input.llmPreDecomposeMeta, sessionItems: input.sessionItems, sessionOrganizationScope: input.sessionOrganizationScope, useMock: input.useMock }); const livingModeDecision = { mode: orchestrationDecision.livingMode, reason: orchestrationDecision.livingReason }; return { orchestrationDecision, livingModeDecision, routePolicyContract: { schema_version: exports.ASSISTANT_ROUTE_POLICY_RUNTIME_SCHEMA_VERSION, policy_owner: "assistantRoutePolicyRuntimeAdapter", decision_source: "resolveAssistantOrchestrationDecision", living_mode: livingModeDecision.mode, living_reason: livingModeDecision.reason, tool_gate_decision: orchestrationDecision.toolGateDecision ?? null, tool_gate_reason: orchestrationDecision.toolGateReason ?? null, has_followup_context: hasObject(input.followupContext), has_orchestration_contract: hasObject(orchestrationDecision.orchestrationContract) } }; }