← К списку демонстраций
Гештальт и инсайты
gestalt.js · ур. 4

Гештальт в Beast — запись о нерешённой задаче (образ цели, ветка, ситуация, опробованные автоматизмы, `status`). Инсайт — событие связывания цели с кандидатом решения; часть инсайтов приходит с закрытием кадра ЭП и из буфера резонанса.

Закрытие кадра: Gestalt_onEpisodeFeedbackClosed
Вызывается из `closeLastFrame` после вычисления `effect` (до сброса глобалов ожидания). В буфер кладётся сигнатура закрытого эпизода: цикл ожидания, `goalImageId`, ветка, ситуация, автоматизм, ОД, `effect`, вид (`positive_feedback` / `non_positive`). Если у цикла была цель — находится или создаётся гештальт по `goalImageId`: дописывается автоматизм, при `effect > 0` уточняются ветка/ситуация, статус → PARTIAL или при сильном эффекте → успешное закрытие; при `effect ≤ 0` — инсайт «переинтерпретация».
Буфер резонанса (GestaltResonanceBuffer)
FIFO сигнатур успешных и прочих закрытий (ограничение длины — старые вытесняются). Нужен для кросс-цикловой аналогии: успех в одном контексте может резонировать с открытым гештальтом другой задачи.
Уровень 4: разбор буфера
В `Gestalt_onConsciousnessTick` для ведущего открытого гештальта вызывается `Gestalt_processResonanceBufferForCycle`: для записей с `effect > 0` считается `score` сходства с гештальтом (цель, ветка, ситуация…). При превышении порога — инсайт аналогии, дополнение `automatismIds` и `analogyPool`, смена статуса NEW → STARTED и т.д.
Статусы цели (гештальт)
0 — заведено 1 — начато 2 — частично (фидбек ЭП) 3 — успешное закрытие

Порог «сильного» позитивного `effect` для перевода в статус успеха задаётся в `gestalt.js` (`EFFECT_STRONG_CLOSE`).