ГЛОБАЛЬНЫЙ РЕФАКТОРИНГ АРХИТЕКТУРЫ - Рефакторинг этапов 2.2 - Усилена оркестрацию в deep/address гейте и follow-up binding в assistantService.ts. Починен кейс UTF-8 follow-up refinement (теперь followup_state_usage.applied=true в нужном сценарии). Убраны регрессии по assistantLivingRouter и stage3 lifecycle probe. Корректное поведение для llm canonical candidate (чтобы не уезжало в clarification_required там, где должен быть address factual).
This commit is contained in:
@@ -1,9 +1,14 @@
|
||||
import { nanoid } from "nanoid";
|
||||
import type {
|
||||
AssistantAddressRuntimeMetaForDeep,
|
||||
AssistantConversationItem,
|
||||
AssistantDebugPayload,
|
||||
AssistantDebugRouteRecord,
|
||||
AssistantExecutionStateRecord,
|
||||
AssistantRequirement,
|
||||
AnswerGroundingCheck,
|
||||
FaLiveRouteAuditDebug,
|
||||
RbpLiveRouteAuditDebug,
|
||||
RequirementCoverageReport,
|
||||
UnifiedRetrievalResult
|
||||
} from "../types/assistant";
|
||||
@@ -13,6 +18,18 @@ import type { AssistantDeepTurnInputBuilderArgs } from "./assistantDeepTurnInput
|
||||
import { buildAssistantDeepTurnPackagingInput } from "./assistantDeepTurnInputBuilder";
|
||||
import { assembleAssistantDeepTurnPackaging } from "./assistantDeepTurnPackaging";
|
||||
import type { AssistantFollowupUsage } from "./assistantFollowupUsage";
|
||||
import type { ClaimBoundAnchorAudit, TargetedEvidenceAcquisitionAudit } from "./assistantClaimBoundEvidence";
|
||||
import type { CompanyAnchorSet } from "./companyAnchorResolver";
|
||||
import type {
|
||||
DomainPolarityGuardAudit,
|
||||
EvidenceAdmissibilityAudit,
|
||||
GroundedAnswerEligibilityAudit,
|
||||
TemporalGuardAudit
|
||||
} from "./assistantRuntimeGuards";
|
||||
import type {
|
||||
AssistantRetrievalCallRecord,
|
||||
AssistantRetrievalRawResultRecord
|
||||
} from "./assistantDeepTurnRetrievalRuntimeAdapter";
|
||||
import type {
|
||||
AssistantAnalysisContextForContract,
|
||||
AssistantRuntimeAnalysisContextForPrePackaging
|
||||
@@ -22,6 +39,7 @@ import {
|
||||
buildAssistantInvestigationStateSnapshot,
|
||||
persistAssistantInvestigationStateSnapshot
|
||||
} from "./assistantInvestigationStateRuntimeAdapter";
|
||||
import type { DeepAnalysisLogDetails } from "./assistantMessageLogAssembler";
|
||||
|
||||
type AssistantDeepTurnCompositionForPackaging = AssistantDeepTurnInputBuilderArgs["composition"] & {
|
||||
assistant_reply: string;
|
||||
@@ -45,44 +63,31 @@ export interface AssistantDeepTurnPackagingRuntimeInput {
|
||||
coverageEvaluationRequirements: AssistantRequirement[];
|
||||
coverageReport: RequirementCoverageReport;
|
||||
groundingCheck: AnswerGroundingCheck;
|
||||
retrievalCalls: Array<Record<string, unknown>>;
|
||||
retrievalResultsRaw: unknown[];
|
||||
retrievalCalls: AssistantRetrievalCallRecord[];
|
||||
retrievalResultsRaw: AssistantRetrievalRawResultRecord[];
|
||||
retrievalResults: UnifiedRetrievalResult[];
|
||||
questionTypeClass: string;
|
||||
companyAnchors: unknown;
|
||||
companyAnchors: CompanyAnchorSet | null;
|
||||
runtimeAnalysisContext: AssistantDeepTurnInputBuilderArgs["runtimeAnalysisContext"];
|
||||
businessScopeResolution: AssistantDeepTurnInputBuilderArgs["businessScopeResolution"];
|
||||
temporalGuard: Record<string, unknown>;
|
||||
polarityAudit: Record<string, unknown>;
|
||||
claimAnchorAudit: Record<string, unknown>;
|
||||
targetedEvidenceAudit: unknown;
|
||||
evidenceAdmissibilityGateAudit: unknown;
|
||||
rbpLiveRouteAudit: unknown | null;
|
||||
faLiveRouteAudit: unknown | null;
|
||||
groundedAnswerEligibilityGuard: Record<string, unknown>;
|
||||
temporalGuard: TemporalGuardAudit;
|
||||
polarityAudit: DomainPolarityGuardAudit;
|
||||
claimAnchorAudit: ClaimBoundAnchorAudit;
|
||||
targetedEvidenceAudit: TargetedEvidenceAcquisitionAudit;
|
||||
evidenceAdmissibilityGateAudit: EvidenceAdmissibilityAudit;
|
||||
rbpLiveRouteAudit: RbpLiveRouteAuditDebug | null;
|
||||
faLiveRouteAudit: FaLiveRouteAuditDebug | null;
|
||||
groundedAnswerEligibilityGuard: GroundedAnswerEligibilityAudit;
|
||||
followupStateUsage?: AssistantFollowupUsage | null;
|
||||
followupApplied: boolean;
|
||||
composition: AssistantDeepTurnCompositionForPackaging;
|
||||
featureContractsV11: boolean;
|
||||
featureAnswerPolicyV11: boolean;
|
||||
previousInvestigationState: InvestigationStateWithProblemUnits | null | undefined;
|
||||
addressRuntimeMetaForDeep:
|
||||
| {
|
||||
attempted?: boolean;
|
||||
applied?: boolean;
|
||||
reason?: string | null;
|
||||
provider?: string | null;
|
||||
fallbackRuleHit?: string | null;
|
||||
toolGateDecision?: string | null;
|
||||
toolGateReason?: string | null;
|
||||
predecomposeContract?: unknown;
|
||||
orchestrationContract?: unknown;
|
||||
}
|
||||
| null
|
||||
| undefined;
|
||||
addressRuntimeMetaForDeep: AssistantAddressRuntimeMetaForDeep | null | undefined;
|
||||
extractDroppedIntentSegments: (normalizedPayload: NormalizeResponsePayload["normalized"]) => string[];
|
||||
buildDebugRoutes: (routeSummary: RouteHintSummary | null) => Array<Record<string, unknown>>;
|
||||
extractExecutionState: (normalizedPayload: NormalizeResponsePayload["normalized"]) => unknown;
|
||||
buildDebugRoutes: (routeSummary: RouteHintSummary | null) => AssistantDebugRouteRecord[];
|
||||
extractExecutionState: (normalizedPayload: NormalizeResponsePayload["normalized"]) => AssistantExecutionStateRecord[];
|
||||
sanitizeReply: (value: string, fallback?: string) => string;
|
||||
persistInvestigationState: (sessionId: string, snapshot: InvestigationStateWithProblemUnits) => void;
|
||||
nowIso?: () => string;
|
||||
@@ -99,13 +104,13 @@ export interface AssistantDeepTurnPackagingRuntimeOutput {
|
||||
investigationStateSnapshot: InvestigationStateWithProblemUnits | null;
|
||||
droppedIntentSegments: string[];
|
||||
analysisContextForContract: AssistantAnalysisContextForContract | null;
|
||||
routesForDebug: Array<Record<string, unknown>>;
|
||||
resolvedExecutionState: unknown;
|
||||
routesForDebug: AssistantDebugRouteRecord[];
|
||||
resolvedExecutionState: AssistantExecutionStateRecord[];
|
||||
safeAssistantReplyBase: string;
|
||||
safeAssistantReply: string;
|
||||
debug: AssistantDebugPayload;
|
||||
assistantItem: AssistantConversationItem;
|
||||
deepAnalysisLogDetails: Record<string, unknown>;
|
||||
deepAnalysisLogDetails: DeepAnalysisLogDetails;
|
||||
}
|
||||
|
||||
export function runAssistantDeepTurnPackagingRuntime(
|
||||
|
||||
Reference in New Issue
Block a user