# S09-012: Gate: Лента и composer > Generated from planning/tasks.json; status is in state/tasks.json. - Этап: S09 - Оператор: qa - Reviewer: orchestrator - Зависимости: S09-001, S09-002, S09-003, S09-004, S09-005, S09-006, S09-007, S09-008, S09-009, S09-010, S09-011 - Требования: NFR-001, NFR-003, NFR-004, NFR-005, NFR-006, NFR-007, NFR-008, NFR-009 ## Один результат Проверить завершённые artifacts этапа по checklist и записать единую gate evidence; не реализовывать отсутствующие функции за другие задачи. ## Разрешённые пути - `state/evidence/S09-gate.md` - `docs/acceptance/S09-gate.md` Не изменять другие modules, shared contracts или spec snapshots без изменения плана. Stem без расширения разрешает принятые stack-specific extensions и focused test рядом. ## Прочитать - docs/WORKFLOW.md - docs/TESTING.md - planning/stages/S09.md - docs/decisions/README.md - docs/decisions/0001-stack.md (upstream artifact; отсутствие после S00 gate — blocker) - docs/contracts/models.md (upstream artifact S01) - docs/contracts/lifecycle.md (upstream artifact S01) ## Шаги 1. Проверить done, evidence и reviews всех задач этапа. 2. Прогнать утверждённые focused checks этапа и проверить оставшиеся requirements из packet. 3. Работать только над одним указанным outcome. Если для него нужен новый shared contract — создать отдельную remediation через escalate, заблокировать original и завершить запуск; не расширять текущий scope. 4. Отсутствующий/неподтверждённый результат вернуть конкретному owner или оформить blocker; не ставить gate done. 5. Записать результаты и handoff следующему этапу. ## Приёмка 1. Каждая prerequisite задача done после отдельного review. 2. Checklist требований этапа имеет фактические результаты, не обещания. 3. Нет неучтённых blockers, mock-success или неописанной деградации. ## Focused checks 1. Повторить smoke/contract suite этапа по evidence зависимостей. 2. Сверить каждый requirement gate с документированным поведением и тестом. ## Блокер и завершение запуска Для всех ролей scope — только эта задача. При блокере создать issue JSON по state/ISSUE_TEMPLATE.json, вызвать escalate с текущим ID/role/agent, проверить status=blocked и resolution_task, затем немедленно завершить запуск. Не решать blocker и не выбирать следующую задачу самому. Новый агент назначается runner. Правки metadata через CLI — единственное исключение scope. ## Передача Сохранить evidence/handoff; submit → review и завершить запуск. Reviewer также выполняет только эту задачу, включая обязательное escalate при блокере.