Перейти к содержимому
FRGEPLAN

forgeplan order

Сортирует все артефакты в топологический порядок выполнения, используя границы зависимостей (blocks, depends_on, родитель/потомок). Вывод представляет собой линеаризованный обход, подходящий для планирования спринта: “выполните PRD-002 до PRD-007, потому что PRD-007 зависит от него.”

  • Планирование спринта - правильная последовательность нескольких PRD
  • Аудит зависимостей - выявление отсутствующих границ, которые должны существовать
  • Гейт CI - прерывание сборки при обнаружении циклов зависимостей
  • Вы хотите видеть только заблокированные элементы → используйте forgeplan blocked
  • Вы хотите иерархию → используйте forgeplan tree
  • Вы хотите все границы → используйте forgeplan graph
forgeplan order [OPTIONS]
--json Вывод в формате JSON для машинной обработки
-h, --help Вывести справку
-V, --version Вывести версию

Вывести полный топологический порядок:

Окно терминала
forgeplan order

Передать в шаблон документа спринта:

Окно терминала
forgeplan order --json | jq -r '.[] | "- [ ] \(.id) \(.title)"'

Один артефакт на строку, сначала самые ранние (разрешение конфликтов по принципу поиска в ширину):

1. ADR-003 Files as source of truth [active]
2. PRD-039 BM25 production search [active]
3. RFC-004 Layered search architecture [active]
4. EVID-018 Benchmark results [active]
5. PRD-040 Scoring intelligence [draft]
СтолбецЗначение
ИндексПозиция в топологическом обходе
IDИдентификатор артефакта
TitleКраткое название
Status[active], [draft] и т.д. - позволяет пропускать завершённые

Если обнаружен цикл, команда завершается со статусом 1 и выводит путь цикла - исправьте проблемную границу blocks / depends_on и запустите снова.

order - это представление “выполнить в такой последовательности”. Используйте в паре с blocked:

order → идеальная последовательность (игнорирует статус)
blocked → что застряло прямо сейчас

Здоровое рабочее пространство: всё в order[0:k] находится в статусе [active] или [done], а blocked пусто.