Files
orchestrator/docs/operations/FAQ_STOP.md
claude-bot dbd8df6eb2
All checks were successful
CI / test (push) Successful in 1m15s
CI / test (pull_request) Successful in 1m16s
docs(operations): add user FAQ for STOP cancellation status (ORCH-108)
Create docs/operations/FAQ_STOP.md — a user-facing "вопрос → ответ" FAQ for
Plane board users explaining the STOP status: what it does, how to cancel a
task, step-by-step consequences (agent stops → jobs cancelled → working branch
and worktree removed → task → cancelled → Telegram+Plane; docs artifacts
preserved, main/prod untouched), deferred cancellation in the critical
merge/deploy window, explicit "STOP does NOT revert merged/deployed code"
(revert is a separate task), restart only via "To Analyse" from scratch, no-op
causes, where to observe the result, and STOP/Approved/Confirm Deploy disambig.

docs-only: src/**, STAGE_TRANSITIONS, QG_CHECKS, check_*, machine-verdict keys
and the DB schema are byte-for-byte untouched. STOP behaviour source of truth
remains ORCH-090 (adr-0026); the FAQ documents and links to it (link-first:
machine details markers/lease/tombstone given by reference, not duplicated).

Add two-way cross-links: docs/overview/business.md (Сценарий 6) and
docs/overview/tech-pipeline.md (Отмена: STOP → cancelled) → FAQ; FAQ → overview
+ ADR ORCH-090. Structure guarded by deterministic anti-drift test
tests/test_faq_stop_doc.py (offline, no network/LLM/subprocess; mirrors
tests/test_lite_setup_doc.py): existence + 8 section anchors + fact bricks +
cross-links + claim-level negative scan (sentence-level, not bare substrings,
so it never false-fails on correctly negating phrases — TR-3, with a
non-evergreen self-check). Full pytest tests/ green (2227 passed).

Refs: ORCH-108

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 17:50:58 +03:00

6.6 KiB
Raw Blame History

FAQ: отмена задачи через статус STOP

Эта страница — для пользователя доски Plane. Она объясняет простыми словами, что делает статус STOP, как им безопасно остановить задачу и чего от него ждать. Читать код для этого не нужно.

Технические детали механизма — в инженерном обзоре конвейера и в ADR ORCH-090 (источник истины поведения). Эта страница их не дублирует, а пересказывает «для человека» и ссылается на них.

Что делает статус STOP?

STOP — это «кнопка отмены» задачи. Перевод задачи в статус STOP останавливает работу агента, снимает задачу с очереди, прибирает рабочие материалы (ветку и worktree) и помечает задачу отменённой (cancelled). Нажимать его безопасно даже посреди конвейера.

Как отменить задачу?

Переведите issue в статус STOP на доске Plane — так же, как меняете любой другой статус.

Предусловие: на доске должен быть заведён статус STOP (группа cancelled). Если его нет, STOP не сработает (см. раздел «Я нажал STOP, но ничего не произошло — почему?»).

Что происходит, когда я нажимаю STOP?

По шагам:

  1. Активный агент останавливается (мягкая остановка процесса).
  2. Все job'ы этой задачи в очереди снимаются и больше не перезапускаются.
  3. Рабочая ветка задачи и её worktree удаляются. Ветка main и прод-контейнер при этом никогда не трогаются.
  4. Задача переходит в терминальное состояние cancelled.
  5. Приходит уведомление в Telegram🛑 … задача ОТМЕНЕНА (STOP)») и комментарий в Plane.

При этом документы задачи (бизнес-запрос, анализ, ТЗ, ADR и т.д.) сохраняются — удаляются только рабочая ветка и worktree, не история документов.

Что если задача в этот момент сливается или деплоится?

Если STOP пришёл во время необратимого шага (слияние в main или выкладка в прод), отмена аккуратно откладывается до честного завершения этого шага. Вы увидите уведомление вида «⏸️ … отмена ОТЛОЖЕНА». Ветка main и прод при этом не трогаются; как только шаг честно завершится, отмена применяется автоматически.

Иными словами: STOP не прерывает уже начатый необратимый шаг на полпути — он дожидается его честного завершения, а затем отменяет задачу.

Откатит ли STOP уже выложенный код?

Нет. STOP сбрасывает незавершённый прогресс задачи (рабочую ветку, worktree, очередь), но не откатывает код, который уже влит в main или выложен в прод. Откат уже выложенного — это отдельная задача (revert), и STOP её не делает.

Как перезапустить отменённую задачу?

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

Я нажал STOP, но ничего не произошло — почему?

Вероятные причины:

  • На доске нет статуса STOP — переход не распознаётся (безопасный no-op). Заведите статус STOP (группа cancelled) и попробуйте снова.
  • Задача уже завершена или уже отменена — повторный STOP ничего не меняет (это нормально, идемпотентный no-op, задача не ломается).
  • Отмена отключена для репозитория настройкой оператора (stop_status_enabled / stop_status_repos) — обратитесь к оператору.

Где увидеть, что задача отменена?

  • Карточка задачи в Telegram покажет «🛑ОТМЕНЕНА (STOP)».
  • В Plane появится комментарий об отмене.
  • Оператор может увидеть отмену на служебной странице состояния GET /queue — в блоке stop.

STOP, Approved и Confirm Deploy — в чём разница?

Это разные управляющие статусы, их легко перепутать:

  • STOPотменить задачу и сбросить её незавершённый прогресс.
  • Approvedодобрить артефакт анализа (двигает задачу дальше по конвейеру); деплой он не запускает.
  • Confirm Deployподтвердить выкладку в прод.

Подробнее об управляющих статусах и их семантике — в инженерном обзоре конвейера. Эта страница описывает только STOP.