supipowers 1.1.0 → 1.2.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 (718) hide show
  1. package/README.md +83 -237
  2. package/bin/ctx-mode-wrapper.mjs +3 -3
  3. package/bin/install.ts +6 -1
  4. package/package.json +12 -23
  5. package/skills/planning/SKILL.md +2 -4
  6. package/skills/release/SKILL.md +5 -2
  7. package/src/bootstrap.ts +16 -33
  8. package/src/commands/commit.ts +44 -0
  9. package/src/commands/config.ts +0 -27
  10. package/src/commands/context.ts +117 -0
  11. package/src/commands/doctor.ts +1 -2
  12. package/src/commands/fix-pr.ts +16 -42
  13. package/src/commands/mcp.ts +121 -3
  14. package/src/commands/plan.ts +5 -1
  15. package/src/commands/release.ts +385 -48
  16. package/src/commands/review.ts +1 -1
  17. package/src/commands/status.ts +9 -26
  18. package/src/commands/supi.ts +2 -5
  19. package/src/config/defaults.ts +0 -19
  20. package/src/config/model-config.ts +0 -19
  21. package/src/context/analyzer.ts +316 -0
  22. package/src/deps/registry.ts +2 -4
  23. package/src/fix-pr/bot-detector.ts +41 -0
  24. package/src/fix-pr/scripts/fetch-pr-comments.sh +2 -2
  25. package/src/fix-pr/types.ts +1 -0
  26. package/src/git/commit-msg-hook.ts +21 -0
  27. package/src/git/commit-msg.ts +53 -0
  28. package/src/git/commit.ts +677 -0
  29. package/src/git/conventions.ts +215 -0
  30. package/src/git/status.ts +27 -0
  31. package/src/global.d.ts +5 -0
  32. package/src/index.ts +1 -7
  33. package/src/mcp/config.ts +80 -1
  34. package/src/mcp/docs.ts +1 -1
  35. package/src/mcp/types.ts +14 -0
  36. package/src/planning/approval-flow.ts +174 -0
  37. package/src/planning/plan-writer-prompt.ts +6 -5
  38. package/src/planning/prompt-builder.ts +4 -3
  39. package/src/platform/detect.ts +4 -6
  40. package/src/platform/omp.ts +16 -15
  41. package/src/platform/test-utils.ts +18 -17
  42. package/src/platform/types.ts +7 -6
  43. package/src/release/changelog.ts +30 -20
  44. package/src/release/commit-types.ts +35 -0
  45. package/src/release/executor.ts +65 -26
  46. package/src/release/prompt.ts +1 -1
  47. package/src/release/version.ts +27 -0
  48. package/src/storage/plans.ts +2 -12
  49. package/src/types.ts +7 -55
  50. package/bin/.omp/SYSTEM.md +0 -77
  51. package/bin/.omp/supipowers/sessions/events.db +0 -0
  52. package/bin/.omp/supipowers/sessions/events.db-shm +0 -0
  53. package/bin/.omp/supipowers/sessions/events.db-wal +0 -0
  54. package/src/commands/run.ts +0 -511
  55. package/src/orchestrator/agent-grid.ts +0 -439
  56. package/src/orchestrator/agent-prompts.ts +0 -290
  57. package/src/orchestrator/batch-scheduler.ts +0 -59
  58. package/src/orchestrator/conflict-resolver.ts +0 -39
  59. package/src/orchestrator/dispatcher.ts +0 -666
  60. package/src/orchestrator/progress-renderer.ts +0 -281
  61. package/src/orchestrator/prompts.ts +0 -149
  62. package/src/orchestrator/result-collector.ts +0 -72
  63. package/src/orchestrator/run-progress.ts +0 -95
  64. package/src/platform/pi.ts +0 -61
  65. package/src/storage/runs.ts +0 -126
  66. package/src/types/bun-sqlite.d.ts +0 -24
  67. package/src/visual/scripts/node_modules/.package-lock.json +0 -869
  68. package/src/visual/scripts/node_modules/accepts/HISTORY.md +0 -243
  69. package/src/visual/scripts/node_modules/accepts/LICENSE +0 -23
  70. package/src/visual/scripts/node_modules/accepts/README.md +0 -140
  71. package/src/visual/scripts/node_modules/accepts/index.js +0 -238
  72. package/src/visual/scripts/node_modules/accepts/package.json +0 -47
  73. package/src/visual/scripts/node_modules/array-flatten/LICENSE +0 -21
  74. package/src/visual/scripts/node_modules/array-flatten/README.md +0 -43
  75. package/src/visual/scripts/node_modules/array-flatten/array-flatten.js +0 -64
  76. package/src/visual/scripts/node_modules/array-flatten/package.json +0 -39
  77. package/src/visual/scripts/node_modules/body-parser/HISTORY.md +0 -680
  78. package/src/visual/scripts/node_modules/body-parser/LICENSE +0 -23
  79. package/src/visual/scripts/node_modules/body-parser/README.md +0 -476
  80. package/src/visual/scripts/node_modules/body-parser/index.js +0 -156
  81. package/src/visual/scripts/node_modules/body-parser/lib/read.js +0 -205
  82. package/src/visual/scripts/node_modules/body-parser/lib/types/json.js +0 -247
  83. package/src/visual/scripts/node_modules/body-parser/lib/types/raw.js +0 -101
  84. package/src/visual/scripts/node_modules/body-parser/lib/types/text.js +0 -121
  85. package/src/visual/scripts/node_modules/body-parser/lib/types/urlencoded.js +0 -300
  86. package/src/visual/scripts/node_modules/body-parser/package.json +0 -55
  87. package/src/visual/scripts/node_modules/bytes/History.md +0 -97
  88. package/src/visual/scripts/node_modules/bytes/LICENSE +0 -23
  89. package/src/visual/scripts/node_modules/bytes/Readme.md +0 -152
  90. package/src/visual/scripts/node_modules/bytes/index.js +0 -170
  91. package/src/visual/scripts/node_modules/bytes/package.json +0 -42
  92. package/src/visual/scripts/node_modules/call-bind-apply-helpers/.eslintrc +0 -17
  93. package/src/visual/scripts/node_modules/call-bind-apply-helpers/.github/FUNDING.yml +0 -12
  94. package/src/visual/scripts/node_modules/call-bind-apply-helpers/.nycrc +0 -9
  95. package/src/visual/scripts/node_modules/call-bind-apply-helpers/CHANGELOG.md +0 -30
  96. package/src/visual/scripts/node_modules/call-bind-apply-helpers/LICENSE +0 -21
  97. package/src/visual/scripts/node_modules/call-bind-apply-helpers/README.md +0 -62
  98. package/src/visual/scripts/node_modules/call-bind-apply-helpers/actualApply.d.ts +0 -1
  99. package/src/visual/scripts/node_modules/call-bind-apply-helpers/actualApply.js +0 -10
  100. package/src/visual/scripts/node_modules/call-bind-apply-helpers/applyBind.d.ts +0 -19
  101. package/src/visual/scripts/node_modules/call-bind-apply-helpers/applyBind.js +0 -10
  102. package/src/visual/scripts/node_modules/call-bind-apply-helpers/functionApply.d.ts +0 -1
  103. package/src/visual/scripts/node_modules/call-bind-apply-helpers/functionApply.js +0 -4
  104. package/src/visual/scripts/node_modules/call-bind-apply-helpers/functionCall.d.ts +0 -1
  105. package/src/visual/scripts/node_modules/call-bind-apply-helpers/functionCall.js +0 -4
  106. package/src/visual/scripts/node_modules/call-bind-apply-helpers/index.d.ts +0 -64
  107. package/src/visual/scripts/node_modules/call-bind-apply-helpers/index.js +0 -15
  108. package/src/visual/scripts/node_modules/call-bind-apply-helpers/package.json +0 -85
  109. package/src/visual/scripts/node_modules/call-bind-apply-helpers/reflectApply.d.ts +0 -3
  110. package/src/visual/scripts/node_modules/call-bind-apply-helpers/reflectApply.js +0 -4
  111. package/src/visual/scripts/node_modules/call-bind-apply-helpers/test/index.js +0 -63
  112. package/src/visual/scripts/node_modules/call-bind-apply-helpers/tsconfig.json +0 -9
  113. package/src/visual/scripts/node_modules/call-bound/.eslintrc +0 -13
  114. package/src/visual/scripts/node_modules/call-bound/.github/FUNDING.yml +0 -12
  115. package/src/visual/scripts/node_modules/call-bound/.nycrc +0 -9
  116. package/src/visual/scripts/node_modules/call-bound/CHANGELOG.md +0 -42
  117. package/src/visual/scripts/node_modules/call-bound/LICENSE +0 -21
  118. package/src/visual/scripts/node_modules/call-bound/README.md +0 -53
  119. package/src/visual/scripts/node_modules/call-bound/index.d.ts +0 -94
  120. package/src/visual/scripts/node_modules/call-bound/index.js +0 -19
  121. package/src/visual/scripts/node_modules/call-bound/package.json +0 -99
  122. package/src/visual/scripts/node_modules/call-bound/test/index.js +0 -61
  123. package/src/visual/scripts/node_modules/call-bound/tsconfig.json +0 -10
  124. package/src/visual/scripts/node_modules/chokidar/LICENSE +0 -21
  125. package/src/visual/scripts/node_modules/chokidar/README.md +0 -305
  126. package/src/visual/scripts/node_modules/chokidar/esm/handler.d.ts +0 -90
  127. package/src/visual/scripts/node_modules/chokidar/esm/handler.js +0 -629
  128. package/src/visual/scripts/node_modules/chokidar/esm/index.d.ts +0 -215
  129. package/src/visual/scripts/node_modules/chokidar/esm/index.js +0 -798
  130. package/src/visual/scripts/node_modules/chokidar/esm/package.json +0 -1
  131. package/src/visual/scripts/node_modules/chokidar/handler.d.ts +0 -90
  132. package/src/visual/scripts/node_modules/chokidar/handler.js +0 -635
  133. package/src/visual/scripts/node_modules/chokidar/index.d.ts +0 -215
  134. package/src/visual/scripts/node_modules/chokidar/index.js +0 -804
  135. package/src/visual/scripts/node_modules/chokidar/package.json +0 -69
  136. package/src/visual/scripts/node_modules/content-disposition/HISTORY.md +0 -60
  137. package/src/visual/scripts/node_modules/content-disposition/LICENSE +0 -22
  138. package/src/visual/scripts/node_modules/content-disposition/README.md +0 -142
  139. package/src/visual/scripts/node_modules/content-disposition/index.js +0 -458
  140. package/src/visual/scripts/node_modules/content-disposition/package.json +0 -44
  141. package/src/visual/scripts/node_modules/content-type/HISTORY.md +0 -29
  142. package/src/visual/scripts/node_modules/content-type/LICENSE +0 -22
  143. package/src/visual/scripts/node_modules/content-type/README.md +0 -94
  144. package/src/visual/scripts/node_modules/content-type/index.js +0 -225
  145. package/src/visual/scripts/node_modules/content-type/package.json +0 -42
  146. package/src/visual/scripts/node_modules/cookie/LICENSE +0 -24
  147. package/src/visual/scripts/node_modules/cookie/README.md +0 -317
  148. package/src/visual/scripts/node_modules/cookie/SECURITY.md +0 -25
  149. package/src/visual/scripts/node_modules/cookie/index.js +0 -335
  150. package/src/visual/scripts/node_modules/cookie/package.json +0 -44
  151. package/src/visual/scripts/node_modules/cookie-signature/History.md +0 -42
  152. package/src/visual/scripts/node_modules/cookie-signature/Readme.md +0 -42
  153. package/src/visual/scripts/node_modules/cookie-signature/index.js +0 -51
  154. package/src/visual/scripts/node_modules/cookie-signature/package.json +0 -18
  155. package/src/visual/scripts/node_modules/debug/.coveralls.yml +0 -1
  156. package/src/visual/scripts/node_modules/debug/.eslintrc +0 -11
  157. package/src/visual/scripts/node_modules/debug/.travis.yml +0 -14
  158. package/src/visual/scripts/node_modules/debug/CHANGELOG.md +0 -362
  159. package/src/visual/scripts/node_modules/debug/LICENSE +0 -19
  160. package/src/visual/scripts/node_modules/debug/Makefile +0 -50
  161. package/src/visual/scripts/node_modules/debug/README.md +0 -312
  162. package/src/visual/scripts/node_modules/debug/component.json +0 -19
  163. package/src/visual/scripts/node_modules/debug/karma.conf.js +0 -70
  164. package/src/visual/scripts/node_modules/debug/node.js +0 -1
  165. package/src/visual/scripts/node_modules/debug/package.json +0 -49
  166. package/src/visual/scripts/node_modules/debug/src/browser.js +0 -185
  167. package/src/visual/scripts/node_modules/debug/src/debug.js +0 -202
  168. package/src/visual/scripts/node_modules/debug/src/index.js +0 -10
  169. package/src/visual/scripts/node_modules/debug/src/inspector-log.js +0 -15
  170. package/src/visual/scripts/node_modules/debug/src/node.js +0 -248
  171. package/src/visual/scripts/node_modules/depd/History.md +0 -103
  172. package/src/visual/scripts/node_modules/depd/LICENSE +0 -22
  173. package/src/visual/scripts/node_modules/depd/Readme.md +0 -280
  174. package/src/visual/scripts/node_modules/depd/index.js +0 -538
  175. package/src/visual/scripts/node_modules/depd/lib/browser/index.js +0 -77
  176. package/src/visual/scripts/node_modules/depd/package.json +0 -45
  177. package/src/visual/scripts/node_modules/destroy/LICENSE +0 -23
  178. package/src/visual/scripts/node_modules/destroy/README.md +0 -63
  179. package/src/visual/scripts/node_modules/destroy/index.js +0 -209
  180. package/src/visual/scripts/node_modules/destroy/package.json +0 -48
  181. package/src/visual/scripts/node_modules/dunder-proto/.eslintrc +0 -5
  182. package/src/visual/scripts/node_modules/dunder-proto/.github/FUNDING.yml +0 -12
  183. package/src/visual/scripts/node_modules/dunder-proto/.nycrc +0 -13
  184. package/src/visual/scripts/node_modules/dunder-proto/CHANGELOG.md +0 -24
  185. package/src/visual/scripts/node_modules/dunder-proto/LICENSE +0 -21
  186. package/src/visual/scripts/node_modules/dunder-proto/README.md +0 -54
  187. package/src/visual/scripts/node_modules/dunder-proto/get.d.ts +0 -5
  188. package/src/visual/scripts/node_modules/dunder-proto/get.js +0 -30
  189. package/src/visual/scripts/node_modules/dunder-proto/package.json +0 -76
  190. package/src/visual/scripts/node_modules/dunder-proto/set.d.ts +0 -5
  191. package/src/visual/scripts/node_modules/dunder-proto/set.js +0 -35
  192. package/src/visual/scripts/node_modules/dunder-proto/test/get.js +0 -34
  193. package/src/visual/scripts/node_modules/dunder-proto/test/index.js +0 -4
  194. package/src/visual/scripts/node_modules/dunder-proto/test/set.js +0 -50
  195. package/src/visual/scripts/node_modules/dunder-proto/tsconfig.json +0 -9
  196. package/src/visual/scripts/node_modules/ee-first/LICENSE +0 -22
  197. package/src/visual/scripts/node_modules/ee-first/README.md +0 -80
  198. package/src/visual/scripts/node_modules/ee-first/index.js +0 -95
  199. package/src/visual/scripts/node_modules/ee-first/package.json +0 -29
  200. package/src/visual/scripts/node_modules/encodeurl/LICENSE +0 -22
  201. package/src/visual/scripts/node_modules/encodeurl/README.md +0 -109
  202. package/src/visual/scripts/node_modules/encodeurl/index.js +0 -60
  203. package/src/visual/scripts/node_modules/encodeurl/package.json +0 -40
  204. package/src/visual/scripts/node_modules/es-define-property/.eslintrc +0 -13
  205. package/src/visual/scripts/node_modules/es-define-property/.github/FUNDING.yml +0 -12
  206. package/src/visual/scripts/node_modules/es-define-property/.nycrc +0 -9
  207. package/src/visual/scripts/node_modules/es-define-property/CHANGELOG.md +0 -29
  208. package/src/visual/scripts/node_modules/es-define-property/LICENSE +0 -21
  209. package/src/visual/scripts/node_modules/es-define-property/README.md +0 -49
  210. package/src/visual/scripts/node_modules/es-define-property/index.d.ts +0 -3
  211. package/src/visual/scripts/node_modules/es-define-property/index.js +0 -14
  212. package/src/visual/scripts/node_modules/es-define-property/package.json +0 -81
  213. package/src/visual/scripts/node_modules/es-define-property/test/index.js +0 -56
  214. package/src/visual/scripts/node_modules/es-define-property/tsconfig.json +0 -10
  215. package/src/visual/scripts/node_modules/es-errors/.eslintrc +0 -5
  216. package/src/visual/scripts/node_modules/es-errors/.github/FUNDING.yml +0 -12
  217. package/src/visual/scripts/node_modules/es-errors/CHANGELOG.md +0 -40
  218. package/src/visual/scripts/node_modules/es-errors/LICENSE +0 -21
  219. package/src/visual/scripts/node_modules/es-errors/README.md +0 -55
  220. package/src/visual/scripts/node_modules/es-errors/eval.d.ts +0 -3
  221. package/src/visual/scripts/node_modules/es-errors/eval.js +0 -4
  222. package/src/visual/scripts/node_modules/es-errors/index.d.ts +0 -3
  223. package/src/visual/scripts/node_modules/es-errors/index.js +0 -4
  224. package/src/visual/scripts/node_modules/es-errors/package.json +0 -80
  225. package/src/visual/scripts/node_modules/es-errors/range.d.ts +0 -3
  226. package/src/visual/scripts/node_modules/es-errors/range.js +0 -4
  227. package/src/visual/scripts/node_modules/es-errors/ref.d.ts +0 -3
  228. package/src/visual/scripts/node_modules/es-errors/ref.js +0 -4
  229. package/src/visual/scripts/node_modules/es-errors/syntax.d.ts +0 -3
  230. package/src/visual/scripts/node_modules/es-errors/syntax.js +0 -4
  231. package/src/visual/scripts/node_modules/es-errors/test/index.js +0 -19
  232. package/src/visual/scripts/node_modules/es-errors/tsconfig.json +0 -49
  233. package/src/visual/scripts/node_modules/es-errors/type.d.ts +0 -3
  234. package/src/visual/scripts/node_modules/es-errors/type.js +0 -4
  235. package/src/visual/scripts/node_modules/es-errors/uri.d.ts +0 -3
  236. package/src/visual/scripts/node_modules/es-errors/uri.js +0 -4
  237. package/src/visual/scripts/node_modules/es-object-atoms/.eslintrc +0 -16
  238. package/src/visual/scripts/node_modules/es-object-atoms/.github/FUNDING.yml +0 -12
  239. package/src/visual/scripts/node_modules/es-object-atoms/CHANGELOG.md +0 -37
  240. package/src/visual/scripts/node_modules/es-object-atoms/LICENSE +0 -21
  241. package/src/visual/scripts/node_modules/es-object-atoms/README.md +0 -63
  242. package/src/visual/scripts/node_modules/es-object-atoms/RequireObjectCoercible.d.ts +0 -3
  243. package/src/visual/scripts/node_modules/es-object-atoms/RequireObjectCoercible.js +0 -11
  244. package/src/visual/scripts/node_modules/es-object-atoms/ToObject.d.ts +0 -7
  245. package/src/visual/scripts/node_modules/es-object-atoms/ToObject.js +0 -10
  246. package/src/visual/scripts/node_modules/es-object-atoms/index.d.ts +0 -3
  247. package/src/visual/scripts/node_modules/es-object-atoms/index.js +0 -4
  248. package/src/visual/scripts/node_modules/es-object-atoms/isObject.d.ts +0 -3
  249. package/src/visual/scripts/node_modules/es-object-atoms/isObject.js +0 -6
  250. package/src/visual/scripts/node_modules/es-object-atoms/package.json +0 -80
  251. package/src/visual/scripts/node_modules/es-object-atoms/test/index.js +0 -38
  252. package/src/visual/scripts/node_modules/es-object-atoms/tsconfig.json +0 -6
  253. package/src/visual/scripts/node_modules/escape-html/LICENSE +0 -24
  254. package/src/visual/scripts/node_modules/escape-html/Readme.md +0 -43
  255. package/src/visual/scripts/node_modules/escape-html/index.js +0 -78
  256. package/src/visual/scripts/node_modules/escape-html/package.json +0 -24
  257. package/src/visual/scripts/node_modules/etag/HISTORY.md +0 -83
  258. package/src/visual/scripts/node_modules/etag/LICENSE +0 -22
  259. package/src/visual/scripts/node_modules/etag/README.md +0 -159
  260. package/src/visual/scripts/node_modules/etag/index.js +0 -131
  261. package/src/visual/scripts/node_modules/etag/package.json +0 -47
  262. package/src/visual/scripts/node_modules/express/History.md +0 -3667
  263. package/src/visual/scripts/node_modules/express/LICENSE +0 -24
  264. package/src/visual/scripts/node_modules/express/Readme.md +0 -260
  265. package/src/visual/scripts/node_modules/express/index.js +0 -11
  266. package/src/visual/scripts/node_modules/express/lib/application.js +0 -661
  267. package/src/visual/scripts/node_modules/express/lib/express.js +0 -116
  268. package/src/visual/scripts/node_modules/express/lib/middleware/init.js +0 -43
  269. package/src/visual/scripts/node_modules/express/lib/middleware/query.js +0 -47
  270. package/src/visual/scripts/node_modules/express/lib/request.js +0 -525
  271. package/src/visual/scripts/node_modules/express/lib/response.js +0 -1179
  272. package/src/visual/scripts/node_modules/express/lib/router/index.js +0 -673
  273. package/src/visual/scripts/node_modules/express/lib/router/layer.js +0 -181
  274. package/src/visual/scripts/node_modules/express/lib/router/route.js +0 -230
  275. package/src/visual/scripts/node_modules/express/lib/utils.js +0 -303
  276. package/src/visual/scripts/node_modules/express/lib/view.js +0 -182
  277. package/src/visual/scripts/node_modules/express/package.json +0 -102
  278. package/src/visual/scripts/node_modules/finalhandler/HISTORY.md +0 -216
  279. package/src/visual/scripts/node_modules/finalhandler/LICENSE +0 -22
  280. package/src/visual/scripts/node_modules/finalhandler/README.md +0 -147
  281. package/src/visual/scripts/node_modules/finalhandler/SECURITY.md +0 -25
  282. package/src/visual/scripts/node_modules/finalhandler/index.js +0 -341
  283. package/src/visual/scripts/node_modules/finalhandler/package.json +0 -47
  284. package/src/visual/scripts/node_modules/forwarded/HISTORY.md +0 -21
  285. package/src/visual/scripts/node_modules/forwarded/LICENSE +0 -22
  286. package/src/visual/scripts/node_modules/forwarded/README.md +0 -57
  287. package/src/visual/scripts/node_modules/forwarded/index.js +0 -90
  288. package/src/visual/scripts/node_modules/forwarded/package.json +0 -45
  289. package/src/visual/scripts/node_modules/fresh/HISTORY.md +0 -70
  290. package/src/visual/scripts/node_modules/fresh/LICENSE +0 -23
  291. package/src/visual/scripts/node_modules/fresh/README.md +0 -119
  292. package/src/visual/scripts/node_modules/fresh/index.js +0 -137
  293. package/src/visual/scripts/node_modules/fresh/package.json +0 -46
  294. package/src/visual/scripts/node_modules/function-bind/.eslintrc +0 -21
  295. package/src/visual/scripts/node_modules/function-bind/.github/FUNDING.yml +0 -12
  296. package/src/visual/scripts/node_modules/function-bind/.github/SECURITY.md +0 -3
  297. package/src/visual/scripts/node_modules/function-bind/.nycrc +0 -13
  298. package/src/visual/scripts/node_modules/function-bind/CHANGELOG.md +0 -136
  299. package/src/visual/scripts/node_modules/function-bind/LICENSE +0 -20
  300. package/src/visual/scripts/node_modules/function-bind/README.md +0 -46
  301. package/src/visual/scripts/node_modules/function-bind/implementation.js +0 -84
  302. package/src/visual/scripts/node_modules/function-bind/index.js +0 -5
  303. package/src/visual/scripts/node_modules/function-bind/package.json +0 -87
  304. package/src/visual/scripts/node_modules/function-bind/test/.eslintrc +0 -9
  305. package/src/visual/scripts/node_modules/function-bind/test/index.js +0 -252
  306. package/src/visual/scripts/node_modules/get-intrinsic/.eslintrc +0 -42
  307. package/src/visual/scripts/node_modules/get-intrinsic/.github/FUNDING.yml +0 -12
  308. package/src/visual/scripts/node_modules/get-intrinsic/.nycrc +0 -9
  309. package/src/visual/scripts/node_modules/get-intrinsic/CHANGELOG.md +0 -186
  310. package/src/visual/scripts/node_modules/get-intrinsic/LICENSE +0 -21
  311. package/src/visual/scripts/node_modules/get-intrinsic/README.md +0 -71
  312. package/src/visual/scripts/node_modules/get-intrinsic/index.js +0 -378
  313. package/src/visual/scripts/node_modules/get-intrinsic/package.json +0 -97
  314. package/src/visual/scripts/node_modules/get-intrinsic/test/GetIntrinsic.js +0 -274
  315. package/src/visual/scripts/node_modules/get-proto/.eslintrc +0 -10
  316. package/src/visual/scripts/node_modules/get-proto/.github/FUNDING.yml +0 -12
  317. package/src/visual/scripts/node_modules/get-proto/.nycrc +0 -9
  318. package/src/visual/scripts/node_modules/get-proto/CHANGELOG.md +0 -21
  319. package/src/visual/scripts/node_modules/get-proto/LICENSE +0 -21
  320. package/src/visual/scripts/node_modules/get-proto/Object.getPrototypeOf.d.ts +0 -5
  321. package/src/visual/scripts/node_modules/get-proto/Object.getPrototypeOf.js +0 -6
  322. package/src/visual/scripts/node_modules/get-proto/README.md +0 -50
  323. package/src/visual/scripts/node_modules/get-proto/Reflect.getPrototypeOf.d.ts +0 -3
  324. package/src/visual/scripts/node_modules/get-proto/Reflect.getPrototypeOf.js +0 -4
  325. package/src/visual/scripts/node_modules/get-proto/index.d.ts +0 -5
  326. package/src/visual/scripts/node_modules/get-proto/index.js +0 -27
  327. package/src/visual/scripts/node_modules/get-proto/package.json +0 -81
  328. package/src/visual/scripts/node_modules/get-proto/test/index.js +0 -68
  329. package/src/visual/scripts/node_modules/get-proto/tsconfig.json +0 -9
  330. package/src/visual/scripts/node_modules/gopd/.eslintrc +0 -16
  331. package/src/visual/scripts/node_modules/gopd/.github/FUNDING.yml +0 -12
  332. package/src/visual/scripts/node_modules/gopd/CHANGELOG.md +0 -45
  333. package/src/visual/scripts/node_modules/gopd/LICENSE +0 -21
  334. package/src/visual/scripts/node_modules/gopd/README.md +0 -40
  335. package/src/visual/scripts/node_modules/gopd/gOPD.d.ts +0 -1
  336. package/src/visual/scripts/node_modules/gopd/gOPD.js +0 -4
  337. package/src/visual/scripts/node_modules/gopd/index.d.ts +0 -5
  338. package/src/visual/scripts/node_modules/gopd/index.js +0 -15
  339. package/src/visual/scripts/node_modules/gopd/package.json +0 -77
  340. package/src/visual/scripts/node_modules/gopd/test/index.js +0 -36
  341. package/src/visual/scripts/node_modules/gopd/tsconfig.json +0 -9
  342. package/src/visual/scripts/node_modules/has-symbols/.eslintrc +0 -11
  343. package/src/visual/scripts/node_modules/has-symbols/.github/FUNDING.yml +0 -12
  344. package/src/visual/scripts/node_modules/has-symbols/.nycrc +0 -9
  345. package/src/visual/scripts/node_modules/has-symbols/CHANGELOG.md +0 -91
  346. package/src/visual/scripts/node_modules/has-symbols/LICENSE +0 -21
  347. package/src/visual/scripts/node_modules/has-symbols/README.md +0 -46
  348. package/src/visual/scripts/node_modules/has-symbols/index.d.ts +0 -3
  349. package/src/visual/scripts/node_modules/has-symbols/index.js +0 -14
  350. package/src/visual/scripts/node_modules/has-symbols/package.json +0 -111
  351. package/src/visual/scripts/node_modules/has-symbols/shams.d.ts +0 -3
  352. package/src/visual/scripts/node_modules/has-symbols/shams.js +0 -45
  353. package/src/visual/scripts/node_modules/has-symbols/test/index.js +0 -22
  354. package/src/visual/scripts/node_modules/has-symbols/test/shams/core-js.js +0 -29
  355. package/src/visual/scripts/node_modules/has-symbols/test/shams/get-own-property-symbols.js +0 -29
  356. package/src/visual/scripts/node_modules/has-symbols/test/tests.js +0 -58
  357. package/src/visual/scripts/node_modules/has-symbols/tsconfig.json +0 -10
  358. package/src/visual/scripts/node_modules/hasown/.eslintrc +0 -5
  359. package/src/visual/scripts/node_modules/hasown/.github/FUNDING.yml +0 -12
  360. package/src/visual/scripts/node_modules/hasown/.nycrc +0 -13
  361. package/src/visual/scripts/node_modules/hasown/CHANGELOG.md +0 -40
  362. package/src/visual/scripts/node_modules/hasown/LICENSE +0 -21
  363. package/src/visual/scripts/node_modules/hasown/README.md +0 -40
  364. package/src/visual/scripts/node_modules/hasown/index.d.ts +0 -3
  365. package/src/visual/scripts/node_modules/hasown/index.js +0 -8
  366. package/src/visual/scripts/node_modules/hasown/package.json +0 -92
  367. package/src/visual/scripts/node_modules/hasown/tsconfig.json +0 -6
  368. package/src/visual/scripts/node_modules/http-errors/HISTORY.md +0 -186
  369. package/src/visual/scripts/node_modules/http-errors/LICENSE +0 -23
  370. package/src/visual/scripts/node_modules/http-errors/README.md +0 -169
  371. package/src/visual/scripts/node_modules/http-errors/index.js +0 -290
  372. package/src/visual/scripts/node_modules/http-errors/package.json +0 -54
  373. package/src/visual/scripts/node_modules/iconv-lite/Changelog.md +0 -162
  374. package/src/visual/scripts/node_modules/iconv-lite/LICENSE +0 -21
  375. package/src/visual/scripts/node_modules/iconv-lite/README.md +0 -156
  376. package/src/visual/scripts/node_modules/iconv-lite/encodings/dbcs-codec.js +0 -555
  377. package/src/visual/scripts/node_modules/iconv-lite/encodings/dbcs-data.js +0 -176
  378. package/src/visual/scripts/node_modules/iconv-lite/encodings/index.js +0 -22
  379. package/src/visual/scripts/node_modules/iconv-lite/encodings/internal.js +0 -188
  380. package/src/visual/scripts/node_modules/iconv-lite/encodings/sbcs-codec.js +0 -72
  381. package/src/visual/scripts/node_modules/iconv-lite/encodings/sbcs-data-generated.js +0 -451
  382. package/src/visual/scripts/node_modules/iconv-lite/encodings/sbcs-data.js +0 -174
  383. package/src/visual/scripts/node_modules/iconv-lite/encodings/tables/big5-added.json +0 -122
  384. package/src/visual/scripts/node_modules/iconv-lite/encodings/tables/cp936.json +0 -264
  385. package/src/visual/scripts/node_modules/iconv-lite/encodings/tables/cp949.json +0 -273
  386. package/src/visual/scripts/node_modules/iconv-lite/encodings/tables/cp950.json +0 -177
  387. package/src/visual/scripts/node_modules/iconv-lite/encodings/tables/eucjp.json +0 -182
  388. package/src/visual/scripts/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json +0 -1
  389. package/src/visual/scripts/node_modules/iconv-lite/encodings/tables/gbk-added.json +0 -55
  390. package/src/visual/scripts/node_modules/iconv-lite/encodings/tables/shiftjis.json +0 -125
  391. package/src/visual/scripts/node_modules/iconv-lite/encodings/utf16.js +0 -177
  392. package/src/visual/scripts/node_modules/iconv-lite/encodings/utf7.js +0 -290
  393. package/src/visual/scripts/node_modules/iconv-lite/lib/bom-handling.js +0 -52
  394. package/src/visual/scripts/node_modules/iconv-lite/lib/extend-node.js +0 -217
  395. package/src/visual/scripts/node_modules/iconv-lite/lib/index.d.ts +0 -24
  396. package/src/visual/scripts/node_modules/iconv-lite/lib/index.js +0 -153
  397. package/src/visual/scripts/node_modules/iconv-lite/lib/streams.js +0 -121
  398. package/src/visual/scripts/node_modules/iconv-lite/package.json +0 -46
  399. package/src/visual/scripts/node_modules/inherits/LICENSE +0 -16
  400. package/src/visual/scripts/node_modules/inherits/README.md +0 -42
  401. package/src/visual/scripts/node_modules/inherits/inherits.js +0 -9
  402. package/src/visual/scripts/node_modules/inherits/inherits_browser.js +0 -27
  403. package/src/visual/scripts/node_modules/inherits/package.json +0 -29
  404. package/src/visual/scripts/node_modules/ipaddr.js/LICENSE +0 -19
  405. package/src/visual/scripts/node_modules/ipaddr.js/README.md +0 -233
  406. package/src/visual/scripts/node_modules/ipaddr.js/ipaddr.min.js +0 -1
  407. package/src/visual/scripts/node_modules/ipaddr.js/lib/ipaddr.js +0 -673
  408. package/src/visual/scripts/node_modules/ipaddr.js/lib/ipaddr.js.d.ts +0 -68
  409. package/src/visual/scripts/node_modules/ipaddr.js/package.json +0 -35
  410. package/src/visual/scripts/node_modules/math-intrinsics/.eslintrc +0 -16
  411. package/src/visual/scripts/node_modules/math-intrinsics/.github/FUNDING.yml +0 -12
  412. package/src/visual/scripts/node_modules/math-intrinsics/CHANGELOG.md +0 -24
  413. package/src/visual/scripts/node_modules/math-intrinsics/LICENSE +0 -21
  414. package/src/visual/scripts/node_modules/math-intrinsics/README.md +0 -50
  415. package/src/visual/scripts/node_modules/math-intrinsics/abs.d.ts +0 -1
  416. package/src/visual/scripts/node_modules/math-intrinsics/abs.js +0 -4
  417. package/src/visual/scripts/node_modules/math-intrinsics/constants/maxArrayLength.d.ts +0 -3
  418. package/src/visual/scripts/node_modules/math-intrinsics/constants/maxArrayLength.js +0 -4
  419. package/src/visual/scripts/node_modules/math-intrinsics/constants/maxSafeInteger.d.ts +0 -3
  420. package/src/visual/scripts/node_modules/math-intrinsics/constants/maxSafeInteger.js +0 -5
  421. package/src/visual/scripts/node_modules/math-intrinsics/constants/maxValue.d.ts +0 -3
  422. package/src/visual/scripts/node_modules/math-intrinsics/constants/maxValue.js +0 -5
  423. package/src/visual/scripts/node_modules/math-intrinsics/floor.d.ts +0 -1
  424. package/src/visual/scripts/node_modules/math-intrinsics/floor.js +0 -4
  425. package/src/visual/scripts/node_modules/math-intrinsics/isFinite.d.ts +0 -3
  426. package/src/visual/scripts/node_modules/math-intrinsics/isFinite.js +0 -12
  427. package/src/visual/scripts/node_modules/math-intrinsics/isInteger.d.ts +0 -3
  428. package/src/visual/scripts/node_modules/math-intrinsics/isInteger.js +0 -16
  429. package/src/visual/scripts/node_modules/math-intrinsics/isNaN.d.ts +0 -1
  430. package/src/visual/scripts/node_modules/math-intrinsics/isNaN.js +0 -6
  431. package/src/visual/scripts/node_modules/math-intrinsics/isNegativeZero.d.ts +0 -3
  432. package/src/visual/scripts/node_modules/math-intrinsics/isNegativeZero.js +0 -6
  433. package/src/visual/scripts/node_modules/math-intrinsics/max.d.ts +0 -1
  434. package/src/visual/scripts/node_modules/math-intrinsics/max.js +0 -4
  435. package/src/visual/scripts/node_modules/math-intrinsics/min.d.ts +0 -1
  436. package/src/visual/scripts/node_modules/math-intrinsics/min.js +0 -4
  437. package/src/visual/scripts/node_modules/math-intrinsics/mod.d.ts +0 -3
  438. package/src/visual/scripts/node_modules/math-intrinsics/mod.js +0 -9
  439. package/src/visual/scripts/node_modules/math-intrinsics/package.json +0 -86
  440. package/src/visual/scripts/node_modules/math-intrinsics/pow.d.ts +0 -1
  441. package/src/visual/scripts/node_modules/math-intrinsics/pow.js +0 -4
  442. package/src/visual/scripts/node_modules/math-intrinsics/round.d.ts +0 -1
  443. package/src/visual/scripts/node_modules/math-intrinsics/round.js +0 -4
  444. package/src/visual/scripts/node_modules/math-intrinsics/sign.d.ts +0 -3
  445. package/src/visual/scripts/node_modules/math-intrinsics/sign.js +0 -11
  446. package/src/visual/scripts/node_modules/math-intrinsics/test/index.js +0 -192
  447. package/src/visual/scripts/node_modules/math-intrinsics/tsconfig.json +0 -3
  448. package/src/visual/scripts/node_modules/media-typer/HISTORY.md +0 -22
  449. package/src/visual/scripts/node_modules/media-typer/LICENSE +0 -22
  450. package/src/visual/scripts/node_modules/media-typer/README.md +0 -81
  451. package/src/visual/scripts/node_modules/media-typer/index.js +0 -270
  452. package/src/visual/scripts/node_modules/media-typer/package.json +0 -26
  453. package/src/visual/scripts/node_modules/merge-descriptors/HISTORY.md +0 -21
  454. package/src/visual/scripts/node_modules/merge-descriptors/LICENSE +0 -23
  455. package/src/visual/scripts/node_modules/merge-descriptors/README.md +0 -49
  456. package/src/visual/scripts/node_modules/merge-descriptors/index.js +0 -60
  457. package/src/visual/scripts/node_modules/merge-descriptors/package.json +0 -39
  458. package/src/visual/scripts/node_modules/methods/HISTORY.md +0 -29
  459. package/src/visual/scripts/node_modules/methods/LICENSE +0 -24
  460. package/src/visual/scripts/node_modules/methods/README.md +0 -51
  461. package/src/visual/scripts/node_modules/methods/index.js +0 -69
  462. package/src/visual/scripts/node_modules/methods/package.json +0 -36
  463. package/src/visual/scripts/node_modules/mime/CHANGELOG.md +0 -164
  464. package/src/visual/scripts/node_modules/mime/LICENSE +0 -21
  465. package/src/visual/scripts/node_modules/mime/README.md +0 -90
  466. package/src/visual/scripts/node_modules/mime/cli.js +0 -8
  467. package/src/visual/scripts/node_modules/mime/mime.js +0 -108
  468. package/src/visual/scripts/node_modules/mime/package.json +0 -44
  469. package/src/visual/scripts/node_modules/mime/src/build.js +0 -53
  470. package/src/visual/scripts/node_modules/mime/src/test.js +0 -60
  471. package/src/visual/scripts/node_modules/mime/types.json +0 -1
  472. package/src/visual/scripts/node_modules/mime-db/HISTORY.md +0 -507
  473. package/src/visual/scripts/node_modules/mime-db/LICENSE +0 -23
  474. package/src/visual/scripts/node_modules/mime-db/README.md +0 -100
  475. package/src/visual/scripts/node_modules/mime-db/db.json +0 -8519
  476. package/src/visual/scripts/node_modules/mime-db/index.js +0 -12
  477. package/src/visual/scripts/node_modules/mime-db/package.json +0 -60
  478. package/src/visual/scripts/node_modules/mime-types/HISTORY.md +0 -397
  479. package/src/visual/scripts/node_modules/mime-types/LICENSE +0 -23
  480. package/src/visual/scripts/node_modules/mime-types/README.md +0 -113
  481. package/src/visual/scripts/node_modules/mime-types/index.js +0 -188
  482. package/src/visual/scripts/node_modules/mime-types/package.json +0 -44
  483. package/src/visual/scripts/node_modules/ms/index.js +0 -152
  484. package/src/visual/scripts/node_modules/ms/license.md +0 -21
  485. package/src/visual/scripts/node_modules/ms/package.json +0 -37
  486. package/src/visual/scripts/node_modules/ms/readme.md +0 -51
  487. package/src/visual/scripts/node_modules/negotiator/HISTORY.md +0 -108
  488. package/src/visual/scripts/node_modules/negotiator/LICENSE +0 -24
  489. package/src/visual/scripts/node_modules/negotiator/README.md +0 -203
  490. package/src/visual/scripts/node_modules/negotiator/index.js +0 -82
  491. package/src/visual/scripts/node_modules/negotiator/lib/charset.js +0 -169
  492. package/src/visual/scripts/node_modules/negotiator/lib/encoding.js +0 -184
  493. package/src/visual/scripts/node_modules/negotiator/lib/language.js +0 -179
  494. package/src/visual/scripts/node_modules/negotiator/lib/mediaType.js +0 -294
  495. package/src/visual/scripts/node_modules/negotiator/package.json +0 -42
  496. package/src/visual/scripts/node_modules/object-inspect/.eslintrc +0 -53
  497. package/src/visual/scripts/node_modules/object-inspect/.github/FUNDING.yml +0 -12
  498. package/src/visual/scripts/node_modules/object-inspect/.nycrc +0 -13
  499. package/src/visual/scripts/node_modules/object-inspect/CHANGELOG.md +0 -424
  500. package/src/visual/scripts/node_modules/object-inspect/LICENSE +0 -21
  501. package/src/visual/scripts/node_modules/object-inspect/example/all.js +0 -23
  502. package/src/visual/scripts/node_modules/object-inspect/example/circular.js +0 -6
  503. package/src/visual/scripts/node_modules/object-inspect/example/fn.js +0 -5
  504. package/src/visual/scripts/node_modules/object-inspect/example/inspect.js +0 -10
  505. package/src/visual/scripts/node_modules/object-inspect/index.js +0 -544
  506. package/src/visual/scripts/node_modules/object-inspect/package-support.json +0 -20
  507. package/src/visual/scripts/node_modules/object-inspect/package.json +0 -105
  508. package/src/visual/scripts/node_modules/object-inspect/readme.markdown +0 -84
  509. package/src/visual/scripts/node_modules/object-inspect/test/bigint.js +0 -58
  510. package/src/visual/scripts/node_modules/object-inspect/test/browser/dom.js +0 -15
  511. package/src/visual/scripts/node_modules/object-inspect/test/circular.js +0 -16
  512. package/src/visual/scripts/node_modules/object-inspect/test/deep.js +0 -12
  513. package/src/visual/scripts/node_modules/object-inspect/test/element.js +0 -53
  514. package/src/visual/scripts/node_modules/object-inspect/test/err.js +0 -48
  515. package/src/visual/scripts/node_modules/object-inspect/test/fakes.js +0 -29
  516. package/src/visual/scripts/node_modules/object-inspect/test/fn.js +0 -76
  517. package/src/visual/scripts/node_modules/object-inspect/test/global.js +0 -17
  518. package/src/visual/scripts/node_modules/object-inspect/test/has.js +0 -15
  519. package/src/visual/scripts/node_modules/object-inspect/test/holes.js +0 -15
  520. package/src/visual/scripts/node_modules/object-inspect/test/indent-option.js +0 -271
  521. package/src/visual/scripts/node_modules/object-inspect/test/inspect.js +0 -139
  522. package/src/visual/scripts/node_modules/object-inspect/test/lowbyte.js +0 -12
  523. package/src/visual/scripts/node_modules/object-inspect/test/number.js +0 -58
  524. package/src/visual/scripts/node_modules/object-inspect/test/quoteStyle.js +0 -26
  525. package/src/visual/scripts/node_modules/object-inspect/test/toStringTag.js +0 -40
  526. package/src/visual/scripts/node_modules/object-inspect/test/undef.js +0 -12
  527. package/src/visual/scripts/node_modules/object-inspect/test/values.js +0 -261
  528. package/src/visual/scripts/node_modules/object-inspect/test-core-js.js +0 -26
  529. package/src/visual/scripts/node_modules/object-inspect/util.inspect.js +0 -1
  530. package/src/visual/scripts/node_modules/on-finished/HISTORY.md +0 -98
  531. package/src/visual/scripts/node_modules/on-finished/LICENSE +0 -23
  532. package/src/visual/scripts/node_modules/on-finished/README.md +0 -162
  533. package/src/visual/scripts/node_modules/on-finished/index.js +0 -234
  534. package/src/visual/scripts/node_modules/on-finished/package.json +0 -39
  535. package/src/visual/scripts/node_modules/parseurl/HISTORY.md +0 -58
  536. package/src/visual/scripts/node_modules/parseurl/LICENSE +0 -24
  537. package/src/visual/scripts/node_modules/parseurl/README.md +0 -133
  538. package/src/visual/scripts/node_modules/parseurl/index.js +0 -158
  539. package/src/visual/scripts/node_modules/parseurl/package.json +0 -40
  540. package/src/visual/scripts/node_modules/path-to-regexp/LICENSE +0 -21
  541. package/src/visual/scripts/node_modules/path-to-regexp/Readme.md +0 -35
  542. package/src/visual/scripts/node_modules/path-to-regexp/index.js +0 -156
  543. package/src/visual/scripts/node_modules/path-to-regexp/package.json +0 -30
  544. package/src/visual/scripts/node_modules/proxy-addr/HISTORY.md +0 -161
  545. package/src/visual/scripts/node_modules/proxy-addr/LICENSE +0 -22
  546. package/src/visual/scripts/node_modules/proxy-addr/README.md +0 -139
  547. package/src/visual/scripts/node_modules/proxy-addr/index.js +0 -327
  548. package/src/visual/scripts/node_modules/proxy-addr/package.json +0 -47
  549. package/src/visual/scripts/node_modules/qs/.editorconfig +0 -46
  550. package/src/visual/scripts/node_modules/qs/.github/FUNDING.yml +0 -12
  551. package/src/visual/scripts/node_modules/qs/.github/SECURITY.md +0 -11
  552. package/src/visual/scripts/node_modules/qs/.github/THREAT_MODEL.md +0 -78
  553. package/src/visual/scripts/node_modules/qs/.nycrc +0 -13
  554. package/src/visual/scripts/node_modules/qs/CHANGELOG.md +0 -644
  555. package/src/visual/scripts/node_modules/qs/LICENSE.md +0 -29
  556. package/src/visual/scripts/node_modules/qs/README.md +0 -740
  557. package/src/visual/scripts/node_modules/qs/dist/qs.js +0 -141
  558. package/src/visual/scripts/node_modules/qs/eslint.config.mjs +0 -56
  559. package/src/visual/scripts/node_modules/qs/lib/formats.js +0 -23
  560. package/src/visual/scripts/node_modules/qs/lib/index.js +0 -11
  561. package/src/visual/scripts/node_modules/qs/lib/parse.js +0 -371
  562. package/src/visual/scripts/node_modules/qs/lib/stringify.js +0 -356
  563. package/src/visual/scripts/node_modules/qs/lib/utils.js +0 -340
  564. package/src/visual/scripts/node_modules/qs/package.json +0 -94
  565. package/src/visual/scripts/node_modules/qs/test/empty-keys-cases.js +0 -267
  566. package/src/visual/scripts/node_modules/qs/test/parse.js +0 -1512
  567. package/src/visual/scripts/node_modules/qs/test/stringify.js +0 -1310
  568. package/src/visual/scripts/node_modules/qs/test/utils.js +0 -397
  569. package/src/visual/scripts/node_modules/range-parser/HISTORY.md +0 -56
  570. package/src/visual/scripts/node_modules/range-parser/LICENSE +0 -23
  571. package/src/visual/scripts/node_modules/range-parser/README.md +0 -84
  572. package/src/visual/scripts/node_modules/range-parser/index.js +0 -162
  573. package/src/visual/scripts/node_modules/range-parser/package.json +0 -44
  574. package/src/visual/scripts/node_modules/raw-body/LICENSE +0 -22
  575. package/src/visual/scripts/node_modules/raw-body/README.md +0 -223
  576. package/src/visual/scripts/node_modules/raw-body/index.d.ts +0 -87
  577. package/src/visual/scripts/node_modules/raw-body/index.js +0 -336
  578. package/src/visual/scripts/node_modules/raw-body/package.json +0 -47
  579. package/src/visual/scripts/node_modules/readdirp/LICENSE +0 -21
  580. package/src/visual/scripts/node_modules/readdirp/README.md +0 -120
  581. package/src/visual/scripts/node_modules/readdirp/esm/index.d.ts +0 -108
  582. package/src/visual/scripts/node_modules/readdirp/esm/index.js +0 -257
  583. package/src/visual/scripts/node_modules/readdirp/esm/package.json +0 -1
  584. package/src/visual/scripts/node_modules/readdirp/index.d.ts +0 -108
  585. package/src/visual/scripts/node_modules/readdirp/index.js +0 -263
  586. package/src/visual/scripts/node_modules/readdirp/package.json +0 -70
  587. package/src/visual/scripts/node_modules/safe-buffer/LICENSE +0 -21
  588. package/src/visual/scripts/node_modules/safe-buffer/README.md +0 -584
  589. package/src/visual/scripts/node_modules/safe-buffer/index.d.ts +0 -187
  590. package/src/visual/scripts/node_modules/safe-buffer/index.js +0 -65
  591. package/src/visual/scripts/node_modules/safe-buffer/package.json +0 -51
  592. package/src/visual/scripts/node_modules/safer-buffer/LICENSE +0 -21
  593. package/src/visual/scripts/node_modules/safer-buffer/Porting-Buffer.md +0 -268
  594. package/src/visual/scripts/node_modules/safer-buffer/Readme.md +0 -156
  595. package/src/visual/scripts/node_modules/safer-buffer/dangerous.js +0 -58
  596. package/src/visual/scripts/node_modules/safer-buffer/package.json +0 -34
  597. package/src/visual/scripts/node_modules/safer-buffer/safer.js +0 -77
  598. package/src/visual/scripts/node_modules/safer-buffer/tests.js +0 -406
  599. package/src/visual/scripts/node_modules/send/HISTORY.md +0 -538
  600. package/src/visual/scripts/node_modules/send/LICENSE +0 -23
  601. package/src/visual/scripts/node_modules/send/README.md +0 -327
  602. package/src/visual/scripts/node_modules/send/SECURITY.md +0 -24
  603. package/src/visual/scripts/node_modules/send/index.js +0 -1142
  604. package/src/visual/scripts/node_modules/send/node_modules/ms/index.js +0 -162
  605. package/src/visual/scripts/node_modules/send/node_modules/ms/license.md +0 -21
  606. package/src/visual/scripts/node_modules/send/node_modules/ms/package.json +0 -38
  607. package/src/visual/scripts/node_modules/send/node_modules/ms/readme.md +0 -59
  608. package/src/visual/scripts/node_modules/send/package.json +0 -62
  609. package/src/visual/scripts/node_modules/serve-static/HISTORY.md +0 -493
  610. package/src/visual/scripts/node_modules/serve-static/LICENSE +0 -25
  611. package/src/visual/scripts/node_modules/serve-static/README.md +0 -257
  612. package/src/visual/scripts/node_modules/serve-static/index.js +0 -209
  613. package/src/visual/scripts/node_modules/serve-static/package.json +0 -42
  614. package/src/visual/scripts/node_modules/setprototypeof/LICENSE +0 -13
  615. package/src/visual/scripts/node_modules/setprototypeof/README.md +0 -31
  616. package/src/visual/scripts/node_modules/setprototypeof/index.d.ts +0 -2
  617. package/src/visual/scripts/node_modules/setprototypeof/index.js +0 -17
  618. package/src/visual/scripts/node_modules/setprototypeof/package.json +0 -38
  619. package/src/visual/scripts/node_modules/setprototypeof/test/index.js +0 -24
  620. package/src/visual/scripts/node_modules/side-channel/.editorconfig +0 -9
  621. package/src/visual/scripts/node_modules/side-channel/.eslintrc +0 -12
  622. package/src/visual/scripts/node_modules/side-channel/.github/FUNDING.yml +0 -12
  623. package/src/visual/scripts/node_modules/side-channel/.nycrc +0 -13
  624. package/src/visual/scripts/node_modules/side-channel/CHANGELOG.md +0 -110
  625. package/src/visual/scripts/node_modules/side-channel/LICENSE +0 -21
  626. package/src/visual/scripts/node_modules/side-channel/README.md +0 -61
  627. package/src/visual/scripts/node_modules/side-channel/index.d.ts +0 -14
  628. package/src/visual/scripts/node_modules/side-channel/index.js +0 -43
  629. package/src/visual/scripts/node_modules/side-channel/package.json +0 -85
  630. package/src/visual/scripts/node_modules/side-channel/test/index.js +0 -104
  631. package/src/visual/scripts/node_modules/side-channel/tsconfig.json +0 -9
  632. package/src/visual/scripts/node_modules/side-channel-list/.editorconfig +0 -9
  633. package/src/visual/scripts/node_modules/side-channel-list/.eslintrc +0 -11
  634. package/src/visual/scripts/node_modules/side-channel-list/.github/FUNDING.yml +0 -12
  635. package/src/visual/scripts/node_modules/side-channel-list/.nycrc +0 -13
  636. package/src/visual/scripts/node_modules/side-channel-list/CHANGELOG.md +0 -15
  637. package/src/visual/scripts/node_modules/side-channel-list/LICENSE +0 -21
  638. package/src/visual/scripts/node_modules/side-channel-list/README.md +0 -62
  639. package/src/visual/scripts/node_modules/side-channel-list/index.d.ts +0 -13
  640. package/src/visual/scripts/node_modules/side-channel-list/index.js +0 -113
  641. package/src/visual/scripts/node_modules/side-channel-list/list.d.ts +0 -14
  642. package/src/visual/scripts/node_modules/side-channel-list/package.json +0 -77
  643. package/src/visual/scripts/node_modules/side-channel-list/test/index.js +0 -104
  644. package/src/visual/scripts/node_modules/side-channel-list/tsconfig.json +0 -9
  645. package/src/visual/scripts/node_modules/side-channel-map/.editorconfig +0 -9
  646. package/src/visual/scripts/node_modules/side-channel-map/.eslintrc +0 -11
  647. package/src/visual/scripts/node_modules/side-channel-map/.github/FUNDING.yml +0 -12
  648. package/src/visual/scripts/node_modules/side-channel-map/.nycrc +0 -13
  649. package/src/visual/scripts/node_modules/side-channel-map/CHANGELOG.md +0 -22
  650. package/src/visual/scripts/node_modules/side-channel-map/LICENSE +0 -21
  651. package/src/visual/scripts/node_modules/side-channel-map/README.md +0 -62
  652. package/src/visual/scripts/node_modules/side-channel-map/index.d.ts +0 -15
  653. package/src/visual/scripts/node_modules/side-channel-map/index.js +0 -68
  654. package/src/visual/scripts/node_modules/side-channel-map/package.json +0 -80
  655. package/src/visual/scripts/node_modules/side-channel-map/test/index.js +0 -114
  656. package/src/visual/scripts/node_modules/side-channel-map/tsconfig.json +0 -9
  657. package/src/visual/scripts/node_modules/side-channel-weakmap/.editorconfig +0 -9
  658. package/src/visual/scripts/node_modules/side-channel-weakmap/.eslintrc +0 -12
  659. package/src/visual/scripts/node_modules/side-channel-weakmap/.github/FUNDING.yml +0 -12
  660. package/src/visual/scripts/node_modules/side-channel-weakmap/.nycrc +0 -13
  661. package/src/visual/scripts/node_modules/side-channel-weakmap/CHANGELOG.md +0 -28
  662. package/src/visual/scripts/node_modules/side-channel-weakmap/LICENSE +0 -21
  663. package/src/visual/scripts/node_modules/side-channel-weakmap/README.md +0 -62
  664. package/src/visual/scripts/node_modules/side-channel-weakmap/index.d.ts +0 -15
  665. package/src/visual/scripts/node_modules/side-channel-weakmap/index.js +0 -84
  666. package/src/visual/scripts/node_modules/side-channel-weakmap/package.json +0 -87
  667. package/src/visual/scripts/node_modules/side-channel-weakmap/test/index.js +0 -114
  668. package/src/visual/scripts/node_modules/side-channel-weakmap/tsconfig.json +0 -9
  669. package/src/visual/scripts/node_modules/statuses/HISTORY.md +0 -87
  670. package/src/visual/scripts/node_modules/statuses/LICENSE +0 -23
  671. package/src/visual/scripts/node_modules/statuses/README.md +0 -139
  672. package/src/visual/scripts/node_modules/statuses/codes.json +0 -65
  673. package/src/visual/scripts/node_modules/statuses/index.js +0 -146
  674. package/src/visual/scripts/node_modules/statuses/package.json +0 -49
  675. package/src/visual/scripts/node_modules/toidentifier/HISTORY.md +0 -9
  676. package/src/visual/scripts/node_modules/toidentifier/LICENSE +0 -21
  677. package/src/visual/scripts/node_modules/toidentifier/README.md +0 -61
  678. package/src/visual/scripts/node_modules/toidentifier/index.js +0 -32
  679. package/src/visual/scripts/node_modules/toidentifier/package.json +0 -38
  680. package/src/visual/scripts/node_modules/type-is/HISTORY.md +0 -259
  681. package/src/visual/scripts/node_modules/type-is/LICENSE +0 -23
  682. package/src/visual/scripts/node_modules/type-is/README.md +0 -170
  683. package/src/visual/scripts/node_modules/type-is/index.js +0 -266
  684. package/src/visual/scripts/node_modules/type-is/package.json +0 -45
  685. package/src/visual/scripts/node_modules/unpipe/HISTORY.md +0 -4
  686. package/src/visual/scripts/node_modules/unpipe/LICENSE +0 -22
  687. package/src/visual/scripts/node_modules/unpipe/README.md +0 -43
  688. package/src/visual/scripts/node_modules/unpipe/index.js +0 -69
  689. package/src/visual/scripts/node_modules/unpipe/package.json +0 -27
  690. package/src/visual/scripts/node_modules/utils-merge/LICENSE +0 -20
  691. package/src/visual/scripts/node_modules/utils-merge/README.md +0 -34
  692. package/src/visual/scripts/node_modules/utils-merge/index.js +0 -23
  693. package/src/visual/scripts/node_modules/utils-merge/package.json +0 -40
  694. package/src/visual/scripts/node_modules/vary/HISTORY.md +0 -39
  695. package/src/visual/scripts/node_modules/vary/LICENSE +0 -22
  696. package/src/visual/scripts/node_modules/vary/README.md +0 -101
  697. package/src/visual/scripts/node_modules/vary/index.js +0 -149
  698. package/src/visual/scripts/node_modules/vary/package.json +0 -43
  699. package/src/visual/scripts/node_modules/ws/LICENSE +0 -20
  700. package/src/visual/scripts/node_modules/ws/README.md +0 -548
  701. package/src/visual/scripts/node_modules/ws/browser.js +0 -8
  702. package/src/visual/scripts/node_modules/ws/index.js +0 -22
  703. package/src/visual/scripts/node_modules/ws/lib/buffer-util.js +0 -131
  704. package/src/visual/scripts/node_modules/ws/lib/constants.js +0 -19
  705. package/src/visual/scripts/node_modules/ws/lib/event-target.js +0 -292
  706. package/src/visual/scripts/node_modules/ws/lib/extension.js +0 -203
  707. package/src/visual/scripts/node_modules/ws/lib/limiter.js +0 -55
  708. package/src/visual/scripts/node_modules/ws/lib/permessage-deflate.js +0 -528
  709. package/src/visual/scripts/node_modules/ws/lib/receiver.js +0 -706
  710. package/src/visual/scripts/node_modules/ws/lib/sender.js +0 -602
  711. package/src/visual/scripts/node_modules/ws/lib/stream.js +0 -161
  712. package/src/visual/scripts/node_modules/ws/lib/subprotocol.js +0 -62
  713. package/src/visual/scripts/node_modules/ws/lib/validation.js +0 -152
  714. package/src/visual/scripts/node_modules/ws/lib/websocket-server.js +0 -554
  715. package/src/visual/scripts/node_modules/ws/lib/websocket.js +0 -1393
  716. package/src/visual/scripts/node_modules/ws/package.json +0 -70
  717. package/src/visual/scripts/node_modules/ws/wrapper.mjs +0 -21
  718. package/src/visual/scripts/package-lock.json +0 -878
@@ -1,34 +1,35 @@
1
1
  import type { Platform, AgentSession, AgentSessionOptions } from "./types.js";
2
2
  import { createPaths } from "./types.js";
3
3
 
4
- export function createOmpAdapter(pi: any): Platform {
4
+ export function createOmpAdapter(api: any): Platform {
5
5
  return {
6
6
  name: "omp",
7
- registerCommand: (name, opts) => pi.registerCommand(name, opts),
8
- getCommands: () => pi.getCommands(),
9
- getActiveTools: () => pi.getActiveTools(),
10
- exec: (cmd, args, opts) => pi.exec(cmd, args, opts),
7
+ registerCommand: (name, opts) => api.registerCommand(name, opts),
8
+ getCommands: () => api.getCommands(),
9
+ getActiveTools: () => api.getActiveTools(),
10
+ exec: (cmd, args, opts) => api.exec(cmd, args, opts),
11
11
  sendMessage: (content, opts) => {
12
- pi.sendMessage(content, {
12
+ api.sendMessage(content, {
13
13
  deliverAs: opts?.deliverAs ?? "steer",
14
14
  triggerTurn: opts?.triggerTurn ?? false,
15
15
  });
16
16
  },
17
- registerMessageRenderer: (type, fn) => pi.registerMessageRenderer(type, fn),
17
+ sendUserMessage: (text: string) => api.sendUserMessage(text),
18
+ registerMessageRenderer: (type, fn) => api.registerMessageRenderer(type, fn),
18
19
 
19
20
  setModel(model: string): void {
20
- pi.setModel(model);
21
+ api.setModel(model);
21
22
  },
22
23
  getCurrentModel(): string {
23
- return pi.getCurrentModel?.() ?? "unknown";
24
+ return api.getCurrentModel?.() ?? "unknown";
24
25
  },
25
26
  getModelForRole(role: string): string | null {
26
- return pi.getModelForRole?.(role) ?? null;
27
+ return api.getModelForRole?.(role) ?? null;
27
28
  },
28
29
 
29
30
  on: (event: string, handler: any) => {
30
31
  if (event === "input") {
31
- pi.on("input", (evt: any, ctx: any) => {
32
+ api.on("input", (evt: any, ctx: any) => {
32
33
  const result = handler(evt, ctx);
33
34
  if (result?.action === "handled") return { handled: true };
34
35
  if (result?.action === "transform") return { handled: true, text: result.text };
@@ -37,18 +38,18 @@ export function createOmpAdapter(pi: any): Platform {
37
38
  return;
38
39
  }
39
40
  if (event === "session_before_compact") {
40
- pi.on("session.before_compacting", handler);
41
+ api.on("session.before_compacting", handler);
41
42
  return;
42
43
  }
43
44
  if (event === "session_compact") {
44
- pi.on("session.compacting", handler);
45
+ api.on("session.compacting", handler);
45
46
  return;
46
47
  }
47
- pi.on(event, handler);
48
+ api.on(event, handler);
48
49
  },
49
50
 
50
51
  createAgentSession: async (opts: AgentSessionOptions): Promise<AgentSession> => {
51
- const { createAgentSession } = pi.pi;
52
+ const { createAgentSession } = api.pi;
52
53
  // OMP's createAgentSession expects model?: Model (full object), not a string.
53
54
  // Our AgentSessionOptions uses model?: string (model ID). If we spread a string
54
55
  // into the `model` field, OMP thinks an explicit model was provided, skips all
@@ -1,25 +1,26 @@
1
1
  // src/platform/test-utils.ts
2
- import { vi } from "vitest";
2
+ import { mock } from "bun:test";
3
3
  import type { Platform, PlatformContext } from "./types.js";
4
4
  import { createPaths } from "./types.js";
5
5
 
6
6
  export function createMockPlatform(overrides?: Partial<Platform>): Platform {
7
7
  return {
8
- name: "pi",
9
- registerCommand: vi.fn(),
10
- getCommands: vi.fn(() => []),
11
- getActiveTools: vi.fn(() => []),
12
- exec: vi.fn(async () => ({ stdout: "", stderr: "", code: 0 })),
13
- sendMessage: vi.fn(),
14
- registerMessageRenderer: vi.fn(),
15
- on: vi.fn(),
16
- createAgentSession: vi.fn(async () => ({
17
- subscribe: vi.fn(() => () => {}),
18
- prompt: vi.fn(async () => {}),
8
+ name: "omp",
9
+ registerCommand: mock(),
10
+ getCommands: mock(() => []),
11
+ getActiveTools: mock(() => []),
12
+ exec: mock(async () => ({ stdout: "", stderr: "", code: 0 })),
13
+ sendMessage: mock(),
14
+ sendUserMessage: mock(),
15
+ registerMessageRenderer: mock(),
16
+ on: mock(),
17
+ createAgentSession: mock(async () => ({
18
+ subscribe: mock(() => () => {}),
19
+ prompt: mock(async () => {}),
19
20
  state: { messages: [] },
20
- dispose: vi.fn(async () => {}),
21
+ dispose: mock(async () => {}),
21
22
  })),
22
- paths: createPaths(".pi"),
23
+ paths: createPaths(".omp"),
23
24
  capabilities: {
24
25
  agentSessions: true,
25
26
  compactionHooks: true,
@@ -35,9 +36,9 @@ export function createMockContext(overrides?: Partial<PlatformContext>): Platfor
35
36
  cwd: "/tmp/test",
36
37
  hasUI: true,
37
38
  ui: {
38
- select: vi.fn(async () => null),
39
- notify: vi.fn(),
40
- input: vi.fn(async () => null),
39
+ select: mock(async () => null),
40
+ notify: mock(),
41
+ input: mock(async () => null),
41
42
  },
42
43
  ...overrides,
43
44
  };
@@ -5,15 +5,15 @@ import { homedir } from "node:os";
5
5
  // ── Path Resolution ────────────────────────────────────────
6
6
 
7
7
  export interface PlatformPaths {
8
- /** The dot-directory name: ".pi" or ".omp" */
8
+ /** The dot-directory name: ".omp" */
9
9
  dotDir: string;
10
10
  /** For user-visible messages and LLM prompts */
11
11
  dotDirDisplay: string;
12
- /** Resolve project-local: paths.project(cwd, "plans") → "<cwd>/.pi/supipowers/plans" */
12
+ /** Resolve project-local: paths.project(cwd, "plans") → "<cwd>/.omp/supipowers/plans" */
13
13
  project(cwd: string, ...segments: string[]): string;
14
- /** Resolve global: paths.global("config.json") → "~/.pi/supipowers/config.json" */
14
+ /** Resolve global: paths.global("config.json") → "~/.omp/supipowers/config.json" */
15
15
  global(...segments: string[]): string;
16
- /** Resolve agent-level: paths.agent("extensions") → "~/.pi/agent/extensions" */
16
+ /** Resolve agent-level: paths.agent("extensions") → "~/.omp/agent/extensions" */
17
17
  agent(...segments: string[]): string;
18
18
  }
19
19
 
@@ -113,7 +113,7 @@ export interface PlatformUI {
113
113
  // ── Platform ───────────────────────────────────────────────
114
114
 
115
115
  export interface Platform {
116
- name: "pi" | "omp";
116
+ name: "omp";
117
117
 
118
118
  // Commands
119
119
  registerCommand(name: string, opts: any): void;
@@ -125,11 +125,12 @@ export interface Platform {
125
125
  // Execution
126
126
  exec(cmd: string, args: string[], opts?: ExecOptions): Promise<ExecResult>;
127
127
  sendMessage(content: any, opts?: SendMessageOptions): void;
128
+ sendUserMessage(text: string): void;
128
129
 
129
130
  // Introspection
130
131
  getActiveTools(): string[];
131
132
 
132
- // Tool registration (Pi-only)
133
+ // Tool registration
133
134
  registerTool?(definition: any): void;
134
135
  setActiveTools?(names: string[]): void;
135
136
 
@@ -1,6 +1,7 @@
1
1
  // src/release/changelog.ts — Conventional commit parsing and changelog generation
2
2
 
3
3
  import type { CategorizedCommits, CommitEntry } from "../types.js";
4
+ import { IMPROVEMENT_TYPES, MAINTENANCE_TYPES, type ConventionalCommitType } from "./commit-types.js";
4
5
 
5
6
  // Matches: feat(scope)!: message or feat!: message or feat(scope): message or feat: message
6
7
  // Capture groups: (1) type, (2) scope|undefined, (3) breaking bang|undefined, (4) message
@@ -36,11 +37,14 @@ function parseLine(line: string): { hash: string; raw: string } | null {
36
37
  * AND `features` — the breaking array is the source of truth for what changed
37
38
  * the contract; the features array ensures it still shows up in release notes.
38
39
  */
40
+
39
41
  export function parseConventionalCommits(gitLog: string): CategorizedCommits {
40
42
  const result: CategorizedCommits = {
41
43
  features: [],
42
44
  fixes: [],
43
45
  breaking: [],
46
+ improvements: [],
47
+ maintenance: [],
44
48
  other: [],
45
49
  };
46
50
 
@@ -63,27 +67,25 @@ export function parseConventionalCommits(gitLog: string): CategorizedCommits {
63
67
  }
64
68
 
65
69
  const [, type, scope, bang, message] = match;
66
- const entry: CommitEntry = { hash, message, ...(scope ? { scope } : {}) };
70
+ const entry: CommitEntry = { hash, message, type, ...(scope ? { scope } : {}) };
67
71
  const isBreaking = bang === "!";
68
72
 
73
+ // Route to the correct bucket based on conventional commit type
74
+ let bucket: CommitEntry[];
69
75
  if (type === "feat") {
70
- if (isBreaking) {
71
- result.breaking.push({ ...entry });
72
- result.features.push(entry);
73
- } else {
74
- result.features.push(entry);
75
- }
76
+ bucket = result.features;
76
77
  } else if (type === "fix") {
77
- if (isBreaking) {
78
- result.breaking.push({ ...entry });
79
- result.fixes.push(entry);
80
- } else {
81
- result.fixes.push(entry);
82
- }
78
+ bucket = result.fixes;
79
+ } else if (IMPROVEMENT_TYPES.has(type as ConventionalCommitType)) {
80
+ bucket = result.improvements;
81
+ } else if (MAINTENANCE_TYPES.has(type as ConventionalCommitType)) {
82
+ bucket = result.maintenance;
83
83
  } else {
84
- // Any other conventional type (chore, docs, refactor, etc.) → other
85
- result.other.push(entry);
84
+ bucket = result.other;
86
85
  }
86
+
87
+ if (isBreaking) result.breaking.push({ ...entry });
88
+ bucket.push(entry);
87
89
  }
88
90
 
89
91
  return result;
@@ -113,10 +115,12 @@ export function buildChangelogMarkdown(
113
115
  lines.push("");
114
116
 
115
117
  const sections: [string, CommitEntry[]][] = [
116
- ["### 🚨 Breaking Changes", commits.breaking],
117
- ["### Features", commits.features],
118
- ["### 🐛 Fixes", commits.fixes],
119
- ["### 📦 Other", commits.other],
118
+ ["### \u{1F6A8} Breaking Changes", commits.breaking],
119
+ ["### \u{2728} Features", commits.features],
120
+ ["### \u{1F41B} Fixes", commits.fixes],
121
+ ["### \u{1F527} Improvements", commits.improvements],
122
+ ["### \u{1F3D7}\uFE0F Maintenance", commits.maintenance],
123
+ ["### \u{1F4E6} Other", commits.other],
120
124
  ];
121
125
 
122
126
  let firstSection = true;
@@ -142,7 +146,7 @@ export function buildChangelogMarkdown(
142
146
  export function summarizeChanges(commits: CategorizedCommits): string {
143
147
  const parts: string[] = [];
144
148
 
145
- const { features, fixes, breaking } = commits;
149
+ const { features, fixes, breaking, improvements, maintenance } = commits;
146
150
 
147
151
  if (features.length > 0) {
148
152
  parts.push(`${features.length} feature${features.length === 1 ? "" : "s"}`);
@@ -150,6 +154,12 @@ export function summarizeChanges(commits: CategorizedCommits): string {
150
154
  if (fixes.length > 0) {
151
155
  parts.push(`${fixes.length} fix${fixes.length === 1 ? "" : "es"}`);
152
156
  }
157
+ if (improvements.length > 0) {
158
+ parts.push(`${improvements.length} improvement${improvements.length === 1 ? "" : "s"}`);
159
+ }
160
+ if (maintenance.length > 0) {
161
+ parts.push(`${maintenance.length} maintenance`);
162
+ }
153
163
  if (breaking.length > 0) {
154
164
  parts.push(
155
165
  `${breaking.length} breaking change${breaking.length === 1 ? "" : "s"}`
@@ -0,0 +1,35 @@
1
+ // src/release/commit-types.ts — Single source of truth for conventional commit types
2
+
3
+ /** All valid conventional commit type prefixes. */
4
+ export const VALID_COMMIT_TYPES = [
5
+ "feat",
6
+ "fix",
7
+ "refactor",
8
+ "perf",
9
+ "revert",
10
+ "chore",
11
+ "ci",
12
+ "build",
13
+ "test",
14
+ "docs",
15
+ "style",
16
+ ] as const;
17
+
18
+ export type ConventionalCommitType = (typeof VALID_COMMIT_TYPES)[number];
19
+
20
+ /** Types that land in the "improvements" changelog bucket. */
21
+ export const IMPROVEMENT_TYPES = new Set<ConventionalCommitType>([
22
+ "refactor",
23
+ "perf",
24
+ "revert",
25
+ ]);
26
+
27
+ /** Types that land in the "maintenance" changelog bucket. */
28
+ export const MAINTENANCE_TYPES = new Set<ConventionalCommitType>([
29
+ "chore",
30
+ "ci",
31
+ "build",
32
+ "test",
33
+ "docs",
34
+ "style",
35
+ ]);
@@ -2,6 +2,7 @@
2
2
  import * as fs from "node:fs";
3
3
  import * as path from "node:path";
4
4
  import type { ReleaseChannel, ReleaseResult } from "../types.js";
5
+ import { commitStaged } from "../git/commit.js";
5
6
 
6
7
  type ExecFn = (
7
8
  cmd: string,
@@ -9,6 +10,9 @@ type ExecFn = (
9
10
  opts?: { cwd?: string },
10
11
  ) => Promise<{ stdout: string; stderr: string; code: number }>;
11
12
 
13
+ /** Callback to report step progress during release execution. */
14
+ export type ReleaseProgressFn = (step: string, status: "active" | "done" | "error", detail?: string) => void;
15
+
12
16
  export interface ExecuteReleaseOptions {
13
17
  exec: ExecFn;
14
18
  cwd: string;
@@ -16,6 +20,10 @@ export interface ExecuteReleaseOptions {
16
20
  changelog: string;
17
21
  channels: ReleaseChannel[];
18
22
  dryRun: boolean;
23
+ /** Skip the package.json version write (version was already set locally). */
24
+ skipBump?: boolean;
25
+ /** Optional callback for step-by-step progress reporting. */
26
+ onProgress?: ReleaseProgressFn;
19
27
  }
20
28
 
21
29
  /**
@@ -29,13 +37,14 @@ export interface ExecuteReleaseOptions {
29
37
  * happen (all flags true) so callers can preview without side-effects.
30
38
  */
31
39
  export async function executeRelease(opts: ExecuteReleaseOptions): Promise<ReleaseResult> {
32
- const { exec, cwd, version, changelog, channels, dryRun } = opts;
40
+ const { exec, cwd, version, changelog, channels, dryRun, skipBump, onProgress } = opts;
41
+ const progress = onProgress ?? (() => {});
33
42
 
34
43
  if (dryRun) {
35
44
  console.log(`[dry-run] Would build (if scripts.build exists)`);
36
45
  console.log(`[dry-run] Would bump version to ${version}`);
37
46
  console.log(`[dry-run] Would git add -A`);
38
- console.log(`[dry-run] Would git commit -m "release: v${version}"`);
47
+ console.log(`[dry-run] Would git commit -m "chore(release): v${version}"`);
39
48
  console.log(`[dry-run] Would git tag -a v${version}`);
40
49
  console.log(`[dry-run] Would git push origin HEAD --follow-tags`);
41
50
  for (const ch of channels) {
@@ -56,46 +65,79 @@ export async function executeRelease(opts: ExecuteReleaseOptions): Promise<Relea
56
65
 
57
66
  const scripts = pkg["scripts"] as Record<string, string> | undefined;
58
67
  if (scripts?.["build"]) {
68
+ progress("build", "active", "Running build script");
59
69
  const buildResult = await exec("bun", ["run", "build"], { cwd });
60
70
  if (buildResult.code !== 0) {
61
- throw new Error("Build failed");
71
+ progress("build", "error", buildResult.stderr || "Non-zero exit");
72
+ throw new Error(`Build failed: ${buildResult.stderr || "non-zero exit"}`);
62
73
  }
74
+ progress("build", "done");
63
75
  }
64
76
 
65
77
  // ── 2. Bump version in package.json ──────────────────────────────────────
66
- pkg["version"] = version;
67
- fs.writeFileSync(pkgPath, JSON.stringify(pkg, null, 2) + "\n", "utf-8");
78
+ if (skipBump) {
79
+ progress("version-bump", "done", "Already set");
80
+ } else {
81
+ progress("version-bump", "active", `Bumping to ${version}`);
82
+ pkg["version"] = version;
83
+ fs.writeFileSync(pkgPath, JSON.stringify(pkg, null, 2) + "\n", "utf-8");
84
+ progress("version-bump", "done");
85
+ }
68
86
 
69
87
  // ── 3–6. Git operations ──────────────────────────────────────────────────
70
88
 
71
- const gitAdd = await exec("git", ["add", "-A"], { cwd });
72
- if (gitAdd.code !== 0) {
73
- return { version, tagCreated: false, pushed: false, channels: [] };
74
- }
75
-
76
- const gitCommit = await exec("git", ["commit", "-m", `release: v${version}`], { cwd });
77
- if (gitCommit.code !== 0) {
78
- return { version, tagCreated: false, pushed: false, channels: [] };
89
+ // When skipBump is true the version was already committed locally —
90
+ // there's nothing to stage or commit, so skip straight to tag+push.
91
+ if (skipBump) {
92
+ progress("git-add", "done", "Skipped (no changes)");
93
+ progress("git-commit", "done", "Skipped (already committed)");
94
+ } else {
95
+ progress("git-add", "active", "git add -A");
96
+ const gitAdd = await exec("git", ["add", "-A"], { cwd });
97
+ if (gitAdd.code !== 0) {
98
+ const detail = gitAdd.stderr || gitAdd.stdout || `exit code ${gitAdd.code}`;
99
+ progress("git-add", "error", detail);
100
+ return { version, tagCreated: false, pushed: false, channels: [], error: `git add: ${detail}` };
101
+ }
102
+ progress("git-add", "done");
103
+
104
+ const commitMessage = `chore(release): v${version}`;
105
+ progress("git-commit", "active", commitMessage);
106
+ const commitResult = await commitStaged(exec, cwd, commitMessage);
107
+ if (!commitResult.success) {
108
+ progress("git-commit", "error", commitResult.error);
109
+ return { version, tagCreated: false, pushed: false, channels: [], error: commitResult.error! };
110
+ }
111
+ progress("git-commit", "done");
79
112
  }
80
113
 
114
+ progress("git-tag", "active", `v${version}`);
81
115
  const tagMessage = `Release v${version}\n\n${changelog}`;
82
116
  const gitTag = await exec("git", ["tag", "-a", `v${version}`, "-m", tagMessage], { cwd });
83
117
  if (gitTag.code !== 0) {
84
- return { version, tagCreated: false, pushed: false, channels: [] };
118
+ const detail = gitTag.stderr || gitTag.stdout || `exit code ${gitTag.code}`;
119
+ progress("git-tag", "error", detail);
120
+ return { version, tagCreated: false, pushed: false, channels: [], error: `git tag: ${detail}` };
85
121
  }
122
+ progress("git-tag", "done");
86
123
 
124
+ progress("git-push", "active", "Pushing to origin");
87
125
  const gitPush = await exec("git", ["push", "origin", "HEAD", "--follow-tags"], { cwd });
88
126
  if (gitPush.code !== 0) {
127
+ const detail = gitPush.stderr || gitPush.stdout || `exit code ${gitPush.code}`;
128
+ progress("git-push", "error", detail);
89
129
  // Tag was created locally but push failed
90
- return { version, tagCreated: true, pushed: false, channels: [] };
130
+ return { version, tagCreated: true, pushed: false, channels: [], error: `git push: ${detail}` };
91
131
  }
132
+ progress("git-push", "done");
92
133
 
93
134
  // ── 7. Channel publishing ─────────────────────────────────────────────────
94
135
  const channelResults: ReleaseResult["channels"] = [];
95
136
 
96
137
  for (const channel of channels) {
138
+ progress(`publish-${channel}`, "active", `Publishing to ${channel}`);
97
139
  try {
98
- let result: { code: number; stderr: string };
140
+ let result: { code: number; stdout: string; stderr: string };
99
141
  if (channel === "github") {
100
142
  result = await exec(
101
143
  "gh",
@@ -108,20 +150,17 @@ export async function executeRelease(opts: ExecuteReleaseOptions): Promise<Relea
108
150
  }
109
151
 
110
152
  if (result.code !== 0) {
111
- channelResults.push({
112
- channel,
113
- success: false,
114
- error: result.stderr || `${channel} publish exited with code ${result.code}`,
115
- });
153
+ const err = result.stderr || result.stdout || `${channel} publish exited with code ${result.code}`;
154
+ progress(`publish-${channel}`, "error", err);
155
+ channelResults.push({ channel, success: false, error: err });
116
156
  } else {
157
+ progress(`publish-${channel}`, "done");
117
158
  channelResults.push({ channel, success: true });
118
159
  }
119
160
  } catch (err) {
120
- channelResults.push({
121
- channel,
122
- success: false,
123
- error: err instanceof Error ? err.message : String(err),
124
- });
161
+ const msg = err instanceof Error ? err.message : String(err);
162
+ progress(`publish-${channel}`, "error", msg);
163
+ channelResults.push({ channel, success: false, error: msg });
125
164
  }
126
165
  }
127
166
 
@@ -46,7 +46,7 @@ export function buildPolishPrompt(opts: BuildPolishPromptOpts): string {
46
46
  " - Group closely related changes together under the same bullet.",
47
47
  " - Remove noise (chores, reformats, typo fixes) unless they fix a user-visible bug.",
48
48
  " - Do **not** change version numbers.",
49
- " - Do **not** skip or reorder the section headings (Features, Fixes, Breaking Changes).",
49
+ " - Do **not** skip or reorder the section headings (Breaking Changes, Features, Fixes, Improvements, Maintenance, Other).",
50
50
  " - Do **not** invent changes that are not in the raw changelog.",
51
51
  "",
52
52
  "2. **Present** the polished changelog to the user in a readable format.",
@@ -2,6 +2,12 @@ import fs from "fs";
2
2
  import path from "path";
3
3
  import type { BumpType, CategorizedCommits } from "../types.js";
4
4
 
5
+ type ExecFn = (
6
+ cmd: string,
7
+ args: string[],
8
+ opts?: { cwd?: string },
9
+ ) => Promise<{ stdout: string; stderr: string; code: number }>;
10
+
5
11
  /**
6
12
  * Suggest a semver bump type based on categorized commits.
7
13
  * Breaking changes win over features; features win over everything else.
@@ -52,3 +58,24 @@ export function getCurrentVersion(cwd: string): string {
52
58
  return "0.0.0";
53
59
  }
54
60
  }
61
+
62
+
63
+ /**
64
+ * Check whether a tag for the given version already exists locally.
65
+ * Returns `true` when `v{version}` is a known git tag — meaning this
66
+ * version has already been released and a bump is needed.
67
+ */
68
+ export async function isVersionReleased(
69
+ exec: ExecFn,
70
+ cwd: string,
71
+ version: string,
72
+ ): Promise<boolean> {
73
+ try {
74
+ const tag = version.startsWith("v") ? version : `v${version}`;
75
+ const result = await exec("git", ["tag", "-l", tag], { cwd });
76
+ // git tag -l prints matching tags, one per line. Non-empty = exists.
77
+ return result.code === 0 && result.stdout.trim().length > 0;
78
+ } catch {
79
+ return false;
80
+ }
81
+ }
@@ -1,6 +1,6 @@
1
1
  import * as fs from "node:fs";
2
2
  import * as path from "node:path";
3
- import type { Plan, PlanTask, TaskComplexity, TaskParallelism } from "../types.js";
3
+ import type { Plan, PlanTask, TaskComplexity } from "../types.js";
4
4
  import type { PlatformPaths } from "../platform/types.js";
5
5
 
6
6
  function getPlansDir(paths: PlatformPaths, cwd: string): string {
@@ -97,26 +97,16 @@ function parseTasksFromMarkdown(content: string): PlanTask[] {
97
97
  const body = stripped.slice(startIdx, endIdx);
98
98
 
99
99
  const name = headerLine.replace(/\[.*?\]/g, "").trim();
100
- const parallelism = parseParallelism(headerLine);
101
100
  const model = parseModel(headerLine);
102
101
  const files = parseFiles(body);
103
102
  const criteria = parseCriteria(body);
104
103
  const complexity = parseComplexity(body);
105
104
 
106
- tasks.push({ id, name, description: name, files, criteria, complexity, parallelism, ...(model ? { model } : {}) });
105
+ tasks.push({ id, name, description: name, files, criteria, complexity, ...(model ? { model } : {}) });
107
106
  }
108
107
  return tasks;
109
108
  }
110
109
 
111
- function parseParallelism(header: string): TaskParallelism {
112
- if (header.includes("[parallel-safe]")) return { type: "parallel-safe" };
113
- const seqMatch = header.match(/\[sequential: depends on (\d[\d, ]*)\]/);
114
- if (seqMatch) {
115
- const deps = seqMatch[1].split(",").map((s) => parseInt(s.trim(), 10));
116
- return { type: "sequential", dependsOn: deps };
117
- }
118
- return { type: "sequential", dependsOn: [] };
119
- }
120
110
 
121
111
  function parseModel(header: string): string | undefined {
122
112
  const match = header.match(/\[model:\s*([^\]]+)\]/);