Files
h-school/.claude/skills/side-work/SKILL.md
T
Leonid Pershin e299995d98
ci / server (push) Failing after 3m43s
ci / client (push) Failing after 14s
add skils
2026-08-20 11:33:39 +03:00

81 lines
5.2 KiB
Markdown

---
name: side-work
description: >-
Обсуждает задачу вне запланированных срезов, пишет под неё фазы в «Вне
очереди» и делает на отдельной ветке. Используй при «сделай отдельно»,
«вне среза», «отдельная задача», «не из фаз», «side-work», «обсуди и сделай».
Не для нового именованного среза (/slice-work), бага (/bug-work), «сделай
фазу N» (/phase-work), волны агентов (/phase-orch) и ревью (/phase-review).
---
# Отдельная задача вне среза
Склейка уже живых систем и мелкий DX. В уже стоящие срезы не дописывается.
Сначала согласовать форму, потом фаза в **«Вне очереди»**, потом код как у
`/phase-work`. Код до документов не писать.
Новый кусок игры с этапами и остановкой посередине — не этот скилл,
[slice-work](../slice-work/SKILL.md).
«Обсуди и сделай» — идти до конца после короткого согласования. Стоп, только
если выбор меняет протокол, сейв или инвариант.
## 1. Обсуждение
Прочитай `docs/phases/README.md`, `docs/bugs/README.md`, инварианты в
`AGENTS.md` и затронутые дизайн-доки. Это уже чья-то фаза в индексе — скажи
и отдай `/phase-work`. Регрессия уже сделанного — `/bug-work`. Этапы, новый
кусок игры, остановка посередине целой школой — `/slice-work`.
Два–пять вопросов, два–три варианта, **рекомендация обязательна**. Спросить
только форму: что увидит игрок; протокол / HTTP / сейв; какой инвариант; одна
фаза или несколько, и можно ли остановиться посередине целой школой.
«Ок», «делай», «как рекомендуешь» — согласие. Молчание — нет. Соседнее «заодно»
в отчёт, не в объём.
## 2. Куда класть
**Баг / регрессия** — не этот скилл, [bug-work](../bug-work/SKILL.md).
**Новый срез** — не этот скилл, [slice-work](../slice-work/SKILL.md).
**Мелкое** (дырка, одна кнопка, DX, склейка живых систем) — фаза в секции
**«Вне очереди»** в конце индекса. Это срез без номера, чтобы не спорить со
следующим именованным. Дизайн — `##` в `docs/design/off-queue.md`; файла нет —
заведи с заголовком, зачем он.
Номер фазы: максимум по `docs/phases/*.md` и индексу, плюс один, затем
`git branch --list "phase/<N>-*"`. Занято — следующий. Гонку ловят ветки, не
индекс: у новой фазы на `main` строки ещё нет.
## 3. Документы
Как у соседней фазы, не новый жанр. Каркас тот же: Зависимости, Зачем, Задачи,
Тесты без которых фаза не закрыта, Критерий готовности, Стоп.
«Тесты…» — контракт для `/phase-review`: каждый пункт станет отдельным тестом
по Testing policy в `AGENTS.md`. Дизайн: зачем; «Было / Стало / Почему», если
меняется принятое; что не входит. Индекс — новая строка, статус ⬜.
Протокол, HTTP, сейв — назвать явно. Версию не бампать: это коммит с кодом.
Покажи фазы и Стоп. Просил только документы — здесь конец. Просил сделать —
сразу шаг 4.
## 4. Работа
Прочитай [phase-work](../phase-work/SKILL.md) и следуй ему.
Отличия: фазу ты завёл сам; заявка `git branch phase/<N>-<slug> main` **до** кода
(от `main`, не от HEAD);
тесты — как Testing policy в `AGENTS.md`, не весь solution;
новые файлы и 🔄 живут на этой ветке. `merge/lock` общий с фазами, багами и
ревью. Один цикл — одна фаза. «Сделай всё» — по порядку, каждая своим циклом `/phase-work`. Независимые фазы
параллельно — `/phase-orch`. Три фазы в одну ветку не паковать.
## Отчёт
Форма и куда легли документы; фаза и ветка; тесты списком; что прогнал; что
осталось ⬜; слита ли ветка в `main`.