# agent-regression-evals

Сравнивает прогоны агента до и после правки и решает, можно ли мержить. Нужен, когда одна попытка не отличает регрессию от случайности.

- плагин · `type=plugin` · Claude Code · ★ 28733
- Автор: Alireza Rezvani
- Лицензия: MIT · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/alirezarezvani/claude-skills/tree/HEAD/engineering/agent-regression-evals
- Обновлён: 2026-10-23
- HTML: https://affpapa.org/nevibecode/plugins/agent-regression-evals

## Что делает

Агенты отвечают недетерминированно. Один прогон на кейс не покажет, стало хуже или просто повезло, а верный финальный ответ скрывает лишний вызов инструмента. Плагин берёт результаты повторных прогонов и превращает их в решение о мерже со статистикой за спиной.

Внутри три скрипта на стандартной библиотеке Python. `trajectory_checker.py` оценивает путь вызовов инструментов в режимах strict, unordered, subset и superset, сверяет аргументы и блокирует запрещённые инструменты в любом режиме. `flake_detector.py` делит кейсы на стабильные и мигающие по повторным прогонам, считает pass@k и pass^k с интервалами Уилсона. `regression_gate.py` усредняет прогоны по кейсу, сравнивает кейсы через t-интервал и односторонний точный тест МакНемара и выдаёт BLOCK при значимом падении, регрессии критичного кейса, удалённом кейсе или записи в карантине без владельца и срока. Плюс агент `cs-eval-gatekeeper`, команды `/cs-agent-evals` и `/cs-eval-gate`, три справочника и пример CI-джобы.

Скрипты запускаются напрямую, у каждого есть `--help`, `--sample` и `--output json`. Учтите: слишком мало прогонов на кейс — это код выхода 4, гейт не станет угадывать по трём попыткам. Карантин здесь с истечением: без владельца и даты запись сама возвращается в проверку. Проверка пути по умолчанию идёт в режиме `superset`, потому что строгое совпадение пути рубит допустимые альтернативы.

## Установка

### Claude Code (родная платформа)

**Через маркетплейс плагинов**
В чате агента (не в терминале):
```text
/plugin marketplace add alirezarezvani/claude-skills
```
В чате агента (не в терминале):
```text
/plugin install agent-regression-evals@claude-code-skills
```

## Когда брать
- отличить реальную регрессию агента от случайного разброса
- поймать лишний или запрещённый вызов инструмента, спрятанный за верным ответом
- найти кейсы, которые мигают между одинаковыми прогонами
- заблокировать мерж при значимом падении pass-рейта
- не дать удалить падающий кейс ради зелёного CI

## Примеры запросов агенту
- /cs-agent-evals baseline.jsonl candidate.jsonl cases.json
- /cs-eval-gate baseline.jsonl candidate.jsonl
- прогони python scripts/flake_detector.py --sample и покажи, какие кейсы мигают

## Похожие
- [DevTools Regression Investigator](https://affpapa.org/nevibecode/agents/devtools-regression-investigator.md) — субагент · ★ 40418
- [eval-harness](https://affpapa.org/nevibecode/skills/eval-harness.md) — скилл · 4700 установок
- [regression-testing](https://affpapa.org/nevibecode/skills/regression-testing.md) — скилл · 330 установок
- [meticulous-cli](https://affpapa.org/nevibecode/skills/meticulous-cli.md) — скилл · 8600 установок
- [rag-observability-evals](https://affpapa.org/nevibecode/skills/rag-observability-evals.md) — скилл · 318 установок
- [bug-reproduction](https://affpapa.org/nevibecode/skills/bug-reproduction.md) — скилл · 1400 установок

Из того же набора: [alirezarezvani/claude-skills](https://affpapa.org/nevibecode/by/alirezarezvani/claude-skills.md) — 408 карточек

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
