@entelligentsia/forgecli 0.20.3 → 1.0.2

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 (303) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/README.md +31 -33
  3. package/dist/CHANGELOG-forge-plugin.md +118 -0
  4. package/dist/CHANGELOG-pi.md +24 -1
  5. package/dist/bin/forgecli.d.ts +2 -0
  6. package/dist/bin/forgecli.js +6 -0
  7. package/dist/bin/forgecli.js.map +1 -0
  8. package/dist/extensions/forgecli/add-pipeline.js +1 -1
  9. package/dist/extensions/forgecli/add-pipeline.js.map +1 -1
  10. package/dist/extensions/forgecli/add-task.js +1 -1
  11. package/dist/extensions/forgecli/add-task.js.map +1 -1
  12. package/dist/extensions/forgecli/approve.js +17 -2
  13. package/dist/extensions/forgecli/approve.js.map +1 -1
  14. package/dist/extensions/forgecli/calibrate.js +11 -8
  15. package/dist/extensions/forgecli/calibrate.js.map +1 -1
  16. package/dist/extensions/forgecli/collate.js +1 -1
  17. package/dist/extensions/forgecli/collate.js.map +1 -1
  18. package/dist/extensions/forgecli/commit.js +17 -2
  19. package/dist/extensions/forgecli/commit.js.map +1 -1
  20. package/dist/extensions/forgecli/enhance.js +1 -1
  21. package/dist/extensions/forgecli/enhance.js.map +1 -1
  22. package/dist/extensions/forgecli/fix-bug.d.ts +1 -1
  23. package/dist/extensions/forgecli/fix-bug.js +14 -6
  24. package/dist/extensions/forgecli/fix-bug.js.map +1 -1
  25. package/dist/extensions/forgecli/forge-artifact-tool.d.ts +6 -8
  26. package/dist/extensions/forgecli/forge-artifact-tool.js +80 -195
  27. package/dist/extensions/forgecli/forge-artifact-tool.js.map +1 -1
  28. package/dist/extensions/forgecli/forge-commands.js +57 -18
  29. package/dist/extensions/forgecli/forge-commands.js.map +1 -1
  30. package/dist/extensions/forgecli/forge-init/phase4-register.js +6 -7
  31. package/dist/extensions/forgecli/forge-init/phase4-register.js.map +1 -1
  32. package/dist/extensions/forgecli/forge-init/run-phases.d.ts +4 -0
  33. package/dist/extensions/forgecli/forge-init/run-phases.js +304 -0
  34. package/dist/extensions/forgecli/forge-init/run-phases.js.map +1 -0
  35. package/dist/extensions/forgecli/forge-init/verifiers.d.ts +14 -5
  36. package/dist/extensions/forgecli/forge-init/verifiers.js +79 -62
  37. package/dist/extensions/forgecli/forge-init/verifiers.js.map +1 -1
  38. package/dist/extensions/forgecli/forge-init.js +131 -76
  39. package/dist/extensions/forgecli/forge-init.js.map +1 -1
  40. package/dist/extensions/forgecli/forge-subagent.d.ts +9 -0
  41. package/dist/extensions/forgecli/forge-subagent.js +11 -6
  42. package/dist/extensions/forgecli/forge-subagent.js.map +1 -1
  43. package/dist/extensions/forgecli/forge-tools.d.ts +28 -4
  44. package/dist/extensions/forgecli/forge-tools.js +122 -73
  45. package/dist/extensions/forgecli/forge-tools.js.map +1 -1
  46. package/dist/extensions/forgecli/health-check.js +3 -3
  47. package/dist/extensions/forgecli/health-check.js.map +1 -1
  48. package/dist/extensions/forgecli/hook-dispatcher.d.ts +1 -1
  49. package/dist/extensions/forgecli/hooks/check-update.d.ts +8 -0
  50. package/dist/extensions/forgecli/hooks/check-update.js +29 -1
  51. package/dist/extensions/forgecli/hooks/check-update.js.map +1 -1
  52. package/dist/extensions/forgecli/hooks/post-init-hook.js +6 -6
  53. package/dist/extensions/forgecli/hooks/post-init-hook.js.map +1 -1
  54. package/dist/extensions/forgecli/hooks/post-sprint-hook.js +6 -6
  55. package/dist/extensions/forgecli/hooks/post-sprint-hook.js.map +1 -1
  56. package/dist/extensions/forgecli/hooks/triage-error.js +1 -0
  57. package/dist/extensions/forgecli/hooks/triage-error.js.map +1 -1
  58. package/dist/extensions/forgecli/implement.js +20 -2
  59. package/dist/extensions/forgecli/implement.js.map +1 -1
  60. package/dist/extensions/forgecli/index.js +39 -32
  61. package/dist/extensions/forgecli/index.js.map +1 -1
  62. package/dist/extensions/forgecli/lib/pipeline-guard.d.ts +41 -0
  63. package/dist/extensions/forgecli/lib/pipeline-guard.js +100 -0
  64. package/dist/extensions/forgecli/lib/pipeline-guard.js.map +1 -0
  65. package/dist/extensions/forgecli/loaders/persona-skill-loader.js +2 -2
  66. package/dist/extensions/forgecli/loaders/persona-skill-loader.js.map +1 -1
  67. package/dist/extensions/forgecli/migrate.d.ts +3 -0
  68. package/dist/extensions/forgecli/migrate.js +4 -2
  69. package/dist/extensions/forgecli/migrate.js.map +1 -1
  70. package/dist/extensions/forgecli/plan.js +21 -2
  71. package/dist/extensions/forgecli/plan.js.map +1 -1
  72. package/dist/extensions/forgecli/quiz-agent.js +7 -7
  73. package/dist/extensions/forgecli/quiz-agent.js.map +1 -1
  74. package/dist/extensions/forgecli/regenerate.js +49 -18
  75. package/dist/extensions/forgecli/regenerate.js.map +1 -1
  76. package/dist/extensions/forgecli/remove-command.js +1 -1
  77. package/dist/extensions/forgecli/remove-command.js.map +1 -1
  78. package/dist/extensions/forgecli/report-bug.js +1 -1
  79. package/dist/extensions/forgecli/report-bug.js.map +1 -1
  80. package/dist/extensions/forgecli/retrospective.js +9 -9
  81. package/dist/extensions/forgecli/retrospective.js.map +1 -1
  82. package/dist/extensions/forgecli/review-code.d.ts +13 -0
  83. package/dist/extensions/forgecli/review-code.js +62 -3
  84. package/dist/extensions/forgecli/review-code.js.map +1 -1
  85. package/dist/extensions/forgecli/review-plan.d.ts +13 -0
  86. package/dist/extensions/forgecli/review-plan.js +65 -3
  87. package/dist/extensions/forgecli/review-plan.js.map +1 -1
  88. package/dist/extensions/forgecli/run-task.d.ts +2 -1
  89. package/dist/extensions/forgecli/run-task.js +48 -4
  90. package/dist/extensions/forgecli/run-task.js.map +1 -1
  91. package/dist/extensions/forgecli/skill-curator-subagent.d.ts +2 -1
  92. package/dist/extensions/forgecli/skill-curator-subagent.js +2 -1
  93. package/dist/extensions/forgecli/skill-curator-subagent.js.map +1 -1
  94. package/dist/extensions/forgecli/sprint-intake.js +6 -6
  95. package/dist/extensions/forgecli/sprint-intake.js.map +1 -1
  96. package/dist/extensions/forgecli/sprint-plan.js +9 -9
  97. package/dist/extensions/forgecli/sprint-plan.js.map +1 -1
  98. package/dist/extensions/forgecli/status-command.js +1 -1
  99. package/dist/extensions/forgecli/status-command.js.map +1 -1
  100. package/dist/extensions/forgecli/store-query.js +11 -11
  101. package/dist/extensions/forgecli/store-query.js.map +1 -1
  102. package/dist/extensions/forgecli/store-repair.js +7 -7
  103. package/dist/extensions/forgecli/store-repair.js.map +1 -1
  104. package/dist/extensions/forgecli/validate.js +17 -2
  105. package/dist/extensions/forgecli/validate.js.map +1 -1
  106. package/dist/forge-payload/.base-pack/commands/check-agent.md +22 -0
  107. package/dist/forge-payload/.base-pack/commands/new-sprint.md +22 -0
  108. package/dist/forge-payload/.base-pack/commands/plan-sprint.md +22 -0
  109. package/dist/forge-payload/.base-pack/commands/quiz-agent.md +2 -18
  110. package/dist/forge-payload/.base-pack/commands/retro.md +22 -0
  111. package/dist/forge-payload/.base-pack/commands/retrospective.md +2 -18
  112. package/dist/forge-payload/.base-pack/commands/sprint-intake.md +2 -18
  113. package/dist/forge-payload/.base-pack/commands/sprint-plan.md +2 -18
  114. package/dist/forge-payload/.base-pack/workflows/_fragments/friction-emit.md +2 -2
  115. package/dist/forge-payload/.base-pack/workflows/_fragments/generation-instructions.md +4 -4
  116. package/dist/forge-payload/.base-pack/workflows/_fragments/iron-laws.md +1 -1
  117. package/dist/forge-payload/.base-pack/workflows/architect_approve.md +13 -1
  118. package/dist/forge-payload/.base-pack/workflows/commit_task.md +12 -1
  119. package/dist/forge-payload/.base-pack/workflows/enhance.md +40 -10
  120. package/dist/forge-payload/.base-pack/workflows/fix_bug.md +1 -1
  121. package/dist/forge-payload/.base-pack/workflows/implement_plan.md +14 -2
  122. package/dist/forge-payload/.base-pack/workflows/migrate_structural.md +2 -2
  123. package/dist/forge-payload/.base-pack/workflows/orchestrate_task.md +20 -4
  124. package/dist/forge-payload/.base-pack/workflows/plan_task.md +14 -2
  125. package/dist/forge-payload/.base-pack/workflows/review_code.md +37 -7
  126. package/dist/forge-payload/.base-pack/workflows/review_plan.md +36 -6
  127. package/dist/forge-payload/.base-pack/workflows/run_sprint.md +2 -2
  128. package/dist/forge-payload/.base-pack/workflows/validate_task.md +37 -7
  129. package/dist/forge-payload/.claude-plugin/plugin.json +1 -1
  130. package/dist/forge-payload/.schemas/config.schema.json +0 -5
  131. package/dist/forge-payload/.schemas/enum-catalog.json +9 -13
  132. package/dist/forge-payload/.schemas/migrations.json +65 -0
  133. package/dist/forge-payload/agents/tomoshibi.md +150 -6
  134. package/dist/forge-payload/commands/add-pipeline.md +1 -1
  135. package/dist/forge-payload/commands/add-task.md +1 -1
  136. package/dist/forge-payload/commands/calibrate.md +4 -350
  137. package/dist/forge-payload/commands/check-agent.md +38 -0
  138. package/dist/forge-payload/commands/config.md +3 -113
  139. package/dist/forge-payload/commands/enhance.md +5 -32
  140. package/dist/forge-payload/commands/health.md +155 -13
  141. package/dist/forge-payload/commands/init.md +25 -31
  142. package/dist/forge-payload/commands/migrate.md +6 -154
  143. package/dist/forge-payload/commands/quiz-agent.md +2 -34
  144. package/dist/forge-payload/commands/rebuild.md +664 -0
  145. package/dist/forge-payload/commands/regenerate.md +2 -774
  146. package/dist/forge-payload/commands/remove.md +10 -13
  147. package/dist/forge-payload/commands/repair.md +187 -0
  148. package/dist/forge-payload/commands/search.md +73 -0
  149. package/dist/forge-payload/commands/status.md +105 -0
  150. package/dist/forge-payload/commands/store-query.md +2 -69
  151. package/dist/forge-payload/commands/store-repair.md +2 -183
  152. package/dist/forge-payload/commands/update-tools.md +4 -50
  153. package/dist/forge-payload/commands/update.md +64 -58
  154. package/dist/forge-payload/hooks/check-update.cjs +1 -1
  155. package/dist/forge-payload/hooks/post-init.cjs +2 -2
  156. package/dist/forge-payload/hooks/post-sprint.cjs +2 -2
  157. package/dist/forge-payload/hooks/triage-error.cjs +11 -10
  158. package/dist/forge-payload/init/phases/phase-1-collect.md +138 -0
  159. package/dist/forge-payload/init/phases/phase-2-discover.md +127 -0
  160. package/dist/forge-payload/init/phases/phase-3-materialize.md +113 -0
  161. package/dist/forge-payload/init/phases/phase-4-register.md +159 -0
  162. package/dist/forge-payload/integrity.json +21 -24
  163. package/dist/forge-payload/meta/fragments/tool-discipline.md +22 -0
  164. package/dist/forge-payload/meta/templates/meta-retro.md +28 -0
  165. package/dist/forge-payload/meta/workflows/_fragments/friction-emit.md +2 -2
  166. package/dist/forge-payload/meta/workflows/_fragments/generation-instructions.md +4 -4
  167. package/dist/forge-payload/meta/workflows/_fragments/iron-laws.md +1 -1
  168. package/dist/forge-payload/meta/workflows/meta-approve.md +13 -1
  169. package/dist/forge-payload/meta/workflows/meta-check-agent.md +138 -0
  170. package/dist/forge-payload/meta/workflows/meta-commit.md +12 -1
  171. package/dist/forge-payload/meta/workflows/meta-enhance.md +39 -9
  172. package/dist/forge-payload/meta/workflows/meta-fix-bug.md +1 -1
  173. package/dist/forge-payload/meta/workflows/meta-implement.md +13 -1
  174. package/dist/forge-payload/meta/workflows/meta-migrate.md +3 -3
  175. package/dist/forge-payload/meta/workflows/meta-new-sprint.md +84 -0
  176. package/dist/forge-payload/meta/workflows/meta-orchestrate.md +20 -4
  177. package/dist/forge-payload/meta/workflows/meta-plan-sprint.md +152 -0
  178. package/dist/forge-payload/meta/workflows/meta-plan-task.md +13 -1
  179. package/dist/forge-payload/meta/workflows/meta-retro.md +73 -0
  180. package/dist/forge-payload/meta/workflows/meta-review-implementation.md +37 -7
  181. package/dist/forge-payload/meta/workflows/meta-review-plan.md +36 -6
  182. package/dist/forge-payload/meta/workflows/meta-validate.md +37 -7
  183. package/dist/forge-payload/schemas/config.schema.json +0 -5
  184. package/dist/forge-payload/schemas/enum-catalog.json +9 -13
  185. package/dist/forge-payload/schemas/structure-manifest.json +6 -8
  186. package/dist/forge-payload/tools/artifact.cjs +295 -0
  187. package/dist/forge-payload/tools/banners.cjs +3 -4
  188. package/dist/forge-payload/tools/build-context-pack.cjs +1 -1
  189. package/dist/forge-payload/tools/check-structure.cjs +8 -3
  190. package/dist/forge-payload/tools/store-cli.cjs +67 -7
  191. package/dist/forge-payload/tools/substitute-placeholders.cjs +1 -1
  192. package/dist/forge-payload/tools/verify-apply.cjs +75 -0
  193. package/dist/forge-payload/tools/verify-phase.cjs +259 -0
  194. package/node_modules/@earendil-works/pi-agent-core/package.json +2 -2
  195. package/node_modules/@earendil-works/pi-ai/dist/models.generated.d.ts +0 -17
  196. package/node_modules/@earendil-works/pi-ai/dist/models.generated.d.ts.map +1 -1
  197. package/node_modules/@earendil-works/pi-ai/dist/models.generated.js +21 -38
  198. package/node_modules/@earendil-works/pi-ai/dist/models.generated.js.map +1 -1
  199. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-codex-responses.d.ts.map +1 -1
  200. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-codex-responses.js +5 -4
  201. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-codex-responses.js.map +1 -1
  202. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.d.ts +2 -1
  203. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.d.ts.map +1 -1
  204. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.js +5 -2
  205. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.js.map +1 -1
  206. package/node_modules/@earendil-works/pi-ai/package.json +1 -1
  207. package/node_modules/@earendil-works/pi-coding-agent/CHANGELOG.md +24 -1
  208. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/file-processor.d.ts.map +1 -1
  209. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/file-processor.js +2 -3
  210. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/file-processor.js.map +1 -1
  211. package/node_modules/@earendil-works/pi-coding-agent/dist/core/output-guard.d.ts +1 -0
  212. package/node_modules/@earendil-works/pi-coding-agent/dist/core/output-guard.d.ts.map +1 -1
  213. package/node_modules/@earendil-works/pi-coding-agent/dist/core/output-guard.js +52 -22
  214. package/node_modules/@earendil-works/pi-coding-agent/dist/core/output-guard.js.map +1 -1
  215. package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.d.ts.map +1 -1
  216. package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.js +16 -4
  217. package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.js.map +1 -1
  218. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.d.ts.map +1 -1
  219. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.js +45 -50
  220. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.js.map +1 -1
  221. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit.d.ts.map +1 -1
  222. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit.js +43 -81
  223. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit.js.map +1 -1
  224. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/file-mutation-queue.d.ts.map +1 -1
  225. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/file-mutation-queue.js +27 -12
  226. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/file-mutation-queue.js.map +1 -1
  227. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/find.d.ts.map +1 -1
  228. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/find.js +2 -3
  229. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/find.js.map +1 -1
  230. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/grep.d.ts.map +1 -1
  231. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/grep.js +3 -3
  232. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/grep.js.map +1 -1
  233. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/ls.d.ts.map +1 -1
  234. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/ls.js +5 -5
  235. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/ls.js.map +1 -1
  236. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/path-utils.d.ts +2 -0
  237. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/path-utils.d.ts.map +1 -1
  238. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/path-utils.js +37 -0
  239. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/path-utils.js.map +1 -1
  240. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/read.d.ts.map +1 -1
  241. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/read.js +9 -8
  242. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/read.js.map +1 -1
  243. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/write.d.ts.map +1 -1
  244. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/write.js +20 -35
  245. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/write.js.map +1 -1
  246. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-client.d.ts +3 -0
  247. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-client.d.ts.map +1 -1
  248. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-client.js +64 -7
  249. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-client.js.map +1 -1
  250. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
  251. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-mode.js +15 -3
  252. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-mode.js.map +1 -1
  253. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/clipboard-native.d.ts +3 -1
  254. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/clipboard-native.d.ts.map +1 -1
  255. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/clipboard-native.js +14 -8
  256. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/clipboard-native.js.map +1 -1
  257. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/image-resize-core.d.ts +30 -0
  258. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/image-resize-core.d.ts.map +1 -0
  259. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/image-resize-core.js +124 -0
  260. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/image-resize-core.js.map +1 -0
  261. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/image-resize-worker.d.ts +2 -0
  262. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/image-resize-worker.d.ts.map +1 -0
  263. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/image-resize-worker.js +31 -0
  264. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/image-resize-worker.js.map +1 -0
  265. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/image-resize.d.ts +7 -27
  266. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/image-resize.d.ts.map +1 -1
  267. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/image-resize.js +75 -115
  268. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/image-resize.js.map +1 -1
  269. package/node_modules/@earendil-works/pi-coding-agent/docs/terminal-setup.md +6 -0
  270. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/custom-provider-anthropic/package.json +1 -1
  271. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  272. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/sandbox/package.json +1 -1
  273. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/with-deps/package.json +1 -1
  274. package/node_modules/@earendil-works/pi-coding-agent/npm-shrinkwrap.json +12 -14
  275. package/node_modules/@earendil-works/pi-coding-agent/package.json +5 -5
  276. package/node_modules/@earendil-works/pi-tui/dist/native-modifiers.d.ts +3 -0
  277. package/node_modules/@earendil-works/pi-tui/dist/native-modifiers.d.ts.map +1 -0
  278. package/node_modules/@earendil-works/pi-tui/dist/native-modifiers.js +53 -0
  279. package/node_modules/@earendil-works/pi-tui/dist/native-modifiers.js.map +1 -0
  280. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.d.ts.map +1 -1
  281. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.js +4 -1
  282. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.js.map +1 -1
  283. package/node_modules/@earendil-works/pi-tui/dist/terminal.d.ts +2 -0
  284. package/node_modules/@earendil-works/pi-tui/dist/terminal.d.ts.map +1 -1
  285. package/node_modules/@earendil-works/pi-tui/dist/terminal.js +13 -1
  286. package/node_modules/@earendil-works/pi-tui/dist/terminal.js.map +1 -1
  287. package/node_modules/@earendil-works/pi-tui/native/darwin/prebuilds/darwin-arm64/darwin-modifiers.node +0 -0
  288. package/node_modules/@earendil-works/pi-tui/native/darwin/prebuilds/darwin-x64/darwin-modifiers.node +0 -0
  289. package/node_modules/@earendil-works/pi-tui/package.json +2 -2
  290. package/package.json +6 -6
  291. package/dist/extensions/forgecli/forge-init/phase-descriptors.d.ts +0 -72
  292. package/dist/extensions/forgecli/forge-init/phase-descriptors.js +0 -359
  293. package/dist/extensions/forgecli/forge-init/phase-descriptors.js.map +0 -1
  294. package/dist/extensions/forgecli/forge-init/prompts.d.ts +0 -10
  295. package/dist/extensions/forgecli/forge-init/prompts.js +0 -91
  296. package/dist/extensions/forgecli/forge-init/prompts.js.map +0 -1
  297. package/dist/extensions/forgecli/lib/store-error-remediation.d.ts +0 -65
  298. package/dist/extensions/forgecli/lib/store-error-remediation.js +0 -298
  299. package/dist/extensions/forgecli/lib/store-error-remediation.js.map +0 -1
  300. package/dist/forge-payload/hooks/check-update.js +0 -378
  301. package/dist/forge-payload/hooks/forge-permissions.js +0 -164
  302. package/dist/forge-payload/hooks/triage-error.js +0 -77
  303. package/dist/forge-payload/hooks/validate-write.js +0 -250
@@ -1,153 +1,58 @@
1
- // forge-artifact-tool.ts — typed artifact read/write/list tool for subagent sessions.
1
+ // forge-artifact-tool.ts — thin runCjs shim delegating to plugin artifact.cjs.
2
2
  //
3
- // Resolves phase artifact paths from (entityType, entityId, artifactName) tuples.
4
- // Validates JSON summary artifacts on write. Eliminates path derivation as a
5
- // failure mode for low-tier models.
3
+ // All logic (artifact catalog, path resolution, summary JSON validation) lives
4
+ // in forge/forge/tools/artifact.cjs as the canonical plugin-side implementation.
5
+ // This module is a lightweight wrapper that dispatches read/write/list calls via
6
+ // runCjs to the plugin tool, keeping forge-cli in sync automatically whenever
7
+ // the plugin is updated.
6
8
  //
7
- // v0.19.1 (forge-cli#33): resolveEntityDir now reads the store record's `path`
8
- // field instead of constructing paths from the entity ID alone. Bug, sprint, and
9
- // task directories can include descriptive slugs (e.g.
10
- // engineering/bugs/BUG-001-sprint-runner-context-accumulation) that are not
11
- // derivable from the ID alone.
12
- import { execFileSync } from "node:child_process";
9
+ // Content-passing strategy for write:
10
+ // - Inline (<64KB): content is passed as the 4th positional argv argument.
11
+ // - Large (>=64KB): content is written to a temp file and passed as @<path>.
12
+ // artifact.cjs recognises the @-prefix convention and reads from the file.
13
13
  import * as fs from "node:fs";
14
+ import * as os from "node:os";
14
15
  import * as path from "node:path";
15
16
  import { Type } from "typebox";
16
- // ── Artifact catalog ────────────────────────────────────────────────────────
17
- const ARTIFACT_CATALOG = {
18
- plan: { filename: "PLAN.md", type: "md" },
19
- "plan-review": { filename: "PLAN_REVIEW.md", type: "md" },
20
- progress: { filename: "PROGRESS.md", type: "md" },
21
- "code-review": { filename: "CODE_REVIEW.md", type: "md" },
22
- "validation-report": { filename: "VALIDATION_REPORT.md", type: "md" },
23
- "architect-approval": { filename: "ARCHITECT_APPROVAL.md", type: "md" },
24
- triage: { filename: "TRIAGE.md", type: "md" },
25
- "bug-report": { filename: "BUG_REPORT.md", type: "md" },
26
- index: { filename: "INDEX.md", type: "md" },
27
- "cost-report": { filename: "COST_REPORT.md", type: "md" },
28
- timesheet: { filename: "TIMESHEET.md", type: "md" },
29
- "plan-summary": { filename: "PLAN-SUMMARY.json", type: "json" },
30
- "review-plan-summary": { filename: "REVIEW-PLAN-SUMMARY.json", type: "json" },
31
- "implementation-summary": { filename: "IMPLEMENTATION-SUMMARY.json", type: "json" },
32
- "review-code-summary": { filename: "REVIEW-CODE-SUMMARY.json", type: "json" },
33
- "review-impl-summary": { filename: "REVIEW-IMPL-SUMMARY.json", type: "json" },
34
- "validation-summary": { filename: "VALIDATION-SUMMARY.json", type: "json" },
35
- "approve-summary": { filename: "APPROVE-SUMMARY.json", type: "json" },
36
- "commit-summary": { filename: "COMMIT-SUMMARY.json", type: "json" },
37
- "triage-summary": { filename: "TRIAGE-SUMMARY.json", type: "json" },
38
- "writeback-summary": { filename: "WRITEBACK-SUMMARY.json", type: "json" },
39
- "collation-summary": { filename: "COLLATION-SUMMARY.json", type: "json" },
40
- };
41
- const ARTIFACT_NAMES = Object.keys(ARTIFACT_CATALOG).sort();
42
- // ── Summary JSON validation ─────────────────────────────────────────────────
43
- const SUMMARY_REQUIRED = ["objective", "key_changes", "verdict", "written_at"];
44
- function validateSummaryJson(content) {
45
- let obj;
46
- try {
47
- obj = JSON.parse(content);
48
- }
49
- catch (e) {
50
- return `Invalid JSON: ${e.message}`;
51
- }
52
- const missing = SUMMARY_REQUIRED.filter((f) => !(f in obj));
53
- if (missing.length > 0)
54
- return `Missing required fields: ${missing.join(", ")}`;
55
- if (typeof obj.objective !== "string")
56
- return `"objective" must be a string`;
57
- if (!Array.isArray(obj.key_changes))
58
- return `"key_changes" must be an array`;
59
- if (typeof obj.verdict !== "string")
60
- return `"verdict" must be a string`;
61
- if (typeof obj.written_at !== "string")
62
- return `"written_at" must be a string`;
63
- return null;
64
- }
65
- // ── Entity path resolution ──────────────────────────────────────────────────
66
- /**
67
- * Test override for readStorePath — allows unit tests to inject a mock
68
- * without touching node:child_process. Reset to {} after each test.
69
- */
70
- export const _testOverrides = {};
71
- /** Read a store record via store-cli and return its `path` field, or null on failure. */
72
- function readStorePath(entity, entityId, toolDir, projectRoot) {
73
- // Test injection: if a mock is set, use it directly.
74
- if (_testOverrides.readStorePath) {
75
- return _testOverrides.readStorePath(entity, entityId, toolDir, projectRoot);
76
- }
77
- const cliPath = path.join(toolDir, "store-cli.cjs");
78
- try {
79
- const result = execFileSync("node", [cliPath, "read", entity, entityId, "--json"], {
80
- cwd: projectRoot,
81
- encoding: "utf8",
82
- timeout: 10_000,
83
- });
84
- const record = JSON.parse(result);
85
- if (typeof record.path === "string" && record.path.length > 0) {
86
- return record.path;
87
- }
88
- }
89
- catch {
90
- // Store unavailable or record not found — fall through to ID-only resolution.
91
- }
92
- return null;
93
- }
94
- /**
95
- * Resolve entity directory using the store record's `path` field when available,
96
- * falling back to ID-only construction for tasks (sprint dir derived from
97
- * sprint record path or sprint ID) and sprints/bugs (direct ID).
98
- *
99
- * forge-cli#33: the store record is the canonical source for entity directory
100
- * paths — slug-suffixed directories like `BUG-001-sprint-runner-context-accumulation`
101
- * cannot be derived from the entity ID alone.
102
- */
103
- function resolveEntityDir(entity, entityId, engineeringPath, toolDir, projectRoot) {
104
- switch (entity) {
105
- case "bug": {
106
- // Read bug record's path field — canonical source for slug-suffixed dirs.
107
- const storePath = readStorePath("bug", entityId, toolDir, projectRoot);
108
- if (storePath)
109
- return storePath;
110
- // Fallback: ID-only construction.
111
- return path.join(engineeringPath, "bugs", entityId);
112
- }
113
- case "sprint": {
114
- const storePath = readStorePath("sprint", entityId, toolDir, projectRoot);
115
- if (storePath)
116
- return storePath;
117
- return path.join(engineeringPath, "sprints", entityId);
118
- }
119
- case "task": {
120
- // For tasks, the path includes the sprint directory (which may have
121
- // a slug suffix). Read the task record's path field.
122
- const storePath = readStorePath("task", entityId, toolDir, projectRoot);
123
- if (storePath)
124
- return storePath;
125
- // Fallback: derive from sprint prefix. Try sprint record for slug.
126
- const match = entityId.match(/^(.+-S\d+)-T\d+$/);
127
- if (!match)
128
- return null;
129
- const sprintId = match[1];
130
- const sprintPath = readStorePath("sprint", sprintId, toolDir, projectRoot);
131
- if (sprintPath) {
132
- return path.join(sprintPath, entityId);
133
- }
134
- // Last resort: ID-only construction.
135
- return path.join(engineeringPath, "sprints", sprintId, entityId);
136
- }
137
- default:
138
- return null;
139
- }
140
- }
17
+ import { runCjs as defaultRunCjs } from "./forge-tools.js";
18
+ // ── Artifact name list (for parameter description only — logic lives in plugin) ──
19
+ const ARTIFACT_NAMES = [
20
+ "plan",
21
+ "plan-review",
22
+ "progress",
23
+ "code-review",
24
+ "validation-report",
25
+ "architect-approval",
26
+ "triage",
27
+ "bug-report",
28
+ "index",
29
+ "cost-report",
30
+ "timesheet",
31
+ "plan-summary",
32
+ "review-plan-summary",
33
+ "implementation-summary",
34
+ "review-code-summary",
35
+ "review-impl-summary",
36
+ "validation-summary",
37
+ "approve-summary",
38
+ "commit-summary",
39
+ "triage-summary",
40
+ "writeback-summary",
41
+ "collation-summary",
42
+ ].sort();
43
+ const ARTIFACT_NAME_LIST = ARTIFACT_NAMES.join(", ");
44
+ const INLINE_CONTENT_LIMIT = 64 * 1024; // 64KB
141
45
  // ── Tool builder ────────────────────────────────────────────────────────────
142
- export function buildForgeArtifact(projectRoot, engineeringPath, toolDir) {
143
- const artifactNameList = ARTIFACT_NAMES.join(", ");
46
+ export function buildForgeArtifact(projectRoot, _engineeringPath, toolDir, _runCjsOverride) {
47
+ const toolPath = path.join(toolDir, "artifact.cjs");
48
+ const runCjs = _runCjsOverride ?? defaultRunCjs;
144
49
  return {
145
50
  name: "forge_artifact",
146
51
  label: "Forge Artifact",
147
52
  description: "Read, write, or list phase artifacts (PLAN.md, PROGRESS.md, *-SUMMARY.json, etc.) " +
148
53
  "for a task, bug, or sprint. Resolves paths automatically from entity ID — never " +
149
54
  "construct artifact paths manually.\n\n" +
150
- `Known artifacts: ${artifactNameList}.\n\n` +
55
+ `Known artifacts: ${ARTIFACT_NAME_LIST}.\n\n` +
151
56
  "JSON summary artifacts are validated on write (objective, key_changes, verdict, written_at required). " +
152
57
  "Use 'list' to see which artifacts already exist for an entity.",
153
58
  promptSnippet: "Use forge_artifact to read/write phase outputs (PLAN.md, PROGRESS.md, *-SUMMARY.json). " +
@@ -163,82 +68,62 @@ export function buildForgeArtifact(projectRoot, engineeringPath, toolDir) {
163
68
  description: "Entity ID (e.g. HELLO-S99-T02, HELLO-B01-shout-flag, HELLO-S99).",
164
69
  }),
165
70
  artifact: Type.Optional(Type.String({
166
- description: `Artifact name (required for read/write). One of: ${artifactNameList}.`,
71
+ description: `Artifact name (required for read/write). One of: ${ARTIFACT_NAME_LIST}.`,
167
72
  })),
168
73
  content: Type.Optional(Type.String({
169
74
  description: "Content to write (required for write command).",
170
75
  })),
171
76
  }),
172
- async execute(_toolCallId, _params) {
77
+ async execute(_toolCallId, _params, signal) {
173
78
  const params = _params;
174
- const entityDir = resolveEntityDir(params.entity, params.entityId, engineeringPath, toolDir, projectRoot);
175
- if (!entityDir) {
176
- return errResult(`Cannot resolve ${params.entity} directory for "${params.entityId}". ` +
177
- `Expected ID pattern: task=PREFIX-SNN-TNN, bug=PREFIX-BNN-slug, sprint=PREFIX-SNN.`);
178
- }
179
- const absDir = path.resolve(projectRoot, entityDir);
180
- if (params.command === "list") {
181
- if (!fs.existsSync(absDir)) {
182
- return okResult(`No artifacts found — directory does not exist: ${entityDir}/`);
79
+ let tmpFile = null;
80
+ try {
81
+ const argv = [params.command, params.entity, params.entityId];
82
+ if (params.command !== "list") {
83
+ if (!params.artifact) {
84
+ return errResult(`"artifact" is required for ${params.command}. Known: ${ARTIFACT_NAME_LIST}`);
85
+ }
86
+ argv.push(params.artifact);
183
87
  }
184
- const files = fs.readdirSync(absDir).filter((f) => f.endsWith(".md") || f.endsWith(".json"));
185
- const known = [];
186
- const other = [];
187
- for (const f of files) {
188
- const catalogEntry = Object.entries(ARTIFACT_CATALOG).find(([, v]) => v.filename === f);
189
- if (catalogEntry) {
190
- known.push(` ${catalogEntry[0]} ${f}`);
88
+ if (params.command === "write") {
89
+ if (!params.content) {
90
+ return errResult(`"content" is required for write.`);
91
+ }
92
+ const bytes = Buffer.byteLength(params.content, "utf8");
93
+ if (bytes >= INLINE_CONTENT_LIMIT) {
94
+ // Write to a temp file and pass @<path>
95
+ tmpFile = path.join(os.tmpdir(), `forge-artifact-${Date.now()}-${process.pid}.tmp`);
96
+ fs.writeFileSync(tmpFile, params.content, "utf8");
97
+ argv.push(`@${tmpFile}`);
191
98
  }
192
99
  else {
193
- other.push(` (unlisted) ${f}`);
100
+ argv.push(params.content);
194
101
  }
195
102
  }
196
- const lines = [`Artifacts in ${entityDir}/:`];
197
- if (known.length > 0)
198
- lines.push(...known);
199
- if (other.length > 0)
200
- lines.push(...other);
201
- if (known.length === 0 && other.length === 0)
202
- lines.push(" (empty)");
203
- return okResult(lines.join("\n"));
204
- }
205
- if (!params.artifact) {
206
- return errResult(`"artifact" is required for ${params.command}. Known: ${artifactNameList}`);
207
- }
208
- const catalogEntry = ARTIFACT_CATALOG[params.artifact];
209
- if (!catalogEntry) {
210
- const suggestions = ARTIFACT_NAMES.filter((n) => n.includes(params.artifact.toLowerCase()));
211
- return errResult(`Unknown artifact "${params.artifact}". Known: ${artifactNameList}.` +
212
- (suggestions.length > 0 ? ` Did you mean: ${suggestions.join(", ")}?` : ""));
213
- }
214
- const filePath = path.join(absDir, catalogEntry.filename);
215
- if (params.command === "read") {
216
- if (!fs.existsSync(filePath)) {
217
- return errResult(`Artifact not found: ${path.join(entityDir, catalogEntry.filename)}`);
103
+ const { stdout, stderr } = await runCjs(toolPath, argv, signal, 10_000, projectRoot);
104
+ if (stderr && stderr.trim()) {
105
+ return errResult(stderr.trim());
218
106
  }
219
- const content = fs.readFileSync(filePath, "utf8");
220
- return okResult(content);
107
+ return okResult(stdout.trim() || "OK");
221
108
  }
222
- if (params.command === "write") {
223
- if (!params.content) {
224
- return errResult(`"content" is required for write.`);
225
- }
226
- if (catalogEntry.type === "json") {
227
- const validationError = validateSummaryJson(params.content);
228
- if (validationError) {
229
- return errResult(`Summary validation failed for ${catalogEntry.filename}: ${validationError}. ` +
230
- `Required fields: ${SUMMARY_REQUIRED.join(", ")}.`);
109
+ catch (err) {
110
+ const e = err;
111
+ return errResult(`forge_artifact failed: ${e.message ?? "unknown error"}`);
112
+ }
113
+ finally {
114
+ if (tmpFile) {
115
+ try {
116
+ fs.unlinkSync(tmpFile);
117
+ }
118
+ catch {
119
+ /* best-effort cleanup */
231
120
  }
232
121
  }
233
- fs.mkdirSync(absDir, { recursive: true });
234
- fs.writeFileSync(filePath, params.content, "utf8");
235
- return okResult(`Wrote ${Buffer.byteLength(params.content, "utf8")} bytes to ${path.join(entityDir, catalogEntry.filename)}`);
236
122
  }
237
- return errResult(`Unknown command: ${params.command}`);
238
123
  },
239
124
  };
240
125
  }
241
- // ── Result helpers (same pattern as forge-tools.ts) ─────────────────────────
126
+ // ── Result helpers ────────────────────────────────────────────────────────────
242
127
  function okResult(text) {
243
128
  return {
244
129
  content: [{ type: "text", text: text || "OK" }],
@@ -1 +1 @@
1
- {"version":3,"file":"forge-artifact-tool.js","sourceRoot":"","sources":["../../../src/extensions/forgecli/forge-artifact-tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"forge-artifact-tool.js","sourceRoot":"","sources":["../../../src/extensions/forgecli/forge-artifact-tool.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,8 @@ import * as fsSync from "node:fs";
22
22
  import { promises as fs } from "node:fs";
23
23
  import * as path from "node:path";
24
24
  import { fileURLToPath } from "node:url";
25
+ // FORGE-S26-T11: registerCalibrate imported to power `forge:health --fix`
26
+ import { registerCalibrate } from "./calibrate.js";
25
27
  import { runRefreshKbLinks } from "./refresh-kb-links.js";
26
28
  // Resolve the package root for bundle path resolution
27
29
  const _PKG_ROOT = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "..", "..", "..");
@@ -85,11 +87,49 @@ export function registerForgeCommands(pi, options) {
85
87
  return { systemPrompt: cachedTomoshibiPrompt };
86
88
  });
87
89
  // ── /forge:health ─────────────────────────────────────────────────────────
90
+ // FORGE-S26-T11: `--fix` flag detected here; dispatches to calibrate behavior.
91
+ // Without `--fix`, delegates to the plugin's health.md workflow (unchanged).
92
+ //
93
+ // Implementation note: we register a temporary "forge:calibrate-internal"
94
+ // handler backed by registerCalibrate so we can invoke its logic without
95
+ // re-routing through a second pi.registerCommand call. The calibrate handler
96
+ // is invoked via pi.registerCommand with a synthetic name; the outer health
97
+ // handler strips `--fix` and forwards remaining args to it.
98
+ //
99
+ // Simpler approach: registerCalibrate registers on "forge:calibrate" — since
100
+ // that name was redirected to a deprecation stub, we instead delegate directly
101
+ // by constructing a synthetic pi wrapper that only captures the "forge:calibrate"
102
+ // registration and calling it inline.
88
103
  pi.registerCommand("forge:health", {
89
- description: "Assess the project's SDLC knowledge base — config, KB freshness, store integrity",
104
+ description: "Assess the project's SDLC knowledge base — config, KB freshness, store integrity. " +
105
+ "--fix: run drift detection + patch application (former /forge:calibrate behavior).",
90
106
  async handler(args, ctx) {
91
107
  if (!forgeRoot)
92
108
  return outsideProjectNoOp("health", ctx);
109
+ const parts = (args ?? "").trim().split(/\s+/).filter(Boolean);
110
+ const hasFix = parts.includes("--fix");
111
+ if (hasFix) {
112
+ // --fix: delegate to calibrate behavior. Strip --fix from args,
113
+ // pass remainder (e.g. --path <dir>) to calibrate handler.
114
+ const calibrateArgs = parts.filter((p) => p !== "--fix").join(" ");
115
+ // Build a thin synthetic pi wrapper to capture the calibrate handler
116
+ let calibrateHandler;
117
+ const syntheticPi = {
118
+ ...pi,
119
+ registerCommand: (name, def) => {
120
+ if (name === "forge:calibrate")
121
+ calibrateHandler = def.handler;
122
+ },
123
+ };
124
+ registerCalibrate(syntheticPi);
125
+ if (calibrateHandler) {
126
+ await calibrateHandler(calibrateArgs, ctx);
127
+ }
128
+ else {
129
+ ctx.ui.notify("× forge:health --fix — calibrate handler unavailable", "error");
130
+ }
131
+ return;
132
+ }
93
133
  await delegateMarkdownCommand(pi, forgeRoot, "health", args, ctx);
94
134
  },
95
135
  });
@@ -116,6 +156,10 @@ export function registerForgeCommands(pi, options) {
116
156
  // /forge:status — native v0 handler registered in index.ts via
117
157
  // registerStatusCommand (FORGE-S23-T10). Removed delegateMarkdownCommand
118
158
  // stub. forge:status stays in EXPLICITLY_REGISTERED_NAMES below.
159
+ // ── v1.0 removed command stubs (FORGE-S26-T10) ───────────────────────────
160
+ // Commands removed in v1.0 emit a deprecation error with migration guidance.
161
+ // Deprecated rename/removal redirects fully removed — old names are now
162
+ // unknown commands. See docs/migration/v0-to-v1.md for the mapping.
119
163
  }
120
164
  // ── Phase G: registerAllForgeCommands (FORGE-S17-T02) ─────────────────────
121
165
  // Enumerate every *.md under dist/forge-payload/.base-pack/commands/ at
@@ -162,11 +206,16 @@ const EXPLICITLY_REGISTERED_NAMES = new Set([
162
206
  "forge:status",
163
207
  "forge:update",
164
208
  "forge:refresh-kb-links",
165
- "forge:enhance",
209
+ // v1.0 renames — new names registered in their respective handler files
210
+ "forge:new-sprint", // FORGE-S19-T01 → renamed from forge:sprint-intake (FORGE-S26-T10)
211
+ "forge:plan-sprint", // FORGE-S19-T02 → renamed from forge:sprint-plan (FORGE-S26-T10)
212
+ "forge:retro", // FORGE-S23-T06 → renamed from forge:retrospective (FORGE-S26-T10)
213
+ "forge:rebuild", // regenerate.ts → renamed from forge:regenerate (FORGE-S26-T10)
214
+ "forge:search", // FORGE-S23-T10 → renamed from forge:store-query (FORGE-S26-T10)
215
+ "forge:repair", // FORGE-S23-T11 → renamed from forge:store-repair (FORGE-S26-T10)
216
+ "forge:check-agent", // FORGE-S23-T11 → renamed from forge:quiz-agent (FORGE-S26-T10)
166
217
  "forge:plan", // FORGE-S20-T05: real handler registered in plan.ts
167
218
  "forge:implement", // FORGE-S20-T06: real handler registered in implement.ts
168
- "forge:sprint-intake", // FORGE-S19-T01: real handler registered in sprint-intake.ts
169
- "forge:sprint-plan", // FORGE-S19-T02: real handler registered in sprint-plan.ts
170
219
  "forge:read", // Real handler registered in index.ts
171
220
  "forge:run-task", // FORGE-S21-T02: real handler registered in run-task.ts
172
221
  "forge:run-sprint", // FORGE-S21-T03: real handler registered in run-sprint.ts
@@ -176,21 +225,12 @@ const EXPLICITLY_REGISTERED_NAMES = new Set([
176
225
  "forge:approve", // FORGE-S21-T10: real kickoff shim registered in approve.ts
177
226
  "forge:commit", // FORGE-S21-T10: real kickoff shim registered in commit.ts
178
227
  "forge:validate", // FORGE-S21-T10: real kickoff shim registered in validate.ts
179
- "forge:collate", // FORGE-S21-T10: real kickoff shim registered in collate.ts
228
+ "forge:collate", // FORGE-S21-T10: internal kickoff shim registered in collate.ts (not user-facing in v1.0)
180
229
  "forge:threads", // Thread-switcher chip strip; registered in thread-switcher.ts
181
- "forge:regenerate", // Native handler registered in regenerate.ts — re-materialize .forge/ from bundled payload
182
- "forge:retrospective", // FORGE-S23-T06: real kickoff shim registered in retrospective.ts
183
- "forge:calibrate", // FORGE-S23-T08: real orchestrator handler registered in calibrate.ts
184
- "forge:materialize", // FORGE-S23-T09: Atomic handler registered in materialize.ts
185
- "forge:migrate", // FORGE-S23-T09: Hybrid handler registered in migrate.ts
186
- "forge:update-tools", // FORGE-S23-T10: Atomic handler registered in update-tools.ts
187
- "forge:store-query", // FORGE-S23-T10: Atomic handler registered in store-query.ts
188
230
  "forge:add-task", // FORGE-S23-T11: Kickoff shim registered in add-task.ts
189
231
  "forge:add-pipeline", // FORGE-S23-T11: Kickoff shim registered in add-pipeline.ts
190
- "forge:quiz-agent", // FORGE-S23-T11: Kickoff shim registered in quiz-agent.ts
191
232
  "forge:remove", // FORGE-S23-T11: Kickoff shim registered in remove-command.ts
192
233
  "forge:report-bug", // FORGE-S23-T11: Kickoff shim registered in report-bug.ts
193
- "forge:store-repair", // FORGE-S23-T11: Kickoff shim registered in store-repair.ts
194
234
  ]);
195
235
  // Alias for backwards-compat with tests that reference REAL_HANDLERS directly.
196
236
  // Will be removed after all test references are updated.
@@ -261,10 +301,9 @@ export function registerAllForgeCommands(pi, options) {
261
301
  }
262
302
  },
263
303
  });
264
- // /forge:enhance: real native kickoff handler is registered in index.ts via
265
- // registerEnhance(pi) — FORGE-S20-T04. The previous sentinel-writing stub
266
- // has been retired. EXPLICITLY_REGISTERED_NAMES still lists "forge:enhance"
267
- // so the auto-stub loop above skips it.
304
+ // /forge:enhance: REMOVED in v1.0 (FORGE-S26-T10). Deprecation stub registered
305
+ // in registerForgeCommands. EXPLICITLY_REGISTERED_NAMES still lists "forge:enhance"
306
+ // so the auto-stub loop above skips it (the stub is handled separately).
268
307
  //
269
308
  // /forge:plan: real native kickoff handler is registered in index.ts via
270
309
  // registerPlan(pi) — FORGE-S20-T05. EXPLICITLY_REGISTERED_NAMES lists
@@ -1 +1 @@
1
- {"version":3,"file":"forge-commands.js","sourceRoot":"","sources":["../../../src/extensions/forgecli/forge-commands.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,EAAE;AACF,4DAA4D;AAC5D,iEAAiE;AACjE,sEAAsE;AACtE,qEAAqE;AACrE,qEAAqE;AACrE,qEAAqE;AACrE,wCAAwC;AACxC,iEAAiE;AACjE,wDAAwD;AACxD,EAAE;AACF,mEAAmE;AACnE,iEAAiE;AACjE,wEAAwE;AACxE,EAAE;AACF,qEAAqE;AACrE,wEAAwE;AACxE,sEAAsE;AACtE,oDAAoD;AAEpD,OAAO,KAAK,MAAM,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE1D,sDAAsD;AACtD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAS/F,+DAA+D;AAC/D,uEAAuE;AACvE,uEAAuE;AACvE,2BAA2B;AAC3B,IAAI,gBAAgB,GAAG,KAAK,CAAC;AAC7B,IAAI,qBAAqB,GAAkB,IAAI,CAAC;AAEhD,SAAS,mBAAmB;IAC3B,gBAAgB,GAAG,KAAK,CAAC;IACzB,qBAAqB,GAAG,IAAI,CAAC;AAC9B,CAAC;AAED,oFAAoF;AACpF,SAAS,kBAAkB,CAAC,WAAmB,EAAE,GAA4B;IAC5E,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,SAAS,WAAW,0DAA0D,EAAE,SAAS,CAAC,CAAC;AAC1G,CAAC;AAED,gFAAgF;AAChF,0EAA0E;AAC1E,yEAAyE;AACzE,kEAAkE;AAClE,KAAK,UAAU,uBAAuB,CACrC,EAAgB,EAChB,SAAiB,EACjB,WAAmB,EACnB,IAAY,EACZ,GAA4B;IAE5B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,GAAG,WAAW,KAAK,CAAC,CAAC;IACnE,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC;QACJ,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACvB,MAAM,CAAC,GAAG,GAA0C,CAAC;QACrD,kFAAkF;QAClF,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACzB,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,+BAA+B,IAAI,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC3F,CAAC;QACD,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,SAAS,WAAW,qBAAqB,IAAI,KAAK,CAAC,CAAC,OAAO,IAAI,eAAe,EAAE,EAAE,OAAO,CAAC,CAAC;QACzG,OAAO;IACR,CAAC;IACD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,UAAU,WAAW,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,WAAW,EAAE,CAAC;IAClG,EAAE,CAAC,eAAe,CAAC,GAAG,UAAU,OAAO,IAAI,EAAE,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,EAAgB,EAAE,OAAwB;IAC/E,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;IAE3C,6EAA6E;IAC7E,2EAA2E;IAC3E,wEAAwE;IACxE,oBAAoB;IACpB,EAAE,CAAC,EAAE,CAAC,oBAAoB,EAAE,KAAK,IAAI,EAAE;QACtC,IAAI,CAAC,gBAAgB;YAAE,OAAO;QAC9B,gBAAgB,GAAG,KAAK,CAAC;QACzB,IAAI,qBAAqB,KAAK,IAAI,EAAE,CAAC;YACpC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;YACpD,IAAI,CAAC;gBACJ,qBAAqB,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACzD,CAAC;YAAC,OAAO,GAAY,EAAE,CAAC;gBACvB,MAAM,CAAC,GAAG,GAA2B,CAAC;gBACtC,OAAO,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC,OAAO,IAAI,eAAe,EAAE,CAAC,CAAC;gBAC7F,OAAO;YACR,CAAC;QACF,CAAC;QACD,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,6EAA6E;IAC7E,EAAE,CAAC,eAAe,CAAC,cAAc,EAAE;QAClC,WAAW,EAAE,kFAAkF;QAC/F,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG;YACtB,IAAI,CAAC,SAAS;gBAAE,OAAO,kBAAkB,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YACzD,MAAM,uBAAuB,CAAC,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;QACnE,CAAC;KACD,CAAC,CAAC;IAEH,6EAA6E;IAC7E,oEAAoE;IACpE,2EAA2E;IAC3E,0EAA0E;IAE1E,6EAA6E;IAC7E,0EAA0E;IAC1E,wEAAwE;IACxE,0EAA0E;IAC1E,0EAA0E;IAC1E,EAAE,CAAC,eAAe,CAAC,WAAW,EAAE;QAC/B,WAAW,EAAE,2EAA2E;QACxF,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI;YACvB,gBAAgB,GAAG,IAAI,CAAC;YACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,wEAAwE,CAAC;YACvG,EAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,0BAA0B,IAAI,EAAE,CAAC,CAAC;QACnG,CAAC;KACD,CAAC,CAAC;IAEH,yEAAyE;IACzE,iEAAiE;IAEjE,+DAA+D;IAC/D,yEAAyE;IACzE,iEAAiE;AAClE,CAAC;AAED,6EAA6E;AAC7E,wEAAwE;AACxE,0EAA0E;AAC1E,2EAA2E;AAC3E,yEAAyE;AACzE,qDAAqD;AACrD,EAAE;AACF,kFAAkF;AAClF,gEAAgE;AAEhE,yFAAyF;AACzF,SAAS,gBAAgB,CAAC,OAAe;IACxC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5C,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACtC,IAAI,GAAG,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACpC,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,IAAI,WAAW,GAAG,EAAE,CAAC;IACrB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACtC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACxC,IAAI,CAAC,CAAC;YAAE,SAAS;QACjB,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,MAAM;YAAE,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACxC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,aAAa;YAAE,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACvD,CAAC;IACD,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;AAC9B,CAAC;AAED;;;;GAIG;AACH,MAAM,2BAA2B,GAAG,IAAI,GAAG,CAAC;IAC3C,YAAY;IACZ,cAAc;IACd,WAAW;IACX,cAAc;IACd,cAAc;IACd,cAAc;IACd,wBAAwB;IACxB,eAAe;IACf,YAAY,EAAE,oDAAoD;IAClE,iBAAiB,EAAE,yDAAyD;IAC5E,qBAAqB,EAAE,6DAA6D;IACpF,mBAAmB,EAAE,2DAA2D;IAChF,YAAY,EAAE,sCAAsC;IACpD,gBAAgB,EAAE,wDAAwD;IAC1E,kBAAkB,EAAE,0DAA0D;IAC9E,eAAe,EAAE,uDAAuD;IACxE,mBAAmB,EAAE,gEAAgE;IACrF,mBAAmB,EAAE,gEAAgE;IACrF,eAAe,EAAE,4DAA4D;IAC7E,cAAc,EAAE,2DAA2D;IAC3E,gBAAgB,EAAE,6DAA6D;IAC/E,eAAe,EAAE,4DAA4D;IAC7E,eAAe,EAAE,+DAA+D;IAChF,kBAAkB,EAAE,2FAA2F;IAC/G,qBAAqB,EAAE,kEAAkE;IACzF,iBAAiB,EAAE,sEAAsE;IACzF,mBAAmB,EAAE,6DAA6D;IAClF,eAAe,EAAE,yDAAyD;IAC1E,oBAAoB,EAAE,8DAA8D;IACpF,mBAAmB,EAAE,6DAA6D;IAClF,gBAAgB,EAAE,wDAAwD;IAC1E,oBAAoB,EAAE,4DAA4D;IAClF,kBAAkB,EAAE,0DAA0D;IAC9E,cAAc,EAAE,8DAA8D;IAC9E,kBAAkB,EAAE,0DAA0D;IAC9E,oBAAoB,EAAE,4DAA4D;CAClF,CAAC,CAAC;AAEH,+EAA+E;AAC/E,yDAAyD;AACzD,MAAM,aAAa,GAAG,2BAA2B,CAAC;AAWlD;;;;GAIG;AACH,MAAM,UAAU,wBAAwB,CAAC,EAAgB,EAAE,OAA2B;IACrF,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;IAEnF,IAAI,YAAsB,CAAC;IAC3B,IAAI,CAAC;QACJ,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IACjF,CAAC;IAAC,MAAM,CAAC;QACR,6CAA6C;QAC7C,OAAO,CAAC,CAAC;IACV,CAAC;IAED,IAAI,UAAU,GAAG,CAAC,CAAC;IAEnB,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAC9C,IAAI,OAAe,CAAC;QACpB,IAAI,CAAC;YACJ,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACjD,CAAC;QAAC,MAAM,CAAC;YACR,SAAS;QACV,CAAC;QAED,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,IAAI;YAAE,SAAS;QAEpB,MAAM,WAAW,GAAG,SAAS,IAAI,CAAC,IAAI,EAAE,CAAC;QAEzC,gDAAgD;QAChD,IAAI,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC;YAAE,SAAS;QAE7C,gBAAgB;QAChB,MAAM,YAAY,GAAG,WAAW,CAAC;QACjC,EAAE,CAAC,eAAe,CAAC,YAAY,EAAE;YAChC,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,UAAU,IAAI,CAAC,IAAI,EAAE;YACtD,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG;gBACvB,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,YAAY,iCAAiC,EAAE,MAAM,CAAC,CAAC;YAC3E,CAAC;SACD,CAAC,CAAC;QAEH,UAAU,EAAE,CAAC;IACd,CAAC;IAED,+DAA+D;IAC/D,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACjD,EAAE,CAAC,eAAe,CAAC,wBAAwB,EAAE;QAC5C,WAAW,EAAE,gEAAgE;QAC7E,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG;YACvB,GAAG,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,wBAAwB,EAAE,sBAAsB,CAAC,CAAC;YACrE,IAAI,CAAC;gBACJ,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,WAAW,CAAC,CAAC;gBACpD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;oBACnC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;gBAC5B,CAAC;gBACD,IAAI,MAAM,CAAC,YAAY,KAAK,CAAC,IAAI,MAAM,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;oBAC1D,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,0EAA0E,EAAE,MAAM,CAAC,CAAC;gBACnG,CAAC;YACF,CAAC;YAAC,OAAO,GAAY,EAAE,CAAC;gBACvB,MAAM,CAAC,GAAG,GAA2B,CAAC;gBACtC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,iCAAiC,CAAC,CAAC,OAAO,IAAI,SAAS,EAAE,EAAE,OAAO,CAAC,CAAC;YACnF,CAAC;oBAAS,CAAC;gBACV,GAAG,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,wBAAwB,EAAE,SAAS,CAAC,CAAC;YACzD,CAAC;QACF,CAAC;KACD,CAAC,CAAC;IAEH,4EAA4E;IAC5E,0EAA0E;IAC1E,4EAA4E;IAC5E,wCAAwC;IACxC,EAAE;IACF,yEAAyE;IACzE,sEAAsE;IACtE,sEAAsE;IACtE,oEAAoE;IACpE,EAAE;IACF,0EAA0E;IAC1E,yEAAyE;IACzE,gEAAgE;IAChE,yDAAyD;IACzD,8BAA8B;IAE9B,OAAO,UAAU,CAAC;AACnB,CAAC;AAED,gFAAgF;AAChF,uEAAuE;AACvE,MAAM,CAAC,MAAM,QAAQ,GAAG;IACvB,mBAAmB;IACnB,mBAAmB,EAAE,GAAG,EAAE,CAAC,gBAAgB;IAC3C,gBAAgB;IAChB,aAAa;IACb,2BAA2B;CAC3B,CAAC"}
1
+ {"version":3,"file":"forge-commands.js","sourceRoot":"","sources":["../../../src/extensions/forgecli/forge-commands.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,8 @@
1
- // forge-init/phase4-register.ts — Phase 4 Register extraction (FORGE-S25-T24, B-5)
1
+ // forge-init/phase4-register.ts — Phase 4 Register (FORGE-S25-T24, B-5)
2
2
  //
3
- // Encapsulates Steps 4-1 through 4-11 from the original forge-init.ts Phase 4 block.
4
- // Phase 4 is heterogeneous (11 deterministic FS/tool/git steps, no LLM dispatch) and
5
- // is too complex for the generic LlmPhaseDescriptor runner. It is extracted as a
6
- // standalone async function.
3
+ // Encapsulates Steps 4-1 through 4-11 from the init pipeline.
4
+ // Phase 4 is heterogeneous (11 deterministic FS/tool/git steps, no LLM dispatch)
5
+ // and is extracted as a standalone async function.
7
6
  //
8
7
  // Key contract:
9
8
  // - Returns `Phase4Result { kbPathFinal }` on success — caller reads kbPathFinal for
@@ -119,8 +118,8 @@ async function linkAgentInstructionFile(cwd, kbPath, projectName, ctx) {
119
118
  `| /forge:fix-bug | Triage, diagnose, and fix a bug |`,
120
119
  `| /forge:run-task | Full plan-implement-review-commit pipeline |`,
121
120
  `| /forge:run-sprint | Execute all tasks in a sprint |`,
122
- `| /forge:sprint-plan | Decompose sprint requirements into tasks |`,
123
- `| /forge:sprint-intake | Elicit and structure requirements for a new sprint |`,
121
+ `| /forge:plan-sprint | Decompose sprint requirements into tasks |`,
122
+ `| /forge:new-sprint | Elicit and structure requirements for a new sprint |`,
124
123
  ``,
125
124
  `---`,
126
125
  `_Generated by /forge:init. Run /forge:refresh-kb-links to update._`,