savepoint 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (273) hide show
  1. package/.claude/settings.local.json +20 -0
  2. package/.prettierignore +4 -0
  3. package/.savepoint/Design.md +196 -0
  4. package/.savepoint/PRD.md +58 -0
  5. package/.savepoint/audit/E01-go-setup/proposals.md +166 -0
  6. package/.savepoint/audit/E01-go-setup/snapshot.md +71 -0
  7. package/.savepoint/audit/E01-scaffolding/proposals/AGENTS.md +66 -0
  8. package/.savepoint/audit/E01-scaffolding/proposals/Design.md +210 -0
  9. package/.savepoint/audit/E01-scaffolding/proposals/epic-Design.md +117 -0
  10. package/.savepoint/audit/E01-scaffolding/proposals/quality-review.md +101 -0
  11. package/.savepoint/audit/E01-scaffolding/snapshot.md +54 -0
  12. package/.savepoint/audit/E02-data-model/snapshot.md +128 -0
  13. package/.savepoint/audit/E02-data-readers/proposals.md +123 -0
  14. package/.savepoint/audit/E02-data-readers/snapshot.md +54 -0
  15. package/.savepoint/audit/E03-board-tui-core/proposals.md +146 -0
  16. package/.savepoint/audit/E03-board-tui-core/snapshot.md +57 -0
  17. package/.savepoint/audit/E03-cli-foundation/snapshot.md +106 -0
  18. package/.savepoint/audit/E04-board-components/proposals.md +118 -0
  19. package/.savepoint/audit/E04-board-components/snapshot.md +77 -0
  20. package/.savepoint/audit/E04-templates-and-prompts/snapshot.md +115 -0
  21. package/.savepoint/audit/E05-init-command/snapshot.md +125 -0
  22. package/.savepoint/audit/E05-phase-transitions/proposals.md +83 -0
  23. package/.savepoint/audit/E05-phase-transitions/snapshot.md +36 -0
  24. package/.savepoint/audit/E06-tui-board/snapshot.md +64 -0
  25. package/.savepoint/audit/E07-audit-pipeline/snapshot.md +165 -0
  26. package/.savepoint/audit/E08-board-workflow-cleanup/snapshot.md +65 -0
  27. package/.savepoint/config.yml +27 -0
  28. package/.savepoint/releases/v1/PRD.md +66 -0
  29. package/.savepoint/releases/v1/epics/E01-go-setup/Design.md +39 -0
  30. package/.savepoint/releases/v1/epics/E01-go-setup/tasks/T001-init-module.md +42 -0
  31. package/.savepoint/releases/v1/epics/E01-go-setup/tasks/T002-entrypoint.md +23 -0
  32. package/.savepoint/releases/v1/epics/E01-go-setup/tasks/T003-directory-structure.md +24 -0
  33. package/.savepoint/releases/v1/epics/E01-go-setup/tasks/T004-makefile.md +23 -0
  34. package/.savepoint/releases/v1/epics/E02-data-readers/Design.md +61 -0
  35. package/.savepoint/releases/v1/epics/E02-data-readers/tasks/T001-task-struct.md +29 -0
  36. package/.savepoint/releases/v1/epics/E02-data-readers/tasks/T002-frontmatter-parser.md +30 -0
  37. package/.savepoint/releases/v1/epics/E02-data-readers/tasks/T003-router-reader.md +29 -0
  38. package/.savepoint/releases/v1/epics/E02-data-readers/tasks/T004-config-reader.md +29 -0
  39. package/.savepoint/releases/v1/epics/E02-data-readers/tasks/T005-discovery.md +30 -0
  40. package/.savepoint/releases/v1/epics/E03-board-tui-core/Design.md +38 -0
  41. package/.savepoint/releases/v1/epics/E03-board-tui-core/tasks/T001-model.md +29 -0
  42. package/.savepoint/releases/v1/epics/E03-board-tui-core/tasks/T002-update-loop.md +30 -0
  43. package/.savepoint/releases/v1/epics/E03-board-tui-core/tasks/T003-view.md +34 -0
  44. package/.savepoint/releases/v1/epics/E03-board-tui-core/tasks/T004-styles.md +29 -0
  45. package/.savepoint/releases/v1/epics/E03-board-tui-core/tasks/T005-layout.md +42 -0
  46. package/.savepoint/releases/v1/epics/E04-board-components/Design.md +44 -0
  47. package/.savepoint/releases/v1/epics/E04-board-components/tasks/T001-column.md +34 -0
  48. package/.savepoint/releases/v1/epics/E04-board-components/tasks/T002-card.md +33 -0
  49. package/.savepoint/releases/v1/epics/E04-board-components/tasks/T003-epic-panel.md +49 -0
  50. package/.savepoint/releases/v1/epics/E04-board-components/tasks/T004-detail-overlay.md +40 -0
  51. package/.savepoint/releases/v1/epics/E04-board-components/tasks/T005-release-dropdown.md +33 -0
  52. package/.savepoint/releases/v1/epics/E04-board-components/tasks/T006-help-overlay.md +34 -0
  53. package/.savepoint/releases/v1/epics/E05-phase-transitions/Design.md +38 -0
  54. package/.savepoint/releases/v1/epics/E05-phase-transitions/tasks/T001-phase-stepping.md +29 -0
  55. package/.savepoint/releases/v1/epics/E05-phase-transitions/tasks/T002-gates.md +31 -0
  56. package/.savepoint/releases/v1/epics/E05-phase-transitions/tasks/T003-write-task.md +31 -0
  57. package/.savepoint/releases/v1/epics/E05-phase-transitions/tasks/T004-write-router.md +31 -0
  58. package/.savepoint/releases/v1/epics/E06-atari-noir-layout/Design.md +42 -0
  59. package/.savepoint/releases/v1/epics/E06-atari-noir-layout/tasks/T001-color-system.md +39 -0
  60. package/.savepoint/releases/v1/epics/E06-atari-noir-layout/tasks/T002-header-and-dividers.md +52 -0
  61. package/.savepoint/releases/v1/epics/E06-atari-noir-layout/tasks/T003-footer-status-bar.md +52 -0
  62. package/.savepoint/releases/v1/epics/E06-atari-noir-layout/tasks/T004-component-refinement.md +53 -0
  63. package/.savepoint/releases/v1/epics/E06-atari-noir-layout/tasks/T005-restore-nav-hints.md +39 -0
  64. package/.savepoint/releases/v1/epics/E06-atari-noir-layout/tasks/T007-detail-card-fixes.md +36 -0
  65. package/.savepoint/releases/v1/epics/E06-atari-noir-layout/tasks/T008-checkbox-states.md +38 -0
  66. package/.savepoint/releases/v1/epics/E06-atari-noir-layout/tasks/T009-router-priority-marker.md +41 -0
  67. package/.savepoint/releases/v1/epics/E06-atari-noir-layout/tasks/T010-auto-refresh-watcher.md +61 -0
  68. package/.savepoint/releases/v1/epics/_archived/E01-archive-and-reset/Design.md +39 -0
  69. package/.savepoint/releases/v1/epics/_archived/E01-archive-and-reset/tasks/T001-archive-epics.md +20 -0
  70. package/.savepoint/releases/v1/epics/_archived/E01-archive-and-reset/tasks/T002-rewrite-prd.md +22 -0
  71. package/.savepoint/releases/v1/epics/_archived/E01-archive-and-reset/tasks/T003-create-epic-stubs.md +24 -0
  72. package/.savepoint/releases/v1/epics/_archived/E01-archive-and-reset/tasks/T004-update-router.md +22 -0
  73. package/.savepoint/releases/v1/epics/_archived/E01-scaffolding/Design.md +118 -0
  74. package/.savepoint/releases/v1/epics/_archived/E01-scaffolding/handoff.md +9 -0
  75. package/.savepoint/releases/v1/epics/_archived/E01-scaffolding/tasks/T001-package-baseline.md +45 -0
  76. package/.savepoint/releases/v1/epics/_archived/E01-scaffolding/tasks/T002-typescript-build.md +48 -0
  77. package/.savepoint/releases/v1/epics/_archived/E01-scaffolding/tasks/T003-vitest-smoke.md +43 -0
  78. package/.savepoint/releases/v1/epics/_archived/E01-scaffolding/tasks/T004-lint-format-gates.md +45 -0
  79. package/.savepoint/releases/v1/epics/_archived/E01-scaffolding/tasks/T005-scaffold-verification.md +40 -0
  80. package/.savepoint/releases/v1/epics/_archived/E02-data-model/Design.md +142 -0
  81. package/.savepoint/releases/v1/epics/_archived/E02-data-model/tasks/T001-domain-ids-status.md +27 -0
  82. package/.savepoint/releases/v1/epics/_archived/E02-data-model/tasks/T002-markdown-frontmatter-boundary.md +28 -0
  83. package/.savepoint/releases/v1/epics/_archived/E02-data-model/tasks/T003-task-documents.md +29 -0
  84. package/.savepoint/releases/v1/epics/_archived/E02-data-model/tasks/T004-release-epic-router-config-readers.md +30 -0
  85. package/.savepoint/releases/v1/epics/_archived/E02-data-model/tasks/T005-dependency-validation.md +29 -0
  86. package/.savepoint/releases/v1/epics/_archived/E02-data-model/tasks/T006-epic-task-set-reader.md +29 -0
  87. package/.savepoint/releases/v1/epics/_archived/E02-data-model/tasks/T007-quality-gates.md +31 -0
  88. package/.savepoint/releases/v1/epics/_archived/E02-domain-phase-model/Design.md +40 -0
  89. package/.savepoint/releases/v1/epics/_archived/E02-domain-phase-model/tasks/T001-phase-types.md +27 -0
  90. package/.savepoint/releases/v1/epics/_archived/E02-domain-phase-model/tasks/T002-phase-frontmatter.md +25 -0
  91. package/.savepoint/releases/v1/epics/_archived/E02-domain-phase-model/tasks/T003-simplify-config.md +26 -0
  92. package/.savepoint/releases/v1/epics/_archived/E02-domain-phase-model/tasks/T004-simplify-router-domain.md +24 -0
  93. package/.savepoint/releases/v1/epics/_archived/E03-cli-foundation/Design.md +122 -0
  94. package/.savepoint/releases/v1/epics/_archived/E03-cli-foundation/tasks/T001-argument-parser-contract.md +28 -0
  95. package/.savepoint/releases/v1/epics/_archived/E03-cli-foundation/tasks/T002-help-text-generation.md +28 -0
  96. package/.savepoint/releases/v1/epics/_archived/E03-cli-foundation/tasks/T003-terminal-environment-detection.md +27 -0
  97. package/.savepoint/releases/v1/epics/_archived/E03-cli-foundation/tasks/T004-command-stub-modules.md +29 -0
  98. package/.savepoint/releases/v1/epics/_archived/E03-cli-foundation/tasks/T005-cli-runner-dispatch.md +34 -0
  99. package/.savepoint/releases/v1/epics/_archived/E03-cli-foundation/tasks/T006-entrypoint-quality-gates.md +32 -0
  100. package/.savepoint/releases/v1/epics/_archived/E03-cli-simplify/Design.md +43 -0
  101. package/.savepoint/releases/v1/epics/_archived/E03-cli-simplify/tasks/T001-strip-args.md +26 -0
  102. package/.savepoint/releases/v1/epics/_archived/E03-cli-simplify/tasks/T002-strip-help.md +23 -0
  103. package/.savepoint/releases/v1/epics/_archived/E03-cli-simplify/tasks/T003-strip-run.md +23 -0
  104. package/.savepoint/releases/v1/epics/_archived/E03-cli-simplify/tasks/T004-delete-commands.md +24 -0
  105. package/.savepoint/releases/v1/epics/_archived/E03-cli-simplify/tasks/T005-update-cli-tests.md +22 -0
  106. package/.savepoint/releases/v1/epics/_archived/E04-board-phase-integration/Design.md +48 -0
  107. package/.savepoint/releases/v1/epics/_archived/E04-board-phase-integration/tasks/T001-board-data-phases.md +26 -0
  108. package/.savepoint/releases/v1/epics/_archived/E04-board-phase-integration/tasks/T002-phase-rendering.md +28 -0
  109. package/.savepoint/releases/v1/epics/_archived/E04-board-phase-integration/tasks/T003-detail-pane-phases.md +27 -0
  110. package/.savepoint/releases/v1/epics/_archived/E04-board-phase-integration/tasks/T004-phase-transitions.md +42 -0
  111. package/.savepoint/releases/v1/epics/_archived/E04-board-phase-integration/tasks/T005-phase-gates.md +24 -0
  112. package/.savepoint/releases/v1/epics/_archived/E04-board-phase-integration/tasks/T006-phase-write-back.md +24 -0
  113. package/.savepoint/releases/v1/epics/_archived/E04-board-phase-integration/tasks/T007-remove-audit-flow.md +27 -0
  114. package/.savepoint/releases/v1/epics/_archived/E04-board-phase-integration/tasks/T008-board-tests.md +25 -0
  115. package/.savepoint/releases/v1/epics/_archived/E04-templates-and-prompts/Design.md +85 -0
  116. package/.savepoint/releases/v1/epics/_archived/E04-templates-and-prompts/tasks/T001-project-template-assets.md +17 -0
  117. package/.savepoint/releases/v1/epics/_archived/E04-templates-and-prompts/tasks/T002-release-and-prompt-assets.md +20 -0
  118. package/.savepoint/releases/v1/epics/_archived/E04-templates-and-prompts/tasks/T003-template-registry-renderer.md +22 -0
  119. package/.savepoint/releases/v1/epics/_archived/E04-templates-and-prompts/tasks/T004-template-integrity-tests.md +17 -0
  120. package/.savepoint/releases/v1/epics/_archived/E04-templates-and-prompts/tasks/T005-template-closeout-quality-gates.md +16 -0
  121. package/.savepoint/releases/v1/epics/_archived/E05-init-command/Design.md +88 -0
  122. package/.savepoint/releases/v1/epics/_archived/E05-init-command/tasks/T001-init-cli-contract.md +22 -0
  123. package/.savepoint/releases/v1/epics/_archived/E05-init-command/tasks/T002-target-validation.md +23 -0
  124. package/.savepoint/releases/v1/epics/_archived/E05-init-command/tasks/T003-scaffold-writer.md +24 -0
  125. package/.savepoint/releases/v1/epics/_archived/E05-init-command/tasks/T004-magic-prompt-and-clipboard.md +23 -0
  126. package/.savepoint/releases/v1/epics/_archived/E05-init-command/tasks/T005-dev-deps-install-option.md +24 -0
  127. package/.savepoint/releases/v1/epics/_archived/E05-init-command/tasks/T006-init-command-integration.md +28 -0
  128. package/.savepoint/releases/v1/epics/_archived/E05-project-cleanup/Design.md +53 -0
  129. package/.savepoint/releases/v1/epics/_archived/E05-project-cleanup/tasks/T001-delete-dead-src.md +23 -0
  130. package/.savepoint/releases/v1/epics/_archived/E05-project-cleanup/tasks/T002-delete-dead-tests.md +26 -0
  131. package/.savepoint/releases/v1/epics/_archived/E05-project-cleanup/tasks/T003-delete-assets.md +25 -0
  132. package/.savepoint/releases/v1/epics/_archived/E05-project-cleanup/tasks/T004-clean-savepoint.md +28 -0
  133. package/.savepoint/releases/v1/epics/_archived/E05-project-cleanup/tasks/T005-rewrite-agents-md.md +28 -0
  134. package/.savepoint/releases/v1/epics/_archived/E05-project-cleanup/tasks/T006-clean-package-json.md +23 -0
  135. package/.savepoint/releases/v1/epics/_archived/E05-project-cleanup/tasks/T007-verify.md +25 -0
  136. package/.savepoint/releases/v1/epics/_archived/E06-tui-board/Design.md +104 -0
  137. package/.savepoint/releases/v1/epics/_archived/E06-tui-board/tasks/T001-board-command-data.md +23 -0
  138. package/.savepoint/releases/v1/epics/_archived/E06-tui-board/tasks/T002-board-view-state.md +24 -0
  139. package/.savepoint/releases/v1/epics/_archived/E06-tui-board/tasks/T003-transition-gates-and-writes.md +25 -0
  140. package/.savepoint/releases/v1/epics/_archived/E06-tui-board/tasks/T004-terminal-theme.md +23 -0
  141. package/.savepoint/releases/v1/epics/_archived/E06-tui-board/tasks/T005-ink-board-ui.md +26 -0
  142. package/.savepoint/releases/v1/epics/_archived/E06-tui-board/tasks/T006-board-integration-audit-entry.md +24 -0
  143. package/.savepoint/releases/v1/epics/_archived/E07-audit-pipeline/Design.md +88 -0
  144. package/.savepoint/releases/v1/epics/_archived/E07-audit-pipeline/tasks/T001-audit-cli-contract.md +23 -0
  145. package/.savepoint/releases/v1/epics/_archived/E07-audit-pipeline/tasks/T002-quality-gate-runner.md +23 -0
  146. package/.savepoint/releases/v1/epics/_archived/E07-audit-pipeline/tasks/T003-snapshot-and-prompt.md +23 -0
  147. package/.savepoint/releases/v1/epics/_archived/E07-audit-pipeline/tasks/T004-audit-orchestration-router.md +27 -0
  148. package/.savepoint/releases/v1/epics/_archived/E07-audit-pipeline/tasks/T005-proposal-validation-apply.md +25 -0
  149. package/.savepoint/releases/v1/epics/_archived/E07-audit-pipeline/tasks/T006-audit-review-state.md +24 -0
  150. package/.savepoint/releases/v1/epics/_archived/E07-audit-pipeline/tasks/T007-audit-review-ui.md +26 -0
  151. package/.savepoint/releases/v1/epics/_archived/E07-audit-pipeline/tasks/T008-audit-pipeline-integration.md +24 -0
  152. package/.savepoint/releases/v1/epics/_archived/E08-board-workflow-cleanup/Design.md +103 -0
  153. package/.savepoint/releases/v1/epics/_archived/E08-board-workflow-cleanup/tasks/T001-acceptance-criteria-model.md +30 -0
  154. package/.savepoint/releases/v1/epics/_archived/E08-board-workflow-cleanup/tasks/T002-release-task-set-reader.md +33 -0
  155. package/.savepoint/releases/v1/epics/_archived/E08-board-workflow-cleanup/tasks/T003-board-data-and-plain-output.md +34 -0
  156. package/.savepoint/releases/v1/epics/_archived/E08-board-workflow-cleanup/tasks/T004-board-selection-state.md +33 -0
  157. package/.savepoint/releases/v1/epics/_archived/E08-board-workflow-cleanup/tasks/T005-ink-board-layout-cleanup.md +37 -0
  158. package/.savepoint/releases/v1/epics/_archived/E08-board-workflow-cleanup/tasks/T006-task-detail-popup.md +36 -0
  159. package/.savepoint/releases/v1/epics/_archived/E08-board-workflow-cleanup/tasks/T007-templates-acceptance-criteria.md +34 -0
  160. package/.savepoint/releases/v1/epics/_archived/E08-board-workflow-cleanup/tasks/T008-board-workflow-integration.md +41 -0
  161. package/.savepoint/releases/v1/epics/_archived/E09-doctor-command/Design.md +70 -0
  162. package/.savepoint/releases/v1/epics/_archived/E10-docs-and-packaging/Design.md +68 -0
  163. package/.savepoint/releases/v1/epics/_archived/E11-release-validation/Design.md +68 -0
  164. package/.savepoint/releases/v1.1/epics/E01-tui-optimisation/Design.md +26 -0
  165. package/.savepoint/releases/v1.1/epics/E01-tui-optimisation/tasks/T001-border-resize-fix.md +35 -0
  166. package/.savepoint/router.md +136 -0
  167. package/.savepoint/visual-identity.md +124 -0
  168. package/AGENTS.md +141 -0
  169. package/CLAUDE.md +1 -0
  170. package/GEMINI.md +1 -0
  171. package/LICENSE +21 -0
  172. package/Makefile +13 -0
  173. package/README.md +78 -0
  174. package/agent-skills/ink-tui-design/SKILL.md +309 -0
  175. package/agent-skills/ink-tui-design/references/component-patterns.md +371 -0
  176. package/agent-skills/ink-tui-design/references/hooks-guide.md +436 -0
  177. package/agent-skills/ink-tui-design/references/ink-gotchas.md +330 -0
  178. package/agent-skills/ink-tui-design/references/testing-patterns.md +384 -0
  179. package/agent-skills/savepoint-audit/SKILL.md +35 -0
  180. package/agent-skills/savepoint-build-task/SKILL.md +39 -0
  181. package/agent-skills/savepoint-create-plan/SKILL.md +28 -0
  182. package/agent-skills/savepoint-create-task/SKILL.md +31 -0
  183. package/agent-skills/savepoint-draft-prd/SKILL.md +32 -0
  184. package/agent-skills/savepoint-system-design/SKILL.md +33 -0
  185. package/agent-skills/superpowers/brainstorming/SKILL.md +165 -0
  186. package/agent-skills/superpowers/brainstorming/visual-companion.md +304 -0
  187. package/agent-skills/superpowers/dispatching-parallel-agents/SKILL.md +193 -0
  188. package/agent-skills/superpowers/executing-plans/SKILL.md +77 -0
  189. package/agent-skills/superpowers/finishing-a-development-branch/SKILL.md +213 -0
  190. package/agent-skills/superpowers/receiving-code-review/SKILL.md +226 -0
  191. package/agent-skills/superpowers/requesting-code-review/SKILL.md +115 -0
  192. package/agent-skills/superpowers/requesting-code-review/code-reviewer.md +160 -0
  193. package/agent-skills/superpowers/subagent-driven-development/SKILL.md +292 -0
  194. package/agent-skills/superpowers/subagent-driven-development/code-quality-reviewer-prompt.md +27 -0
  195. package/agent-skills/superpowers/subagent-driven-development/implementer-prompt.md +113 -0
  196. package/agent-skills/superpowers/subagent-driven-development/spec-reviewer-prompt.md +61 -0
  197. package/agent-skills/superpowers/systematic-debugging/SKILL.md +305 -0
  198. package/agent-skills/superpowers/systematic-debugging/condition-based-waiting.md +122 -0
  199. package/agent-skills/superpowers/systematic-debugging/defense-in-depth.md +130 -0
  200. package/agent-skills/superpowers/systematic-debugging/root-cause-tracing.md +183 -0
  201. package/agent-skills/superpowers/test-driven-development/SKILL.md +389 -0
  202. package/agent-skills/superpowers/test-driven-development/testing-anti-patterns.md +317 -0
  203. package/agent-skills/superpowers/verification-before-completion/SKILL.md +147 -0
  204. package/agent-skills/superpowers/writing-plans/SKILL.md +159 -0
  205. package/agent-skills/superpowers/writing-plans/plan-document-reviewer-prompt.md +49 -0
  206. package/assets/banner.png +0 -0
  207. package/assets/logo.png +0 -0
  208. package/assets/strawman.png +0 -0
  209. package/go.mod +33 -0
  210. package/go.sum +73 -0
  211. package/ink-cli-ui-design.zip +0 -0
  212. package/internal/board/board.go +121 -0
  213. package/internal/board/board_test.go +99 -0
  214. package/internal/board/card.go +72 -0
  215. package/internal/board/card_test.go +111 -0
  216. package/internal/board/column.go +61 -0
  217. package/internal/board/column_test.go +81 -0
  218. package/internal/board/detail.go +140 -0
  219. package/internal/board/detail_test.go +233 -0
  220. package/internal/board/epic_panel.go +69 -0
  221. package/internal/board/epic_panel_test.go +246 -0
  222. package/internal/board/help.go +40 -0
  223. package/internal/board/help_test.go +85 -0
  224. package/internal/board/layout.go +58 -0
  225. package/internal/board/layout_test.go +89 -0
  226. package/internal/board/model.go +151 -0
  227. package/internal/board/model_test.go +67 -0
  228. package/internal/board/release.go +42 -0
  229. package/internal/board/release_test.go +177 -0
  230. package/internal/board/transitions.go +88 -0
  231. package/internal/board/transitions_test.go +141 -0
  232. package/internal/board/update.go +155 -0
  233. package/internal/board/update_test.go +128 -0
  234. package/internal/board/view.go +190 -0
  235. package/internal/board/view_test.go +147 -0
  236. package/internal/data/config.go +87 -0
  237. package/internal/data/config_test.go +73 -0
  238. package/internal/data/discover.go +152 -0
  239. package/internal/data/discover_test.go +106 -0
  240. package/internal/data/errors.go +9 -0
  241. package/internal/data/lifecycle.go +37 -0
  242. package/internal/data/lifecycle_test.go +38 -0
  243. package/internal/data/parser.go +189 -0
  244. package/internal/data/parser_test.go +216 -0
  245. package/internal/data/router.go +52 -0
  246. package/internal/data/router_test.go +35 -0
  247. package/internal/data/task.go +46 -0
  248. package/internal/data/task_test.go +51 -0
  249. package/internal/data/write.go +144 -0
  250. package/internal/data/write_test.go +456 -0
  251. package/internal/styles/palette.go +47 -0
  252. package/internal/styles/styles.go +122 -0
  253. package/main.exe +0 -0
  254. package/main.go +11 -0
  255. package/package.json +25 -0
  256. package/savepoint +0 -0
  257. package/savepoint.exe +0 -0
  258. package/scripts/vitest-preload.cjs +95 -0
  259. package/templates/project/.savepoint/Design.md +47 -0
  260. package/templates/project/.savepoint/PRD.md +34 -0
  261. package/templates/project/.savepoint/config.yml +27 -0
  262. package/templates/project/.savepoint/router.md +152 -0
  263. package/templates/project/.savepoint/visual-identity.md +122 -0
  264. package/templates/project/AGENTS.md +130 -0
  265. package/templates/prompts/audit-reconciliation.prompt.md +67 -0
  266. package/templates/prompts/design.prompt.md +43 -0
  267. package/templates/prompts/epic-design.prompt.md +43 -0
  268. package/templates/prompts/magic-prompt.prompt.md +7 -0
  269. package/templates/prompts/prd.prompt.md +42 -0
  270. package/templates/prompts/task-breakdown.prompt.md +54 -0
  271. package/templates/prompts/task-building.prompt.md +38 -0
  272. package/templates/prompts/task-planning.prompt.md +53 -0
  273. package/templates/release/v1/PRD.md +37 -0
@@ -0,0 +1,130 @@
1
+ # Agents Guide
2
+
3
+ Welcome, AI agent. This project (`{{PROJECT_NAME}}`) uses Savepoint to manage its build.
4
+
5
+ ## Workflow
6
+
7
+ Before doing anything, read `.savepoint/router.md`. That file routes you to the next file based on the project's current state.
8
+
9
+ **Skill Activation (CRITICAL):**
10
+ When you read `.savepoint/router.md`, you MUST activate the corresponding agent skill for the current state before taking any action. Use the `activate_skill` tool (or equivalent) for the appropriate phase:
11
+ - `state: draft-prd` -> Activate the `draft-prd` skill.
12
+ - `state: design` -> Activate the `system-design` skill.
13
+ - `state: planning` -> Activate the `create-plan` skill.
14
+ - `state: task-breakdown` -> Activate the `create-task` skill.
15
+ - `state: in-progress` -> Activate the `build-task` skill.
16
+ - `state: audit-pending` -> Activate the `audit` skill.
17
+
18
+ When you are about to write code, you must first read, in order:
19
+
20
+ 1. `.savepoint/router.md` — current state and next action
21
+ 2. The active epic Design: `.savepoint/releases/v{{RELEASE_NUMBER}}/epics/{E##-epic}/Design.md`
22
+ 3. The active task file: `.savepoint/releases/v{{RELEASE_NUMBER}}/epics/{E##-epic}/tasks/{T###}-*.md`
23
+ 4. Directly touched source/test files
24
+
25
+ Read `.savepoint/PRD.md` only for project vision changes, major scope questions, or when the router explicitly asks for it.
26
+ Read `.savepoint/Design.md` only when the task changes architecture or audit state. Read `.savepoint/releases/v{{RELEASE_NUMBER}}/PRD.md` only when planning epics, changing release scope, or resolving epic order.
27
+
28
+ **Conditional read (token discipline):** if your active task touches **Ink/TUI implementation**, also read `agent-skills/ink-tui-design/SKILL.md` after Design.md as the execution guide. If it touches **TUI rendering, theme, or visual design**, also read `.savepoint/visual-identity.md` as the visual guardrails. Otherwise skip the extra files — they are tokens you do not need.
29
+
30
+ **Do not load files outside the current task scope** unless the task requires it. Token discipline is the wedge of this product; we honor it on ourselves.
31
+
32
+ Planning and implementation are separate handoffs:
33
+
34
+ - Epic task breakdown and detailed task planning happen together in one pass by one planning agent.
35
+ - Each task file must be independently buildable, objective-led, include explicit `depends_on` IDs, contain `## Acceptance Criteria` (observable outcomes) before `## Implementation Plan` (build checklist), and include a `## Context Log` for files read, estimated input tokens, and notes.
36
+ - Implementation happens one task at a time and may be handed to any agent. Clear context between tasks by default; rehydrate only from the router, active epic Design, active task file, and directly touched source/test files.
37
+ - During implementation, run focused tests for the touched behavior first; reserve the full quality-gate suite for task closeout.
38
+
39
+ - After all tasks in an epic are `done`, hand the epic back for audit.
40
+ - Any explicit audit request overrides the normal handoff timing for that epic. Persist the audit to `.savepoint/audit/{E##-epic}/snapshot.md` and `.savepoint/audit/{E##-epic}/proposals.md` before replying; do not stop at chat-only findings.
41
+
42
+ ## Task Status Canon
43
+
44
+ Task frontmatter `status` must be exactly one of `planned`, `in_progress`, or `done`.
45
+
46
+ Active task phase is represented separately with `phase: build`, `phase: test`, or `phase: audit`, and `phase` is only valid when `status: in_progress`.
47
+
48
+ Never write `todo`, `doing`, `blocked`, `review`, `audit`, or phase names into `status`. If a task is blocked, keep its canonical status and document the blocker in the body.
49
+
50
+ ## Task Completion Protocol
51
+
52
+ When a task reaches `status: done`, you MUST:
53
+
54
+ 1. Verify every `## Acceptance Criteria` line has a passing test or verified manual outcome. A task is not done until its acceptance criteria are satisfied, not merely its implementation checkboxes ticked.
55
+ 2. Tick all checkboxes in the `## Implementation Plan`.
56
+ 3. Fill the `## Context Log` (files read, estimated input tokens, notes).
57
+ 4. Run the full quality-gate suite (`npm run build && npm run typecheck && npm run lint && npm run format:check && npm test`). Record the result in the Context Log.
58
+ 5. If any gate fails, fix it or document the blocker in the task file before setting `status: done`.
59
+ 6. Set the task frontmatter to `status: done`.
60
+ 7. Update `router.md` with the next action (next unblocked task, or `audit-pending` if all tasks done).
61
+ 8. **Stop. Prompt the user:**
62
+ > "Task {id} is done. Quality gates: {pass/fail list}. Router updated to {next_action}. Review the changes, then tell me to continue."
63
+
64
+ **Do not start the next task. Do not advance past this point without user acknowledgment.**
65
+
66
+ ## Task Closeout Meta-Check
67
+
68
+ After marking a task `done` and before prompting the user, ask yourself:
69
+
70
+ - Did this task add new source files, modules, or exports not in the Codebase Map?
71
+ - Did this task change the architecture from what `.savepoint/Design.md` describes?
72
+
73
+ If yes, append a `## Drift Notes` section to the task file:
74
+ - `Drift: {file} added, not yet in Codebase Map.`
75
+ - `Drift: {section} in Design.md may need update.`
76
+
77
+ Drift notes are lightweight annotations. They do **not** replace the epic audit. They flag what the next audit should reconcile.
78
+
79
+ ## Audit Handoff Rule
80
+
81
+ The agent session that builds an epic **must not** run its audit. Audit requires fresh eyes.
82
+
83
+ When all tasks in an epic are `done`:
84
+ 1. Update `router.md` to `state: audit-pending` for that epic.
85
+ 2. Stop. Tell the user: "Epic {id} is complete. Start a new agent session for the audit."
86
+ 3. The user starts a fresh session. The new agent reads `router.md`, sees `audit-pending`, and follows the audit-reconciliation instructions.
87
+
88
+ **If you are in the same session that built the epic, you must not audit it.**
89
+
90
+ ## Build / Test / Run
91
+
92
+ <!-- FILL IN: your project's build, typecheck, lint, format, and test commands. -->
93
+
94
+ ```bash
95
+ npm run build # compile
96
+ npm run typecheck # type check
97
+ npm run lint # lint
98
+ npm run format:check # format check
99
+ npm test # test suite
100
+ ```
101
+
102
+ ## Code Style
103
+
104
+ 1. **One job per file.** If a file does two things, split it.
105
+ 2. **One-sentence rule.** If you can't describe a function in one sentence, refactor.
106
+ 3. **Test what branches.** Logic with if/else/switch gets a test. Pure rendering: skip.
107
+ 4. **Types are documentation.** No `any`. Let the compiler help.
108
+ 5. **Build, don't speculate.** No code for hypothetical futures.
109
+ 6. **Errors at boundaries.** Handle failure where data enters or leaves the system.
110
+ 7. **One source of truth.** State lives in one place. No syncing copies.
111
+ 8. **Comments explain WHY,** not what. If removing the comment wouldn't confuse a future reader, delete it.
112
+ 9. **Content in data files.** Markdown/JSON/YAML, not strings in code.
113
+ 10. **Small diffs.** Each task touches as few files as possible.
114
+
115
+ ## Codebase Map
116
+
117
+ <!-- AUTO-GENERATED BY savepoint audit. Do not edit manually. -->
118
+
119
+ | Module | Epic | Purpose |
120
+ | ------ | ---- | ------- |
121
+
122
+ <!-- END AUTO-GENERATED -->
123
+
124
+ ## CLI rules for agents
125
+
126
+ **Never run `savepoint` commands.** The CLI is for the human. Edit files directly.
127
+
128
+ ## Recommended planning models
129
+
130
+ For PRD/Design/Task planning, this workflow assumes a top-tier model: Claude Opus, Gemini 2.5 Pro, GPT-5.5, or equivalent. Lighter models may not follow embedded prompt instructions reliably. If you are not one of those, advise the user before proceeding with planning steps.
@@ -0,0 +1,67 @@
1
+ # Prompt: Audit Reconciliation
2
+
3
+ <!-- AGENT: Produce one patch-shaped proposal bundle. Prefer delta-only edits. Do not write separate proposal files. -->
4
+
5
+ You are reconciling an epic after its last task is done. The epic is `status: audit-pending`.
6
+
7
+ **Context gate:** If you built this epic in the current session, you **must not** audit it. Close this session and let the user start a fresh one.
8
+
9
+ ## Input
10
+
11
+ - `.savepoint/audit/{E##-slug}/snapshot.md` — what changed during the epic. If this file is missing while the audit CLI is still unavailable, create one manual snapshot from the known epic scope once; do not search broadly for replacement inputs.
12
+ - `.savepoint/releases/v{N}/epics/{E##-slug}/Design.md` — the epic design (may have deltas from the original plan).
13
+ - `.savepoint/Design.md` — project architecture.
14
+ - `AGENTS.md` — agent guide and codebase map.
15
+ - Only the source and test files listed in the snapshot.
16
+
17
+ ## Output
18
+
19
+ One file: `.savepoint/audit/{E##-slug}/proposals.md`
20
+
21
+ The proposals bundle must contain these sections in order:
22
+
23
+ 1. **Design.md section** — merge only the epic's architectural delta into the project-level `.savepoint/Design.md`.
24
+ 2. **AGENTS.md section** — refresh the Codebase Map table with new or changed modules; preserve existing rows.
25
+ 3. **epic-Design.md section** — add "Implemented as:" notes and deviations from the original plan.
26
+ 4. **Quality Review section** — semantic-review findings against the project's code style rules.
27
+
28
+ ## Proposal Format
29
+
30
+ Use this shape for every proposed change:
31
+
32
+ ```md
33
+ ## Target File
34
+
35
+ `path/to/file.md`
36
+
37
+ ## Replace
38
+
39
+ <exact old heading, marker, or section>
40
+
41
+ ## With
42
+
43
+ <new content>
44
+ ```
45
+
46
+ ## Quality Review Format
47
+
48
+ ```md
49
+ ## Must Fix Before Close
50
+
51
+ ## Must Fix Before Next Epic
52
+
53
+ ## Carry Forward
54
+
55
+ ## Already Fixed
56
+ ```
57
+
58
+ ## Rules
59
+
60
+ 1. **One proposals file only.** Do not create `proposal-1.md`, `proposal-2.md`, or any other separate files.
61
+ 2. **Prefer delta-only edits.** Use `## Replace` anchored to exact existing text. Do not quote and replace entire large sections unless the whole section genuinely changed.
62
+ 3. **Do not apply changes yourself.** Write the proposals; the user reviews them in the TUI before commit.
63
+ 4. **Track context.** Count only intentional audit context reads, and keep notes short.
64
+ 5. **Stop after proposals.** Do not update the router, do not mark the epic audited, and do not commit.
65
+ 6. **Be honest about deviations.** If the implementation diverged from the design, document why in the epic-Design.md section.
66
+ 7. **Never stop at chat-only findings.** Persist `.savepoint/audit/{E##-slug}/proposals.md` before you report the audit result back to the user.
67
+ 8. **Carry-forwards must be actionable.** If an item is "Must Fix Before Next Epic," explain what the next epic's agent should verify. Vague carry-forwards are rejected.
@@ -0,0 +1,43 @@
1
+ # Prompt: Project Design Creation
2
+
3
+ <!-- AGENT: You have an approved project PRD. Produce a project-level Design.md. Stop when the design is complete; do not proceed to epics or tasks. -->
4
+
5
+ You are architecting a Savepoint-managed project based on an approved PRD.
6
+
7
+ ## Input
8
+
9
+ - `.savepoint/PRD.md` — the project vision and constraints.
10
+ - Any additional context the user provides about tech stack or patterns.
11
+
12
+ ## Output
13
+
14
+ A single markdown file matching the structure of `.savepoint/Design.md`:
15
+
16
+ ```
17
+ ---
18
+ type: project-design
19
+ status: active
20
+ last_audited: never
21
+ ---
22
+
23
+ # {Project Name} — System Architecture
24
+
25
+ ## 1. Architecture model
26
+ ## 2. Directory layout
27
+ ## 3. Hierarchy semantics
28
+ ## 4. Status model & gates
29
+ ## 5. Dependencies
30
+ ## 6. CLI surface
31
+ ## 7. Audit pipeline
32
+ ## 8. Testing strategy
33
+ ## 9. Release versioning
34
+ ```
35
+
36
+ ## Rules
37
+
38
+ 1. **Design for the PRD, not for the future.** Include only patterns and components needed to satisfy the approved scope.
39
+ 2. **Directory layout should be specific.** List expected top-level directories and key files; avoid vague bullets.
40
+ 3. **Status model should name every state** and describe what gates move work between them.
41
+ 4. **CLI surface is optional.** If the project has no CLI, state that explicitly.
42
+ 5. **Do not write epics or tasks.** The Design is architecture only.
43
+ 6. **Keep visual identity separate.** If the project has UI/TUI/theme concerns, note that `.savepoint/visual-identity.md` will carry them.
@@ -0,0 +1,43 @@
1
+ # Prompt: Epic Design Creation
2
+
3
+ <!-- AGENT: You have a release PRD and a project Design. Write one epic Design.md. Stop when that single epic design is complete. -->
4
+
5
+ You are designing one epic for a Savepoint-managed release.
6
+
7
+ ## Input
8
+
9
+ - `.savepoint/releases/v{N}/PRD.md` — release scope and epic list.
10
+ - `.savepoint/Design.md` — project architecture and constraints.
11
+ - The epic name and one-sentence purpose from the release PRD table.
12
+
13
+ ## Output
14
+
15
+ A single markdown file at `.savepoint/releases/v{N}/epics/{E##-slug}/Design.md`:
16
+
17
+ ```
18
+ ---
19
+ type: epic-design
20
+ status: active
21
+ ---
22
+
23
+ # Epic {E##}: {slug}
24
+
25
+ ## Purpose
26
+ ## What this epic adds
27
+ ## Components and files
28
+ ## Architectural delta
29
+ ## Boundaries
30
+ ## Quality gates
31
+ ## Design constraints
32
+ ## Open decisions
33
+ ```
34
+
35
+ ## Rules
36
+
37
+ 1. **One epic only.** Do not write tasks, do not design other epics, and do not modify the release PRD.
38
+ 2. **Purpose is one paragraph.** Explain what the epic adds to the system and why it is ordered where it is.
39
+ 3. **Components and files must be a table.** Each row needs a path and a one-sentence purpose.
40
+ 4. **Architectural delta explains before/after.** What does the system lack before this epic? What will it have after?
41
+ 5. **Boundaries split in/out of scope explicitly.** Use "In scope" and "Out of scope" sub-lists.
42
+ 6. **Quality gates are testable.** List commands, file checks, or behavioral criteria that prove the epic is done.
43
+ 7. **Open decisions are honest.** If something is unclear, state it as an open decision rather than guessing.
@@ -0,0 +1,7 @@
1
+ <!-- AGENT: Read AGENTS.md, then .savepoint/router.md. Follow the router's next action. -->
2
+
3
+ This project uses Savepoint for AI-driven development workflows.
4
+
5
+ To start, read `AGENTS.md` in the project root for workflow rules and the codebase map. Then read `.savepoint/router.md` for the current state and next action. Follow the router's instructions.
6
+
7
+ Project: {{PROJECT_NAME}}
@@ -0,0 +1,42 @@
1
+ # Prompt: Project PRD Creation
2
+
3
+ <!-- AGENT: Read the user's intent, then interview them until you can write a concise project PRD. Stop when the PRD is complete; do not proceed to design or implementation. -->
4
+
5
+ You are helping a user define a new Savepoint-managed project. Your goal is to produce a project-level PRD file that an agent can use later to design and build the system.
6
+
7
+ ## Input
8
+
9
+ The user may provide:
10
+
11
+ - A rough idea, feature list, or problem statement.
12
+ - Existing code, sketches, or references.
13
+ - Constraints (tech stack, timeline, team size).
14
+
15
+ ## Output
16
+
17
+ A single markdown file matching the structure of `.savepoint/PRD.md`:
18
+
19
+ ```
20
+ ---
21
+ type: project-prd
22
+ status: active
23
+ ---
24
+
25
+ # {Project Name} — Product Vision
26
+
27
+ ## What it is
28
+ ## Why
29
+ ## Target user
30
+ ## Headline differentiator
31
+ ## Success metrics
32
+ ## Constraints
33
+ ## Out of scope (forever or for now)
34
+ ```
35
+
36
+ ## Rules
37
+
38
+ 1. **One paragraph per section** unless the user explicitly provides more detail.
39
+ 2. **Out of scope is mandatory.** If the user does not specify it, ask what they are explicitly not building.
40
+ 3. **Do not invent implementation details.** The PRD is about problems and outcomes, not libraries or file structures.
41
+ 4. **Stop after the PRD.** Do not suggest next steps, design, or task breakdown.
42
+ 5. **Use concise language.** Token discipline starts here.
@@ -0,0 +1,54 @@
1
+ # Prompt: Task Breakdown
2
+
3
+ <!-- AGENT: You have an epic Design. Break it into independently buildable tasks with depends_on and checkbox plans. Stop when every task file is written and the router is updated to task-building for the first unblocked task. -->
4
+
5
+ You are breaking an approved epic into a set of tasks that agents can build one at a time.
6
+
7
+ ## Input
8
+
9
+ - `.savepoint/releases/v{N}/epics/{E##-slug}/Design.md` — the epic to break down.
10
+ - `.savepoint/Design.md` — project architecture (for boundary checks).
11
+
12
+ ## Output
13
+
14
+ One task file per task at `.savepoint/releases/v{N}/epics/{E##-slug}/tasks/TNNN-slug.md`:
15
+
16
+ ```
17
+ ---
18
+ id: {E##-slug}/TNNN-slug
19
+ status: planned
20
+ objective: "<one sentence>"
21
+ depends_on: []
22
+ ---
23
+
24
+ # TNNN: slug
25
+
26
+ ## Acceptance Criteria
27
+
28
+ - [ ] Criterion one (observable outcome)
29
+ - [ ] Criterion two (observable outcome)
30
+
31
+ ## Implementation Plan
32
+
33
+ - [ ] Step one
34
+ - [ ] Step two
35
+
36
+ ## Context Log
37
+
38
+ - Files read:
39
+ - Estimated input tokens:
40
+ - Notes:
41
+ ```
42
+
43
+ ## Rules
44
+
45
+ 1. **Each task must be independently buildable.** A task should compile, pass its own tests, and leave the repo in a valid state when done.
46
+ 2. **Objective is one sentence.** If you need more words, split the task.
47
+ 3. **depends_on must be explicit.** List full task IDs. Avoid circular dependencies.
48
+ 4. **Acceptance criteria come first.** Every task needs `## Acceptance Criteria` (observable outcomes that define "done") before `## Implementation Plan` (the build checklist that satisfies them).
49
+ 5. **Checkboxes are the plan.** Use inline `- [ ]` items under `## Implementation Plan` before any code is written.
50
+ 6. **Use only canonical task status.** New task frontmatter must use `status: planned`. Do not write `todo`, `doing`, `blocked`, `review`, `audit`, or phase names into `status`.
51
+ 7. **Use phase separately.** Only implementation flow may add `phase: build`, `phase: test`, or `phase: audit`, and only when `status: in_progress`.
52
+ 8. **Order tasks by dependency.** The first task should have no `depends_on` (or only depend on prior epic tasks).
53
+ 9. **Update the router.** After all tasks are written, set `.savepoint/router.md` `state: task-building` and point `task` to the first unblocked task.
54
+ 10. **Do not implement.** Stop at planned tasks with unchecked boxes.
@@ -0,0 +1,38 @@
1
+ # Prompt: Task Building
2
+
3
+ <!-- AGENT: Execute the task plan. Tick checkboxes as you complete them. Run focused tests. Stop at done. -->
4
+
5
+ You are implementing one Savepoint task that is `in_progress` with all `depends_on` done.
6
+
7
+ ## Input
8
+
9
+ - `.savepoint/router.md` — confirms you are on the correct task.
10
+ - `.savepoint/releases/v{N}/epics/{E##-slug}/Design.md` — epic context.
11
+ - The active task file: `.savepoint/releases/v{N}/epics/{E##-slug}/tasks/TNNN-slug.md` — your checklist.
12
+ - Any directly touched source or test files.
13
+
14
+ ## Output
15
+
16
+ - Code changes that satisfy every line in the task's `## Acceptance Criteria`.
17
+ - Updated task file with all checkboxes ticked: `- [x]`.
18
+ - Updated task file `## Context Log` with files read, estimated input tokens, notes, and quality-gate results.
19
+ - Task frontmatter `status: done`.
20
+
21
+ ## Status Rules
22
+
23
+ - Task frontmatter `status` must only be `planned`, `in_progress`, or `done`.
24
+ - Active phases are separate: `phase: build`, `phase: test`, or `phase: audit`.
25
+ - `phase` is only valid with `status: in_progress`; remove `phase` when setting `status: planned` or `status: done`.
26
+ - Never write `todo`, `doing`, `blocked`, `review`, `audit`, or phase names into `status`.
27
+
28
+ ## Rules
29
+
30
+ 1. **Follow the checklist in order.** Do not skip steps.
31
+ 2. **Satisfy acceptance criteria first.** Every `## Acceptance Criteria` line must have a passing test or a verified manual outcome before the task can be `done`. The implementation checklist exists to produce those outcomes; every checked box should map to an observable result.
32
+ 3. **Run focused tests first.** If the task touches new behavior, write or run tests for that behavior before moving to the next checkbox.
33
+ 4. **Run full quality gates at closeout.** After all checkboxes are ticked, run the project's full quality-gate suite (build, typecheck, lint, format:check, test). Record pass/fail for each gate in the Context Log.
34
+ 5. **If a gate fails,** fix it or document the blocker in the task file before setting `status: done`.
35
+ 6. **Make minimal changes.** Touch as few files as possible. Small diffs are easier to audit.
36
+ 7. **Stop at done. Update the router. Prompt the user.** Do not start the next task, do not commit, and do not advance without user acknowledgment.
37
+ 8. **If a checkbox is blocked,** leave it unchecked, add a `<!-- BLOCKED: reason -->` comment under it, and stop.
38
+ 9. **Drift check before handoff.** Ask yourself: did this task add new files/modules not in the Codebase Map? Did it change the architecture from Design.md? If yes, append `## Drift Notes` to the task file.
@@ -0,0 +1,53 @@
1
+ # Prompt: Task Planning (Repair or Late Add)
2
+
3
+ <!-- AGENT: A single task needs a plan. Write its Implementation Plan as checkboxes and set status: planned. Do not implement. -->
4
+
5
+ You are repairing or late-adding one task to an epic that is already in progress.
6
+
7
+ ## Input
8
+
9
+ - The task file stub (may have an empty or incomplete `## Implementation Plan`).
10
+ - `.savepoint/releases/v{N}/epics/{E##-slug}/Design.md` — epic context.
11
+ - `.savepoint/router.md` — current state.
12
+
13
+ ## Output
14
+
15
+ The updated task file with:
16
+
17
+ ```yaml
18
+ ---
19
+ id: {E##-slug}/TNNN-slug
20
+ status: planned
21
+ objective: "<one sentence>"
22
+ depends_on: ["..."]
23
+ ---
24
+
25
+ # TNNN: slug
26
+
27
+ ## Acceptance Criteria
28
+
29
+ - [ ] Criterion one (observable outcome)
30
+ - [ ] Criterion two (observable outcome)
31
+
32
+ ## Implementation Plan
33
+
34
+ - [ ] Step one
35
+ - [ ] Step two
36
+
37
+ ## Context Log
38
+
39
+ - Files read:
40
+ - Estimated input tokens:
41
+ - Notes:
42
+ ```
43
+
44
+ ## Rules
45
+
46
+ 1. **One task only.** Do not touch other tasks, the epic Design, or the release PRD.
47
+ 2. **Respect existing depends_on.** Do not remove dependencies; you may add them if the task truly requires prior work.
48
+ 3. **Acceptance criteria come first.** Write `## Acceptance Criteria` (observable outcomes) before `## Implementation Plan` (build checklist).
49
+ 4. **Plan before code.** Every task must have checkboxes before an agent implements it.
50
+ 5. **Use only canonical task status.** Planned task frontmatter must use `status: planned`. Do not write `todo`, `doing`, `blocked`, `review`, `audit`, or phase names into `status`.
51
+ 6. **Use phase separately.** Only implementation flow may add `phase: build`, `phase: test`, or `phase: audit`, and only when `status: in_progress`.
52
+ 7. **Do not implement.** Set `status: planned` and stop.
53
+ 8. **If the task is a repair,** reference the defect or gap that triggered it in a `## Repair Context` section above the plan.
@@ -0,0 +1,37 @@
1
+ ---
2
+ version: { { RELEASE_NUMBER } }
3
+ name: "{{RELEASE_NAME}}"
4
+ status: in_progress
5
+ ---
6
+
7
+ # Release v{{RELEASE_NUMBER}} — {{RELEASE_NAME}}
8
+
9
+ ## What ships in v{{RELEASE_NUMBER}}
10
+
11
+ <!-- One paragraph describing the release theme and primary deliverables. -->
12
+
13
+ ### In scope
14
+
15
+ <!-- Bullet list of features, commands, or capabilities included in this release. -->
16
+
17
+ ### Out of v{{RELEASE_NUMBER}} scope (deferred to later releases)
18
+
19
+ <!-- Bullet list of what is explicitly not included, with target future release if known. -->
20
+
21
+ ## Proposed epic breakdown
22
+
23
+ These are the proposed epics for v{{RELEASE_NUMBER}}. Order matters: each builds on the prior. The first epic is E01-scaffolding (per the savepoint convention). Epic folders use `E##-slug` prefixes so humans can navigate the filesystem without reopening this table.
24
+
25
+ | # | Epic name | Purpose |
26
+ | --- | --------- | ------------------------------- |
27
+ | 01 | `E01-...` | <!-- Purpose of first epic. --> |
28
+
29
+ <!-- Add additional rows as needed. -->
30
+
31
+ ## Success criteria for v{{RELEASE_NUMBER}}
32
+
33
+ <!-- How do you know the release is shippable? -->
34
+
35
+ ## Risks tracked at this release level
36
+
37
+ <!-- What could derail the release and what is the mitigation? -->