@lumenflow/core 3.3.0 → 3.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (369) hide show
  1. package/dist/adapters/context-adapters.d.ts +75 -3
  2. package/dist/adapters/context-adapters.d.ts.map +1 -1
  3. package/dist/adapters/context-adapters.js +74 -3
  4. package/dist/adapters/context-adapters.js.map +1 -1
  5. package/dist/adapters/filesystem-metrics.adapter.js +1 -1
  6. package/dist/agent-patterns-registry.d.ts.map +1 -1
  7. package/dist/agent-patterns-registry.js +2 -1
  8. package/dist/agent-patterns-registry.js.map +1 -1
  9. package/dist/arg-parser.d.ts.map +1 -1
  10. package/dist/arg-parser.js +31 -0
  11. package/dist/arg-parser.js.map +1 -1
  12. package/dist/atomic-merge.d.ts.map +1 -1
  13. package/dist/atomic-merge.js +3 -4
  14. package/dist/atomic-merge.js.map +1 -1
  15. package/dist/backlog-editor.d.ts +2 -1
  16. package/dist/backlog-editor.d.ts.map +1 -1
  17. package/dist/backlog-editor.js.map +1 -1
  18. package/dist/backlog-parser.d.ts +1 -1
  19. package/dist/backlog-parser.d.ts.map +1 -1
  20. package/dist/backlog-parser.js.map +1 -1
  21. package/dist/backlog-sync-validator.d.ts.map +1 -1
  22. package/dist/backlog-sync-validator.js +9 -5
  23. package/dist/backlog-sync-validator.js.map +1 -1
  24. package/dist/branch-check.d.ts.map +1 -1
  25. package/dist/branch-check.js +3 -2
  26. package/dist/branch-check.js.map +1 -1
  27. package/dist/branch-drift.d.ts +1 -1
  28. package/dist/branch-drift.d.ts.map +1 -1
  29. package/dist/branch-drift.js.map +1 -1
  30. package/dist/cleanup-lock.d.ts +13 -4
  31. package/dist/cleanup-lock.d.ts.map +1 -1
  32. package/dist/cleanup-lock.js +1 -1
  33. package/dist/cleanup-lock.js.map +1 -1
  34. package/dist/code-path-validator.d.ts.map +1 -1
  35. package/dist/code-path-validator.js +3 -2
  36. package/dist/code-path-validator.js.map +1 -1
  37. package/dist/code-paths-overlap.d.ts +5 -4
  38. package/dist/code-paths-overlap.d.ts.map +1 -1
  39. package/dist/code-paths-overlap.js +16 -9
  40. package/dist/code-paths-overlap.js.map +1 -1
  41. package/dist/commands-logger.d.ts.map +1 -1
  42. package/dist/commands-logger.js +17 -9
  43. package/dist/commands-logger.js.map +1 -1
  44. package/dist/commit-message-utils.d.ts +1 -1
  45. package/dist/commit-message-utils.d.ts.map +1 -1
  46. package/dist/commit-message-utils.js.map +1 -1
  47. package/dist/constants/backlog-patterns.d.ts +1 -1
  48. package/dist/constants/backlog-patterns.d.ts.map +1 -1
  49. package/dist/constants/backlog-patterns.js.map +1 -1
  50. package/dist/core/scope-checker.d.ts +2 -2
  51. package/dist/core/scope-checker.d.ts.map +1 -1
  52. package/dist/core/scope-checker.js +18 -25
  53. package/dist/core/scope-checker.js.map +1 -1
  54. package/dist/core/tool-runner.d.ts.map +1 -1
  55. package/dist/core/tool-runner.js +2 -1
  56. package/dist/core/tool-runner.js.map +1 -1
  57. package/dist/core/tool.schemas.d.ts +2 -2
  58. package/dist/core/worktree-guard.d.ts.map +1 -1
  59. package/dist/core/worktree-guard.js +13 -18
  60. package/dist/core/worktree-guard.js.map +1 -1
  61. package/dist/date-utils.d.ts +3 -3
  62. package/dist/date-utils.d.ts.map +1 -1
  63. package/dist/date-utils.js +2 -2
  64. package/dist/date-utils.js.map +1 -1
  65. package/dist/delegation-escalation.d.ts.map +1 -1
  66. package/dist/delegation-escalation.js +6 -5
  67. package/dist/delegation-escalation.js.map +1 -1
  68. package/dist/delegation-registry-store.d.ts.map +1 -1
  69. package/dist/delegation-registry-store.js +6 -5
  70. package/dist/delegation-registry-store.js.map +1 -1
  71. package/dist/dependency-guard.d.ts +2 -2
  72. package/dist/dependency-guard.d.ts.map +1 -1
  73. package/dist/dependency-guard.js +4 -3
  74. package/dist/dependency-guard.js.map +1 -1
  75. package/dist/docs-layout-presets.d.ts +29 -0
  76. package/dist/docs-layout-presets.d.ts.map +1 -0
  77. package/dist/docs-layout-presets.js +38 -0
  78. package/dist/docs-layout-presets.js.map +1 -0
  79. package/dist/docs-path-validator.d.ts +2 -2
  80. package/dist/docs-path-validator.d.ts.map +1 -1
  81. package/dist/docs-path-validator.js +6 -9
  82. package/dist/docs-path-validator.js.map +1 -1
  83. package/dist/domain/index.d.ts +1 -0
  84. package/dist/domain/index.d.ts.map +1 -1
  85. package/dist/domain/index.js +2 -0
  86. package/dist/domain/index.js.map +1 -1
  87. package/dist/domain/result.d.ts +116 -0
  88. package/dist/domain/result.d.ts.map +1 -0
  89. package/dist/domain/result.js +96 -0
  90. package/dist/domain/result.js.map +1 -0
  91. package/dist/domain/validation.schemas.d.ts +3 -3
  92. package/dist/error-handler.d.ts +36 -3
  93. package/dist/error-handler.d.ts.map +1 -1
  94. package/dist/error-handler.js +36 -0
  95. package/dist/error-handler.js.map +1 -1
  96. package/dist/file-classifiers.d.ts +10 -18
  97. package/dist/file-classifiers.d.ts.map +1 -1
  98. package/dist/file-classifiers.js +22 -6
  99. package/dist/file-classifiers.js.map +1 -1
  100. package/dist/gates-coverage.js.map +1 -1
  101. package/dist/git-adapter.d.ts.map +1 -1
  102. package/dist/git-adapter.js +5 -4
  103. package/dist/git-adapter.js.map +1 -1
  104. package/dist/git-staged-validator.d.ts +4 -4
  105. package/dist/git-staged-validator.js +4 -4
  106. package/dist/incremental-lint.d.ts +3 -3
  107. package/dist/incremental-lint.d.ts.map +1 -1
  108. package/dist/incremental-lint.js.map +1 -1
  109. package/dist/incremental-test.d.ts +1 -1
  110. package/dist/incremental-test.d.ts.map +1 -1
  111. package/dist/incremental-test.js.map +1 -1
  112. package/dist/index.d.ts +7 -0
  113. package/dist/index.d.ts.map +1 -1
  114. package/dist/index.js +9 -0
  115. package/dist/index.js.map +1 -1
  116. package/dist/invariants/check-automated-tests.d.ts +1 -1
  117. package/dist/invariants/check-automated-tests.d.ts.map +1 -1
  118. package/dist/invariants/check-automated-tests.js.map +1 -1
  119. package/dist/invariants-runner.d.ts.map +1 -1
  120. package/dist/invariants-runner.js +4 -4
  121. package/dist/invariants-runner.js.map +1 -1
  122. package/dist/lane-checker.d.ts.map +1 -1
  123. package/dist/lane-checker.js +13 -12
  124. package/dist/lane-checker.js.map +1 -1
  125. package/dist/lane-validator.d.ts +17 -10
  126. package/dist/lane-validator.d.ts.map +1 -1
  127. package/dist/lane-validator.js +6 -6
  128. package/dist/lane-validator.js.map +1 -1
  129. package/dist/logs-lib.d.ts +1 -1
  130. package/dist/logs-lib.d.ts.map +1 -1
  131. package/dist/logs-lib.js.map +1 -1
  132. package/dist/lumenflow-config-schema.d.ts +8 -0
  133. package/dist/lumenflow-config-schema.d.ts.map +1 -1
  134. package/dist/lumenflow-config-schema.js +3 -1
  135. package/dist/lumenflow-config-schema.js.map +1 -1
  136. package/dist/lumenflow-config.d.ts +9 -2
  137. package/dist/lumenflow-config.d.ts.map +1 -1
  138. package/dist/lumenflow-config.js +12 -4
  139. package/dist/lumenflow-config.js.map +1 -1
  140. package/dist/lumenflow-home.d.ts +3 -3
  141. package/dist/lumenflow-home.js +3 -3
  142. package/dist/manual-test-validator.d.ts +15 -7
  143. package/dist/manual-test-validator.d.ts.map +1 -1
  144. package/dist/manual-test-validator.js +9 -8
  145. package/dist/manual-test-validator.js.map +1 -1
  146. package/dist/micro-worktree.d.ts.map +1 -1
  147. package/dist/micro-worktree.js +6 -5
  148. package/dist/micro-worktree.js.map +1 -1
  149. package/dist/orphan-detector.d.ts +11 -11
  150. package/dist/orphan-detector.d.ts.map +1 -1
  151. package/dist/orphan-detector.js.map +1 -1
  152. package/dist/pack-authoring-template-engine.d.ts.map +1 -1
  153. package/dist/pack-authoring-template-engine.js +8 -7
  154. package/dist/pack-authoring-template-engine.js.map +1 -1
  155. package/dist/path-classifiers.d.ts +6 -18
  156. package/dist/path-classifiers.d.ts.map +1 -1
  157. package/dist/path-classifiers.js +11 -15
  158. package/dist/path-classifiers.js.map +1 -1
  159. package/dist/path-factory.d.ts +54 -0
  160. package/dist/path-factory.d.ts.map +1 -0
  161. package/dist/path-factory.js +67 -0
  162. package/dist/path-factory.js.map +1 -0
  163. package/dist/piped-command-detector.d.ts +2 -2
  164. package/dist/piped-command-detector.d.ts.map +1 -1
  165. package/dist/piped-command-detector.js.map +1 -1
  166. package/dist/ports/context.ports.d.ts +17 -1
  167. package/dist/ports/context.ports.d.ts.map +1 -1
  168. package/dist/ports/recovery.ports.d.ts +10 -0
  169. package/dist/ports/recovery.ports.d.ts.map +1 -1
  170. package/dist/ports/validation.ports.d.ts +5 -0
  171. package/dist/ports/validation.ports.d.ts.map +1 -1
  172. package/dist/ports/wu-state.ports.d.ts +8 -1
  173. package/dist/ports/wu-state.ports.d.ts.map +1 -1
  174. package/dist/process-detector.d.ts +13 -6
  175. package/dist/process-detector.d.ts.map +1 -1
  176. package/dist/process-detector.js +3 -2
  177. package/dist/process-detector.js.map +1 -1
  178. package/dist/prompt-linter.d.ts +19 -1
  179. package/dist/prompt-linter.d.ts.map +1 -1
  180. package/dist/prompt-linter.js +13 -18
  181. package/dist/prompt-linter.js.map +1 -1
  182. package/dist/prompt-monitor.js +13 -9
  183. package/dist/prompt-monitor.js.map +1 -1
  184. package/dist/retry-strategy.d.ts +18 -39
  185. package/dist/retry-strategy.d.ts.map +1 -1
  186. package/dist/retry-strategy.js +13 -9
  187. package/dist/retry-strategy.js.map +1 -1
  188. package/dist/schemas/directories-config.d.ts +1 -0
  189. package/dist/schemas/directories-config.d.ts.map +1 -1
  190. package/dist/schemas/directories-config.js +25 -39
  191. package/dist/schemas/directories-config.js.map +1 -1
  192. package/dist/schemas/flow-arg-validators.d.ts +6 -6
  193. package/dist/schemas/flow-schemas.d.ts +12 -12
  194. package/dist/schemas/initiative-arg-validators.d.ts +2 -2
  195. package/dist/schemas/initiative-schemas.d.ts +5 -5
  196. package/dist/schemas/operational-config.d.ts +17 -0
  197. package/dist/schemas/operational-config.d.ts.map +1 -1
  198. package/dist/schemas/operational-config.js +21 -0
  199. package/dist/schemas/operational-config.js.map +1 -1
  200. package/dist/schemas/wu-lifecycle-arg-validators.d.ts +2 -2
  201. package/dist/schemas/wu-lifecycle-schemas.d.ts +4 -4
  202. package/dist/section-headings.d.ts +1 -1
  203. package/dist/section-headings.d.ts.map +1 -1
  204. package/dist/section-headings.js.map +1 -1
  205. package/dist/telemetry.d.ts +65 -6
  206. package/dist/telemetry.d.ts.map +1 -1
  207. package/dist/telemetry.js +516 -3
  208. package/dist/telemetry.js.map +1 -1
  209. package/dist/template-loader.d.ts +1 -5
  210. package/dist/template-loader.d.ts.map +1 -1
  211. package/dist/template-loader.js +5 -20
  212. package/dist/template-loader.js.map +1 -1
  213. package/dist/usecases/index.d.ts +9 -0
  214. package/dist/usecases/index.d.ts.map +1 -1
  215. package/dist/usecases/index.js +9 -0
  216. package/dist/usecases/index.js.map +1 -1
  217. package/dist/user-normalizer.d.ts +3 -3
  218. package/dist/user-normalizer.d.ts.map +1 -1
  219. package/dist/user-normalizer.js +1 -1
  220. package/dist/user-normalizer.js.map +1 -1
  221. package/dist/worktree-ownership.d.ts +1 -1
  222. package/dist/worktree-ownership.d.ts.map +1 -1
  223. package/dist/worktree-ownership.js.map +1 -1
  224. package/dist/wu-backlog-updater.d.ts +1 -1
  225. package/dist/wu-backlog-updater.d.ts.map +1 -1
  226. package/dist/wu-backlog-updater.js.map +1 -1
  227. package/dist/wu-checkpoint.d.ts +16 -9
  228. package/dist/wu-checkpoint.d.ts.map +1 -1
  229. package/dist/wu-checkpoint.js +0 -10
  230. package/dist/wu-checkpoint.js.map +1 -1
  231. package/dist/wu-claim-helpers.d.ts +4 -2
  232. package/dist/wu-claim-helpers.d.ts.map +1 -1
  233. package/dist/wu-claim-helpers.js +2 -1
  234. package/dist/wu-claim-helpers.js.map +1 -1
  235. package/dist/wu-claim-resume.d.ts +49 -37
  236. package/dist/wu-claim-resume.d.ts.map +1 -1
  237. package/dist/wu-claim-resume.js +9 -6
  238. package/dist/wu-claim-resume.js.map +1 -1
  239. package/dist/wu-consistency-file-repairs.d.ts +1 -1
  240. package/dist/wu-consistency-file-repairs.d.ts.map +1 -1
  241. package/dist/wu-consistency-file-repairs.js +7 -5
  242. package/dist/wu-consistency-file-repairs.js.map +1 -1
  243. package/dist/wu-constants.d.ts +2 -2
  244. package/dist/wu-constants.d.ts.map +1 -1
  245. package/dist/wu-constants.js +2 -2
  246. package/dist/wu-constants.js.map +1 -1
  247. package/dist/wu-context-constants.d.ts +68 -0
  248. package/dist/wu-context-constants.d.ts.map +1 -1
  249. package/dist/wu-context-constants.js +73 -0
  250. package/dist/wu-context-constants.js.map +1 -1
  251. package/dist/wu-create-validators.d.ts +9 -6
  252. package/dist/wu-create-validators.d.ts.map +1 -1
  253. package/dist/wu-create-validators.js +7 -5
  254. package/dist/wu-create-validators.js.map +1 -1
  255. package/dist/wu-done-branch-only.d.ts.map +1 -1
  256. package/dist/wu-done-branch-only.js +14 -14
  257. package/dist/wu-done-branch-only.js.map +1 -1
  258. package/dist/wu-done-branch-utils.d.ts +1 -1
  259. package/dist/wu-done-branch-utils.d.ts.map +1 -1
  260. package/dist/wu-done-branch-utils.js.map +1 -1
  261. package/dist/wu-done-concurrent-merge.d.ts.map +1 -1
  262. package/dist/wu-done-concurrent-merge.js +8 -7
  263. package/dist/wu-done-concurrent-merge.js.map +1 -1
  264. package/dist/wu-done-docs-only.d.ts +1 -1
  265. package/dist/wu-done-docs-only.d.ts.map +1 -1
  266. package/dist/wu-done-docs-only.js +3 -2
  267. package/dist/wu-done-docs-only.js.map +1 -1
  268. package/dist/wu-done-errors.d.ts +3 -3
  269. package/dist/wu-done-errors.d.ts.map +1 -1
  270. package/dist/wu-done-errors.js.map +1 -1
  271. package/dist/wu-done-inputs.d.ts +1 -1
  272. package/dist/wu-done-inputs.d.ts.map +1 -1
  273. package/dist/wu-done-inputs.js.map +1 -1
  274. package/dist/wu-done-metadata.d.ts +2 -2
  275. package/dist/wu-done-metadata.d.ts.map +1 -1
  276. package/dist/wu-done-metadata.js +3 -5
  277. package/dist/wu-done-metadata.js.map +1 -1
  278. package/dist/wu-done-preflight-checks.js +2 -2
  279. package/dist/wu-done-preflight-checks.js.map +1 -1
  280. package/dist/wu-done-preflight.d.ts.map +1 -1
  281. package/dist/wu-done-preflight.js +3 -2
  282. package/dist/wu-done-preflight.js.map +1 -1
  283. package/dist/wu-done-rebase.d.ts.map +1 -1
  284. package/dist/wu-done-rebase.js +6 -8
  285. package/dist/wu-done-rebase.js.map +1 -1
  286. package/dist/wu-done-retry-helpers.d.ts +30 -7
  287. package/dist/wu-done-retry-helpers.d.ts.map +1 -1
  288. package/dist/wu-done-retry-helpers.js +17 -14
  289. package/dist/wu-done-retry-helpers.js.map +1 -1
  290. package/dist/wu-done-ui.d.ts +1 -1
  291. package/dist/wu-done-ui.d.ts.map +1 -1
  292. package/dist/wu-done-ui.js +1 -3
  293. package/dist/wu-done-ui.js.map +1 -1
  294. package/dist/wu-done-validation.d.ts.map +1 -1
  295. package/dist/wu-done-validation.js +10 -23
  296. package/dist/wu-done-validation.js.map +1 -1
  297. package/dist/wu-done-worktree.js.map +1 -1
  298. package/dist/wu-event-sourcer.d.ts +15 -2
  299. package/dist/wu-event-sourcer.d.ts.map +1 -1
  300. package/dist/wu-event-sourcer.js +79 -44
  301. package/dist/wu-event-sourcer.js.map +1 -1
  302. package/dist/wu-events-cleanup.d.ts.map +1 -1
  303. package/dist/wu-events-cleanup.js +4 -3
  304. package/dist/wu-events-cleanup.js.map +1 -1
  305. package/dist/wu-helpers.d.ts.map +1 -1
  306. package/dist/wu-helpers.js +3 -3
  307. package/dist/wu-helpers.js.map +1 -1
  308. package/dist/wu-id-generator.d.ts.map +1 -1
  309. package/dist/wu-id-generator.js +2 -1
  310. package/dist/wu-id-generator.js.map +1 -1
  311. package/dist/wu-inconsistency-repairer.d.ts.map +1 -1
  312. package/dist/wu-inconsistency-repairer.js +7 -5
  313. package/dist/wu-inconsistency-repairer.js.map +1 -1
  314. package/dist/wu-lint.d.ts +61 -78
  315. package/dist/wu-lint.d.ts.map +1 -1
  316. package/dist/wu-lint.js +9 -4
  317. package/dist/wu-lint.js.map +1 -1
  318. package/dist/wu-lock-manager.d.ts.map +1 -1
  319. package/dist/wu-lock-manager.js +2 -1
  320. package/dist/wu-lock-manager.js.map +1 -1
  321. package/dist/wu-paths-constants.d.ts +4 -9
  322. package/dist/wu-paths-constants.d.ts.map +1 -1
  323. package/dist/wu-paths-constants.js +10 -13
  324. package/dist/wu-paths-constants.js.map +1 -1
  325. package/dist/wu-paths.d.ts +11 -1
  326. package/dist/wu-paths.d.ts.map +1 -1
  327. package/dist/wu-paths.js +10 -20
  328. package/dist/wu-paths.js.map +1 -1
  329. package/dist/wu-recovery.js +2 -2
  330. package/dist/wu-recovery.js.map +1 -1
  331. package/dist/wu-repair-core.js +1 -1
  332. package/dist/wu-repair-core.js.map +1 -1
  333. package/dist/wu-rules-core.d.ts.map +1 -1
  334. package/dist/wu-rules-core.js +2 -1
  335. package/dist/wu-rules-core.js.map +1 -1
  336. package/dist/wu-schema-normalization.d.ts +3 -1
  337. package/dist/wu-schema-normalization.d.ts.map +1 -1
  338. package/dist/wu-schema-normalization.js +6 -4
  339. package/dist/wu-schema-normalization.js.map +1 -1
  340. package/dist/wu-schema.d.ts +64 -5
  341. package/dist/wu-schema.d.ts.map +1 -1
  342. package/dist/wu-schema.js +49 -6
  343. package/dist/wu-schema.js.map +1 -1
  344. package/dist/wu-spawn-context.d.ts.map +1 -1
  345. package/dist/wu-spawn-context.js +2 -1
  346. package/dist/wu-spawn-context.js.map +1 -1
  347. package/dist/wu-spawn-helpers.d.ts.map +1 -1
  348. package/dist/wu-spawn-helpers.js +4 -4
  349. package/dist/wu-spawn-helpers.js.map +1 -1
  350. package/dist/wu-spawn.js.map +1 -1
  351. package/dist/wu-state-schema.d.ts +1 -1
  352. package/dist/wu-state-schema.d.ts.map +1 -1
  353. package/dist/wu-state-schema.js.map +1 -1
  354. package/dist/wu-state-store.d.ts +1 -1
  355. package/dist/wu-state-store.d.ts.map +1 -1
  356. package/dist/wu-state-store.js +6 -5
  357. package/dist/wu-state-store.js.map +1 -1
  358. package/dist/wu-status-updater.d.ts +2 -2
  359. package/dist/wu-status-updater.d.ts.map +1 -1
  360. package/dist/wu-status-updater.js.map +1 -1
  361. package/dist/wu-yaml.d.ts +12 -9
  362. package/dist/wu-yaml.d.ts.map +1 -1
  363. package/dist/wu-yaml.js +62 -55
  364. package/dist/wu-yaml.js.map +1 -1
  365. package/package.json +2 -2
  366. package/dist/wu-delegation-cutover.d.ts +0 -5
  367. package/dist/wu-delegation-cutover.d.ts.map +0 -1
  368. package/dist/wu-delegation-cutover.js +0 -231
  369. package/dist/wu-delegation-cutover.js.map +0 -1
@@ -2,6 +2,7 @@
2
2
  // SPDX-License-Identifier: AGPL-3.0-only
3
3
  import YAML from 'yaml';
4
4
  import { z } from 'zod';
5
+ import { createError, ErrorCodes } from './error-handler.js';
5
6
  const PACK_ID_PATTERN = /^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/;
6
7
  const TOOL_NAME_PATTERN = /^[a-z][a-z0-9]*(?:[:-][a-z][a-z0-9-]*)*$/;
7
8
  const SEMVER_PATTERN = /^\d+\.\d+\.\d+(?:-[0-9A-Za-z-.]+)?(?:\+[0-9A-Za-z-.]+)?$/;
@@ -37,26 +38,26 @@ const StrictToolNameSchema = z
37
38
  const StrictVersionSchema = z.string().regex(SEMVER_PATTERN, TEMPLATE_VALIDATION_MESSAGES.VERSION);
38
39
  function validateScopePattern(scopePattern, allowBroadPattern) {
39
40
  if (scopePattern.includes(NULL_BYTE)) {
40
- throw new Error(TEMPLATE_VALIDATION_MESSAGES.SCOPE_NULL_BYTE);
41
+ throw createError(ErrorCodes.TEMPLATE_VALIDATION_ERROR, TEMPLATE_VALIDATION_MESSAGES.SCOPE_NULL_BYTE);
41
42
  }
42
43
  if (SCOPE_TRAVERSAL_PATTERN.test(scopePattern)) {
43
- throw new Error(TEMPLATE_VALIDATION_MESSAGES.SCOPE_TRAVERSAL);
44
+ throw createError(ErrorCodes.TEMPLATE_VALIDATION_ERROR, TEMPLATE_VALIDATION_MESSAGES.SCOPE_TRAVERSAL);
44
45
  }
45
46
  const normalized = scopePattern.trim();
46
47
  if (!allowBroadPattern && DISALLOWED_SCOPE_PATTERNS.has(normalized)) {
47
- throw new Error(TEMPLATE_VALIDATION_MESSAGES.SCOPE_BROAD);
48
+ throw createError(ErrorCodes.TEMPLATE_VALIDATION_ERROR, TEMPLATE_VALIDATION_MESSAGES.SCOPE_BROAD);
48
49
  }
49
50
  }
50
51
  function validateAllowedUrl(value) {
51
52
  const parsed = new URL(value);
52
53
  if (parsed.protocol !== 'https:') {
53
- throw new Error(TEMPLATE_VALIDATION_MESSAGES.HTTP_HTTPS);
54
+ throw createError(ErrorCodes.TEMPLATE_VALIDATION_ERROR, TEMPLATE_VALIDATION_MESSAGES.HTTP_HTTPS);
54
55
  }
55
56
  if (parsed.username.length > 0 || parsed.password.length > 0) {
56
- throw new Error(TEMPLATE_VALIDATION_MESSAGES.HTTP_CREDENTIALS);
57
+ throw createError(ErrorCodes.TEMPLATE_VALIDATION_ERROR, TEMPLATE_VALIDATION_MESSAGES.HTTP_CREDENTIALS);
57
58
  }
58
59
  if (parsed.search.length > 0 || parsed.hash.length > 0) {
59
- throw new Error(TEMPLATE_VALIDATION_MESSAGES.HTTP_FRAGMENT_QUERY);
60
+ throw createError(ErrorCodes.TEMPLATE_VALIDATION_ERROR, TEMPLATE_VALIDATION_MESSAGES.HTTP_FRAGMENT_QUERY);
60
61
  }
61
62
  }
62
63
  const FileReadTextTemplateSchema = z
@@ -201,7 +202,7 @@ function deriveScopePrefix(scopePattern) {
201
202
  const prefixCandidate = wildcardIndex === -1 ? trimmed : trimmed.slice(0, wildcardIndex);
202
203
  const normalizedPrefix = prefixCandidate.replace(/^\.?\//, '').replace(/\/+$/, '');
203
204
  if (normalizedPrefix.length === 0) {
204
- throw new Error(TEMPLATE_VALIDATION_MESSAGES.SCOPE_BROAD);
205
+ throw createError(ErrorCodes.TEMPLATE_VALIDATION_ERROR, TEMPLATE_VALIDATION_MESSAGES.SCOPE_BROAD);
205
206
  }
206
207
  return normalizedPrefix;
207
208
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pack-authoring-template-engine.js","sourceRoot":"","sources":["../src/pack-authoring-template-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pack-authoring-template-engine.js","sourceRoot":"","sources":["../src/pack-authoring-template-engine.ts"],"names":[],"mappings":"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"}
@@ -1,23 +1,11 @@
1
1
  #!/usr/bin/env node
2
- /**
3
- * Path Classification Utilities for WU Tooling
4
- *
5
- * WU-1255: Classifies file paths to determine test scoping.
6
- * Uses string methods (no regex) for path prefix matching.
7
- *
8
- * Paths that skip web app tests:
9
- * - Documentation: docs/, ai/, .claude/, README*, CLAUDE*.md
10
- * - Tooling: tools/, scripts/
11
- *
12
- * @see {@link ./wu-done-paths.js} - Consumer for detectDocsOnlyByPaths
13
- */
14
2
  /**
15
3
  * Prefixes for paths that should skip web app tests.
16
- * These are paths for docs, tooling, and configuration that don't affect app functionality.
17
- *
18
- * @constant {string[]}
4
+ * Combines configured docs-only prefixes with tooling/script prefixes.
19
5
  */
20
- export declare const SKIP_TESTS_PREFIXES: readonly string[];
6
+ export declare function getSkipTestsPrefixes(options?: {
7
+ projectRoot?: string;
8
+ }): readonly string[];
21
9
  /**
22
10
  * Root file patterns that should skip web app tests.
23
11
  * These are files in the root directory that are documentation.
@@ -40,7 +28,7 @@ export declare const SKIP_TESTS_ROOT_FILES: readonly string[];
40
28
  * isSkipWebTestsPath('tools/wu-done.js') // true
41
29
  * isSkipWebTestsPath('apps/web/src/page.tsx') // false
42
30
  */
43
- export declare function isSkipWebTestsPath(filePath: UnsafeAny): boolean;
31
+ export declare function isSkipWebTestsPath(filePath: string): boolean;
44
32
  /**
45
33
  * Check if ALL code paths should skip web app tests.
46
34
  *
@@ -54,5 +42,5 @@ export declare function isSkipWebTestsPath(filePath: UnsafeAny): boolean;
54
42
  * shouldSkipWebTests(['docs/README.md', 'tools/wu-done.js']) // true
55
43
  * shouldSkipWebTests(['docs/README.md', 'apps/web/src/page.tsx']) // false
56
44
  */
57
- export declare function shouldSkipWebTests(codePaths: UnsafeAny): boolean;
45
+ export declare function shouldSkipWebTests(codePaths: string[] | null | undefined): boolean;
58
46
  //# sourceMappingURL=path-classifiers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"path-classifiers.d.ts","sourceRoot":"","sources":["../src/path-classifiers.ts"],"names":[],"mappings":";AAGA;;;;;;;;;;;GAWG;AAEH;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,mBAM9B,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,mBAGhC,CAAC;AAEH;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,SAAS,WA0BrD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,SAAS,WAMtD"}
1
+ {"version":3,"file":"path-classifiers.d.ts","sourceRoot":"","sources":["../src/path-classifiers.ts"],"names":[],"mappings":";AAsBA;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,GAAE;IACP,WAAW,CAAC,EAAE,MAAM,CAAC;CACjB,GACL,SAAS,MAAM,EAAE,CAEnB;AAED;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,mBAAuB,CAAC;AAE1D;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,WA0BlD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,GAAG,SAAS,WAMxE"}
@@ -13,29 +13,25 @@
13
13
  *
14
14
  * @see {@link ./wu-done-paths.js} - Consumer for detectDocsOnlyByPaths
15
15
  */
16
+ import { getDocsOnlyPrefixes, DOCS_ONLY_ROOT_FILES } from './file-classifiers.js';
17
+ /**
18
+ * Extra skip-tests prefixes that are independent of docs layout config.
19
+ */
20
+ const SKIP_TESTS_EXTRA_PREFIXES = Object.freeze(['tools/', 'scripts/']);
16
21
  /**
17
22
  * Prefixes for paths that should skip web app tests.
18
- * These are paths for docs, tooling, and configuration that don't affect app functionality.
19
- *
20
- * @constant {string[]}
23
+ * Combines configured docs-only prefixes with tooling/script prefixes.
21
24
  */
22
- export const SKIP_TESTS_PREFIXES = Object.freeze([
23
- 'docs/',
24
- 'ai/',
25
- '.claude/',
26
- 'tools/', // WU-1255: Tooling WUs
27
- 'scripts/', // WU-1255: Scripts WUs
28
- ]);
25
+ export function getSkipTestsPrefixes(options = {}) {
26
+ return Object.freeze([...getDocsOnlyPrefixes(options), ...SKIP_TESTS_EXTRA_PREFIXES]);
27
+ }
29
28
  /**
30
29
  * Root file patterns that should skip web app tests.
31
30
  * These are files in the root directory that are documentation.
32
31
  *
33
32
  * @constant {string[]}
34
33
  */
35
- export const SKIP_TESTS_ROOT_FILES = Object.freeze([
36
- 'readme', // Case-insensitive match
37
- 'claude', // CLAUDE.md, CLAUDE-core.md, etc.
38
- ]);
34
+ export const SKIP_TESTS_ROOT_FILES = DOCS_ONLY_ROOT_FILES;
39
35
  /**
40
36
  * Check if a single file path should skip web app tests.
41
37
  *
@@ -60,7 +56,7 @@ export function isSkipWebTestsPath(filePath) {
60
56
  return false;
61
57
  }
62
58
  // Check directory prefixes (docs/, ai/, .claude/, tools/, scripts/)
63
- for (const prefix of SKIP_TESTS_PREFIXES) {
59
+ for (const prefix of getSkipTestsPrefixes()) {
64
60
  if (path.startsWith(prefix)) {
65
61
  return true;
66
62
  }
@@ -1 +1 @@
1
- {"version":3,"file":"path-classifiers.js","sourceRoot":"","sources":["../src/path-classifiers.ts"],"names":[],"mappings":";AACA,iCAAiC;AACjC,yCAAyC;AACzC;;;;;;;;;;;GAWG;AAEH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC;IAC/C,OAAO;IACP,KAAK;IACL,UAAU;IACV,QAAQ,EAAE,uBAAuB;IACjC,UAAU,EAAE,uBAAuB;CACpC,CAAC,CAAC;AAEH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC;IACjD,QAAQ,EAAE,yBAAyB;IACnC,QAAQ,EAAE,kCAAkC;CAC7C,CAAC,CAAC;AAEH;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAmB;IACpD,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC9C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC7B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,oEAAoE;IACpE,KAAK,MAAM,MAAM,IAAI,mBAAmB,EAAE,CAAC;QACzC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,iDAAiD;IACjD,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IACrC,KAAK,MAAM,OAAO,IAAI,qBAAqB,EAAE,CAAC;QAC5C,IAAI,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,kBAAkB,CAAC,SAAoB;IACrD,IAAI,CAAC,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7D,CAAC"}
1
+ {"version":3,"file":"path-classifiers.js","sourceRoot":"","sources":["../src/path-classifiers.ts"],"names":[],"mappings":";AACA,iCAAiC;AACjC,yCAAyC;AACzC;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAElF;;GAEG;AACH,MAAM,yBAAyB,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;AAExE;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAClC,UAEI,EAAE;IAEN,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,mBAAmB,CAAC,OAAO,CAAC,EAAE,GAAG,yBAAyB,CAAC,CAAC,CAAC;AACxF,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,oBAAoB,CAAC;AAE1D;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAgB;IACjD,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC9C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC7B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,oEAAoE;IACpE,KAAK,MAAM,MAAM,IAAI,oBAAoB,EAAE,EAAE,CAAC;QAC5C,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,iDAAiD;IACjD,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IACrC,KAAK,MAAM,OAAO,IAAI,qBAAqB,EAAE,CAAC;QAC5C,IAAI,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,kBAAkB,CAAC,SAAsC;IACvE,IAAI,CAAC,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7D,CAAC"}
@@ -0,0 +1,54 @@
1
+ import { LUMENFLOW_PATHS } from './wu-paths-constants.js';
2
+ /**
3
+ * Valid keys for LUMENFLOW_PATHS constant lookups.
4
+ */
5
+ export type LumenflowPathKey = keyof typeof LUMENFLOW_PATHS;
6
+ /**
7
+ * PathFactory interface: consistent API for resolving project-relative paths.
8
+ */
9
+ export interface PathFactory {
10
+ /** Absolute path to the project root directory. */
11
+ readonly projectRoot: string;
12
+ /**
13
+ * Resolve a relative path against projectRoot.
14
+ *
15
+ * If the path is already absolute, it is returned unchanged.
16
+ * If the path is empty, projectRoot is returned.
17
+ *
18
+ * @param relativePath - Path relative to project root
19
+ * @returns Absolute path
20
+ */
21
+ resolve(relativePath: string): string;
22
+ /**
23
+ * Resolve a LUMENFLOW_PATHS constant to an absolute path.
24
+ *
25
+ * @param key - A key from LUMENFLOW_PATHS (e.g., 'COMMANDS_LOG', 'TELEMETRY')
26
+ * @returns Absolute path
27
+ * @throws Error if key is not a valid LUMENFLOW_PATHS key
28
+ */
29
+ resolveLumenflowPath(key: LumenflowPathKey): string;
30
+ }
31
+ /**
32
+ * Options for creating a PathFactory.
33
+ */
34
+ export interface PathFactoryOptions {
35
+ /**
36
+ * Override project root directory.
37
+ * If omitted, uses config-based project root discovery.
38
+ */
39
+ projectRoot?: string;
40
+ }
41
+ /**
42
+ * Create a PathFactory instance.
43
+ *
44
+ * Consolidates path resolution into one testable boundary.
45
+ * Replaces:
46
+ * - `resolve(__dirname, '../..')` in prompt-monitor.ts, prompt-linter.ts, commands-logger.ts
47
+ * - `getProjectRoot(import.meta.url)` from wu-domain-constants.ts
48
+ * - `resolveFromProjectRoot(relativePath)` from wu-paths.ts
49
+ *
50
+ * @param options - Configuration options
51
+ * @returns PathFactory instance
52
+ */
53
+ export declare function createPathFactory(options?: PathFactoryOptions): PathFactory;
54
+ //# sourceMappingURL=path-factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"path-factory.d.ts","sourceRoot":"","sources":["../src/path-factory.ts"],"names":[],"mappings":"AA0BA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAI1D;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,eAAe,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,mDAAmD;IACnD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B;;;;;;;;OAQG;IACH,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC;IAEtC;;;;;;OAMG;IACH,oBAAoB,CAAC,GAAG,EAAE,gBAAgB,GAAG,MAAM,CAAC;CACrD;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,kBAAuB,GAAG,WAAW,CAiC/E"}
@@ -0,0 +1,67 @@
1
+ // Copyright (c) 2026 Hellmai Ltd
2
+ // SPDX-License-Identifier: AGPL-3.0-only
3
+ /**
4
+ * PathFactory - Shared path resolution for all packages
5
+ *
6
+ * WU-2124: Consolidates 3 independent path resolution patterns into a single
7
+ * factory with a consistent API:
8
+ * (1) direct __dirname-relative paths (prompt-monitor, prompt-linter, commands-logger)
9
+ * (2) ILocationResolver.resolveRoot() adapter calls
10
+ * (3) inline resolve(__dirname, '../..') patterns
11
+ *
12
+ * Usage:
13
+ * ```ts
14
+ * import { createPathFactory } from './path-factory.js';
15
+ *
16
+ * const paths = createPathFactory({ projectRoot: '/repo' });
17
+ * paths.resolve('.lumenflow/commands.log'); // => '/repo/.lumenflow/commands.log'
18
+ * paths.resolveLumenflowPath('COMMANDS_LOG'); // => '/repo/.lumenflow/commands.log'
19
+ * paths.projectRoot; // => '/repo'
20
+ * ```
21
+ *
22
+ * @module path-factory
23
+ */
24
+ import * as path from 'node:path';
25
+ import { LUMENFLOW_PATHS } from './wu-paths-constants.js';
26
+ import { getProjectRoot as getProjectRootFromConfig } from './lumenflow-config.js';
27
+ import { createError, ErrorCodes } from './error-handler.js';
28
+ /**
29
+ * Create a PathFactory instance.
30
+ *
31
+ * Consolidates path resolution into one testable boundary.
32
+ * Replaces:
33
+ * - `resolve(__dirname, '../..')` in prompt-monitor.ts, prompt-linter.ts, commands-logger.ts
34
+ * - `getProjectRoot(import.meta.url)` from wu-domain-constants.ts
35
+ * - `resolveFromProjectRoot(relativePath)` from wu-paths.ts
36
+ *
37
+ * @param options - Configuration options
38
+ * @returns PathFactory instance
39
+ */
40
+ export function createPathFactory(options = {}) {
41
+ const projectRoot = options.projectRoot ?? getProjectRootFromConfig();
42
+ return {
43
+ get projectRoot() {
44
+ return projectRoot;
45
+ },
46
+ resolve(relativePath) {
47
+ if (!relativePath) {
48
+ return projectRoot;
49
+ }
50
+ if (path.isAbsolute(relativePath)) {
51
+ return relativePath;
52
+ }
53
+ return path.join(projectRoot, relativePath);
54
+ },
55
+ resolveLumenflowPath(key) {
56
+ // TypeScript enforces key validity at compile time via LumenflowPathKey type.
57
+ // Runtime check uses 'in' operator for defense-in-depth without triggering
58
+ // sonarjs/different-types-comparison on the value check.
59
+ if (!(key in LUMENFLOW_PATHS)) {
60
+ throw createError(ErrorCodes.INVALID_ARGUMENT, `Unknown LUMENFLOW_PATHS key: ${String(key)}`, { key: String(key) });
61
+ }
62
+ const relativePath = LUMENFLOW_PATHS[key];
63
+ return path.join(projectRoot, String(relativePath));
64
+ },
65
+ };
66
+ }
67
+ //# sourceMappingURL=path-factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"path-factory.js","sourceRoot":"","sources":["../src/path-factory.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,cAAc,IAAI,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AA8C7D;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAAC,UAA8B,EAAE;IAChE,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,wBAAwB,EAAE,CAAC;IAEtE,OAAO;QACL,IAAI,WAAW;YACb,OAAO,WAAW,CAAC;QACrB,CAAC;QAED,OAAO,CAAC,YAAoB;YAC1B,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,OAAO,WAAW,CAAC;YACrB,CAAC;YACD,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;gBAClC,OAAO,YAAY,CAAC;YACtB,CAAC;YACD,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QAC9C,CAAC;QAED,oBAAoB,CAAC,GAAqB;YACxC,8EAA8E;YAC9E,2EAA2E;YAC3E,yDAAyD;YACzD,IAAI,CAAC,CAAC,GAAG,IAAI,eAAe,CAAC,EAAE,CAAC;gBAC9B,MAAM,WAAW,CACf,UAAU,CAAC,gBAAgB,EAC3B,gCAAgC,MAAM,CAAC,GAAG,CAAC,EAAE,EAC7C,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CACrB,CAAC;YACJ,CAAC;YACD,MAAM,YAAY,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;QACtD,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -14,12 +14,12 @@
14
14
  * @param {string} command - Shell command to analyze
15
15
  * @returns {boolean} True if command is a piped pnpm dependency command
16
16
  */
17
- export declare function isPipedPnpmCommand(command: UnsafeAny): boolean;
17
+ export declare function isPipedPnpmCommand(command: string): boolean;
18
18
  /**
19
19
  * Check if a command contains UnsafeAny dependency-mutating pnpm subcommand
20
20
  *
21
21
  * @param {string} command - Shell command to analyze
22
22
  * @returns {boolean} True if command contains pnpm dependency mutation
23
23
  */
24
- export declare function containsPnpmDependencyCommand(command: UnsafeAny): boolean;
24
+ export declare function containsPnpmDependencyCommand(command: string): boolean;
25
25
  //# sourceMappingURL=piped-command-detector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"piped-command-detector.d.ts","sourceRoot":"","sources":["../src/piped-command-detector.ts"],"names":[],"mappings":"AAoBA;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,SAAS,WAqBpD;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,SAAS,WAQ/D"}
1
+ {"version":3,"file":"piped-command-detector.d.ts","sourceRoot":"","sources":["../src/piped-command-detector.ts"],"names":[],"mappings":"AAoBA;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,WAqBjD;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,MAAM,WAQ5D"}
@@ -1 +1 @@
1
- {"version":3,"file":"piped-command-detector.js","sourceRoot":"","sources":["../src/piped-command-detector.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,yCAAyC;AAEzC;;;;;;;;;GASG;AAEH;;;GAGG;AACH,MAAM,mBAAmB,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;AAEjG;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAkB;IACnD,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC5C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,8DAA8D;IAC9D,kDAAkD;IAClD,MAAM,aAAa,GAAG,8DAA8D,CAAC;IACrF,IAAI,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,0CAA0C;IAC1C,yDAAyD;IACzD,MAAM,eAAe,GAAG,oEAAoE,CAAC;IAC7F,MAAM,cAAc,GAAG,iEAAiE,CAAC;IACzF,IAAI,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAClE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,6BAA6B,CAAC,OAAkB;IAC9D,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC5C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,4HAA4H;IAC5H,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,YAAY,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjF,OAAO,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC/B,CAAC"}
1
+ {"version":3,"file":"piped-command-detector.js","sourceRoot":"","sources":["../src/piped-command-detector.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,yCAAyC;AAEzC;;;;;;;;;GASG;AAEH;;;GAGG;AACH,MAAM,mBAAmB,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;AAEjG;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe;IAChD,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC5C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,8DAA8D;IAC9D,kDAAkD;IAClD,MAAM,aAAa,GAAG,8DAA8D,CAAC;IACrF,IAAI,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,0CAA0C;IAC1C,yDAAyD;IACzD,MAAM,eAAe,GAAG,oEAAoE,CAAC;IAC7F,MAAM,cAAc,GAAG,iEAAiE,CAAC;IACzF,IAAI,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAClE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,6BAA6B,CAAC,OAAe;IAC3D,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC5C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,4HAA4H;IAC5H,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,YAAY,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjF,OAAO,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC/B,CAAC"}
@@ -2,10 +2,16 @@
2
2
  * Context Ports
3
3
  *
4
4
  * WU-1093: INIT-002 Phase 1 - Define ports and domain schemas
5
+ * WU-2128: Standardize error return contracts
5
6
  *
6
7
  * Port interfaces for context-aware validation system.
7
8
  * These abstractions allow external users to inject custom implementations.
8
9
  *
10
+ * Error Contract (WU-2128):
11
+ * Port methods THROW on failure. This is the boundary contract at the
12
+ * hexagonal architecture edge. Adapters provide companion *Safe methods
13
+ * that return Result<T, E> for callers preferring explicit error handling.
14
+ *
9
15
  * Hexagonal Architecture - Input Ports:
10
16
  * - ILocationResolver: Detect main checkout vs worktree
11
17
  * - IGitStateReader: Read git branch, dirty state, ahead/behind
@@ -51,8 +57,11 @@ export interface ILocationResolver {
51
57
  /**
52
58
  * Resolve location context for the given working directory.
53
59
  *
60
+ * Error contract: THROWS on failure (port boundary contract).
61
+ *
54
62
  * @param cwd - Current working directory (defaults to process.cwd())
55
63
  * @returns Promise<LocationContext> - Resolved location context
64
+ * @throws Error if location resolution fails (e.g., not a git repository)
56
65
  */
57
66
  resolveLocation(cwd?: string): Promise<LocationContext>;
58
67
  }
@@ -92,8 +101,11 @@ export interface IGitStateReader {
92
101
  /**
93
102
  * Read current git state for the given working directory.
94
103
  *
104
+ * Error contract: THROWS on failure (port boundary contract).
105
+ *
95
106
  * @param cwd - Current working directory (defaults to process.cwd())
96
107
  * @returns Promise<GitState> - Current git state
108
+ * @throws Error if git state reading fails (e.g., git not available)
97
109
  */
98
110
  readGitState(cwd?: string): Promise<GitState>;
99
111
  }
@@ -111,7 +123,7 @@ export interface IGitStateReader {
111
123
  * status: 'in_progress',
112
124
  * lane: 'Framework: Core',
113
125
  * title: 'Test WU',
114
- * yamlPath: `${repoRoot}/docs/04-operations/tasks/wu/${wuId}.yaml`,
126
+ * yamlPath: `${repoRoot}/${createWuPaths().WU(wuId)}`,
115
127
  * isConsistent: true,
116
128
  * inconsistencyReason: null,
117
129
  * }),
@@ -126,9 +138,13 @@ export interface IWuStateReader {
126
138
  /**
127
139
  * Read WU state from YAML and detect inconsistencies.
128
140
  *
141
+ * Error contract: THROWS on failure (port boundary contract).
142
+ * Returns null (not an error) when the WU does not exist.
143
+ *
129
144
  * @param wuId - WU ID (e.g., 'WU-1093' or 'wu-1093')
130
145
  * @param repoRoot - Repository root path
131
146
  * @returns Promise<WuStateResult | null> - WU state or null if not found
147
+ * @throws Error if YAML reading/parsing fails
132
148
  */
133
149
  readWuState(wuId: string, repoRoot: string): Promise<WuStateResult | null>;
134
150
  }
@@ -1 +1 @@
1
- {"version":3,"file":"context.ports.d.ts","sourceRoot":"","sources":["../../src/ports/context.ports.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAEnE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;OAKG;IACH,eAAe,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;CACzD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;;OAKG;IACH,YAAY,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC/C;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;;;OAMG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;CAC5E;AAGD,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC"}
1
+ {"version":3,"file":"context.ports.d.ts","sourceRoot":"","sources":["../../src/ports/context.ports.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAEnE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;;;;OAQG;IACH,eAAe,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;CACzD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;;;;;OAQG;IACH,YAAY,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC/C;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;;;;;;;OAUG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;CAC5E;AAGD,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC"}
@@ -2,10 +2,16 @@
2
2
  * Recovery Ports
3
3
  *
4
4
  * WU-1093: INIT-002 Phase 1 - Define ports and domain schemas
5
+ * WU-2128: Standardize error return contracts
5
6
  *
6
7
  * Port interfaces for recovery-related operations.
7
8
  * These abstractions allow external users to inject custom implementations.
8
9
  *
10
+ * Error Contract (WU-2128):
11
+ * Port methods THROW on failure (boundary contracts).
12
+ * The analyzeRecovery method returns a RecoveryAnalysis with hasIssues=false
13
+ * when no problems are detected -- absence of issues is a valid result, not an error.
14
+ *
9
15
  * Hexagonal Architecture - Input Ports:
10
16
  * - IRecoveryAnalyzer: Analyze WU state issues and suggest recovery actions
11
17
  *
@@ -50,8 +56,12 @@ export interface IRecoveryAnalyzer {
50
56
  /**
51
57
  * Analyze context for recovery issues.
52
58
  *
59
+ * Error contract: THROWS on failure (port boundary contract).
60
+ * Returns RecoveryAnalysis with hasIssues=false when no problems detected.
61
+ *
53
62
  * @param context - Current WU context
54
63
  * @returns Promise<RecoveryAnalysis> - Recovery analysis with issues and suggested actions
64
+ * @throws Error if analysis fails (e.g., filesystem access error)
55
65
  */
56
66
  analyzeRecovery(context: WuContext): Promise<RecoveryAnalysis>;
57
67
  }
@@ -1 +1 @@
1
- {"version":3,"file":"recovery.ports.d.ts","sourceRoot":"","sources":["../../src/ports/recovery.ports.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEzE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;OAKG;IACH,eAAe,CAAC,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAChE;AAGD,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"recovery.ports.d.ts","sourceRoot":"","sources":["../../src/ports/recovery.ports.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEzE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;;;;;OASG;IACH,eAAe,CAAC,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAChE;AAGD,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC"}
@@ -2,10 +2,15 @@
2
2
  * Validation Ports
3
3
  *
4
4
  * WU-1093: INIT-002 Phase 1 - Define ports and domain schemas
5
+ * WU-2128: Standardize error return contracts
5
6
  *
6
7
  * Port interfaces for validation-related operations.
7
8
  * These abstractions allow external users to inject custom implementations.
8
9
  *
10
+ * Error Contract (WU-2128):
11
+ * Port methods return null for "not found" (not an error condition).
12
+ * Port methods THROW for unexpected failures (e.g., registry corruption).
13
+ *
9
14
  * Hexagonal Architecture - Input Ports:
10
15
  * - ICommandRegistry: Lookup command definitions and validate commands
11
16
  *
@@ -1 +1 @@
1
- {"version":3,"file":"validation.ports.d.ts","sourceRoot":"","sources":["../../src/ports/validation.ports.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAE3E;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;OAKG;IACH,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI,CAAC;IAEhE;;;;;;;;;;OAUG;IACH,0BAA0B,CAAC,OAAO,EAAE,SAAS,GAAG,iBAAiB,EAAE,CAAC;IAEpE;;;;OAIG;IACH,cAAc,IAAI,iBAAiB,EAAE,CAAC;CACvC;AAGD,YAAY,EAAE,iBAAiB,EAAE,SAAS,EAAE,CAAC"}
1
+ {"version":3,"file":"validation.ports.d.ts","sourceRoot":"","sources":["../../src/ports/validation.ports.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAE3E;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;OAKG;IACH,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI,CAAC;IAEhE;;;;;;;;;;OAUG;IACH,0BAA0B,CAAC,OAAO,EAAE,SAAS,GAAG,iBAAiB,EAAE,CAAC;IAEpE;;;;OAIG;IACH,cAAc,IAAI,iBAAiB,EAAE,CAAC;CACvC;AAGD,YAAY,EAAE,iBAAiB,EAAE,SAAS,EAAE,CAAC"}
@@ -4,6 +4,14 @@
4
4
  * Focused interfaces for the decomposed WU state store services.
5
5
  * Each interface defines a single responsibility boundary.
6
6
  *
7
+ * Error Contract (WU-2128):
8
+ * Port methods THROW on failure (boundary contracts). Specifically:
9
+ * - State transition methods (claim, complete, block, etc.) throw if the
10
+ * WU is in an invalid state for the requested transition.
11
+ * - Lock methods (acquireLock) throw if the lock cannot be acquired.
12
+ * - Query methods (getWUState, getByStatus) return undefined/empty set for
13
+ * "not found" conditions -- absence of data is not an error.
14
+ *
7
15
  * @module ports/wu-state
8
16
  */
9
17
  import type { WUEvent } from '../wu-state-schema.js';
@@ -51,7 +59,6 @@ export interface RepairResult {
51
59
  * - Loading events from JSONL storage
52
60
  * - Replaying events to rebuild in-memory state
53
61
  * - Appending new validated events
54
- * - Running delegation cutover migration
55
62
  */
56
63
  export interface IWuEventLog {
57
64
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"wu-state.ports.d.ts","sourceRoot":"","sources":["../../src/ports/wu-state.ports.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wu-state.ports.d.ts","sourceRoot":"","sources":["../../src/ports/wu-state.ports.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,9 @@
1
+ /** Process info from ps-list */
2
+ interface ProcessEntry {
3
+ pid: number;
4
+ name: string;
5
+ cmd?: string;
6
+ }
1
7
  /**
2
8
  * Re-export interfering process names for external consumers.
3
9
  * Source of truth is PROCESS_DETECTION.INTERFERING_NAMES in wu-constants.ts
@@ -18,14 +24,14 @@ export declare const INTERFERING_PROCESS_NAMES: string[];
18
24
  * const processes = await psList();
19
25
  * const interfering = filterProcessesForWorktree(processes, '/path/to/worktree');
20
26
  */
21
- export declare function filterProcessesForWorktree(processes: UnsafeAny, worktreePath: UnsafeAny): any;
27
+ export declare function filterProcessesForWorktree(processes: readonly ProcessEntry[], worktreePath: string | null | undefined): ProcessEntry[];
22
28
  /**
23
29
  * Build a warning message for detected background processes.
24
30
  *
25
31
  * @param {Array<{pid: number, name: string, cmd?: string}>} processes - Detected processes
26
32
  * @returns {string} Formatted warning message
27
33
  */
28
- export declare function buildWarningMessage(processes: UnsafeAny): string;
34
+ export declare function buildWarningMessage(processes: readonly ProcessEntry[]): string;
29
35
  /**
30
36
  * Detect background processes that might interfere with wu:done.
31
37
  *
@@ -42,12 +48,12 @@ export declare function buildWarningMessage(processes: UnsafeAny): string;
42
48
  * console.warn(result.warnings.join('\n'));
43
49
  * }
44
50
  */
45
- export declare function detectBackgroundProcesses(worktreePath: UnsafeAny): Promise<{
51
+ export declare function detectBackgroundProcesses(worktreePath: string | null | undefined): Promise<{
46
52
  hasProcesses: boolean;
47
- processes: any;
53
+ processes: ProcessEntry[];
48
54
  warnings: string[];
49
55
  } | {
50
- error: any;
56
+ error: string;
51
57
  hasProcesses: boolean;
52
58
  processes: never[];
53
59
  warnings: never[];
@@ -65,5 +71,6 @@ export declare function detectBackgroundProcesses(worktreePath: UnsafeAny): Prom
65
71
  * // In wu-done.ts pre-flight checks:
66
72
  * await runBackgroundProcessCheck(worktreePath);
67
73
  */
68
- export declare function runBackgroundProcessCheck(worktreePath: UnsafeAny): Promise<void>;
74
+ export declare function runBackgroundProcessCheck(worktreePath: string): Promise<void>;
75
+ export {};
69
76
  //# sourceMappingURL=process-detector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"process-detector.d.ts","sourceRoot":"","sources":["../src/process-detector.ts"],"names":[],"mappings":"AAmBA;;;GAGG;AACH,eAAO,MAAM,yBAAyB,UAAsC,CAAC;AAE7E;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,OAkBvF;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,SAAS,UAsCvD;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,yBAAyB,CAAC,YAAY,EAAE,SAAS;;;;;;;;;GA8CtE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,yBAAyB,CAAC,YAAY,EAAE,SAAS,iBActE"}
1
+ {"version":3,"file":"process-detector.d.ts","sourceRoot":"","sources":["../src/process-detector.ts"],"names":[],"mappings":"AAmBA,gCAAgC;AAChC,UAAU,YAAY;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,eAAO,MAAM,yBAAyB,UAAsC,CAAC;AAE7E;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,SAAS,YAAY,EAAE,EAClC,YAAY,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GACtC,YAAY,EAAE,CAkBhB;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,SAAS,YAAY,EAAE,GAAG,MAAM,CAsC9E;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,yBAAyB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;;;;;;;;;GAiDtF;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,yBAAyB,CAAC,YAAY,EAAE,MAAM,iBAcnE"}
@@ -140,10 +140,11 @@ export async function detectBackgroundProcesses(worktreePath) {
140
140
  catch (error) {
141
141
  // Handle ps-list errors gracefully (permission issues, etc.)
142
142
  // Don't block wu:done on process detection failure
143
- console.warn(`${LOG_PREFIX.DONE} ${EMOJI.WARNING} Could not detect background processes: ${error.message}`);
143
+ const errorMessage = error instanceof Error ? error.message : String(error);
144
+ console.warn(`${LOG_PREFIX.DONE} ${EMOJI.WARNING} Could not detect background processes: ${errorMessage}`);
144
145
  return {
145
146
  ...noProcessesResult,
146
- error: error.message,
147
+ error: errorMessage,
147
148
  };
148
149
  }
149
150
  }