ГЛОБАЛЬНЫЙ РЕФАКТОРИНГ АРХИТЕКТУРЫ - Рефакторинг этапов 2.522.55 - Перевод finalizeAddressLaneResponse на builder вместо inline-сборки в assistantAddressAttemptRuntimeAdapter.ts \ Добавлен builder для lane-attempt input: assistantAddressLaneAttemptInputBuilder.ts. \ Добавлен builder для финального address-runtime input: assistantAddressRuntimeInputBuilder.ts.

This commit is contained in:
2026-04-11 01:09:53 +03:00
parent b612615219
commit c849eb5f5b
12 changed files with 504 additions and 67 deletions
@@ -0,0 +1,53 @@
import type { RunAssistantAddressLaneResponseAttemptRuntimeInput } from "./assistantAddressLaneResponseAttemptRuntimeAdapter";
export interface BuildAssistantAddressLaneResponseAttemptRuntimeInputInput<ResponseType = unknown> {
sessionId: string;
userMessage: string;
effectiveAddressUserMessage: string;
addressLane: RunAssistantAddressLaneResponseAttemptRuntimeInput<ResponseType>["addressLane"];
carryoverMeta?: RunAssistantAddressLaneResponseAttemptRuntimeInput<ResponseType>["carryoverMeta"];
llmPreDecomposeMeta?: RunAssistantAddressLaneResponseAttemptRuntimeInput<ResponseType>["llmPreDecomposeMeta"];
knownOrganizations: string[];
activeOrganization: string | null;
sanitizeOutgoingAssistantText:
RunAssistantAddressLaneResponseAttemptRuntimeInput<ResponseType>["sanitizeOutgoingAssistantText"];
buildAddressDebugPayload:
RunAssistantAddressLaneResponseAttemptRuntimeInput<ResponseType>["buildAddressDebugPayload"];
buildAddressFollowupOffer:
RunAssistantAddressLaneResponseAttemptRuntimeInput<ResponseType>["buildAddressFollowupOffer"];
mergeKnownOrganizations:
RunAssistantAddressLaneResponseAttemptRuntimeInput<ResponseType>["mergeKnownOrganizations"];
toNonEmptyString: RunAssistantAddressLaneResponseAttemptRuntimeInput<ResponseType>["toNonEmptyString"];
appendItem: RunAssistantAddressLaneResponseAttemptRuntimeInput<ResponseType>["appendItem"];
getSession: RunAssistantAddressLaneResponseAttemptRuntimeInput<ResponseType>["getSession"];
persistSession: RunAssistantAddressLaneResponseAttemptRuntimeInput<ResponseType>["persistSession"];
cloneConversation: RunAssistantAddressLaneResponseAttemptRuntimeInput<ResponseType>["cloneConversation"];
logEvent: RunAssistantAddressLaneResponseAttemptRuntimeInput<ResponseType>["logEvent"];
messageIdFactory?: RunAssistantAddressLaneResponseAttemptRuntimeInput<ResponseType>["messageIdFactory"];
}
export function buildAssistantAddressLaneResponseAttemptRuntimeInput<ResponseType = unknown>(
input: BuildAssistantAddressLaneResponseAttemptRuntimeInputInput<ResponseType>
): RunAssistantAddressLaneResponseAttemptRuntimeInput<ResponseType> {
return {
sessionId: input.sessionId,
userMessage: input.userMessage,
effectiveAddressUserMessage: input.effectiveAddressUserMessage,
addressLane: input.addressLane,
carryoverMeta: input.carryoverMeta ?? null,
llmPreDecomposeMeta: input.llmPreDecomposeMeta ?? null,
knownOrganizations: input.knownOrganizations,
activeOrganization: input.activeOrganization,
sanitizeOutgoingAssistantText: input.sanitizeOutgoingAssistantText,
buildAddressDebugPayload: input.buildAddressDebugPayload,
buildAddressFollowupOffer: input.buildAddressFollowupOffer,
mergeKnownOrganizations: input.mergeKnownOrganizations,
toNonEmptyString: input.toNonEmptyString,
appendItem: input.appendItem,
getSession: input.getSession,
persistSession: input.persistSession,
cloneConversation: input.cloneConversation,
logEvent: input.logEvent,
messageIdFactory: input.messageIdFactory
};
}