Агентские кампании

Кампания — это работа «под ключ»: агенту говорят, что должно быть покрыто, и он сам проходит весь путь от разведки сайта до готовых проверок. Человек вмешивается не на каждом шаге, а только там, где нужно решение: одобрить план, ответить на вопрос, принять тест.

Зачем это нужно: иначе пришлось бы вручную решать, какие проверки завести, писать их и следить за порядком. Кампания берёт эту рутину на себя, но оставляет за человеком главные решения — намеренно.

Фазы

Кампания идёт по фазам, и в интерфейсе видно, на какой она сейчас:

  1. Предпроверка — подготовка: проверяется, что кампанию вообще можно запустить.
  2. Разведка — агент выясняет, что в приложении есть: проходит по сайту через подключённый браузер.
  3. План — агент решает, какие проверки нужны, чтобы закрыть пробелы покрытия.
  4. Согласование плана — кампания останавливается и ждёт человека.
  5. Генерация тестов — по одобренному плану готовятся тесты, каждый как предложение.
  6. Прогон — тесты запускаются.
  7. Починка — если что-то сломалось, предлагается исправление.
  8. Итог — сводка: что сделано, что осталось и что ждёт решения.

По ходу кампанию можно поставить на паузу — тогда браузер освобождается — или остановить совсем; остановка требует причины. В проекте идёт только одна кампания за раз: сначала нужно разобраться с живой, а не запускать ещё одну.

Остановка на согласовании плана

Главный шов кампании — согласование плана. Когда план готов, кампания не идёт дальше сама: она держится в браузере и ждёт, пока человек одобрит план, отправит его на доработку с замечанием или отклонит. Для отклонения пояснение обязательно, для доработки заметка попадает в следующий проход.

Пока кампания ждёт, окно браузера занято — так и задумано: человек видит то же, что видит агент, и может проверить его выводы. Пауза, наоборот, браузер отпускает. Дальше без человека кампания не проходит — это защита от того, чтобы агент сам придумал, что и как проверять, и сам это утвердил.

Сгенерированный тест не одобряется сам

Каждый сгенерированный тест попадает не в рабочий набор, а на проверку — как предложение. Файл теста записывается только после того, как человек его примет; до этого в проекте ничего не меняется. Решение человека отмечается в журнале аудита: видно, кто и когда принял тест.

Сама кампания принять тест за человека не может, и внешние инструменты тоже: одобрение доступно только людям.

Бюджеты кампании

Дорогая часть кампании — обращения к ИИ, поэтому у неё есть потолок расходов. Потолок проверяется на границах фаз — перед планированием, генерацией и починкой, — а не в середине работы. Если лимит исчерпан, кампания останавливается на границе и задаёт вопрос: поднять потолок и продолжить или закрыть кампанию.

В проекте задаются и другие пределы: число попыток починки на тест и на сборку, число кампаний починки одновременно. Они устроены так же: ограничивают расход, но ничего не одобряют — ни план, ни тест.

Открытые вопросы

Иногда агенту не хватает сведений: нужен доступ или решение по спорному месту. Тогда он задаёт вопрос прямо в кампании и ждёт ответа. Такие вопросы не теряются: они видны в сводке «что требует внимания» и в списке вопросов, ждущих человека; просроченные отмечены.

Ответ возвращает кампанию к работе, и история ответов сохраняется — по ней видно, какие решения уже принимали.

Рейтинг

Есть необязательный рейтинг участников. По умолчанию он выключен — включается отдельным переключателем в настройках проекта. Когда включён, он считает только то, что принесло пользу: подтверждённые дефекты и одобренные изменения. Токены, число тестов и активность в рейтинг не идут никогда — иначе выгодно было бы гнать объём, а не находить настоящие проблемы.

Очки получают только люди: подтверждают дефекты и ставят диагнозы именно они. Сезон — скользящие 90 дней, то есть старые заслуги постепенно уходят из счёта.

Дальше: как проверять одни и те же сценарии на разных стендах и не хранить пароли в файлах проекта, — в разделе Среды, учётные данные и переменные.

← Оглавление документации