Стабилизировать маршрутизацию deep/address и chat-boundary

This commit is contained in:
2026-05-24 12:07:07 +03:00
parent 801982b66b
commit 08615aaa7c
18 changed files with 272 additions and 57 deletions
@@ -3886,7 +3886,6 @@ function composeFactualReplyBody(intent, rows, options = {}) {
(String(right.period ?? "").localeCompare(String(left.period ?? ""), "ru")))
.slice(0, Math.min(rows.length, 5));
const semanticSummary = summarizeBankOperationSemantics(rows);
const compactRoleAnswer = /(?:клиент|поставщик|финансов|роль|коротко)/iu.test(String(options.userMessage ?? ""));
const compactEvidenceRows = visibleRows.map((row, index) => {
const direction = bankOperationDirectionLabel(bankOperationDirection(row));
const amount = formatMoneyRub(row.amount ?? 0);
@@ -3904,11 +3903,9 @@ function composeFactualReplyBody(intent, rows, options = {}) {
roleBoundary ?? "Показываю подтвержденные банковские операции из текущего среза.",
...(semanticSummary ? [semanticSummary] : [])
];
if (!compactRoleAnswer) {
lines.push(bankOperationEvidenceLine(rows, preferredBankEvidenceDirection(options.userMessage)), "Примеры строк 1С:", ...compactEvidenceRows);
}
lines.push(bankOperationEvidenceLine(rows, preferredBankEvidenceDirection(options.userMessage)), "Примеры строк 1С:", ...compactEvidenceRows);
lines.push("Следующий шаг: могу отдельно разложить назначения платежа, договоры или отделить банковский контур от клиентского/поставщицкого.");
if (!compactRoleAnswer && rows.length > visibleRows.length) {
if (rows.length > visibleRows.length) {
lines.push(`Показаны первые ${visibleRows.length} из ${rows.length}; полный список остается в подтвержденном срезе.`);
}
return {