Files
brain/tools/objection-delivery.mjs
T

19 lines
1.3 KiB
JavaScript

#!/usr/bin/env node
/** Сборка текста замечания для доставки контроллеру (полный текст, не обрезаем). */
export function buildObjectionFeedback({ side, text } = {}) {
const who = side === 'judge' ? 'судья' : 'наставник';
const body = (typeof text === 'string' && text.trim()) ? text.trim() : '(текст замечания пуст)';
return `[${who}] замечание (нужно учесть и переписать):\n${body}`;
}
/**
* Спека §9: degraded ИИ (наставник/судья упал/таймаут/нет ключа) → контроллер НЕ молчит,
* а получает «не смог дозвониться» + причину. Печати нет — это не одобрение и не возражение.
*/
export function buildDegradedFeedback({ side, reason } = {}) {
const who = side === 'judge' ? 'судья' : 'наставник';
const why = (typeof reason === 'string' && reason.trim()) ? reason.trim() : '(причина не указана)';
return `[${who}] не смог дозвониться (ИИ недоступен): ${why}.\n`
+ 'Печати нет — это НЕ одобрение и НЕ возражение. Повтори попытку позже или сообщи владельцу.';
}