Skip to content

English | Русский

Термины verify / QG — глоссарий

Единый источник формулировок для CLI, MCP, хуков и тестов. В документации и инструкциях агенту используйте эти термины одинаково.

Базовые понятия

ТерминСмыслДопустимо?
Verify-First ContractТяжёлые гейты выполняются на verify (CLI/MCP); task done закрывает задачу по свежей green-записи в verification_runs (тот же files_hash, окно TTL), без повторного inline-запуска тех же subprocess-гейтов.По умолчанию в v1.4+
Поддерживаемый opt-outДокументированный переключатель: меняет где выполняются проверки или опциональное поведение, не отменяя контракт фреймворка. Не синоним «без доказательств» или «без QG-2».Да, осознанно
Bypass (политика)Обход обязательного правила (особенно QG-0 / QG-2). В текстах TAUSIK слово bypass резервируем для методологических дыр — не для поведения кеша.Нельзя для закрытия по QG-2
Обход verify-кеша (verify cache bypass)Для security-sensitive путей никогда не переиспользуется кеш верификации; гейты всё равно запускаются — отключается только оптимизация повторным прогоном.Да — усиливает проверку
Тестовый shimМеханизм pytest (tests/conftest.py), который в большинстве тестов отключает _enforce_verify_first, чтобы suite оставался быстрым и стабильным. Не production-настройка.Только тесты

Примеры поддерживаемых opt-out

МеханизмЧто делаетЧего не делает
{"task_done": {"auto_verify": true}} в .tausik/config.jsonТяжёлые verify-гейты выполняются внутри task done (шаг один, как в v1.3).Не снимает требование AC и --ac-verified.
task start --forceОбход capacity сессии с аудит-следом.Не отменяет QG-0 по содержанию задачи или QG-2.
git commit --no-verifyПропускает только git pre-commit.Не меняет гейты TAUSIK в БД и tausik verify.
TAUSIK_SKIP_PUSH_HOOK=1Документированный debug-обход push-гейта (см. environment.md).Не универсальный opt-out для QG-2.
task done --no-knowledgeПодтверждает отсутствие знаний для захвата; глушит предупреждение.Не пропускает verify / AC.

Анти-паттерны (не поддерживаются)

  • Считать cache hit «отсутствием верификации» — hit означает недавний успешный прогон с тем же scope; для security-путей кеш всё равно не используется.
  • Называть недокументированный обход «bypass», если по факту ломается QG-2 (например ожидать task done без кеша verify и без auto_verify).
  • Путать обход verify-кеша (всегда перепроверить чувствительные файлы) с обходом QG — первое запускает гейты; второе снимало бы требования (для task_done недоступно).

Тестовый shim (маркер verify_first)

  • По умолчанию autouse-fixture _verify_first_autouse_compat_shim подменяет GatesMixin._enforce_verify_first на no-op, чтобы тесты с прямыми вызовами task_done не требовали полного пайплайна verify. Предикат: tests/verify_first_compat_predicate.py.
  • Тесты, которые проверяют реальный verify-first, должны использовать @pytest.mark.verify_first, чтобы shim не применялся.

Это изоляция тестов, не пользовательский opt-out.

Чеклист ревью документации

При правках текста про verify / QG / cache:

  1. Opt-out — только для документированных настроек или переменных окружения.
  2. Bypass — для политики (что агенту нельзя) или явно пишите обход verify-кеша, если речь о не-reuse кеша.
  3. Тестовый shim — только в contributor/test-доках, не как операторский lifehack.
  4. Если два раздела определяют термин по-разному — это дефект документации: согласовать или пометить TODO с владельцем.

См. также