User Story
Как пользователь автономных ИИ-агентов, я хочу получать явный сигнал, если агент выглядит зависшим, но продолжает расходовать токены, чтобы вовремя остановить бесконечный цикл или runaway-задачу.
Проблема
Обычный Active означает только наличие активности. Но есть опасный случай: агент долго не завершает задачу, не даёт полезного прогресса, а token_rate остаётся выше нуля. Это должно считаться отдельным состоянием риска.
Acceptance Criteria
- Добавить core-состояние для подозрительной активности, например
Burning / Stuck / Runaway.
- Состояние срабатывает, когда:
tokens/sec или token_rate выше нуля;
- активность длится дольше заданного окна, например 60-120 секунд;
- нет признаков завершения/простоя (
sessions_active не падает, rate не обнуляется).
- Детектор должен работать поверх privacy-safe
abtop --status-json / AgentPulse, без чтения prompt/chat/path данных.
- Порог времени и rate должны быть вынесены в константы или настройки, чтобы их можно было менять без переписывания логики.
- Добавить unit tests: normal active, idle, stuck burn, recovery after rate drops to zero.
Зависит от
Что можно трогать
Что нельзя трогать
- Android UI
.env и ключи
SUBMISSION.ru.md
- full transcript parsing внутри vimit
User Story
Как пользователь автономных ИИ-агентов, я хочу получать явный сигнал, если агент выглядит зависшим, но продолжает расходовать токены, чтобы вовремя остановить бесконечный цикл или runaway-задачу.
Проблема
Обычный
Activeозначает только наличие активности. Но есть опасный случай: агент долго не завершает задачу, не даёт полезного прогресса, аtoken_rateостаётся выше нуля. Это должно считаться отдельным состоянием риска.Acceptance Criteria
Burning/Stuck/Runaway.tokens/secилиtoken_rateвыше нуля;sessions_activeне падает, rate не обнуляется).abtop --status-json/AgentPulse, без чтения prompt/chat/path данных.Зависит от
AgentPulsecore model)Что можно трогать
src/lib.rsЧто нельзя трогать
.envи ключиSUBMISSION.ru.md