2.4 KiB
status
| status |
|---|
| accepted |
Native OpenSpec SDD и минимальная local orchestration
WealthLedger использует project-local schema wealth-ledger-sdd OpenSpec 1.10 с последовательностью Proposal → Delta Specs → Design → Tasks → Apply и тонкий dispatcher существующих repository gates. Это сохраняет один lifecycle authority в specs/openspec, выражает проектные approval boundaries нативными extension points и не вводит второй workflow engine или monorepo control plane для четырёх независимых Git-репозиториев.
Рассмотренные варианты
- Встроенная
spec-drivenschema отклонена: она не выражает обязательный переход Specs перед Design и не задаёт Delivery Map или проектные роли артефактов. - Отдельный workflow engine или custom generator отклонён: он создал бы конкурирующий формат и lifecycle authority.
- Nx, Turborepo, Bazel, Make или just отклонены для текущего масштаба: workspace не имеет общего dependency graph, build cache или CI, а репозитории уже владеют canonical gates.
Последствия
OpenSpec CLI закреплён exact version contract, а upgrade требует staged generation и проверки generated root .opencode projection. Dispatcher знает четыре workspace area, но не реализует build или test logic: он только валидирует Delivery Map и делегирует в repo-owned commands. Approval identity остаётся человеческим workflow constraint, потому что schema моделирует порядок артефактов, но не личность утвердившего.
Решение пересматривается, если OpenSpec перестанет поддерживать нужный artifact graph, появится обязательный общий CI/build graph или стоимость последовательной локальной orchestration станет существенной. В этих случаях новый ADR сравнивает native evolution с внешним engine либо monorepo platform.