ГЛОБАЛЬНЫЙ РЕФАКТОРИНГ АРХИТЕКТУРЫ - Рефакторинг этапов 2.89 - 2.92 и 2.93 - 2.96 - Ужесточение deep-turn финализацию/response контракт debug до строго AssistantDebugPayload / Вынен общий контракт followup-usage и helper / Протянут typed followupUsage по deep-turn цепочке и убрал inline-cast проверки applied

This commit is contained in:
2026-04-11 11:07:56 +03:00
parent 966be04af9
commit 360b59d7c5
17 changed files with 95 additions and 20 deletions
@@ -5,6 +5,7 @@ import type { QuestionTypeClass } from "./questionTypeResolver";
import { resolveQuestionType } from "./questionTypeResolver";
import { composeAssistantAnswer } from "./answerComposer";
import type { CompanyAnchorSet } from "./companyAnchorResolver";
import { isAssistantFollowupApplied, type AssistantFollowupUsage } from "./assistantFollowupUsage";
export interface BuildAssistantDeepTurnCompositionInput {
userMessage: string;
@@ -13,7 +14,7 @@ export interface BuildAssistantDeepTurnCompositionInput {
requirements: AssistantRequirement[];
coverageReport: RequirementCoverageReport;
groundingCheck: AnswerGroundingCheck;
followupUsage: unknown | null | undefined;
followupUsage: AssistantFollowupUsage | null | undefined;
investigationState: InvestigationStateWithProblemUnits | null | undefined;
companyAnchors: unknown;
normalizedPayload: NormalizeResponsePayload["normalized"];
@@ -65,7 +66,7 @@ export function buildAssistantDeepTurnComposition(
const resolveQuestionTypeSafe = input.resolveQuestionTypeFn ?? resolveQuestionType;
const composeAssistantAnswerSafe = input.composeAssistantAnswerFn ?? composeAssistantAnswer;
const followupApplied = Boolean((input.followupUsage as { applied?: unknown } | null)?.applied);
const followupApplied = isAssistantFollowupApplied(input.followupUsage);
const focusDomainHint = followupApplied
? input.investigationState?.followup_context?.active_domain ?? input.investigationState?.focus.domain ?? null
: null;