- Зачем: - инженерным навыкам нужны единые правила хранения задач и документов предметной области. - Что: - настроено локальное хранилище задач с веточным жизненным циклом. - добавлены стандартные состояния triage и схема single-context. - добавлены ссылки на настройки в AGENTS.md. - Проверка: - git diff --cached --check.
48 lines
2.8 KiB
Markdown
48 lines
2.8 KiB
Markdown
# Хранилище задач: локальные Markdown-файлы
|
|
|
|
Задачи и спецификации этого репозитория хранятся в `.scratch/`.
|
|
|
|
## Структура
|
|
|
|
- Одна возможность на каталог: `.scratch/<feature-slug>/`.
|
|
- Спецификация: `.scratch/<feature-slug>/spec.md`.
|
|
- Каждая задача хранится в отдельном файле:
|
|
`.scratch/<feature-slug>/issues/<NN>-<slug>.md`.
|
|
- Нумерация задач начинается с `01`.
|
|
- Состояние triage записывается строкой `Status:` в начале файла.
|
|
- Обсуждение дописывается в конец файла под заголовком `## Comments`.
|
|
|
|
## Жизненный цикл
|
|
|
|
- Файлы в `.scratch/` отслеживаются Git.
|
|
- Они принадлежат рабочей ветке и считаются эфемерными.
|
|
- Перед `merge --no-ff` относящийся к ветке каталог `.scratch/<feature-slug>/`
|
|
удаляется и удаление фиксируется в этой же ветке.
|
|
- После слияния содержимое задач остаётся доступно в истории Git.
|
|
|
|
## Публикация задачи
|
|
|
|
Когда навык просит опубликовать задачу, нужно создать файл внутри
|
|
`.scratch/<feature-slug>/`, при необходимости создав каталог.
|
|
|
|
## Получение задачи
|
|
|
|
Нужно прочитать файл по переданному пути. Обычно пользователь указывает путь
|
|
или номер задачи.
|
|
|
|
## Работа `/wayfinder`
|
|
|
|
Карта работы хранится отдельно от дочерних задач:
|
|
|
|
- Карта: `.scratch/<effort>/map.md`.
|
|
- Дочерняя задача: `.scratch/<effort>/issues/NN-<slug>.md`.
|
|
- Строка `Type:` содержит тип: `research`, `prototype`, `grilling` или `task`.
|
|
- Строка `Status:` содержит состояние `claimed` или `resolved`.
|
|
- Зависимости перечисляются строкой `Blocked by: NN, NN`.
|
|
- Задача свободна, если она открыта, не заблокирована и не занята.
|
|
- Из нескольких свободных задач первой выбирается задача с меньшим номером.
|
|
- При взятии задачи нужно установить `Status: claimed` и сохранить файл.
|
|
- При завершении нужно добавить ответ под заголовком `## Answer`, установить
|
|
`Status: resolved` и добавить краткий итог со ссылкой в раздел решений
|
|
файла `map.md`.
|