задачи: цель упразднена, у проекта появилась стадия
Тип goal и индекс ROADMAP.md убраны: цель — зонтик над параллельными направлениями, а у проекта на одного человека список работ линеен. Роадмап при этом наполовину дублировал беклог, а «что уже умеет» отвечают спеки и git log индекса. Секция «Готово» удалена, а не перенесена. Вместо цели — ось «стадия проекта»: build (беклог это план стройки, порядок строк значит зависимость, секция одна) и support (очередь правок, порядок значит важность, секции — полки домена). Стадия объявляется ключом [tasks] stage, меняется командой stage, без неё check отказывает: порядок строк нечем прочитать. Ушли теги goal:/decomposed, поле «Секция», раздел «Завершение», флаги --goal и edit --section. Версия раскладки 2 → 3, перевод проекта расписан записью журнала.
This commit is contained in:
@@ -29,7 +29,7 @@
|
||||
## Сопровождение и эксплуатация — целое и часть
|
||||
|
||||
Словарь этой темы — [shared/operations.md](../../../shared/operations.md):
|
||||
целое и часть, три места одной темы (секция роадмапа, раздел архитектуры, тема
|
||||
целое и часть, три места одной темы (задачи `chore`, раздел архитектуры, тема
|
||||
ревью `operations`) и граница с возможностями проекта. Здесь он не
|
||||
пересказывается: копия жила рядом с домом в одном дереве и была ровно тем
|
||||
вторым домом, против которого правило и написано.
|
||||
@@ -357,36 +357,35 @@ kebab-case.** Причина не эстетическая: имя файла с
|
||||
вовсе, и отказом это быть не может.
|
||||
|
||||
Раскладку, форму записи и команды держит скилл `av-dev:task-track`. Ниже — то,
|
||||
от чего зависит, читается ли проект как продукт: канон высказывается об этом
|
||||
потому, что роадмап отвечает на вопрос о **системе**, а не о работах.
|
||||
от чего зависит, читается ли проект как продукт.
|
||||
|
||||
**`ROADMAP.md` отвечает на «что приложение уже умеет и чего ещё не умеет».** Это
|
||||
не очередь работ: цель — **возможность приложения**, задача — шаг к ней.
|
||||
Достигнутая цель из роадмапа **не исчезает** — строка с датой переезжает в
|
||||
секцию достигнутого, потому что «что умеет» и есть половина вопроса, ради
|
||||
которого документ открывают. Вторым домом поведения роадмап при этом не
|
||||
становится: нормативное поведение живёт в `openspec/specs/`, роадмап отвечает,
|
||||
**когда и в каком порядке** оно появилось.
|
||||
**Индекс работ один — `BACKLOG.md`, и «что приложение уже умеет» он не
|
||||
отвечает.** На этот вопрос отвечают `openspec/specs/` (нормативное поведение) и
|
||||
`git log` индекса (когда и в каком порядке оно появилось). Роадмапа в каноне
|
||||
нет: половину своего вопроса он дублировал беклогом, а вторую — спеками.
|
||||
|
||||
**У каждой записи есть тип, и тип решает, что с ней можно делать.** Дом типа —
|
||||
**У проекта есть стадия, и она решает, что значит порядок строк беклога:**
|
||||
`build` — зависимость, `support` — важность. Канон её называет, потому что от
|
||||
неё зависит, читается ли список работ как план стройки или как очередь правок;
|
||||
механика — `task-track`, «Две стадии».
|
||||
|
||||
**У каждой задачи есть тип, и тип решает, что с ней можно делать.** Дом типа —
|
||||
поле меты `Тип` первой строкой; эмодзи в заголовке от него производна. Словарь
|
||||
закрыт:
|
||||
|
||||
| Тип | Что это |
|
||||
| --- | --- |
|
||||
| 🎯 `goal` | возможность приложения |
|
||||
| ✨ `feature` | снаружи появляется то, чего не было |
|
||||
| 🐞 `fix` | поведение расходится с заявленным |
|
||||
| 🧹 `chore` | обслуживание, поведение не меняется |
|
||||
| 🔬 `research` | исход — знание, а не изменение |
|
||||
|
||||
**Схемы записи здесь нет намеренно.** Какие разделы тип требует, нужна ли ему
|
||||
цель и берётся ли он в работу — скилл `av-dev:task-track`, раздел «Тип
|
||||
записи», подробно — по файлу на тип в его `references/task-<тип>.md`. Канон
|
||||
фиксирует **словарь**, потому что
|
||||
от него зависит, читается ли проект как продукт; схема — механика ведения задач,
|
||||
и второй её экземпляр разошёлся бы с первым (он и разошёлся: канон успел
|
||||
объявить цель у `fix` запрещённой, хотя она там необязательна).
|
||||
**Схемы записи здесь нет намеренно.** Какие разделы тип требует — скилл
|
||||
`av-dev:task-track`, раздел «Тип записи», подробно — по файлу на тип в его
|
||||
`references/task-<тип>.md`. Канон фиксирует **словарь**, потому что от него
|
||||
зависит, читается ли проект как продукт; схема — механика ведения задач, и второй
|
||||
её экземпляр разошёлся бы с первым (он и разошёлся: канон успел объявить цель у
|
||||
`fix` запрещённой, хотя она была необязательна, — и целей теперь нет вовсе).
|
||||
|
||||
Схема требуется **к взятию в работу**, а не к заведению: беклог пополняется чаще,
|
||||
чем разбирается, и требование на входе выгоняло бы в заметки то, что должно
|
||||
@@ -454,7 +453,7 @@ kebab-case.** Причина не эстетическая: имя файла с
|
||||
| почему решено так | `adr/`, источник — архивный `design.md` либо записка разведки |
|
||||
| граница домена, «чем не является» | `passport.md` |
|
||||
| инвариант и его severity | `CLAUDE.md` |
|
||||
| что приложение умеет и чего не умеет; порядок работ | `tasks/ROADMAP.md` |
|
||||
| что осталось сделать и в каком порядке | `tasks/BACKLOG.md` |
|
||||
| измеренное число | `research/` |
|
||||
| настройка с числовым значением | `database.md` |
|
||||
| периметр и модель угроз | `security.md` |
|
||||
@@ -488,8 +487,8 @@ kebab-case.** Причина не эстетическая: имя файла с
|
||||
| --- | --- |
|
||||
| `docs/review-brief.md` | документы канона и есть бриф; остаток — в `review.md` |
|
||||
| `docs/specs/` | `openspec/specs/` (поведение) и `architecture.md` (обзор) |
|
||||
| `docs/drafts/` | идея → запись `research`; отказ → ADR; порядок → `ROADMAP.md`; размышление → `opsx:explore` |
|
||||
| `docs/plan.md` | `tasks/ROADMAP.md` |
|
||||
| `docs/drafts/` | идея → запись `research`; отказ → ADR; порядок → `BACKLOG.md`; размышление → `opsx:explore` |
|
||||
| `docs/plan.md` | `tasks/BACKLOG.md` |
|
||||
| `BRIEF.md` | `passport.md` |
|
||||
| `docs/backlog/` | `tasks/` в корне репозитория |
|
||||
| `docs/review-journal.md`, `docs/review/journal.md` | `docs/review.md` |
|
||||
|
||||
Reference in New Issue
Block a user