ГЛОБАЛЬНЫЙ РЕФАКТОРИНГ АРХИТЕКТУРЫ - Рефакторинг этапов Stage 3.7 ХВОСТЫ Убрана часть чат-дрифта и зафиксировал роутинг в deep \ Ослаблена шаблонность коротких блоков ответа (детерминированные вариативные формулировки вместо одной и той же фразы)

This commit is contained in:
2026-04-11 20:14:38 +03:00
parent 351993430f
commit 160ed18fe5
9 changed files with 594 additions and 86 deletions
@@ -3209,28 +3209,75 @@ function buildShortSectionLine(structure: AnswerStructureV11): string {
const broken = sanitizeUserText(structure.direct_answer) ?? "";
const domain = inferNarrativeDomainFromText(broken);
const incomplete = isIncompleteEvidence(structure);
const shortSeed = `${domain}|${incomplete ? "partial" : "grounded"}|${broken}`;
if (/вне доступного учетного контура/i.test(broken)) {
return "Запрос вне доступного учетного контура.";
}
if (/не совпал с предметом вопроса|более точный фокус/i.test(broken)) {
return "Требуется уточнение фокуса, чтобы ответить по нужному участку учета.";
return pickDeterministicBoundaryVariant(shortSeed, [
"Требуется уточнить фокус, чтобы ответить по нужному участку учета.",
"Сейчас не хватает точного фокуса вопроса для надежного вывода.",
"Нужна чуть более точная формулировка фокуса запроса."
]);
}
if (/ненадежен|уточнен/i.test(broken)) {
return "Проблема подтверждается частично; для уверенного вывода нужны уточнения.";
return pickDeterministicBoundaryVariant(shortSeed, [
"Сигналы есть, но для уверенного вывода нужны уточнения.",
"Картина пока частичная: подтверждения есть, но не хватает уточнений.",
"Промежуточный вывод собран, однако без уточнений он остается ограниченным."
]);
}
if (domain === "settlements_60_62") {
return incomplete
? "Проблема с закрытием расчета подтверждается частично."
: "Проблема с закрытием расчета подтверждена.";
? pickDeterministicBoundaryVariant(shortSeed, [
"По взаиморасчетам видны признаки неполного закрытия, но картина пока частичная.",
"Есть подтвержденные сигналы разрыва закрытия расчетов, часть вывода остается ограниченной.",
"Риск незакрытых взаиморасчетов подтвержден частично и требует уточнения."
])
: pickDeterministicBoundaryVariant(shortSeed, [
"Проблема с закрытием расчетов подтверждена на текущей опоре.",
"Разрыв в закрытии взаиморасчетов подтвержден.",
"По текущей опоре несходимость в закрытии расчетов подтверждена."
]);
}
if (domain === "vat_document_register_book") {
return incomplete ? "Проблема в цепочке НДС подтверждается частично." : "Проблема в цепочке НДС подтверждена.";
return incomplete
? pickDeterministicBoundaryVariant(shortSeed, [
"В цепочке НДС есть подтвержденные отклонения, но пока не по всем звеньям.",
"Сигналы по НДС подтверждены частично; для полного вывода нужна дополнительная проверка.",
"Есть частичное подтверждение разрыва в НДС-контуре."
])
: pickDeterministicBoundaryVariant(shortSeed, [
"Проблема в цепочке НДС подтверждена.",
"Разрыв в НДС-контуре подтвержден на текущей опоре.",
"По НДС выявлен и подтвержден проблемный переход в цепочке."
]);
}
if (domain === "month_close_costs_20_44") {
return incomplete ? "Проблема в контуре закрытия месяца подтверждается частично." : "Проблема в контуре закрытия месяца подтверждена.";
return incomplete
? pickDeterministicBoundaryVariant(shortSeed, [
"По закрытию месяца есть проблемные сигналы, но они подтверждены частично.",
"Контур 20/44 показывает частично подтвержденные отклонения закрытия.",
"Есть признаки сбоя в закрытии месяца, однако опора пока неполная."
])
: pickDeterministicBoundaryVariant(shortSeed, [
"Проблема в контуре закрытия месяца подтверждена.",
"Сбой в закрытии месяца подтвержден на текущей выборке.",
"Разрыв в контуре 20/44 подтвержден."
]);
}
return incomplete ? "Проблема подтверждается частично на текущей опоре." : "Проблема подтверждена на текущей опоре.";
return incomplete
? pickDeterministicBoundaryVariant(shortSeed, [
"Есть подтвержденные сигналы, но вывод пока частичный.",
"Промежуточная проверка выявила проблему, однако опора еще неполная.",
"Часть признаков подтверждена, для полного вывода нужна допроверка."
])
: pickDeterministicBoundaryVariant(shortSeed, [
"Проблема подтверждена на текущей опоре.",
"Текущая опора подтверждает наличие проблемы.",
"Подтверждение проблемы по текущей выборке получено."
]);
}
function humanizeCompositeDirectAnswer(value: string): string | null {