@entelligentsia/forgecli 1.0.25 → 1.0.36

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 (390) hide show
  1. package/CHANGELOG.md +258 -0
  2. package/README.md +2 -0
  3. package/dist/CHANGELOG-forge-plugin.md +163 -0
  4. package/dist/bin/argv.d.ts +2 -2
  5. package/dist/bin/argv.js +25 -0
  6. package/dist/bin/argv.js.map +1 -1
  7. package/dist/bin/forge.js +12 -0
  8. package/dist/bin/forge.js.map +1 -1
  9. package/dist/bin/init.d.ts +23 -0
  10. package/dist/bin/init.js +123 -0
  11. package/dist/bin/init.js.map +1 -0
  12. package/dist/bin/uninstall.d.ts +20 -0
  13. package/dist/bin/uninstall.js +141 -0
  14. package/dist/bin/uninstall.js.map +1 -0
  15. package/dist/extensions/forgecli/add-pipeline.d.ts +19 -0
  16. package/dist/extensions/forgecli/add-pipeline.js +143 -0
  17. package/dist/extensions/forgecli/add-pipeline.js.map +1 -0
  18. package/dist/extensions/forgecli/add-task.d.ts +20 -0
  19. package/dist/extensions/forgecli/add-task.js +154 -0
  20. package/dist/extensions/forgecli/add-task.js.map +1 -0
  21. package/dist/extensions/forgecli/approve.d.ts +22 -0
  22. package/dist/extensions/forgecli/approve.js +152 -0
  23. package/dist/extensions/forgecli/approve.js.map +1 -0
  24. package/dist/extensions/forgecli/banner.d.ts +10 -0
  25. package/dist/extensions/forgecli/banner.js +36 -0
  26. package/dist/extensions/forgecli/banner.js.map +1 -0
  27. package/dist/extensions/forgecli/calibrate.d.ts +64 -0
  28. package/dist/extensions/forgecli/calibrate.js +481 -0
  29. package/dist/extensions/forgecli/calibrate.js.map +1 -0
  30. package/dist/extensions/forgecli/claude-bootstrap/bootstrap.d.ts +40 -0
  31. package/dist/extensions/forgecli/claude-bootstrap/bootstrap.js +593 -0
  32. package/dist/extensions/forgecli/claude-bootstrap/bootstrap.js.map +1 -0
  33. package/dist/extensions/forgecli/claude-bootstrap/settings-merge.d.ts +46 -0
  34. package/dist/extensions/forgecli/claude-bootstrap/settings-merge.js +245 -0
  35. package/dist/extensions/forgecli/claude-bootstrap/settings-merge.js.map +1 -0
  36. package/dist/extensions/forgecli/claude-bootstrap/uninstall.d.ts +23 -0
  37. package/dist/extensions/forgecli/claude-bootstrap/uninstall.js +215 -0
  38. package/dist/extensions/forgecli/claude-bootstrap/uninstall.js.map +1 -0
  39. package/dist/extensions/forgecli/collate.d.ts +22 -0
  40. package/dist/extensions/forgecli/collate.js +134 -0
  41. package/dist/extensions/forgecli/collate.js.map +1 -0
  42. package/dist/extensions/forgecli/commit.d.ts +22 -0
  43. package/dist/extensions/forgecli/commit.js +152 -0
  44. package/dist/extensions/forgecli/commit.js.map +1 -0
  45. package/dist/extensions/forgecli/config-command.d.ts +8 -0
  46. package/dist/extensions/forgecli/config-command.js +67 -0
  47. package/dist/extensions/forgecli/config-command.js.map +1 -0
  48. package/dist/extensions/forgecli/config-layer.d.ts +53 -0
  49. package/dist/extensions/forgecli/config-layer.js +72 -0
  50. package/dist/extensions/forgecli/config-layer.js.map +1 -0
  51. package/dist/extensions/forgecli/config-writer.d.ts +16 -0
  52. package/dist/extensions/forgecli/config-writer.js +69 -0
  53. package/dist/extensions/forgecli/config-writer.js.map +1 -0
  54. package/dist/extensions/forgecli/dashboard/component.js +10 -7
  55. package/dist/extensions/forgecli/dashboard/component.js.map +1 -1
  56. package/dist/extensions/forgecli/enhance.d.ts +27 -0
  57. package/dist/extensions/forgecli/enhance.js +199 -0
  58. package/dist/extensions/forgecli/enhance.js.map +1 -0
  59. package/dist/extensions/forgecli/fix-bug.d.ts +85 -0
  60. package/dist/extensions/forgecli/fix-bug.js +1580 -0
  61. package/dist/extensions/forgecli/fix-bug.js.map +1 -0
  62. package/dist/extensions/forgecli/forge-header.d.ts +12 -0
  63. package/dist/extensions/forgecli/forge-header.js +114 -0
  64. package/dist/extensions/forgecli/forge-header.js.map +1 -0
  65. package/dist/extensions/forgecli/forge-init.d.ts +26 -0
  66. package/dist/extensions/forgecli/forge-init.js +514 -0
  67. package/dist/extensions/forgecli/forge-init.js.map +1 -0
  68. package/dist/extensions/forgecli/forge-root.d.ts +10 -0
  69. package/dist/extensions/forgecli/forge-root.js +62 -0
  70. package/dist/extensions/forgecli/forge-root.js.map +1 -0
  71. package/dist/extensions/forgecli/forge-update-command.d.ts +100 -0
  72. package/dist/extensions/forgecli/forge-update-command.js +435 -0
  73. package/dist/extensions/forgecli/forge-update-command.js.map +1 -0
  74. package/dist/extensions/forgecli/friction-emit.d.ts +99 -0
  75. package/dist/extensions/forgecli/friction-emit.js +245 -0
  76. package/dist/extensions/forgecli/friction-emit.js.map +1 -0
  77. package/dist/extensions/forgecli/implement.d.ts +22 -0
  78. package/dist/extensions/forgecli/implement.js +170 -0
  79. package/dist/extensions/forgecli/implement.js.map +1 -0
  80. package/dist/extensions/forgecli/init-context.d.ts +99 -0
  81. package/dist/extensions/forgecli/init-context.js +178 -0
  82. package/dist/extensions/forgecli/init-context.js.map +1 -0
  83. package/dist/extensions/forgecli/init-progress.d.ts +39 -0
  84. package/dist/extensions/forgecli/init-progress.js +117 -0
  85. package/dist/extensions/forgecli/init-progress.js.map +1 -0
  86. package/dist/extensions/forgecli/input-router.d.ts +33 -0
  87. package/dist/extensions/forgecli/input-router.js +136 -0
  88. package/dist/extensions/forgecli/input-router.js.map +1 -0
  89. package/dist/extensions/forgecli/lib/halt-advisor.d.ts +59 -0
  90. package/dist/extensions/forgecli/lib/halt-advisor.js +113 -0
  91. package/dist/extensions/forgecli/lib/halt-advisor.js.map +1 -0
  92. package/dist/extensions/forgecli/lib/orchestrator-preflight.d.ts +46 -0
  93. package/dist/extensions/forgecli/lib/orchestrator-preflight.js +64 -0
  94. package/dist/extensions/forgecli/lib/orchestrator-preflight.js.map +1 -0
  95. package/dist/extensions/forgecli/materialize.d.ts +16 -0
  96. package/dist/extensions/forgecli/materialize.js +195 -0
  97. package/dist/extensions/forgecli/materialize.js.map +1 -0
  98. package/dist/extensions/forgecli/migrate.d.ts +22 -0
  99. package/dist/extensions/forgecli/migrate.js +260 -0
  100. package/dist/extensions/forgecli/migrate.js.map +1 -0
  101. package/dist/extensions/forgecli/migration-engine.d.ts +117 -0
  102. package/dist/extensions/forgecli/migration-engine.js +563 -0
  103. package/dist/extensions/forgecli/migration-engine.js.map +1 -0
  104. package/dist/extensions/forgecli/model-registry.d.ts +61 -0
  105. package/dist/extensions/forgecli/model-registry.js +127 -0
  106. package/dist/extensions/forgecli/model-registry.js.map +1 -0
  107. package/dist/extensions/forgecli/model-resolver.d.ts +32 -0
  108. package/dist/extensions/forgecli/model-resolver.js +65 -0
  109. package/dist/extensions/forgecli/model-resolver.js.map +1 -0
  110. package/dist/extensions/forgecli/model-validator.d.ts +29 -0
  111. package/dist/extensions/forgecli/model-validator.js +107 -0
  112. package/dist/extensions/forgecli/model-validator.js.map +1 -0
  113. package/dist/extensions/forgecli/orchestrator-status-bar.d.ts +26 -0
  114. package/dist/extensions/forgecli/orchestrator-status-bar.js +213 -0
  115. package/dist/extensions/forgecli/orchestrator-status-bar.js.map +1 -0
  116. package/dist/extensions/forgecli/orchestrators/bug/bug-body.d.ts +1 -0
  117. package/dist/extensions/forgecli/orchestrators/bug/bug-body.js +65 -0
  118. package/dist/extensions/forgecli/orchestrators/bug/bug-body.js.map +1 -0
  119. package/dist/extensions/forgecli/orchestrators/bug/bug-id.d.ts +23 -0
  120. package/dist/extensions/forgecli/orchestrators/bug/bug-id.js +140 -0
  121. package/dist/extensions/forgecli/orchestrators/bug/bug-id.js.map +1 -0
  122. package/dist/extensions/forgecli/orchestrators/bug/bug-phase-dispatch.d.ts +54 -0
  123. package/dist/extensions/forgecli/orchestrators/bug/bug-phase-dispatch.js +349 -0
  124. package/dist/extensions/forgecli/orchestrators/bug/bug-phase-dispatch.js.map +1 -0
  125. package/dist/extensions/forgecli/orchestrators/bug/bug-phases.d.ts +8 -0
  126. package/dist/extensions/forgecli/orchestrators/bug/bug-phases.js +60 -0
  127. package/dist/extensions/forgecli/orchestrators/bug/bug-phases.js.map +1 -0
  128. package/dist/extensions/forgecli/orchestrators/bug/bug-state.d.ts +14 -0
  129. package/dist/extensions/forgecli/orchestrators/bug/bug-state.js +100 -0
  130. package/dist/extensions/forgecli/orchestrators/bug/bug-state.js.map +1 -0
  131. package/dist/extensions/forgecli/orchestrators/bug/bug-triage-routing.d.ts +72 -0
  132. package/dist/extensions/forgecli/orchestrators/bug/bug-triage-routing.js +204 -0
  133. package/dist/extensions/forgecli/orchestrators/bug/bug-triage-routing.js.map +1 -0
  134. package/dist/extensions/forgecli/orchestrators/bug/bug-verdict-loop.d.ts +38 -0
  135. package/dist/extensions/forgecli/orchestrators/bug/bug-verdict-loop.js +166 -0
  136. package/dist/extensions/forgecli/orchestrators/bug/bug-verdict-loop.js.map +1 -0
  137. package/dist/extensions/forgecli/orchestrators/bug/bug-verdict.d.ts +3 -0
  138. package/dist/extensions/forgecli/orchestrators/bug/bug-verdict.js +55 -0
  139. package/dist/extensions/forgecli/orchestrators/bug/bug-verdict.js.map +1 -0
  140. package/dist/extensions/forgecli/orchestrators/bug/run-bug-command.d.ts +7 -0
  141. package/dist/extensions/forgecli/orchestrators/bug/run-bug-command.js +293 -0
  142. package/dist/extensions/forgecli/orchestrators/bug/run-bug-command.js.map +1 -0
  143. package/dist/extensions/forgecli/orchestrators/bug/run-bug-pipeline.d.ts +2 -0
  144. package/dist/extensions/forgecli/orchestrators/bug/run-bug-pipeline.js +501 -0
  145. package/dist/extensions/forgecli/orchestrators/bug/run-bug-pipeline.js.map +1 -0
  146. package/dist/extensions/forgecli/orchestrators/bug/run-bug-types.d.ts +41 -0
  147. package/dist/extensions/forgecli/orchestrators/bug/run-bug-types.js +5 -0
  148. package/dist/extensions/forgecli/orchestrators/bug/run-bug-types.js.map +1 -0
  149. package/dist/extensions/forgecli/orchestrators/common/orchestrator-entry.d.ts +43 -0
  150. package/dist/extensions/forgecli/orchestrators/common/orchestrator-entry.js +85 -0
  151. package/dist/extensions/forgecli/orchestrators/common/orchestrator-entry.js.map +1 -0
  152. package/dist/extensions/forgecli/orchestrators/common/orchestrator-misc.d.ts +8 -0
  153. package/dist/extensions/forgecli/orchestrators/common/orchestrator-misc.js +37 -0
  154. package/dist/extensions/forgecli/orchestrators/common/orchestrator-misc.js.map +1 -0
  155. package/dist/extensions/forgecli/orchestrators/common/orchestrator-notify.d.ts +28 -0
  156. package/dist/extensions/forgecli/orchestrators/common/orchestrator-notify.js +45 -0
  157. package/dist/extensions/forgecli/orchestrators/common/orchestrator-notify.js.map +1 -0
  158. package/dist/extensions/forgecli/orchestrators/common/orchestrator-transcript-session.d.ts +26 -0
  159. package/dist/extensions/forgecli/orchestrators/common/orchestrator-transcript-session.js +75 -0
  160. package/dist/extensions/forgecli/orchestrators/common/orchestrator-transcript-session.js.map +1 -0
  161. package/dist/extensions/forgecli/orchestrators/common/summary-recovery.d.ts +24 -0
  162. package/dist/extensions/forgecli/orchestrators/common/summary-recovery.js +37 -0
  163. package/dist/extensions/forgecli/orchestrators/common/summary-recovery.js.map +1 -0
  164. package/dist/extensions/forgecli/orchestrators/fix-bug.d.ts +9 -93
  165. package/dist/extensions/forgecli/orchestrators/fix-bug.js +23 -1721
  166. package/dist/extensions/forgecli/orchestrators/fix-bug.js.map +1 -1
  167. package/dist/extensions/forgecli/orchestrators/run-sprint.d.ts +3 -12
  168. package/dist/extensions/forgecli/orchestrators/run-sprint.js +48 -270
  169. package/dist/extensions/forgecli/orchestrators/run-sprint.js.map +1 -1
  170. package/dist/extensions/forgecli/orchestrators/run-task.d.ts +10 -214
  171. package/dist/extensions/forgecli/orchestrators/run-task.js +31 -1481
  172. package/dist/extensions/forgecli/orchestrators/run-task.js.map +1 -1
  173. package/dist/extensions/forgecli/orchestrators/sprint/sprint-ceremony.d.ts +33 -0
  174. package/dist/extensions/forgecli/orchestrators/sprint/sprint-ceremony.js +135 -0
  175. package/dist/extensions/forgecli/orchestrators/sprint/sprint-ceremony.js.map +1 -0
  176. package/dist/extensions/forgecli/orchestrators/sprint/sprint-state.d.ts +18 -0
  177. package/dist/extensions/forgecli/orchestrators/sprint/sprint-state.js +55 -0
  178. package/dist/extensions/forgecli/orchestrators/sprint/sprint-state.js.map +1 -0
  179. package/dist/extensions/forgecli/orchestrators/task/run-task-command.d.ts +9 -0
  180. package/dist/extensions/forgecli/orchestrators/task/run-task-command.js +174 -0
  181. package/dist/extensions/forgecli/orchestrators/task/run-task-command.js.map +1 -0
  182. package/dist/extensions/forgecli/orchestrators/task/run-task-pipeline.d.ts +2 -0
  183. package/dist/extensions/forgecli/orchestrators/task/run-task-pipeline.js +494 -0
  184. package/dist/extensions/forgecli/orchestrators/task/run-task-pipeline.js.map +1 -0
  185. package/dist/extensions/forgecli/orchestrators/task/run-task-types.d.ts +62 -0
  186. package/dist/extensions/forgecli/orchestrators/task/run-task-types.js +5 -0
  187. package/dist/extensions/forgecli/orchestrators/task/run-task-types.js.map +1 -0
  188. package/dist/extensions/forgecli/orchestrators/task/task-body.d.ts +4 -0
  189. package/dist/extensions/forgecli/orchestrators/task/task-body.js +48 -0
  190. package/dist/extensions/forgecli/orchestrators/task/task-body.js.map +1 -0
  191. package/dist/extensions/forgecli/orchestrators/task/task-events.d.ts +63 -0
  192. package/dist/extensions/forgecli/orchestrators/task/task-events.js +185 -0
  193. package/dist/extensions/forgecli/orchestrators/task/task-events.js.map +1 -0
  194. package/dist/extensions/forgecli/orchestrators/task/task-gates.d.ts +34 -0
  195. package/dist/extensions/forgecli/orchestrators/task/task-gates.js +78 -0
  196. package/dist/extensions/forgecli/orchestrators/task/task-gates.js.map +1 -0
  197. package/dist/extensions/forgecli/orchestrators/task/task-phase-dispatch.d.ts +42 -0
  198. package/dist/extensions/forgecli/orchestrators/task/task-phase-dispatch.js +370 -0
  199. package/dist/extensions/forgecli/orchestrators/task/task-phase-dispatch.js.map +1 -0
  200. package/dist/extensions/forgecli/orchestrators/task/task-phases.d.ts +14 -0
  201. package/dist/extensions/forgecli/orchestrators/task/task-phases.js +26 -0
  202. package/dist/extensions/forgecli/orchestrators/task/task-phases.js.map +1 -0
  203. package/dist/extensions/forgecli/orchestrators/task/task-record.d.ts +9 -0
  204. package/dist/extensions/forgecli/orchestrators/task/task-record.js +58 -0
  205. package/dist/extensions/forgecli/orchestrators/task/task-record.js.map +1 -0
  206. package/dist/extensions/forgecli/orchestrators/task/task-state.d.ts +14 -0
  207. package/dist/extensions/forgecli/orchestrators/task/task-state.js +35 -0
  208. package/dist/extensions/forgecli/orchestrators/task/task-state.js.map +1 -0
  209. package/dist/extensions/forgecli/orchestrators/task/task-verdict-loop.d.ts +36 -0
  210. package/dist/extensions/forgecli/orchestrators/task/task-verdict-loop.js +152 -0
  211. package/dist/extensions/forgecli/orchestrators/task/task-verdict-loop.js.map +1 -0
  212. package/dist/extensions/forgecli/plan.d.ts +22 -0
  213. package/dist/extensions/forgecli/plan.js +167 -0
  214. package/dist/extensions/forgecli/plan.js.map +1 -0
  215. package/dist/extensions/forgecli/quiz-agent.d.ts +17 -0
  216. package/dist/extensions/forgecli/quiz-agent.js +98 -0
  217. package/dist/extensions/forgecli/quiz-agent.js.map +1 -0
  218. package/dist/extensions/forgecli/read-command.d.ts +2 -0
  219. package/dist/extensions/forgecli/read-command.js +100 -0
  220. package/dist/extensions/forgecli/read-command.js.map +1 -0
  221. package/dist/extensions/forgecli/regenerate.d.ts +40 -0
  222. package/dist/extensions/forgecli/regenerate.js +438 -0
  223. package/dist/extensions/forgecli/regenerate.js.map +1 -0
  224. package/dist/extensions/forgecli/remove-command.d.ts +17 -0
  225. package/dist/extensions/forgecli/remove-command.js +124 -0
  226. package/dist/extensions/forgecli/remove-command.js.map +1 -0
  227. package/dist/extensions/forgecli/report-bug.d.ts +25 -0
  228. package/dist/extensions/forgecli/report-bug.js +159 -0
  229. package/dist/extensions/forgecli/report-bug.js.map +1 -0
  230. package/dist/extensions/forgecli/retrospective.d.ts +20 -0
  231. package/dist/extensions/forgecli/retrospective.js +126 -0
  232. package/dist/extensions/forgecli/retrospective.js.map +1 -0
  233. package/dist/extensions/forgecli/review-code.d.ts +35 -0
  234. package/dist/extensions/forgecli/review-code.js +196 -0
  235. package/dist/extensions/forgecli/review-code.js.map +1 -0
  236. package/dist/extensions/forgecli/review-plan.d.ts +35 -0
  237. package/dist/extensions/forgecli/review-plan.js +200 -0
  238. package/dist/extensions/forgecli/review-plan.js.map +1 -0
  239. package/dist/extensions/forgecli/run-sprint.d.ts +27 -0
  240. package/dist/extensions/forgecli/run-sprint.js +716 -0
  241. package/dist/extensions/forgecli/run-sprint.js.map +1 -0
  242. package/dist/extensions/forgecli/run-task.d.ts +204 -0
  243. package/dist/extensions/forgecli/run-task.js +1403 -0
  244. package/dist/extensions/forgecli/run-task.js.map +1 -0
  245. package/dist/extensions/forgecli/skill-curation-flag.d.ts +21 -0
  246. package/dist/extensions/forgecli/skill-curation-flag.js +71 -0
  247. package/dist/extensions/forgecli/skill-curation-flag.js.map +1 -0
  248. package/dist/extensions/forgecli/skill-curator-subagent.d.ts +102 -0
  249. package/dist/extensions/forgecli/skill-curator-subagent.js +339 -0
  250. package/dist/extensions/forgecli/skill-curator-subagent.js.map +1 -0
  251. package/dist/extensions/forgecli/skill-retriever.d.ts +84 -0
  252. package/dist/extensions/forgecli/skill-retriever.js +246 -0
  253. package/dist/extensions/forgecli/skill-retriever.js.map +1 -0
  254. package/dist/extensions/forgecli/skill-usage-tracker.d.ts +91 -0
  255. package/dist/extensions/forgecli/skill-usage-tracker.js +224 -0
  256. package/dist/extensions/forgecli/skill-usage-tracker.js.map +1 -0
  257. package/dist/extensions/forgecli/sprint-intake.d.ts +10 -0
  258. package/dist/extensions/forgecli/sprint-intake.js +91 -0
  259. package/dist/extensions/forgecli/sprint-intake.js.map +1 -0
  260. package/dist/extensions/forgecli/sprint-plan.d.ts +14 -0
  261. package/dist/extensions/forgecli/sprint-plan.js +122 -0
  262. package/dist/extensions/forgecli/sprint-plan.js.map +1 -0
  263. package/dist/extensions/forgecli/status-command.d.ts +19 -0
  264. package/dist/extensions/forgecli/status-command.js +140 -0
  265. package/dist/extensions/forgecli/status-command.js.map +1 -0
  266. package/dist/extensions/forgecli/store-error-remediation.d.ts +65 -0
  267. package/dist/extensions/forgecli/store-error-remediation.js +307 -0
  268. package/dist/extensions/forgecli/store-error-remediation.js.map +1 -0
  269. package/dist/extensions/forgecli/store-query.d.ts +22 -0
  270. package/dist/extensions/forgecli/store-query.js +107 -0
  271. package/dist/extensions/forgecli/store-query.js.map +1 -0
  272. package/dist/extensions/forgecli/store-repair.d.ts +17 -0
  273. package/dist/extensions/forgecli/store-repair.js +123 -0
  274. package/dist/extensions/forgecli/store-repair.js.map +1 -0
  275. package/dist/extensions/forgecli/store-resolver.d.ts +56 -0
  276. package/dist/extensions/forgecli/store-resolver.js +263 -0
  277. package/dist/extensions/forgecli/store-resolver.js.map +1 -0
  278. package/dist/extensions/forgecli/store-validator.d.ts +16 -0
  279. package/dist/extensions/forgecli/store-validator.js +32 -0
  280. package/dist/extensions/forgecli/store-validator.js.map +1 -0
  281. package/dist/extensions/forgecli/test-orchestrate.d.ts +2 -0
  282. package/dist/extensions/forgecli/test-orchestrate.js +182 -0
  283. package/dist/extensions/forgecli/test-orchestrate.js.map +1 -0
  284. package/dist/extensions/forgecli/thread-switcher.d.ts +5 -0
  285. package/dist/extensions/forgecli/thread-switcher.js +189 -0
  286. package/dist/extensions/forgecli/thread-switcher.js.map +1 -0
  287. package/dist/extensions/forgecli/transition-guard.d.ts +20 -0
  288. package/dist/extensions/forgecli/transition-guard.js +89 -0
  289. package/dist/extensions/forgecli/transition-guard.js.map +1 -0
  290. package/dist/extensions/forgecli/update/forge-update-command.js +10 -7
  291. package/dist/extensions/forgecli/update/forge-update-command.js.map +1 -1
  292. package/dist/extensions/forgecli/update-check.d.ts +37 -0
  293. package/dist/extensions/forgecli/update-check.js +185 -0
  294. package/dist/extensions/forgecli/update-check.js.map +1 -0
  295. package/dist/extensions/forgecli/update-tools.d.ts +23 -0
  296. package/dist/extensions/forgecli/update-tools.js +135 -0
  297. package/dist/extensions/forgecli/update-tools.js.map +1 -0
  298. package/dist/extensions/forgecli/validate.d.ts +22 -0
  299. package/dist/extensions/forgecli/validate.js +152 -0
  300. package/dist/extensions/forgecli/validate.js.map +1 -0
  301. package/dist/extensions/forgecli/viewport-events.d.ts +78 -0
  302. package/dist/extensions/forgecli/viewport-events.js +243 -0
  303. package/dist/extensions/forgecli/viewport-events.js.map +1 -0
  304. package/dist/extensions/forgecli/viewport-renderer.d.ts +83 -0
  305. package/dist/extensions/forgecli/viewport-renderer.js +233 -0
  306. package/dist/extensions/forgecli/viewport-renderer.js.map +1 -0
  307. package/dist/extensions/forgecli/viewport-theme.d.ts +11 -0
  308. package/dist/extensions/forgecli/viewport-theme.js +128 -0
  309. package/dist/extensions/forgecli/viewport-theme.js.map +1 -0
  310. package/dist/extensions/forgecli/whats-new-widget.d.ts +26 -0
  311. package/dist/extensions/forgecli/whats-new-widget.js +376 -0
  312. package/dist/extensions/forgecli/whats-new-widget.js.map +1 -0
  313. package/dist/extensions/forgecli/whats-new.d.ts +120 -0
  314. package/dist/extensions/forgecli/whats-new.js +470 -0
  315. package/dist/extensions/forgecli/whats-new.js.map +1 -0
  316. package/dist/forge-payload/.base-pack/commands/approve.md +2 -2
  317. package/dist/forge-payload/.base-pack/commands/check-agent.md +2 -2
  318. package/dist/forge-payload/.base-pack/commands/collate.md +2 -2
  319. package/dist/forge-payload/.base-pack/commands/commit.md +2 -2
  320. package/dist/forge-payload/.base-pack/commands/enhance.md +2 -2
  321. package/dist/forge-payload/.base-pack/commands/fix-bug.md +2 -2
  322. package/dist/forge-payload/.base-pack/commands/implement.md +2 -2
  323. package/dist/forge-payload/.base-pack/commands/init.md +278 -0
  324. package/dist/forge-payload/.base-pack/commands/new-sprint.md +2 -2
  325. package/dist/forge-payload/.base-pack/commands/plan-sprint.md +2 -2
  326. package/dist/forge-payload/.base-pack/commands/plan.md +2 -2
  327. package/dist/forge-payload/.base-pack/commands/retro.md +2 -2
  328. package/dist/forge-payload/.base-pack/commands/review-code.md +2 -2
  329. package/dist/forge-payload/.base-pack/commands/review-plan.md +2 -2
  330. package/dist/forge-payload/.base-pack/commands/run-sprint.md +2 -2
  331. package/dist/forge-payload/.base-pack/commands/run-task.md +2 -2
  332. package/dist/forge-payload/.base-pack/commands/validate.md +2 -2
  333. package/dist/forge-payload/.base-pack/workflows/collator_agent.md +5 -6
  334. package/dist/forge-payload/.base-pack/workflows/migrate_structural.md +1 -1
  335. package/dist/forge-payload/.base-pack/workflows-js/wfl-init.js +449 -0
  336. package/dist/forge-payload/.claude-plugin/plugin.json +1 -1
  337. package/dist/forge-payload/.schemas/enum-catalog.json +2 -2
  338. package/dist/forge-payload/.schemas/migrations.json +85 -0
  339. package/dist/forge-payload/commands/add-pipeline.md +1 -1
  340. package/dist/forge-payload/commands/add-task.md +3 -3
  341. package/dist/forge-payload/commands/ask.md +1 -1
  342. package/dist/forge-payload/commands/check-agent.md +1 -1
  343. package/dist/forge-payload/commands/config.md +1 -1
  344. package/dist/forge-payload/commands/health.md +1 -1
  345. package/dist/forge-payload/commands/init.md +62 -7
  346. package/dist/forge-payload/commands/rebuild.md +3 -3
  347. package/dist/forge-payload/commands/remove.md +1 -1
  348. package/dist/forge-payload/commands/repair.md +1 -1
  349. package/dist/forge-payload/commands/report-bug.md +1 -1
  350. package/dist/forge-payload/commands/status.md +1 -1
  351. package/dist/forge-payload/commands/update.md +3 -3
  352. package/dist/forge-payload/hooks/lib/common.cjs +228 -0
  353. package/dist/forge-payload/hooks/lib/plugin-detection.cjs +106 -0
  354. package/dist/forge-payload/hooks/lib/update-msg.cjs +23 -0
  355. package/dist/forge-payload/hooks/lib/update-url.cjs +46 -0
  356. package/dist/forge-payload/hooks/lib/write-registry.js +53 -0
  357. package/dist/forge-payload/init/discovery/discover-database.md +32 -0
  358. package/dist/forge-payload/init/discovery/discover-processes.md +31 -0
  359. package/dist/forge-payload/init/discovery/discover-routing.md +31 -0
  360. package/dist/forge-payload/init/discovery/discover-stack.md +33 -0
  361. package/dist/forge-payload/init/discovery/discover-testing.md +34 -0
  362. package/dist/forge-payload/init/generation/generate-commands.md +171 -0
  363. package/dist/forge-payload/init/generation/generate-kb-doc.md +60 -0
  364. package/dist/forge-payload/init/generation/generate-knowledge-base.md +56 -0
  365. package/dist/forge-payload/init/generation/generate-persona.md +73 -0
  366. package/dist/forge-payload/init/generation/generate-personas.md +54 -0
  367. package/dist/forge-payload/init/generation/generate-skill.md +66 -0
  368. package/dist/forge-payload/init/generation/generate-skills.md +36 -0
  369. package/dist/forge-payload/init/generation/generate-template.md +60 -0
  370. package/dist/forge-payload/init/generation/generate-templates.md +39 -0
  371. package/dist/forge-payload/init/generation/generate-tools.md +133 -0
  372. package/dist/forge-payload/init/generation/generate-workflows.md +78 -0
  373. package/dist/forge-payload/init/phases/phase-1-collect.md +10 -2
  374. package/dist/forge-payload/init/phases/phase-3-materialize.md +1 -1
  375. package/dist/forge-payload/init/phases/phase-4-register.md +8 -0
  376. package/dist/forge-payload/init/workflow-gen-plan.json +17 -0
  377. package/dist/forge-payload/integrity.json +16 -16
  378. package/dist/forge-payload/meta/workflows/meta-collate.md +5 -6
  379. package/dist/forge-payload/meta/workflows/meta-migrate.md +1 -1
  380. package/dist/forge-payload/schemas/enum-catalog.json +2 -2
  381. package/dist/forge-payload/schemas/structure-manifest.json +3 -12
  382. package/dist/forge-payload/tools/forge-preflight.cjs +268 -0
  383. package/dist/forge-payload/tools/lib/paths.cjs +12 -11
  384. package/dist/forge-payload/tools/lib/pricing.cjs +31 -11
  385. package/dist/forge-payload/tools/query-logger.cjs +34 -0
  386. package/dist/forge-payload/tools/substitute-placeholders.cjs +5 -6
  387. package/node_modules/@mariozechner/clipboard/package.json +1 -2
  388. package/package.json +2 -2
  389. package/node_modules/@mariozechner/clipboard-linux-x64-musl/README.md +0 -3
  390. package/node_modules/@mariozechner/clipboard-linux-x64-musl/package.json +0 -25
@@ -31,7 +31,7 @@
31
31
  import { matchesKey, Key, truncateToWidth, visibleWidth } from "@earendil-works/pi-tui";
32
32
  import { getSessionRegistry } from "../session-registry.js";
33
33
  import { buildViewModel } from "./view-model.js";
34
- import { fmtTokenMeter, toDisplayLines } from "../viewport/renderer.js";
34
+ import { fmtTokenFooter, toDisplayLines } from "../viewport/renderer.js";
35
35
  import { paintTailLine } from "../viewport/theme.js";
36
36
  import { cursor, nodeGlyph, statusLabel, dim, accentBold, warn, bold, border, collapseIndicator, promptExpandIcon, truncateLines, } from "./theme.js";
37
37
  // ── Word-wrap helper ───────────────────────────────────────────────────────────
@@ -662,17 +662,16 @@ export class DashboardComponent {
662
662
  const aggUsage = this.controller.getAggregateUsage();
663
663
  const aggCompression = this.controller.getAggregateCompression();
664
664
  const activeModel = this.controller.getActiveModel();
665
- const meter = fmtTokenMeter(aggUsage);
666
- const compSuffix = aggCompression.tokensSaved > 0 ? ` ⇌${aggCompression.tokensSaved}t` : "";
665
+ const meter = fmtTokenFooter(aggUsage, aggCompression.tokensSaved > 0 ? aggCompression : undefined);
667
666
  const modelLabel = activeModel?.provider && activeModel?.model
668
667
  ? `${activeModel.provider} ${activeModel.model}`
669
668
  : (activeModel?.provider ?? activeModel?.model ?? "");
670
669
  let footerLine = "";
671
670
  if (modelLabel && meter) {
672
- footerLine = `${hintsBase} ${dim(modelLabel, this.theme)} Σ ${meter}${compSuffix}`;
671
+ footerLine = `${hintsBase} ${dim(modelLabel, this.theme)} Σ ${meter}`;
673
672
  }
674
673
  else if (meter) {
675
- footerLine = `${hintsBase} Σ ${meter}${compSuffix}`;
674
+ footerLine = `${hintsBase} Σ ${meter}`;
676
675
  }
677
676
  else if (modelLabel) {
678
677
  footerLine = `${hintsBase} ${dim(modelLabel, this.theme)}`;
@@ -800,7 +799,11 @@ export class DashboardComponent {
800
799
  // errors, newlines and all); ALL display normalization happens here:
801
800
  // toDisplayLines splits/sanitizes, wrapLine fits the pane width, and
802
801
  // long entries clamp to LOG_CLAMP_ROWS unless expanded (ctrl+o).
803
- if (node.kind === "leaf" && node.tailBuffer.length > 0) {
802
+ // Rendered for ALL node kinds: leaf nodes carry subagent tool-call
803
+ // activity (via the viewport observer); orchestrator-kind root nodes
804
+ // carry the orchestrator's own decision log (gates, verdicts,
805
+ // escalations, halts) mirrored from its notify stream.
806
+ if (node.tailBuffer.length > 0) {
804
807
  const expanded = this.controller.getState().logExpanded;
805
808
  const total = node.tailBuffer.length;
806
809
  const modeHint = expanded ? "^o clamp" : "^o expand";
@@ -908,7 +911,7 @@ export class DashboardComponent {
908
911
  formatMetrics(node) {
909
912
  const parts = [];
910
913
  if (node.usage.input || node.usage.output || node.usage.cacheRead) {
911
- parts.push(fmtTokenMeter(node.usage));
914
+ parts.push(fmtTokenFooter(node.usage));
912
915
  }
913
916
  if (node.metrics.toolCount) {
914
917
  parts.push(`${node.metrics.toolCount} tool${node.metrics.toolCount === 1 ? "" : "s"}`);
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensions/forgecli/dashboard/component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensions/forgecli/dashboard/component.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
2
+ import { extractPersonaNames } from "./lib/frontmatter-parser.js";
3
+ export { extractPersonaNames };
4
+ import { checkMaterialization, type MaterializationCheck } from "./lib/manifest-checker.js";
5
+ export { checkMaterialization, type MaterializationCheck };
6
+ export type EnhancePhase = 1 | 2 | 3;
7
+ export interface ParsedArgs {
8
+ phase: EnhancePhase;
9
+ extra: string;
10
+ rawPhaseFlag: string;
11
+ }
12
+ export declare function parseEnhanceArgs(rawArgs: string): ParsedArgs;
13
+ export interface ComposeKickoffOpts {
14
+ workflowMd: string;
15
+ personaIdentity: string;
16
+ parsed: ParsedArgs;
17
+ cwd: string;
18
+ timestamp: string;
19
+ }
20
+ export declare function composeKickoff(opts: ComposeKickoffOpts): string;
21
+ export declare function defaultNow(): Date;
22
+ export declare function formatTimestamp(d: Date): string;
23
+ export interface RegisterEnhanceOptions {
24
+ cwd?: string;
25
+ now?: () => Date;
26
+ }
27
+ export declare function registerEnhance(pi: ExtensionAPI, options?: RegisterEnhanceOptions): void;
@@ -0,0 +1,199 @@
1
+ // forge:enhance — Phase-2 native kickoff handler (FORGE-S20-T04).
2
+ //
3
+ // Replaces the post-S17 sentinel-writing stub registered in forge-commands.ts.
4
+ // The handler is a thin kickoff shim per Pack-04 + Pack-06:
5
+ // 1. Reads `.forge/workflows/enhance.md` (the materialized workflow).
6
+ // 2. Verifies four Pack-06 materialization markers — refuses to dispatch on
7
+ // regression and emits a per-marker `ctx.ui.notify` so a user sees the
8
+ // cause.
9
+ // 3. Loads the persona declared in the workflow's `deps.personas:`
10
+ // frontmatter via the FORGE-S20-T02 loader (no ad-hoc fs.readFile of
11
+ // `.forge/personas/`).
12
+ // 4. Composes ONE kickoff message: persona identity, phase-specific
13
+ // dispatch instruction, the workflow body verbatim, and any free-form
14
+ // argv tail.
15
+ // 5. Hands control to the LLM via `sendKickoff(pi, text)` —
16
+ // `deliverAs: "steer"`. Never raw `pi.sendUserMessage`.
17
+ //
18
+ // Phase 2 (default) directs the LLM to read friction events ONLY through
19
+ // `forge_store_query` (Pack-06 Read/Write/Ask/Store discipline) and to write
20
+ // proposals to `engineering/enhancement-proposals/phase2-<timestamp>.md`. If
21
+ // zero friction events exist, the LLM emits a notice and writes no file.
22
+ //
23
+ // Phases 1 and 3 are forwarded with the workflow's own dispatch text.
24
+ //
25
+ // Iron Laws:
26
+ // IL1 — code only under forge-cli/src/extensions/forgecli/.
27
+ // IL4 — no JSON.stringify-into-subagent dispatch.
28
+ // IL6 — no shell-string interpolation; no spawn calls here.
29
+ // IL7 — every failure path emits ctx.ui.notify and returns; no silent
30
+ // continuation.
31
+ import * as path from "node:path";
32
+ import { assertAudience } from "./audience-gate.js";
33
+ import { sendKickoff } from "./kickoff.js";
34
+ // FORGE-S25-T16: extracted to lib modules (H-1, H-2). Re-exported here for
35
+ // backward compatibility with existing test and consumer imports.
36
+ import { extractPersonaNames } from "./lib/frontmatter-parser.js";
37
+ import { loadPersona, PersonaSkillLoaderError } from "./parsers/persona-skill-loader.js";
38
+ import { loadWorkflow, WorkflowLoaderError } from "./parsers/workflow-loader.js";
39
+ export { extractPersonaNames };
40
+ import { checkMaterialization } from "./lib/manifest-checker.js";
41
+ export { checkMaterialization };
42
+ const VALID_PHASES = new Set([1, 2, 3]);
43
+ export function parseEnhanceArgs(rawArgs) {
44
+ const trimmed = (rawArgs ?? "").trim();
45
+ if (trimmed === "") {
46
+ return { phase: 2, extra: "", rawPhaseFlag: "" };
47
+ }
48
+ const tokens = trimmed.split(/\s+/);
49
+ let phase = 2;
50
+ let rawPhaseFlag = "";
51
+ const tail = [];
52
+ for (let i = 0; i < tokens.length; i++) {
53
+ const tok = tokens[i];
54
+ if (tok === "--auto") {
55
+ phase = 1;
56
+ rawPhaseFlag = "--auto";
57
+ continue;
58
+ }
59
+ if (tok === "--phase") {
60
+ const next = tokens[i + 1];
61
+ if (next === undefined) {
62
+ throw new Error("invalid --phase value: missing argument");
63
+ }
64
+ const n = Number(next);
65
+ if (!Number.isInteger(n) || !VALID_PHASES.has(n)) {
66
+ throw new Error(`invalid --phase value: ${JSON.stringify(next)} (expected 1, 2, or 3)`);
67
+ }
68
+ phase = n;
69
+ rawPhaseFlag = `--phase ${next}`;
70
+ i += 1;
71
+ continue;
72
+ }
73
+ const eqMatch = /^--phase=(.+)$/.exec(tok);
74
+ if (eqMatch) {
75
+ const n = Number(eqMatch[1]);
76
+ if (!Number.isInteger(n) || !VALID_PHASES.has(n)) {
77
+ throw new Error(`invalid --phase value: ${JSON.stringify(eqMatch[1])} (expected 1, 2, or 3)`);
78
+ }
79
+ phase = n;
80
+ rawPhaseFlag = tok;
81
+ continue;
82
+ }
83
+ tail.push(tok);
84
+ }
85
+ return { phase, extra: tail.join(" "), rawPhaseFlag };
86
+ }
87
+ export function composeKickoff(opts) {
88
+ const { workflowMd, personaIdentity, parsed, timestamp } = opts;
89
+ const sections = [`# /forge:enhance --phase ${parsed.phase}`, ""];
90
+ if (personaIdentity.trim().length > 0) {
91
+ sections.push(personaIdentity.trim(), "");
92
+ }
93
+ if (parsed.phase === 2) {
94
+ const proposalRel = path.posix.join("engineering", "enhancement-proposals", `phase2-${timestamp}.md`);
95
+ sections.push("## Dispatch — Phase 2 (post-sprint propose-diffs)", "", "Run the workflow below. Specifically:", "", "1. Discover friction events. **Preferred**: `forge_store_query` with `{command:'nlp', args:['events where type=friction']}`. **If that returns zero or a suspiciously low count** (the underlying NLP engine uses keyword heuristics that can miss events), **fall back to the workflow body's filesystem walk** (`meta-enhance.md` Step 1's JS one-liner: read `.forge/store/events/**/*.json`, filter `e => e && e.type === 'friction'`). The fs-walk filter is the source of truth on `type`; the MCP query is a convenience layer over it. Use whichever surfaces the events.", `2. If at least one friction event is present (from either path), synthesize concrete enrichment proposals per the workflow's Phase 2 algorithm, then write them via the \`write\` tool to \`${proposalRel}\` (one section per proposed change, with a fenced diff block showing before/after).`, "3. If genuinely zero friction events are present (both the MCP query AND the fs-walk return empty), emit an explicit notice — `〇 no friction events present — Phase 2 produces no proposals` — and write NO proposal file. Empty artifacts are not acceptable.", "4. Honour the Pack-06 Read/Write/Ask/Store discipline: store writes go via the `forge_store` MCP tool with `{command:'write', args:['<entity>','<json>']}` (2-positional, id INSIDE json); never raw-write `.forge/store/`. Do NOT bash-shell `forge store ...`.", "5. **VERIFY after apply — MANDATORY (forge-cli#31)**: After applying enhancement edits via Edit/Write, BEFORE calling add-snapshot, you MUST call `forge_verify_apply` with the list of claimed file paths. The tool runs `generation-manifest check` on each and returns four buckets: `modified` (verified ✓), `unchanged` (your Edit silently no-op'd — usually an `old_string` whitespace/punctuation mismatch), `untracked` (no manifest entry — treat as potentially modified), `missing` (file gone). **If `unchanged.length > 0`**, you MUST re-apply those edits via Edit/Write and call `forge_verify_apply` again — repeat until `unchanged` is empty. **Do NOT proceed to add-snapshot until every claimed file is in `modified` or `untracked`.** This guard exists because agents historically claim 'Files Modified' in their UI reports while the actual disk content is unchanged; without it the next `/forge:regenerate` overwrites stale state and replay restores nothing.", '6. **Snapshot after verify (forge#107 / forge-cli#30)**: Once `forge_verify_apply` reports no `unchanged` files, MUST call `manage-versions add-snapshot` via bash to capture the verified edits into `.forge/archive/snap-N/`. Without this, the next `/forge:regenerate` cannot restore via replay. Format:\n ```sh\n node "$FORGE_ROOT/tools/manage-versions.cjs" add-snapshot --source post-sprint:<SPRINT_ID> --enhanced-elements "<comma-separated paths, e.g. .forge/personas/architect.md,.forge/skills/engineer-skills.md>"\n ```\n `$FORGE_ROOT` is exported into the bash environment — see the orientation block above for its resolved value. After add-snapshot, verify success by checking `.forge/structure-versions.json`\'s `currentSnapshot` advanced and `ls .forge/archive/snap-N/` is non-empty.');
96
+ }
97
+ else if (parsed.phase === 1) {
98
+ sections.push("## Dispatch — Phase 1 (post-init auto-apply placeholder fills)", "", "Run the workflow's Phase 1 algorithm verbatim. Apply only high-confidence placeholder fills; list low-confidence keys without substituting.");
99
+ }
100
+ else {
101
+ sections.push("## Dispatch — Phase 3 (drift detection)", "", "Run the workflow's Phase 3 algorithm verbatim. Compare codebase state against structural-element knowledge and write the drift report to `.forge/enhancement-proposals/phase3-<timestamp>.md`.");
102
+ }
103
+ sections.push("", "---", "", "## Workflow", "", workflowMd.trim(), "", "---");
104
+ if (parsed.extra.trim().length > 0) {
105
+ sections.push("", "## Additional context", "", parsed.extra.trim());
106
+ }
107
+ return sections.join("\n");
108
+ }
109
+ // Timestamp helper ---------------------------------------------------------
110
+ export function defaultNow() {
111
+ return new Date();
112
+ }
113
+ export function formatTimestamp(d) {
114
+ const pad = (n, w = 2) => String(n).padStart(w, "0");
115
+ return (`${d.getUTCFullYear()}${pad(d.getUTCMonth() + 1)}${pad(d.getUTCDate())}` +
116
+ "T" +
117
+ `${pad(d.getUTCHours())}${pad(d.getUTCMinutes())}${pad(d.getUTCSeconds())}Z`);
118
+ }
119
+ // Registration -------------------------------------------------------------
120
+ const WORKFLOW_REL_PATH = path.join(".forge", "workflows", "enhance.md");
121
+ export function registerEnhance(pi, options = {}) {
122
+ pi.registerCommand("forge:enhance", {
123
+ description: "Progressive project-specific enrichment of structural elements. " +
124
+ "Usage: /forge:enhance [--phase 1|2|3 | --auto] [free-form context]. " +
125
+ "Default phase: 2 (post-sprint propose-diffs).",
126
+ async handler(args, ctx) {
127
+ const cwd = options.cwd ?? process.cwd();
128
+ const workflowPath = path.join(cwd, WORKFLOW_REL_PATH);
129
+ let workflowMd;
130
+ let workflowAudience;
131
+ try {
132
+ const loaded = loadWorkflow(workflowPath);
133
+ workflowMd = loaded.rawMarkdown;
134
+ workflowAudience = loaded.audience;
135
+ }
136
+ catch (err) {
137
+ if (err instanceof WorkflowLoaderError) {
138
+ if (err.code === "missing_file") {
139
+ ctx.ui.notify(`× forge:enhance — workflow not found at ${WORKFLOW_REL_PATH}; run /forge:init or /forge:rebuild first.`, "error");
140
+ }
141
+ else {
142
+ ctx.ui.notify(`× forge:enhance — workflow load failed (${err.code}): ${err.message}`, "error");
143
+ }
144
+ return;
145
+ }
146
+ const e = err;
147
+ ctx.ui.notify(`× forge:enhance — failed to read workflow: ${e.message ?? "unknown"}`, "error");
148
+ return;
149
+ }
150
+ let parsed;
151
+ try {
152
+ parsed = parseEnhanceArgs(args);
153
+ }
154
+ catch (err) {
155
+ const e = err;
156
+ ctx.ui.notify(`× forge:enhance — ${e.message ?? "argv parse failed"}`, "error");
157
+ return;
158
+ }
159
+ const check = checkMaterialization(workflowPath, workflowMd);
160
+ if (!check.ok) {
161
+ for (const marker of check.missing) {
162
+ ctx.ui.notify(`× workflow regression: ${marker} not found in ${workflowPath}`, "error");
163
+ }
164
+ return;
165
+ }
166
+ const personas = extractPersonaNames(workflowMd);
167
+ let personaIdentity = "";
168
+ if (personas.length > 0) {
169
+ try {
170
+ const persona = loadPersona(personas[0], { cwd });
171
+ personaIdentity = persona.identity;
172
+ }
173
+ catch (err) {
174
+ if (err instanceof PersonaSkillLoaderError) {
175
+ ctx.ui.notify(`× forge:enhance — persona '${personas[0]}' load failed (${err.code}): ${err.message}`, "error");
176
+ return;
177
+ }
178
+ const e = err;
179
+ ctx.ui.notify(`× forge:enhance — persona load error: ${e.message ?? "unknown"}`, "error");
180
+ return;
181
+ }
182
+ }
183
+ if (!assertAudience({ workflowName: "enhance", audience: workflowAudience }, ctx)) {
184
+ return;
185
+ }
186
+ const now = options.now ?? defaultNow;
187
+ const timestamp = formatTimestamp(now());
188
+ const kickoff = composeKickoff({
189
+ workflowMd,
190
+ personaIdentity,
191
+ parsed,
192
+ cwd,
193
+ timestamp,
194
+ });
195
+ sendKickoff(pi, kickoff);
196
+ },
197
+ });
198
+ }
199
+ //# sourceMappingURL=enhance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enhance.js","sourceRoot":"","sources":["../../../src/extensions/forgecli/enhance.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,85 @@
1
+ import type { ExtensionAPI, ExtensionCommandContext } from "@earendil-works/pi-coding-agent";
2
+ import { type ForgeToolDefs } from "./forge-tools.js";
3
+ import { type PhaseDescriptor } from "./run-task.js";
4
+ import { getSessionRegistry } from "./session-registry.js";
5
+ export declare const BUG_PHASES: PhaseDescriptor[];
6
+ export { BUG_SUMMARY_KEY_BY_ROLE } from "./subagent/phase-summary-map.js";
7
+ export declare const BUG_TYPE_TOKENS: Record<string, {
8
+ pass: string;
9
+ fail: string;
10
+ }>;
11
+ export interface RunBugState {
12
+ bugId: string;
13
+ phaseIndex: number;
14
+ iterationCounts: Record<string, number>;
15
+ halted: boolean;
16
+ /** Set on cancellation so the resume prompt says "cancelled" vs "halted". */
17
+ status?: "cancelled" | "halted" | "running";
18
+ lastError?: string;
19
+ savedAt: string;
20
+ }
21
+ export declare function readBugState(cwd: string, bugId: string, sessionId?: string): RunBugState | null;
22
+ export declare function writeBugState(cwd: string, state: RunBugState): void;
23
+ export declare function deleteBugState(cwd: string, bugId: string): void;
24
+ export declare function isBugStateStale(state: RunBugState): boolean;
25
+ export interface BugRecord {
26
+ bugId?: string;
27
+ status?: string;
28
+ summaries?: Record<string, unknown>;
29
+ [key: string]: unknown;
30
+ }
31
+ export declare function readBugRecord(bugId: string, storeCli: string, cwd: string): BugRecord | null;
32
+ export declare function assignNextBugId(storeCli: string, cwd: string): string;
33
+ export declare function preCreateBug(bugId: string, title: string, storeCli: string, cwd: string): boolean;
34
+ type BugVerdict = "approved" | "revision" | "n/a" | "missing";
35
+ export declare function readBugVerdict(bugRecord: BugRecord | null, phaseRole: string, summaryKeyByRole: Record<string, string | null>): BugVerdict;
36
+ export declare function composeBugBody(subWorkflowMd: string, bugId: string, phaseRole: string, bugStatusBeforePhase?: string, summariesBlock?: string): string;
37
+ /**
38
+ * Scan tool_execution_end events to extract the bugId written by a triage
39
+ * subagent. Returns the LAST matching tool call's bugId, or null if none found.
40
+ *
41
+ * In pi runtime, the forge_store tool is registered as "forge_store" (not
42
+ * "store-cli"). In Claude Code runtime, subagents may shell out via Bash.
43
+ * This function covers all three paths.
44
+ */
45
+ export declare function extractBugIdFromEvents(events: Array<{
46
+ toolName?: string;
47
+ result?: unknown;
48
+ }>): string | null;
49
+ export type RunBugPipelineStatus = "completed" | "halted" | "escalated" | "failed" | "cancelled";
50
+ export interface RunBugPipelineResult {
51
+ status: RunBugPipelineStatus;
52
+ lastPhaseIndex: number;
53
+ iterationCounts: Record<string, number>;
54
+ lastError?: string;
55
+ model?: string;
56
+ provider?: string;
57
+ }
58
+ export interface RunBugPipelineOptions {
59
+ bugId: string;
60
+ /** Original free-form text argument when creating a new bug (not a FORGE-BUG-NNN ID).
61
+ * Passed to triage-phase subagent so it can create the bug with a meaningful description. */
62
+ originalArg?: string;
63
+ /** Whether this is a new bug (free-form text) vs. an existing FORGE-BUG-NNN ID. */
64
+ isNewBug?: boolean;
65
+ cwd: string;
66
+ ctx: ExtensionCommandContext;
67
+ forgeRoot: string;
68
+ storeCli: string;
69
+ preflightGate: string;
70
+ registry: ReturnType<typeof getSessionRegistry>;
71
+ resumeFromState?: RunBugState;
72
+ /**
73
+ * Optional AbortSignal from SessionRegistry. When provided, the pipeline
74
+ * checks signal.aborted between phases and passes the signal to
75
+ * runForgeSubagent so in-flight subagents can be aborted.
76
+ */
77
+ signal?: AbortSignal;
78
+ forgeToolDefs?: ForgeToolDefs;
79
+ }
80
+ export declare function runBugPipeline(opts: RunBugPipelineOptions): Promise<RunBugPipelineResult>;
81
+ export interface RegisterFixBugOptions {
82
+ cwd?: string;
83
+ forgeToolDefs?: ForgeToolDefs;
84
+ }
85
+ export declare function registerFixBug(pi: ExtensionAPI, options?: RegisterFixBugOptions): void;