@seanmars/tospec 0.19.0-beta.8 → 0.21.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 (423) hide show
  1. package/CHANGELOG.md +89 -296
  2. package/README.md +69 -82
  3. package/assets/dashboard/app.js +11 -0
  4. package/assets/dashboard/style.css +7 -0
  5. package/bin/tospec.js +1 -1
  6. package/dist/cli/index.d.ts +6 -1
  7. package/dist/cli/index.d.ts.map +1 -1
  8. package/dist/cli/index.js +120 -112
  9. package/dist/cli/index.js.map +1 -1
  10. package/dist/commands/config.d.ts +9 -17
  11. package/dist/commands/config.d.ts.map +1 -1
  12. package/dist/commands/config.js +300 -145
  13. package/dist/commands/config.js.map +1 -1
  14. package/dist/commands/dashboard.d.ts +57 -99
  15. package/dist/commands/dashboard.d.ts.map +1 -1
  16. package/dist/commands/dashboard.js +252 -330
  17. package/dist/commands/dashboard.js.map +1 -1
  18. package/dist/commands/decision.d.ts +38 -27
  19. package/dist/commands/decision.d.ts.map +1 -1
  20. package/dist/commands/decision.js +301 -131
  21. package/dist/commands/decision.js.map +1 -1
  22. package/dist/commands/metrics.d.ts +28 -51
  23. package/dist/commands/metrics.d.ts.map +1 -1
  24. package/dist/commands/metrics.js +62 -93
  25. package/dist/commands/metrics.js.map +1 -1
  26. package/dist/commands/shared-output.d.ts +12 -27
  27. package/dist/commands/shared-output.d.ts.map +1 -1
  28. package/dist/commands/shared-output.js +22 -45
  29. package/dist/commands/shared-output.js.map +1 -1
  30. package/dist/commands/show.d.ts +4 -7
  31. package/dist/commands/show.d.ts.map +1 -1
  32. package/dist/commands/show.js +23 -11
  33. package/dist/commands/show.js.map +1 -1
  34. package/dist/commands/validate.d.ts +34 -58
  35. package/dist/commands/validate.d.ts.map +1 -1
  36. package/dist/commands/validate.js +228 -142
  37. package/dist/commands/validate.js.map +1 -1
  38. package/dist/commands/workflow/index.d.ts +1 -5
  39. package/dist/commands/workflow/index.d.ts.map +1 -1
  40. package/dist/commands/workflow/index.js +1 -5
  41. package/dist/commands/workflow/index.js.map +1 -1
  42. package/dist/commands/workflow/instructions.d.ts +14 -24
  43. package/dist/commands/workflow/instructions.d.ts.map +1 -1
  44. package/dist/commands/workflow/instructions.js +230 -132
  45. package/dist/commands/workflow/instructions.js.map +1 -1
  46. package/dist/commands/workflow/new-change.d.ts +2 -5
  47. package/dist/commands/workflow/new-change.d.ts.map +1 -1
  48. package/dist/commands/workflow/new-change.js +75 -34
  49. package/dist/commands/workflow/new-change.js.map +1 -1
  50. package/dist/commands/workflow/schemas.d.ts +1 -5
  51. package/dist/commands/workflow/schemas.d.ts.map +1 -1
  52. package/dist/commands/workflow/schemas.js +6 -17
  53. package/dist/commands/workflow/schemas.js.map +1 -1
  54. package/dist/commands/workflow/shared.d.ts +37 -42
  55. package/dist/commands/workflow/shared.d.ts.map +1 -1
  56. package/dist/commands/workflow/shared.js +23 -54
  57. package/dist/commands/workflow/shared.js.map +1 -1
  58. package/dist/commands/workflow/status.d.ts +7 -17
  59. package/dist/commands/workflow/status.d.ts.map +1 -1
  60. package/dist/commands/workflow/status.js +57 -72
  61. package/dist/commands/workflow/status.js.map +1 -1
  62. package/dist/commands/workflow/templates.d.ts +8 -8
  63. package/dist/commands/workflow/templates.d.ts.map +1 -1
  64. package/dist/commands/workflow/templates.js +32 -46
  65. package/dist/commands/workflow/templates.js.map +1 -1
  66. package/dist/core/archive.d.ts +33 -31
  67. package/dist/core/archive.d.ts.map +1 -1
  68. package/dist/core/archive.js +322 -284
  69. package/dist/core/archive.js.map +1 -1
  70. package/dist/core/artifact-graph/graph.d.ts +25 -42
  71. package/dist/core/artifact-graph/graph.d.ts.map +1 -1
  72. package/dist/core/artifact-graph/graph.js +45 -63
  73. package/dist/core/artifact-graph/graph.js.map +1 -1
  74. package/dist/core/artifact-graph/index.d.ts +1 -1
  75. package/dist/core/artifact-graph/index.d.ts.map +1 -1
  76. package/dist/core/artifact-graph/index.js +1 -1
  77. package/dist/core/artifact-graph/index.js.map +1 -1
  78. package/dist/core/artifact-graph/instruction-loader.d.ts +54 -120
  79. package/dist/core/artifact-graph/instruction-loader.d.ts.map +1 -1
  80. package/dist/core/artifact-graph/instruction-loader.js +129 -111
  81. package/dist/core/artifact-graph/instruction-loader.js.map +1 -1
  82. package/dist/core/artifact-graph/outputs.d.ts +9 -23
  83. package/dist/core/artifact-graph/outputs.d.ts.map +1 -1
  84. package/dist/core/artifact-graph/outputs.js +45 -38
  85. package/dist/core/artifact-graph/outputs.js.map +1 -1
  86. package/dist/core/artifact-graph/resolver.d.ts +36 -81
  87. package/dist/core/artifact-graph/resolver.d.ts.map +1 -1
  88. package/dist/core/artifact-graph/resolver.js +60 -101
  89. package/dist/core/artifact-graph/resolver.js.map +1 -1
  90. package/dist/core/artifact-graph/schema.d.ts +0 -6
  91. package/dist/core/artifact-graph/schema.d.ts.map +1 -1
  92. package/dist/core/artifact-graph/schema.js +7 -32
  93. package/dist/core/artifact-graph/schema.js.map +1 -1
  94. package/dist/core/artifact-graph/state.d.ts +1 -8
  95. package/dist/core/artifact-graph/state.d.ts.map +1 -1
  96. package/dist/core/artifact-graph/state.js +2 -17
  97. package/dist/core/artifact-graph/state.js.map +1 -1
  98. package/dist/core/artifact-graph/stub-detection.d.ts +6 -14
  99. package/dist/core/artifact-graph/stub-detection.d.ts.map +1 -1
  100. package/dist/core/artifact-graph/stub-detection.js +13 -16
  101. package/dist/core/artifact-graph/stub-detection.js.map +1 -1
  102. package/dist/core/artifact-graph/types.d.ts +4 -0
  103. package/dist/core/artifact-graph/types.d.ts.map +1 -1
  104. package/dist/core/artifact-graph/types.js +46 -11
  105. package/dist/core/artifact-graph/types.js.map +1 -1
  106. package/dist/core/available-tools.d.ts +3 -12
  107. package/dist/core/available-tools.d.ts.map +1 -1
  108. package/dist/core/available-tools.js +4 -13
  109. package/dist/core/available-tools.js.map +1 -1
  110. package/dist/core/change-metadata/schema.d.ts +1 -1
  111. package/dist/core/change-metadata/schema.d.ts.map +1 -1
  112. package/dist/core/change-metadata/schema.js +10 -7
  113. package/dist/core/change-metadata/schema.js.map +1 -1
  114. package/dist/core/change-presenter.d.ts +16 -27
  115. package/dist/core/change-presenter.d.ts.map +1 -1
  116. package/dist/core/change-presenter.js +53 -53
  117. package/dist/core/change-presenter.js.map +1 -1
  118. package/dist/core/change-status-policy.d.ts +4 -8
  119. package/dist/core/change-status-policy.d.ts.map +1 -1
  120. package/dist/core/change-status-policy.js +9 -17
  121. package/dist/core/change-status-policy.js.map +1 -1
  122. package/dist/core/codex-metrics.d.ts +25 -45
  123. package/dist/core/codex-metrics.d.ts.map +1 -1
  124. package/dist/core/codex-metrics.js +44 -88
  125. package/dist/core/codex-metrics.js.map +1 -1
  126. package/dist/core/codex-residue.d.ts +14 -15
  127. package/dist/core/codex-residue.d.ts.map +1 -1
  128. package/dist/core/codex-residue.js +18 -22
  129. package/dist/core/codex-residue.js.map +1 -1
  130. package/dist/core/command-generation/adapters/claude.d.ts +2 -9
  131. package/dist/core/command-generation/adapters/claude.d.ts.map +1 -1
  132. package/dist/core/command-generation/adapters/claude.js +2 -12
  133. package/dist/core/command-generation/adapters/claude.js.map +1 -1
  134. package/dist/core/command-generation/adapters/index.d.ts +1 -9
  135. package/dist/core/command-generation/adapters/index.d.ts.map +1 -1
  136. package/dist/core/command-generation/adapters/index.js +1 -9
  137. package/dist/core/command-generation/adapters/index.js.map +1 -1
  138. package/dist/core/command-generation/generator.d.ts +0 -17
  139. package/dist/core/command-generation/generator.d.ts.map +1 -1
  140. package/dist/core/command-generation/generator.js +0 -17
  141. package/dist/core/command-generation/generator.js.map +1 -1
  142. package/dist/core/command-generation/index.d.ts +2 -5
  143. package/dist/core/command-generation/index.d.ts.map +1 -1
  144. package/dist/core/command-generation/index.js +0 -9
  145. package/dist/core/command-generation/index.js.map +1 -1
  146. package/dist/core/command-generation/types.d.ts +10 -36
  147. package/dist/core/command-generation/types.d.ts.map +1 -1
  148. package/dist/core/command-generation/types.js +0 -6
  149. package/dist/core/command-generation/types.js.map +1 -1
  150. package/dist/core/command-generation/yaml.d.ts +3 -18
  151. package/dist/core/command-generation/yaml.d.ts.map +1 -1
  152. package/dist/core/command-generation/yaml.js +5 -23
  153. package/dist/core/command-generation/yaml.js.map +1 -1
  154. package/dist/core/config-prompts.d.ts +2 -4
  155. package/dist/core/config-prompts.d.ts.map +1 -1
  156. package/dist/core/config-prompts.js +2 -7
  157. package/dist/core/config-prompts.js.map +1 -1
  158. package/dist/core/config-schema.d.ts +7 -41
  159. package/dist/core/config-schema.d.ts.map +1 -1
  160. package/dist/core/config-schema.js +35 -74
  161. package/dist/core/config-schema.js.map +1 -1
  162. package/dist/core/config.d.ts +25 -49
  163. package/dist/core/config.d.ts.map +1 -1
  164. package/dist/core/config.js +22 -45
  165. package/dist/core/config.js.map +1 -1
  166. package/dist/core/dashboard-activity.d.ts +7 -9
  167. package/dist/core/dashboard-activity.d.ts.map +1 -1
  168. package/dist/core/dashboard-activity.js +34 -25
  169. package/dist/core/dashboard-activity.js.map +1 -1
  170. package/dist/core/dashboard-data.d.ts +35 -22
  171. package/dist/core/dashboard-data.d.ts.map +1 -1
  172. package/dist/core/dashboard-data.js +57 -72
  173. package/dist/core/dashboard-data.js.map +1 -1
  174. package/dist/core/global-config.d.ts +24 -53
  175. package/dist/core/global-config.d.ts.map +1 -1
  176. package/dist/core/global-config.js +38 -67
  177. package/dist/core/global-config.js.map +1 -1
  178. package/dist/core/init.d.ts +12 -28
  179. package/dist/core/init.d.ts.map +1 -1
  180. package/dist/core/init.js +93 -169
  181. package/dist/core/init.js.map +1 -1
  182. package/dist/core/list.d.ts.map +1 -1
  183. package/dist/core/list.js +95 -41
  184. package/dist/core/list.js.map +1 -1
  185. package/dist/core/local-server.d.ts +41 -83
  186. package/dist/core/local-server.d.ts.map +1 -1
  187. package/dist/core/local-server.js +53 -98
  188. package/dist/core/local-server.js.map +1 -1
  189. package/dist/core/markdown-render.d.ts +15 -23
  190. package/dist/core/markdown-render.d.ts.map +1 -1
  191. package/dist/core/markdown-render.js +25 -34
  192. package/dist/core/markdown-render.js.map +1 -1
  193. package/dist/core/migrate.d.ts +19 -16
  194. package/dist/core/migrate.d.ts.map +1 -1
  195. package/dist/core/migrate.js +162 -136
  196. package/dist/core/migrate.js.map +1 -1
  197. package/dist/core/parsers/change-parser.d.ts +7 -10
  198. package/dist/core/parsers/change-parser.d.ts.map +1 -1
  199. package/dist/core/parsers/change-parser.js +48 -56
  200. package/dist/core/parsers/change-parser.js.map +1 -1
  201. package/dist/core/parsers/markdown-parser.d.ts +8 -9
  202. package/dist/core/parsers/markdown-parser.d.ts.map +1 -1
  203. package/dist/core/parsers/markdown-parser.js +23 -30
  204. package/dist/core/parsers/markdown-parser.js.map +1 -1
  205. package/dist/core/parsers/requirement-blocks.d.ts +43 -15
  206. package/dist/core/parsers/requirement-blocks.d.ts.map +1 -1
  207. package/dist/core/parsers/requirement-blocks.js +142 -70
  208. package/dist/core/parsers/requirement-blocks.js.map +1 -1
  209. package/dist/core/parsers/requirement-text.d.ts +73 -79
  210. package/dist/core/parsers/requirement-text.d.ts.map +1 -1
  211. package/dist/core/parsers/requirement-text.js +137 -79
  212. package/dist/core/parsers/requirement-text.js.map +1 -1
  213. package/dist/core/parsers/spec-structure.d.ts.map +1 -1
  214. package/dist/core/parsers/spec-structure.js +10 -6
  215. package/dist/core/parsers/spec-structure.js.map +1 -1
  216. package/dist/core/profiles.d.ts +3 -10
  217. package/dist/core/profiles.d.ts.map +1 -1
  218. package/dist/core/profiles.js +5 -12
  219. package/dist/core/profiles.js.map +1 -1
  220. package/dist/core/project-config.d.ts +43 -44
  221. package/dist/core/project-config.d.ts.map +1 -1
  222. package/dist/core/project-config.js +107 -82
  223. package/dist/core/project-config.js.map +1 -1
  224. package/dist/core/project-layout.d.ts +9 -17
  225. package/dist/core/project-layout.d.ts.map +1 -1
  226. package/dist/core/project-layout.js +16 -26
  227. package/dist/core/project-layout.js.map +1 -1
  228. package/dist/core/root-selection.d.ts +8 -14
  229. package/dist/core/root-selection.d.ts.map +1 -1
  230. package/dist/core/root-selection.js +3 -6
  231. package/dist/core/root-selection.js.map +1 -1
  232. package/dist/core/rules.d.ts.map +1 -1
  233. package/dist/core/rules.js +2 -3
  234. package/dist/core/rules.js.map +1 -1
  235. package/dist/core/schema-names.d.ts +16 -0
  236. package/dist/core/schema-names.d.ts.map +1 -0
  237. package/dist/core/schema-names.js +16 -0
  238. package/dist/core/schema-names.js.map +1 -0
  239. package/dist/core/schemas/base.schema.d.ts.map +1 -1
  240. package/dist/core/schemas/base.schema.js +6 -12
  241. package/dist/core/schemas/base.schema.js.map +1 -1
  242. package/dist/core/schemas/change.schema.d.ts +8 -0
  243. package/dist/core/schemas/change.schema.d.ts.map +1 -1
  244. package/dist/core/schemas/change.schema.js +41 -10
  245. package/dist/core/schemas/change.schema.js.map +1 -1
  246. package/dist/core/shared/index.d.ts +2 -7
  247. package/dist/core/shared/index.d.ts.map +1 -1
  248. package/dist/core/shared/index.js +2 -7
  249. package/dist/core/shared/index.js.map +1 -1
  250. package/dist/core/shared/rules-generation.d.ts +5 -15
  251. package/dist/core/shared/rules-generation.d.ts.map +1 -1
  252. package/dist/core/shared/rules-generation.js +33 -37
  253. package/dist/core/shared/rules-generation.js.map +1 -1
  254. package/dist/core/shared/skill-generation.d.ts +28 -43
  255. package/dist/core/shared/skill-generation.d.ts.map +1 -1
  256. package/dist/core/shared/skill-generation.js +82 -51
  257. package/dist/core/shared/skill-generation.js.map +1 -1
  258. package/dist/core/shared/tool-detection.d.ts +35 -76
  259. package/dist/core/shared/tool-detection.d.ts.map +1 -1
  260. package/dist/core/shared/tool-detection.js +73 -93
  261. package/dist/core/shared/tool-detection.js.map +1 -1
  262. package/dist/core/skill-metrics.d.ts +36 -63
  263. package/dist/core/skill-metrics.d.ts.map +1 -1
  264. package/dist/core/skill-metrics.js +34 -73
  265. package/dist/core/skill-metrics.js.map +1 -1
  266. package/dist/core/spec-presenter.d.ts.map +1 -1
  267. package/dist/core/spec-presenter.js +5 -10
  268. package/dist/core/spec-presenter.js.map +1 -1
  269. package/dist/core/specs-apply.d.ts +16 -31
  270. package/dist/core/specs-apply.d.ts.map +1 -1
  271. package/dist/core/specs-apply.js +146 -195
  272. package/dist/core/specs-apply.js.map +1 -1
  273. package/dist/core/templates/fragments/interview.d.ts +2 -6
  274. package/dist/core/templates/fragments/interview.d.ts.map +1 -1
  275. package/dist/core/templates/fragments/interview.js +2 -6
  276. package/dist/core/templates/fragments/interview.js.map +1 -1
  277. package/dist/core/templates/fragments/next-step.d.ts +4 -8
  278. package/dist/core/templates/fragments/next-step.d.ts.map +1 -1
  279. package/dist/core/templates/fragments/next-step.js +4 -8
  280. package/dist/core/templates/fragments/next-step.js.map +1 -1
  281. package/dist/core/templates/fragments/validate.d.ts +13 -0
  282. package/dist/core/templates/fragments/validate.d.ts.map +1 -0
  283. package/dist/core/templates/fragments/validate.js +13 -0
  284. package/dist/core/templates/fragments/validate.js.map +1 -0
  285. package/dist/core/templates/fragments/verify.d.ts +9 -12
  286. package/dist/core/templates/fragments/verify.d.ts.map +1 -1
  287. package/dist/core/templates/fragments/verify.js +9 -12
  288. package/dist/core/templates/fragments/verify.js.map +1 -1
  289. package/dist/core/templates/index.d.ts +0 -6
  290. package/dist/core/templates/index.d.ts.map +1 -1
  291. package/dist/core/templates/index.js +0 -7
  292. package/dist/core/templates/index.js.map +1 -1
  293. package/dist/core/templates/skill-templates.d.ts +1 -5
  294. package/dist/core/templates/skill-templates.d.ts.map +1 -1
  295. package/dist/core/templates/skill-templates.js +0 -5
  296. package/dist/core/templates/skill-templates.js.map +1 -1
  297. package/dist/core/templates/types.d.ts +3 -7
  298. package/dist/core/templates/types.d.ts.map +1 -1
  299. package/dist/core/templates/types.js +0 -3
  300. package/dist/core/templates/types.js.map +1 -1
  301. package/dist/core/templates/workflows/apply.d.ts +3 -9
  302. package/dist/core/templates/workflows/apply.d.ts.map +1 -1
  303. package/dist/core/templates/workflows/apply.js +11 -13
  304. package/dist/core/templates/workflows/apply.js.map +1 -1
  305. package/dist/core/templates/workflows/archive.d.ts +0 -6
  306. package/dist/core/templates/workflows/archive.d.ts.map +1 -1
  307. package/dist/core/templates/workflows/archive.js +16 -5
  308. package/dist/core/templates/workflows/archive.js.map +1 -1
  309. package/dist/core/templates/workflows/decision.js +3 -3
  310. package/dist/core/templates/workflows/decision.js.map +1 -1
  311. package/dist/core/templates/workflows/explore.js +1 -1
  312. package/dist/core/templates/workflows/grill.d.ts.map +1 -1
  313. package/dist/core/templates/workflows/grill.js +0 -2
  314. package/dist/core/templates/workflows/grill.js.map +1 -1
  315. package/dist/core/templates/workflows/issue.d.ts +0 -6
  316. package/dist/core/templates/workflows/issue.d.ts.map +1 -1
  317. package/dist/core/templates/workflows/issue.js +3 -2
  318. package/dist/core/templates/workflows/issue.js.map +1 -1
  319. package/dist/core/templates/workflows/propose.d.ts +0 -6
  320. package/dist/core/templates/workflows/propose.d.ts.map +1 -1
  321. package/dist/core/templates/workflows/propose.js +2 -2
  322. package/dist/core/templates/workflows/propose.js.map +1 -1
  323. package/dist/core/templates/workflows/sync.d.ts +2 -8
  324. package/dist/core/templates/workflows/sync.d.ts.map +1 -1
  325. package/dist/core/templates/workflows/sync.js +4 -3
  326. package/dist/core/templates/workflows/sync.js.map +1 -1
  327. package/dist/core/templates/workflows/update.d.ts +0 -6
  328. package/dist/core/templates/workflows/update.d.ts.map +1 -1
  329. package/dist/core/templates/workflows/update.js +9 -2
  330. package/dist/core/templates/workflows/update.js.map +1 -1
  331. package/dist/core/update.d.ts +10 -36
  332. package/dist/core/update.d.ts.map +1 -1
  333. package/dist/core/update.js +59 -126
  334. package/dist/core/update.js.map +1 -1
  335. package/dist/core/user-state-migration.d.ts +13 -15
  336. package/dist/core/user-state-migration.d.ts.map +1 -1
  337. package/dist/core/user-state-migration.js +30 -23
  338. package/dist/core/user-state-migration.js.map +1 -1
  339. package/dist/core/validation/constants.d.ts +4 -10
  340. package/dist/core/validation/constants.d.ts.map +1 -1
  341. package/dist/core/validation/constants.js +25 -25
  342. package/dist/core/validation/constants.js.map +1 -1
  343. package/dist/core/validation/prose-length.d.ts +15 -0
  344. package/dist/core/validation/prose-length.d.ts.map +1 -0
  345. package/dist/core/validation/prose-length.js +29 -0
  346. package/dist/core/validation/prose-length.js.map +1 -0
  347. package/dist/core/validation/purpose-placeholder.d.ts +9 -16
  348. package/dist/core/validation/purpose-placeholder.d.ts.map +1 -1
  349. package/dist/core/validation/purpose-placeholder.js +30 -44
  350. package/dist/core/validation/purpose-placeholder.js.map +1 -1
  351. package/dist/core/validation/section-validator.d.ts +4 -4
  352. package/dist/core/validation/section-validator.d.ts.map +1 -1
  353. package/dist/core/validation/section-validator.js +30 -12
  354. package/dist/core/validation/section-validator.js.map +1 -1
  355. package/dist/core/validation/task-numbering.d.ts +6 -3
  356. package/dist/core/validation/task-numbering.d.ts.map +1 -1
  357. package/dist/core/validation/task-numbering.js +23 -11
  358. package/dist/core/validation/task-numbering.js.map +1 -1
  359. package/dist/core/validation/types.d.ts +18 -0
  360. package/dist/core/validation/types.d.ts.map +1 -1
  361. package/dist/core/validation/types.js +12 -1
  362. package/dist/core/validation/types.js.map +1 -1
  363. package/dist/core/validation/validator.d.ts +42 -68
  364. package/dist/core/validation/validator.d.ts.map +1 -1
  365. package/dist/core/validation/validator.js +474 -285
  366. package/dist/core/validation/validator.js.map +1 -1
  367. package/dist/prompts/searchable-multi-select.d.ts +3 -8
  368. package/dist/prompts/searchable-multi-select.d.ts.map +1 -1
  369. package/dist/prompts/searchable-multi-select.js +16 -39
  370. package/dist/prompts/searchable-multi-select.js.map +1 -1
  371. package/dist/utils/change-metadata.d.ts +11 -50
  372. package/dist/utils/change-metadata.d.ts.map +1 -1
  373. package/dist/utils/change-metadata.js +48 -67
  374. package/dist/utils/change-metadata.js.map +1 -1
  375. package/dist/utils/change-utils.d.ts +24 -76
  376. package/dist/utils/change-utils.d.ts.map +1 -1
  377. package/dist/utils/change-utils.js +95 -142
  378. package/dist/utils/change-utils.js.map +1 -1
  379. package/dist/utils/file-lock.d.ts +39 -0
  380. package/dist/utils/file-lock.d.ts.map +1 -0
  381. package/dist/utils/file-lock.js +149 -0
  382. package/dist/utils/file-lock.js.map +1 -0
  383. package/dist/utils/file-system.d.ts +12 -32
  384. package/dist/utils/file-system.d.ts.map +1 -1
  385. package/dist/utils/file-system.js +41 -45
  386. package/dist/utils/file-system.js.map +1 -1
  387. package/dist/utils/frontmatter.d.ts +7 -11
  388. package/dist/utils/frontmatter.d.ts.map +1 -1
  389. package/dist/utils/frontmatter.js +11 -11
  390. package/dist/utils/frontmatter.js.map +1 -1
  391. package/dist/utils/interactive.d.ts +4 -9
  392. package/dist/utils/interactive.d.ts.map +1 -1
  393. package/dist/utils/interactive.js +2 -4
  394. package/dist/utils/interactive.js.map +1 -1
  395. package/dist/utils/item-discovery.d.ts +10 -20
  396. package/dist/utils/item-discovery.d.ts.map +1 -1
  397. package/dist/utils/item-discovery.js +31 -55
  398. package/dist/utils/item-discovery.js.map +1 -1
  399. package/dist/utils/link.d.ts +9 -18
  400. package/dist/utils/link.d.ts.map +1 -1
  401. package/dist/utils/link.js +9 -18
  402. package/dist/utils/link.js.map +1 -1
  403. package/dist/utils/requirement-diff.d.ts +13 -23
  404. package/dist/utils/requirement-diff.d.ts.map +1 -1
  405. package/dist/utils/requirement-diff.js +13 -23
  406. package/dist/utils/requirement-diff.js.map +1 -1
  407. package/dist/utils/spec-files.d.ts +7 -20
  408. package/dist/utils/spec-files.d.ts.map +1 -1
  409. package/dist/utils/spec-files.js +26 -51
  410. package/dist/utils/spec-files.js.map +1 -1
  411. package/dist/utils/task-progress.d.ts +11 -9
  412. package/dist/utils/task-progress.d.ts.map +1 -1
  413. package/dist/utils/task-progress.js +53 -32
  414. package/dist/utils/task-progress.js.map +1 -1
  415. package/dist/utils/timestamp.d.ts +5 -8
  416. package/dist/utils/timestamp.d.ts.map +1 -1
  417. package/dist/utils/timestamp.js +5 -8
  418. package/dist/utils/timestamp.js.map +1 -1
  419. package/package.json +2 -3
  420. package/schemas/issue/schema.yaml +8 -1
  421. package/schemas/issue/templates/spec.md +20 -3
  422. package/schemas/sdd/schema.yaml +20 -1
  423. package/schemas/sdd/templates/spec.md +20 -3
package/dist/cli/index.js CHANGED
@@ -6,8 +6,6 @@ import { fileURLToPath } from 'url';
6
6
  import { promises as fs } from 'fs';
7
7
  import { AI_TOOLS } from '../core/config.js';
8
8
  import { UpdateCommand, UPDATE_FAILURE_PAYLOAD } from '../core/update.js';
9
- import { ListCommand } from '../core/list.js';
10
- import { ArchiveCommand } from '../core/archive.js';
11
9
  import { INIT_FAILURE_PAYLOAD } from '../core/init.js';
12
10
  import { RULES_FAILURE_PAYLOAD } from '../core/rules.js';
13
11
  import { MigrateCommand, MIGRATE_FAILURE_PAYLOAD } from '../core/migrate.js';
@@ -15,41 +13,46 @@ import { resolveRootForCommand, resolveTospecRoot, isRootSelectionError, toRootO
15
13
  import { ValidateCommand, VALIDATE_FAILURE_PAYLOAD } from '../commands/validate.js';
16
14
  import { ShowCommand, SHOW_FAILURE_PAYLOAD } from '../commands/show.js';
17
15
  import { isInteractive } from '../utils/interactive.js';
18
- import { registerConfigCommand } from '../commands/config.js';
16
+ import { registerConfigCommand, CONFIG_FAILURE_PAYLOADS } from '../commands/config.js';
19
17
  import { registerDecisionCommand, DECISION_NEW_FAILURE_PAYLOAD, DECISION_LIST_FAILURE_PAYLOAD, } from '../commands/decision.js';
20
18
  import { registerMetricsCommand } from '../commands/metrics.js';
21
19
  import { statusCommand, BATCH_STATUS_FAILURE_PAYLOAD, STATUS_FAILURE_PAYLOAD, instructionsCommand, applyInstructionsCommand, INSTRUCTIONS_FAILURE_PAYLOAD, APPLY_ARGUMENT, templatesCommand, TEMPLATES_FAILURE_PAYLOAD, schemasCommand, SCHEMAS_FAILURE_PAYLOAD, newChangeCommand, NEW_CHANGE_FAILURE_PAYLOAD, DEFAULT_SCHEMA, } from '../commands/workflow/index.js';
22
20
  /**
23
21
  * The options the user actually typed.
24
22
  *
25
- * Commander materialises a negatable option's default: `--no-scenarios` puts
26
- * `scenarios: true` into the object even when nobody typed it. So "the key is
27
- * present" and "the user asked for this" are different questions, and a command
28
- * body testing presence answers the wrong one — `show <change>` warned about an
29
- * ignored `scenarios` flag on every single run.
30
- *
31
- * Dropping the defaults here makes the two questions the same, rather than
32
- * teaching each consumer a table of per-flag defaults to keep in sync. Safe
33
- * because every consumer already treats a missing flag and its default
34
- * identically (`options.scenarios !== false`, `options.interactive === false`).
23
+ * Commander materialises a negatable option's default (`--no-scenarios` puts
24
+ * `scenarios: true` in even when nobody typed it), so a body testing presence
25
+ * answers the wrong question. Safe to drop the defaults here because every
26
+ * consumer treats a missing flag and its default identically.
35
27
  */
36
28
  function userSuppliedOptions(options, command) {
37
29
  if (!options)
38
30
  return {};
39
31
  return Object.fromEntries(Object.entries(options).filter(([key]) => command.getOptionValueSource(key) !== 'default'));
40
32
  }
33
+ /** `--concurrency` / `--port`: digits only, so `''`, `1.5` and `0x10` are all refused. */
34
+ function positiveIntegerArg(value) {
35
+ if (!/^\d+$/.test(value.trim()) || Number(value) <= 0) {
36
+ throw new InvalidArgumentError('Expected a positive integer.');
37
+ }
38
+ return value;
39
+ }
40
+ function portArg(value) {
41
+ if (!/^\d+$/.test(value.trim()) || Number(value) > 65535) {
42
+ throw new InvalidArgumentError('Expected an integer between 0 and 65535.');
43
+ }
44
+ return value;
45
+ }
41
46
  const jsonFailureShapes = new WeakMap();
42
47
  function withJsonFailureShape(command, shape) {
43
48
  jsonFailureShapes.set(command, shape);
44
49
  return command;
45
50
  }
46
51
  /**
47
- * Makes commander throw instead of exiting, for the whole command tree.
48
- *
49
- * Applied after every subcommand is registered rather than at construction:
50
- * commander only copies `_exitCallback` into a subcommand at `.command()` time,
51
- * so setting it on the root alone would leave every subcommand still calling
52
- * `process.exit` — which is where these failures actually happen.
52
+ * Makes commander throw instead of exiting, for the whole command tree. Applied
53
+ * after every subcommand is registered: commander copies `_exitCallback` into a
54
+ * subcommand at `.command()` time, so setting it on the root alone leaves every
55
+ * subcommand still calling `process.exit`.
53
56
  */
54
57
  function throwOnCommanderExit(command) {
55
58
  command.exitOverride((error) => {
@@ -62,18 +65,15 @@ function throwOnCommanderExit(command) {
62
65
  throwOnCommanderExit(child);
63
66
  }
64
67
  /**
65
- * The root output for a command whose root came from its path argument rather
66
- * than from a search: `init`, `update` and `rules`. Their success payloads all
67
- * report `source: 'explicit'`, so their failures say the same thing about the
68
- * same directory instead of `null` (round 4 report 10).
68
+ * The root output for a command that takes its root as a path argument rather
69
+ * than searching: `init`, `update`, `rules`, `migrate`. Their success payloads
70
+ * report `source: 'explicit'`, so their failures say the same.
69
71
  */
70
72
  function explicitRootOutput(targetPath) {
71
73
  return { path: path.resolve(targetPath), source: 'explicit' };
72
74
  }
75
+ /** The agent contract: one JSON document on stdout per `--json` failure. */
73
76
  function failWithError(error, json) {
74
- // The agent contract: every --json failure leaves exactly one JSON
75
- // document on stdout (the command's null-shape plus a status array).
76
- // Delegates to the one shared failure sink (shared-output.emitFailure).
77
77
  emitFailure(json?.enabled, json?.payload ?? {}, error, json?.fallbackCode ?? 'command_error');
78
78
  }
79
79
  const program = new Command();
@@ -83,16 +83,12 @@ program
83
83
  .name('tospec')
84
84
  .description('Spec-driven development CLI for requirements and issue workflows')
85
85
  .version(version);
86
- // Kept for backward compatibility with existing invocations; output has no
87
- // color to disable now, so this is otherwise a no-op.
86
+ // Kept for backward compatibility; output has no color to disable, so this is a
87
+ // no-op.
88
88
  program.option('--no-color', 'Disable color output (no-op: output is plain text)');
89
- // -----------------------------------------------------------------------------
90
- // Install layer
91
- // -----------------------------------------------------------------------------
92
89
  const availableToolIds = AI_TOOLS.filter((tool) => tool.skillsDir).map((tool) => tool.value);
93
- // A value that silently drags another target in reads as "pick this or don't"
94
- // unless the implication is stated. Derived from the same table so a future
95
- // dependency documents itself.
90
+ // Derived from the same table so a future dependency documents itself: a value
91
+ // that drags another target in otherwise reads as "pick this or don't".
96
92
  const toolDependencyNotes = AI_TOOLS
97
93
  .filter((tool) => tool.requires?.length)
98
94
  .map((tool) => `${tool.value} implies ${tool.requires.join(', ')}`)
@@ -137,10 +133,6 @@ program
137
133
  catch (error) {
138
134
  failWithError(error, {
139
135
  enabled: options?.json,
140
- // Round 4 report 10. These three take their root as an argument rather
141
- // than searching for it, so it is known even when the run fails — a
142
- // rule conflict reports absolute paths *under* this root while the
143
- // envelope claimed `root: null`. Same `source` the success payload uses.
144
136
  payload: { ...INIT_FAILURE_PAYLOAD, root: explicitRootOutput(targetPath) },
145
137
  fallbackCode: 'init_error',
146
138
  });
@@ -194,7 +186,8 @@ program
194
186
  catch (error) {
195
187
  failWithError(error, {
196
188
  enabled: options?.json,
197
- payload: MIGRATE_FAILURE_PAYLOAD,
189
+ // migrate always writes `tospec/` into the cwd, so the root is known here.
190
+ payload: { ...MIGRATE_FAILURE_PAYLOAD, root: explicitRootOutput(process.cwd()) },
198
191
  fallbackCode: 'migrate_error',
199
192
  });
200
193
  }
@@ -208,22 +201,19 @@ program
208
201
  .option('--type <type>', 'Filter changes by type: "requirement" or "issue"')
209
202
  .option('--json', 'Output as JSON (for programmatic use)')
210
203
  .action(async (options) => {
211
- // Round 4 report 10. Both the argument check below and the catch block used
212
- // to hardcode `root: null`, so `list --type bogus` was the one runtime
213
- // failure in the CLI that denied knowing where it had been pointed —
214
- // every other command reports the resolved root on failure. Resolution
215
- // first, and the payload built from what it found.
204
+ // Resolve first so a failure can still report where the CLI was pointed.
205
+ // The data key is `null`, never `[]`: an empty array is indistinguishable
206
+ // from the successful "no active changes" answer.
216
207
  let resolvedRoot = null;
217
208
  const failurePayload = () => ({
218
- ...(options?.specs ? { specs: [] } : { changes: [] }),
209
+ ...(options?.specs ? { specs: null } : { changes: null }),
219
210
  root: resolvedRoot ? toRootOutput(resolvedRoot) : null,
220
211
  });
221
212
  try {
222
213
  resolvedRoot = await resolveRootForCommand({}, {
223
214
  json: options?.json,
224
- // See the note in workflow/status.ts: an implicit root means no ancestor
225
- // is a tospec project, and listing "no changes" there is an answer about
226
- // a place that was never checked.
215
+ // An implicit root means no ancestor is a tospec project, and listing
216
+ // "no changes" there answers about a place that was never checked.
227
217
  allowImplicitRoot: false,
228
218
  failurePayload: failurePayload(),
229
219
  });
@@ -233,6 +223,17 @@ program
233
223
  if (options?.type && options.type !== 'requirement' && options.type !== 'issue') {
234
224
  throw new Error(`Invalid --type '${options.type}'. Expected "requirement" or "issue".`);
235
225
  }
226
+ // Two listings with no ordering between them; picking one silently
227
+ // answers a question the user did not ask.
228
+ if (options?.specs && options?.changes) {
229
+ throw new Error('Pass either --specs or --changes, not both: they select different listings and there is no ordering between them.');
230
+ }
231
+ // Specs have no type. A warning, not an error: the requested listing is
232
+ // still well-defined. On stderr, so `--json` stdout stays one document.
233
+ if (options?.specs && options?.type) {
234
+ console.error('Warning: Ignoring flags not applicable to --specs: type');
235
+ }
236
+ const { ListCommand } = await import('../core/list.js');
236
237
  const listCommand = new ListCommand();
237
238
  const mode = options?.specs ? 'specs' : 'changes';
238
239
  const sort = options?.sort === 'name' ? 'name' : 'recent';
@@ -255,17 +256,25 @@ program
255
256
  .command('archive [change-name]')
256
257
  .description('Archive a completed change and update main specs')
257
258
  .option('-y, --yes', 'Skip confirmation prompts')
258
- .option('--skip-specs', 'Skip spec update operations (useful for infrastructure, tooling, or doc-only changes)')
259
+ .option('--skip-specs', 'Skip merging delta specs into the main specs for this run only; validation still applies, so an sdd change with no deltas also needs skip_specs: true in its .tospec.yaml (schemas whose specs are optional, such as issue, do not)')
259
260
  .option('--no-validate', 'Skip validation (not recommended, requires confirmation)')
260
261
  .option('--require-sync', 'Require a passing sync-report.md in the change directory before archiving')
261
262
  .option('--json', 'Output as JSON (non-interactive)')
262
263
  .action(async (changeName, options) => {
263
264
  try {
265
+ const { ArchiveCommand } = await import('../core/archive.js');
264
266
  const archiveCommand = new ArchiveCommand();
265
267
  await archiveCommand.execute(changeName, options);
266
268
  }
267
269
  catch (error) {
268
- failWithError(error);
270
+ // JSON-aware like every other command: execute() reports its own
271
+ // failures, but one escaping it (root resolution, the import) would
272
+ // otherwise reach a `--json` caller as stderr prose with no document.
273
+ failWithError(error, {
274
+ enabled: options?.json,
275
+ payload: { archive: null, root: null },
276
+ fallbackCode: 'archive_error',
277
+ });
269
278
  }
270
279
  });
271
280
  program
@@ -274,17 +283,13 @@ program
274
283
  .option('--all', 'Validate all changes and specs')
275
284
  .option('--changes', 'Validate all changes')
276
285
  .option('--specs', 'Validate all specs')
277
- .option('--type <type>', 'Specify item type when ambiguous: change|spec')
286
+ // `.choices`, as `show --type` does: an unknown value used to fall through
287
+ // normalizeType as undefined and silently validate by auto-detection.
288
+ .addOption(new Option('--type <type>', 'Specify item type when ambiguous').choices(['change', 'spec']))
278
289
  .option('--strict', 'Enable strict validation mode')
279
290
  .option('--json', 'Output validation results as JSON')
280
291
  .addOption(new Option('--concurrency <n>', 'Max concurrent validations (defaults to env TOSPEC_CONCURRENCY or 6)')
281
- .argParser((value) => {
282
- const n = parseInt(value, 10);
283
- if (Number.isNaN(n) || n <= 0 || String(n) !== value.trim()) {
284
- throw new InvalidArgumentError('Expected a positive integer.');
285
- }
286
- return value;
287
- }))
292
+ .argParser(positiveIntegerArg))
288
293
  .option('--no-interactive', 'Disable interactive prompts')
289
294
  .action(async (itemName, options) => {
290
295
  try {
@@ -294,7 +299,7 @@ program
294
299
  catch (error) {
295
300
  failWithError(error, {
296
301
  enabled: options?.json,
297
- payload: { ...VALIDATE_FAILURE_PAYLOAD, root: null },
302
+ payload: VALIDATE_FAILURE_PAYLOAD,
298
303
  fallbackCode: 'validate_error',
299
304
  });
300
305
  }
@@ -308,8 +313,10 @@ program
308
313
  'spec',
309
314
  ]))
310
315
  .option('--no-interactive', 'Disable interactive prompts')
311
- .option('--deltas-only', 'Show only deltas (JSON only, change)')
312
- .option('--requirements-only', 'Alias for --deltas-only (deprecated, change)')
316
+ // No-ops kept for compatibility: a change's --json payload is always
317
+ // id/title/deltaCount/deltas, with no wider shape to narrow.
318
+ .option('--deltas-only', 'No-op: a change\'s JSON is always deltas (kept for compatibility)')
319
+ .option('--requirements-only', 'No-op: deprecated alias for --deltas-only')
313
320
  .option('--diff', 'Show per-requirement diffs against the main specs (change)')
314
321
  .option('--requirements', 'JSON only: Show only requirements (exclude scenarios)')
315
322
  .option('--no-scenarios', 'JSON only: Exclude scenario content')
@@ -317,8 +324,6 @@ program
317
324
  .action(async (itemName, options, command) => {
318
325
  try {
319
326
  const showCommand = new ShowCommand();
320
- // Defaults stripped so warnIrrelevantFlags reports the flags the user
321
- // typed, not the ones commander filled in.
322
327
  await showCommand.execute(itemName, userSuppliedOptions(options, command));
323
328
  }
324
329
  catch (error) {
@@ -329,9 +334,6 @@ program
329
334
  });
330
335
  }
331
336
  });
332
- // ═══════════════════════════════════════════════════════════
333
- // Workflow / engine commands (agent contract)
334
- // ═══════════════════════════════════════════════════════════
335
337
  program
336
338
  .command('status')
337
339
  .description('Display artifact completion status for a change')
@@ -421,7 +423,9 @@ newCmd
421
423
  program
422
424
  .command('dashboard [path]')
423
425
  .description('Start a local dashboard; task checkbox updates are the only writes, confined to this tospec root and blocked for archived or sync-certified changes')
424
- .option('-p, --port <n>', 'Port to listen on', '5620')
426
+ // Parsed like --concurrency: `Number('')` is 0, so a bare `--port ''` used to
427
+ // pass the range check and bind an OS-chosen port.
428
+ .addOption(new Option('-p, --port <n>', 'Port to listen on (0-65535)').default('5620').argParser(portArg))
425
429
  .option('--host <addr>', 'Host to bind', '127.0.0.1')
426
430
  .option('-o, --open', 'Open the dashboard in a browser after starting')
427
431
  .option('-d, --detach', 'Run the dashboard in the background and return immediately')
@@ -431,10 +435,10 @@ program
431
435
  .action(async (targetPath = '.', options) => {
432
436
  try {
433
437
  const dashboard = await import('../commands/dashboard.js');
434
- // --list is global: don't require being inside a tospec project.
438
+ // --list is global: no tospec project required.
435
439
  if (options?.list) {
436
- // Same candidate set as --stop, so the two never disagree about what
437
- // is running — `--stop` points at this command when it cannot prompt.
440
+ // Same candidate set as --stop, which points here when it cannot
441
+ // prompt, so the two never disagree about what is running.
438
442
  const running = await dashboard.collectStoppableDashboards(null);
439
443
  if (running.length === 0) {
440
444
  console.log('No dashboards are running.');
@@ -450,7 +454,7 @@ program
450
454
  const startPath = path.resolve(targetPath);
451
455
  // --stop is project-independent, like --list: a path with no tospec root
452
456
  // has no dashboard of its own, which is the cue to offer the full list
453
- // rather than fail. Only a root *selection* failure degrades to null.
457
+ // rather than fail.
454
458
  if (options?.stop) {
455
459
  const stopRoot = await resolveTospecRoot({ startPath, allowImplicitRoot: false }).catch((err) => {
456
460
  if (isRootSelectionError(err))
@@ -465,9 +469,8 @@ program
465
469
  }
466
470
  let targets = dashboard.selectStopTargets(candidates, stopRootPath);
467
471
  if (targets.length === 0) {
468
- // Nothing here matches this path — let the user pick which to stop.
469
- // `--stop` runs outside a project too, so this branch is reachable
470
- // non-interactively, where there is nobody to answer the prompt.
472
+ // Nothing matches this path, so let the user pick. Reachable
473
+ // non-interactively too, where there is nobody to answer.
471
474
  const listed = candidates.map((d) => ` ${dashboard.formatRunningDashboard(d, ' ')}`);
472
475
  if (!isInteractive()) {
473
476
  throw new dashboard.DashboardStopError(['No dashboard for this path, and no terminal to choose one from.', ...listed].join('\n'), 'Re-run from an interactive terminal, or see tospec dashboard --list.');
@@ -497,10 +500,8 @@ program
497
500
  }
498
501
  return;
499
502
  }
503
+ // Already validated by portArg; the default is the only unparsed value.
500
504
  const portValue = Number(options?.port ?? 5620);
501
- if (!Number.isInteger(portValue) || portValue < 0 || portValue > 65535) {
502
- throw new Error(`Invalid --port '${options?.port}'. Expected an integer between 0 and 65535.`);
503
- }
504
505
  // Starting a dashboard still requires a root — only --stop is lenient.
505
506
  const root = await resolveTospecRoot({ startPath, allowImplicitRoot: false });
506
507
  const runOpts = {
@@ -522,20 +523,6 @@ program
522
523
  registerConfigCommand(program);
523
524
  registerDecisionCommand(program);
524
525
  registerMetricsCommand(program);
525
- /**
526
- * The `--json` null-shapes, in one table.
527
- *
528
- * Kept together rather than beside each command so the contract rule — a
529
- * failure payload mirrors its success payload, with the data keys nulled — can
530
- * be read and checked in one place.
531
- *
532
- * Every entry is the same object the command's own catch block passes to
533
- * `failWithError`, never a literal repeated here. Commander can reject a run
534
- * before the action body exists to catch it, so each command has two failure
535
- * layers; when this table held its own copies they drifted, and `instructions`,
536
- * `templates`, `new change` and `decision new` ended up emitting an envelope
537
- * with `root` from one layer and without it from the other.
538
- */
539
526
  function commandAt(...names) {
540
527
  let current = program;
541
528
  for (const name of names) {
@@ -546,13 +533,18 @@ function commandAt(...names) {
546
533
  }
547
534
  return current;
548
535
  }
536
+ // The `--json` null-shapes in one table, so the contract rule (a failure payload
537
+ // mirrors its success payload with the data keys nulled) is checkable in one
538
+ // place. Each entry reuses the object the command's own catch block passes to
539
+ // `failWithError`, never a literal: commander gives every command two failure
540
+ // layers, and copies drift.
549
541
  withJsonFailureShape(commandAt('init'), () => INIT_FAILURE_PAYLOAD);
550
542
  withJsonFailureShape(commandAt('update'), () => UPDATE_FAILURE_PAYLOAD);
551
543
  withJsonFailureShape(commandAt('rules'), () => RULES_FAILURE_PAYLOAD);
552
544
  withJsonFailureShape(commandAt('migrate'), () => MIGRATE_FAILURE_PAYLOAD);
553
- withJsonFailureShape(commandAt('list'), (argv) => argv.includes('--specs') ? { specs: [], root: null } : { changes: [], root: null });
545
+ withJsonFailureShape(commandAt('list'), (argv) => argv.includes('--specs') ? { specs: null, root: null } : { changes: null, root: null });
554
546
  withJsonFailureShape(commandAt('archive'), () => ({ archive: null, root: null }));
555
- withJsonFailureShape(commandAt('validate'), () => ({ ...VALIDATE_FAILURE_PAYLOAD, root: null }));
547
+ withJsonFailureShape(commandAt('validate'), () => VALIDATE_FAILURE_PAYLOAD);
556
548
  withJsonFailureShape(commandAt('show'), () => SHOW_FAILURE_PAYLOAD);
557
549
  withJsonFailureShape(commandAt('status'), (argv) => argv.includes('--all') ? BATCH_STATUS_FAILURE_PAYLOAD : STATUS_FAILURE_PAYLOAD);
558
550
  withJsonFailureShape(commandAt('instructions'), () => INSTRUCTIONS_FAILURE_PAYLOAD);
@@ -561,38 +553,52 @@ withJsonFailureShape(commandAt('schemas'), () => SCHEMAS_FAILURE_PAYLOAD);
561
553
  withJsonFailureShape(commandAt('new', 'change'), () => NEW_CHANGE_FAILURE_PAYLOAD);
562
554
  withJsonFailureShape(commandAt('decision', 'new'), () => DECISION_NEW_FAILURE_PAYLOAD);
563
555
  withJsonFailureShape(commandAt('decision', 'list'), () => DECISION_LIST_FAILURE_PAYLOAD);
556
+ // `edit` speaks no --json and is deliberately absent.
557
+ for (const [subcommand, payload] of Object.entries(CONFIG_FAILURE_PAYLOADS)) {
558
+ withJsonFailureShape(commandAt('config', subcommand), () => payload);
559
+ }
560
+ /**
561
+ * The command whose action is running, so an error escaping that action can be
562
+ * reported in its null-shape. Unlike a commander-layer error, a rejection from
563
+ * an action body carries no reference to the command that threw it.
564
+ */
565
+ let activeCommand;
566
+ program.hook('preAction', (_thisCommand, actionCommand) => {
567
+ activeCommand = actionCommand;
568
+ });
564
569
  export { program };
565
570
  /**
566
- * The command's full invocation path, not just its leaf name.
567
- *
568
- * `command.name()` is the leaf, which is correct for every top-level command
569
- * because the two coincide — and wrong for the nested ones. `new change` used to
570
- * name its parent's leaf alone, which is not a command at all: commander printed
571
- * the top-level help and exited 0, so the advice looked answered. `decision new`
572
- * named the change-creation group instead, which is a real command and answers a
573
- * different question. Both sent the reader somewhere wrong without saying so.
571
+ * The command's full invocation path, not just its leaf name. `command.name()`
572
+ * is wrong for a nested command: `--help` advice naming the leaf of `new change`
573
+ * points at no command at all, and the leaf of `decision new` is a real command
574
+ * answering a different question.
574
575
  */
575
576
  function commandPath(command) {
576
577
  const names = [];
577
- // Stops at the program itself, whose name is the binary and is already in the
578
- // template literal around this call.
578
+ // Stops at the program itself, whose name the caller's template already has.
579
579
  for (let node = command; node?.parent; node = node.parent) {
580
580
  names.unshift(node.name());
581
581
  }
582
582
  return names.join(' ');
583
583
  }
584
- export function runCli(argv = process.argv) {
584
+ /**
585
+ * `parseAsync`, not `parse`: most actions are async, and `parse` returns before
586
+ * they settle, so a rejection bypassed this catch entirely and surfaced as an
587
+ * unhandled rejection with a stack trace and no `--json` envelope.
588
+ */
589
+ export async function runCli(argv = process.argv) {
585
590
  throwOnCommanderExit(program);
591
+ activeCommand = undefined;
592
+ const wantsJson = argv.includes('--json');
586
593
  try {
587
- program.parse(argv);
594
+ await program.parseAsync(argv);
588
595
  }
589
596
  catch (error) {
590
597
  if (error instanceof CommanderError) {
591
- // `--help` and `--version` come through here too, having already printed
592
- // what they were asked for. Only a non-zero exit is a failure.
598
+ // `--help` and `--version` come through here having already printed what
599
+ // they were asked for, so only a non-zero exit is a failure.
593
600
  if (error.exitCode === 0)
594
601
  return;
595
- const wantsJson = argv.includes('--json');
596
602
  if (wantsJson) {
597
603
  const command = error.tospecCommand;
598
604
  const shape = command ? jsonFailureShapes.get(command) : undefined;
@@ -609,16 +615,18 @@ export function runCli(argv = process.argv) {
609
615
  }
610
616
  // The one abort mechanism for places that cannot stop the run by returning
611
617
  // (commander's preAction hooks). Setting the exit code and returning lets
612
- // stdout/stderr flush normally, which `process.exit` does not guarantee —
613
- // and the --json contract requires the whole document to reach stdout.
618
+ // stdout flush, which `process.exit` does not guarantee.
614
619
  if (isCliAbort(error)) {
615
620
  process.exitCode = 1;
616
621
  return;
617
622
  }
618
- throw error;
623
+ // An action that let an error escape instead of reporting it itself. Still
624
+ // one envelope under --json, `Error:` otherwise, like every handled failure.
625
+ const shape = activeCommand ? jsonFailureShapes.get(activeCommand) : undefined;
626
+ failWithError(error, { enabled: wantsJson, payload: shape ? shape(argv) : {} });
619
627
  }
620
628
  }
621
629
  if (process.argv[1] && path.resolve(process.argv[1]) === fileURLToPath(import.meta.url)) {
622
- runCli();
630
+ await runCli();
623
631
  }
624
632
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,15 @@
1
1
  import { Command } from 'commander';
2
2
  import { GlobalConfig } from '../core/global-config.js';
3
3
  import type { Profile } from '../core/global-config.js';
4
+ /**
5
+ * The `--json` null-shapes, one per subcommand, keyed by the data key each
6
+ * success payload carries. Shared by the commander-level failure table in
7
+ * cli/index.ts and the catch sites here, so a parse-time failure (`--bogus`)
8
+ * mirrors the same shape an action-time failure does.
9
+ */
10
+ export declare const CONFIG_FAILURE_PAYLOADS: Record<string, Record<string, unknown>>;
11
+ /** The parent `config` command has no data of its own; its preAction abort reports this. */
12
+ export declare const CONFIG_SCOPE_FAILURE_PAYLOAD: Record<string, unknown>;
4
13
  interface ProfileState {
5
14
  profile: Profile;
6
15
  workflows: string[];
@@ -9,27 +18,10 @@ interface ProfileStateDiff {
9
18
  hasChanges: boolean;
10
19
  lines: string[];
11
20
  }
12
- /**
13
- * Resolve the effective current profile state from global config defaults.
14
- */
15
21
  export declare function resolveCurrentProfileState(config: GlobalConfig): ProfileState;
16
- /**
17
- * Derive profile type from selected workflows.
18
- */
19
22
  export declare function deriveProfileFromWorkflowSelection(selectedWorkflows: string[]): Profile;
20
- /**
21
- * Format a compact workflow summary for the profile header.
22
- */
23
23
  export declare function formatWorkflowSummary(workflows: readonly string[], profile: Profile): string;
24
- /**
25
- * Build a user-facing diff summary between two profile states.
26
- */
27
24
  export declare function diffProfileState(before: ProfileState, after: ProfileState): ProfileStateDiff;
28
- /**
29
- * Register the config command and all its subcommands.
30
- *
31
- * @param program - The Commander program instance
32
- */
33
25
  export declare function registerConfigCommand(program: Command): void;
34
26
  export {};
35
27
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,OAAO,EAKL,YAAY,EACb,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAyBxD,UAAU,YAAY;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,UAAU,gBAAgB;IACxB,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAwDD;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,YAAY,GAAG,YAAY,CAM7E;AAED;;GAEG;AACH,wBAAgB,kCAAkC,CAAC,iBAAiB,EAAE,MAAM,EAAE,GAAG,OAAO,CAKvF;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAE5F;AAgDD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,GAAG,gBAAgB,CA8B5F;AAwCD;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAqe5D"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,OAAO,EAKL,YAAY,EACb,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AA6BxD;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAQ3E,CAAC;AACF,4FAA4F;AAC5F,eAAO,MAAM,4BAA4B,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAoB,CAAC;AAItF,UAAU,YAAY;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,UAAU,gBAAgB;IACxB,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAqDD,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,YAAY,GAAG,YAAY,CAM7E;AAED,wBAAgB,kCAAkC,CAAC,iBAAiB,EAAE,MAAM,EAAE,GAAG,OAAO,CAKvF;AAED,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAE5F;AAkED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,GAAG,gBAAgB,CA8B5F;AAiCD,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAypB5D"}