v1 не удался: LLM игнорировал необязательный тег <gift>. v2 принудительно структурирует вывод с помощью JSON-режима. Каждый раунд агент ДОЛЖЕН выводить {"action": "speak"|"gift", ...}. Проверяет, создает ли экономическое давление с ПРИНУДИТЕЛЬНЫМ выбором дифференциацию ролей (чистые дарители против получателей). Если подарки теперь срабатывают (>0 за запуск в среднем), но распределение ≈ GIFT_RANDOM → выбор не имеет значения, случайное истощение. Если подарки срабатывают И Gini полученных отличается от случайного → затраты создают структуру.