Flow зацикливается

ImpactBot имеет защиту: max 50 итераций на одного клиента в одном flow run. После — flow останавливается с warning.

Причины

### 1. Замкнутая ветка condition

``` A → condition → B → A ← цикл, нет break ```

Решение: добавить переменную-counter и break:

``` set_variable counter = 0 ↓ condition: counter < 5 yes → A → set counter+1 → loop no → exit ```

### 2. Self-loop через message

Если message блок ведёт сам на себя — каждый ответ клиента запускает блок снова.

Решение: добавить `waitForInput=true` или вынести в отдельный flow.

### 3. Recursive trigger

Trigger `*` (любое сообщение) запускает flow → flow отправляет message → клиент отвечает → trigger снова срабатывает.

Решение: использовать `/specific_command` триггеры или `only_first_message` filter.

Preflight check

Перед публикацией flow — Preflight:

  • Cycle detection (DFS) — обнаруживает циклы
  • Unreachable blocks — блоки которые никогда не выполняются
  • 422 ошибка с массивом проблем при попытке publish