Skip to content

Guardrails - атоматический стоп эксперимента

Guardrails — это страховка: эксперимент может “побеждать” по целевой метрике и одновременно ломать продукт. Это нельзя пропускать. Иногда эксперимент улучшает целевую метрику (например, конверсию), но при этом ухудшает стабильность или производительность: растут ошибки или задержки.

Guardrails — это правила безопасности, которые автоматически останавливают или откатывают эксперимент при деградации, чтобы ограничить ущерб для пользователей и бизнеса.

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

  • метрика безопасности — выбранная метрика из каталога метрик эксперимента;
  • порог — значение, после превышения которого считаем, что есть деградация.
  • окно наблюдения — окно наблюдения (например, “последние 10 минут”), за которое пересчитывается метрика.
  • действие при срабатывании:
    • поставить эксперимент на паузу,
    • «откат к контрольному варианту» — откатить эксперимент к контрольному варианту.

Примеры guardrail-метрик: «доля ошибок», «95-й перцентиль задержки», пользовательские quality-метрики, если они описаны в каталоге.

6.3 Как работает проверка

Section titled “6.3 Как работает проверка”

Здесь важна человеческая логика: guardrail — это правило уровня “если стало хуже, чем порог — сделай действие”, а не просто график в дашборде. Пока эксперимент находится в запущенном состоянии, платформа периодически проверяет guardrails:

  1. Накапливаются и атрибутируются события, нужные для расчёта соответствующих guardrail-метрик по решениям («идентификатор решения») этого эксперимента.
  2. На каждом шаге проверки платформа пересчитывает выбранную guardrail-метрику за последние «окно наблюдения».
  3. Если значение метрики превышает порог — считается, что guardrail сработал, и платформа выполняет выбранное действие.

Цель: автоматическая реакция в близком к real‑time режиме без участия человека.

6.4 Действия при срабатывании

Section titled “6.4 Действия при срабатывании”

В истории: минимальный набор действий — поставить на паузу и уведомить. Дальше уже команда решает: откатываем или фиксим.

Платформа переводит эксперимент в состояние «на паузе». Бизнес‑смысл: остановить раздачу экспериментального значения и прекратить дальнейшее ухудшение, сохранив возможность ручного анализа и последующего решения.

6.4.2 Действие = откат к контрольному варианту

Section titled “6.4.2 Действие = откат к контрольному варианту”

Платформа выполняет откат к контрольному варианту. Бизнес‑смысл: быстро вернуть базовое (ожидаемое) поведение.

Важно: точная трактовка “rollback” должна быть единообразной в продукте. На бизнес‑уровне это означает прекращение выдачи деградирующего варианта и возвращение к базовому варианту эксперимента (control). Как именно это выражается в статусах/выдаче — реализационная деталь.

6.5 Фиксация факта срабатывания

Section titled “6.5 Фиксация факта срабатывания”

В истории: потом всегда спрашивают “почему выключили?”. Поэтому нужен аудит: что сработало, когда, по каким данным. Когда guardrail срабатывает, платформа обязана:

  1. Выполнить выбранное действие (пауза или откат к контрольному варианту).

  2. Добавить запись в историю срабатываний guardrails со следующими полями:

  • метрика
  • порог
  • «окно наблюдения»
  • действие
  • «фактическое значение метрики» — фактическое значение метрики на момент срабатывания
  • «время срабатывания» — время срабатывания