АРЧ - Ассистент: отделить reference-срез от execution-окна в ответах по lifecycle follow-up

This commit is contained in:
2026-04-15 14:50:16 +03:00
parent 70cc5a99f1
commit 7a6d8eb070
44 changed files with 2394 additions and 118 deletions
@@ -16,6 +16,7 @@ export interface RunAssistantTurnAttemptRuntimeAddressInput<PayloadType = unknow
sessionId: string;
userMessage: string;
sessionItems: unknown[];
sessionAddressNavigationState?: unknown;
runtimeAnalysisContext: { as_of_date: string | null };
sessionOrganizationScope: AssistantSessionOrganizationScopeContext;
}
@@ -35,7 +36,8 @@ export interface RunAssistantTurnAttemptRuntimeInput<ResponseType = unknown, Pay
runUserTurnBootstrapRuntime: (payload: PayloadType) => RunAssistantUserTurnBootstrapRuntimeOutput;
resolveSessionOrganizationScopeContext: (
userMessage: string,
sessionItems: unknown[]
sessionItems: unknown[],
sessionAddressNavigationState?: unknown
) => AssistantSessionOrganizationScopeContext;
runAddressAttemptRuntime: (
input: RunAssistantTurnAttemptRuntimeAddressInput<PayloadType>
@@ -59,7 +61,8 @@ export async function runAssistantTurnAttemptRuntime<ResponseType = unknown, Pay
const userTurn = input.runUserTurnBootstrapRuntime(input.payload);
const sessionOrganizationScope = input.resolveSessionOrganizationScopeContext(
userTurn.userMessage,
userTurn.session.items
userTurn.session.items,
userTurn.session.address_navigation_state ?? null
);
const addressRuntime = await input.runAddressAttemptRuntime(
buildAssistantTurnAttemptAddressRuntimeInput({