feat: анти-диктовка свободного floor_escape (consent forgery C)
Свободный floor_escape (лёгкий escape в чате) НЕ доверяется, если контроллер в своём тексте текущего хода инструктировал владельца вписать метку. processEvent читает текст контроллера из транскрипта хода (readTranscript + lastAssistantText, переиспользован), один раз на событие зовёт detectOtherSocialEng (раньше был мёртвой проводкой — не вызывался нигде); flagged → floor_escape не пишется. Паттерны detectOtherSocialEng усилены императивной диктовкой метки FLOOR-ESCAPE (глагол рядом; простое упоминание концепта не флагуется). fail-open observability — сбой чтения транскрипта → как раньше. Применяется к floor_escape (git-approval закрыт #A). Завершает кодовую часть эпика (A + B1-B5 + C). Спека §C. Свод 4350 зелёный. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -113,6 +113,10 @@ const OTHER_SOCIAL_ENG_PATTERNS = [
|
||||
/в\s+поле\s+["«]?другое["»]?/iu,
|
||||
/нажми\s+["«]?другое["»]?\s+и\s+впиши/iu,
|
||||
/укажи\s+в\s+графе\s+["«]?другое["»]?/iu,
|
||||
// C (анти-диктовка): императивная диктовка метки FLOOR-ESCAPE (глагол рядом с меткой).
|
||||
// НЕ ловит простое упоминание концепта (нет императива перед floor-escape).
|
||||
/(?:набери|впиши|вставь|скопируй|введи|напечатай)[^.\n]{0,40}floor-escape/iu,
|
||||
/(?:type|paste|enter|copy)[^.\n]{0,40}floor-escape/iu,
|
||||
];
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user