@lumenflow/core 4.23.0 → 5.0.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 (439) hide show
  1. package/dist/arg-parser.d.ts.map +1 -1
  2. package/dist/arg-parser.js +16 -0
  3. package/dist/arg-parser.js.map +1 -1
  4. package/dist/atomic-merge.d.ts.map +1 -1
  5. package/dist/atomic-merge.js +25 -18
  6. package/dist/atomic-merge.js.map +1 -1
  7. package/dist/client-ids.d.ts +1 -15
  8. package/dist/client-ids.d.ts.map +1 -1
  9. package/dist/client-ids.js +4 -13
  10. package/dist/client-ids.js.map +1 -1
  11. package/dist/code-path-validator.d.ts.map +1 -1
  12. package/dist/code-path-validator.js +6 -3
  13. package/dist/code-path-validator.js.map +1 -1
  14. package/dist/config-contract.d.ts +1 -30
  15. package/dist/config-contract.d.ts.map +1 -1
  16. package/dist/config-contract.js +4 -60
  17. package/dist/config-contract.js.map +1 -1
  18. package/dist/constants/backlog-patterns.d.ts +1 -20
  19. package/dist/constants/backlog-patterns.d.ts.map +1 -1
  20. package/dist/constants/backlog-patterns.js +2 -23
  21. package/dist/constants/backlog-patterns.js.map +1 -1
  22. package/dist/constants/dora-constants.d.ts +19 -2
  23. package/dist/constants/dora-constants.d.ts.map +1 -1
  24. package/dist/constants/dora-constants.js +20 -2
  25. package/dist/constants/dora-constants.js.map +1 -1
  26. package/dist/constants/duration-constants.d.ts +1 -28
  27. package/dist/constants/duration-constants.d.ts.map +1 -1
  28. package/dist/constants/duration-constants.js +4 -28
  29. package/dist/constants/duration-constants.js.map +1 -1
  30. package/dist/constants/gate-constants.d.ts +1 -23
  31. package/dist/constants/gate-constants.d.ts.map +1 -1
  32. package/dist/constants/gate-constants.js +4 -23
  33. package/dist/constants/gate-constants.js.map +1 -1
  34. package/dist/constants/index.d.ts +1 -1
  35. package/dist/constants/index.d.ts.map +1 -1
  36. package/dist/constants/index.js +1 -1
  37. package/dist/constants/index.js.map +1 -1
  38. package/dist/constants/lock-constants.d.ts +1 -28
  39. package/dist/constants/lock-constants.d.ts.map +1 -1
  40. package/dist/constants/lock-constants.js +2 -28
  41. package/dist/constants/lock-constants.js.map +1 -1
  42. package/dist/core/tool.schemas.d.ts +11 -11
  43. package/dist/core/worktree-guard.js +2 -2
  44. package/dist/core/worktree-guard.js.map +1 -1
  45. package/dist/cycle-detector.d.ts +4 -48
  46. package/dist/cycle-detector.d.ts.map +1 -1
  47. package/dist/cycle-detector.js +4 -78
  48. package/dist/cycle-detector.js.map +1 -1
  49. package/dist/date-utils.d.ts +1 -65
  50. package/dist/date-utils.d.ts.map +1 -1
  51. package/dist/date-utils.js +4 -140
  52. package/dist/date-utils.js.map +1 -1
  53. package/dist/delegation-monitor.d.ts +2 -0
  54. package/dist/delegation-monitor.d.ts.map +1 -1
  55. package/dist/delegation-monitor.js +29 -2
  56. package/dist/delegation-monitor.js.map +1 -1
  57. package/dist/delegation-recovery.d.ts +36 -17
  58. package/dist/delegation-recovery.d.ts.map +1 -1
  59. package/dist/delegation-recovery.js +285 -82
  60. package/dist/delegation-recovery.js.map +1 -1
  61. package/dist/delegation-registry-schema.d.ts +257 -31
  62. package/dist/delegation-registry-schema.d.ts.map +1 -1
  63. package/dist/delegation-registry-schema.js +43 -34
  64. package/dist/delegation-registry-schema.js.map +1 -1
  65. package/dist/delegation-registry-store.d.ts +4 -128
  66. package/dist/delegation-registry-store.d.ts.map +1 -1
  67. package/dist/delegation-registry-store.js +39 -178
  68. package/dist/delegation-registry-store.js.map +1 -1
  69. package/dist/delegation-tree.d.ts +12 -20
  70. package/dist/delegation-tree.d.ts.map +1 -1
  71. package/dist/delegation-tree.js +40 -29
  72. package/dist/delegation-tree.js.map +1 -1
  73. package/dist/delivery-review-contract.d.ts +1 -1
  74. package/dist/delivery-review-contract.d.ts.map +1 -1
  75. package/dist/docs-layout-presets.d.ts +1 -30
  76. package/dist/docs-layout-presets.d.ts.map +1 -1
  77. package/dist/docs-layout-presets.js +4 -38
  78. package/dist/docs-layout-presets.js.map +1 -1
  79. package/dist/domain/context.schemas.d.ts +3 -3
  80. package/dist/domain/orchestration.constants.d.ts +1 -110
  81. package/dist/domain/orchestration.constants.d.ts.map +1 -1
  82. package/dist/domain/orchestration.constants.js +2 -127
  83. package/dist/domain/orchestration.constants.js.map +1 -1
  84. package/dist/domain/orchestration.schemas.d.ts +1 -306
  85. package/dist/domain/orchestration.schemas.d.ts.map +1 -1
  86. package/dist/domain/orchestration.schemas.js +2 -211
  87. package/dist/domain/orchestration.schemas.js.map +1 -1
  88. package/dist/domain/orchestration.types.d.ts +1 -133
  89. package/dist/domain/orchestration.types.d.ts.map +1 -1
  90. package/dist/domain/orchestration.types.js +2 -2
  91. package/dist/domain/orchestration.types.js.map +1 -1
  92. package/dist/domain/recovery.schemas.d.ts +3 -3
  93. package/dist/domain/validation.schemas.d.ts +4 -4
  94. package/dist/error-handler.d.ts +4 -173
  95. package/dist/error-handler.d.ts.map +1 -1
  96. package/dist/error-handler.js +4 -244
  97. package/dist/error-handler.js.map +1 -1
  98. package/dist/file-classifiers.d.ts.map +1 -1
  99. package/dist/file-classifiers.js +26 -0
  100. package/dist/file-classifiers.js.map +1 -1
  101. package/dist/git-adapter.d.ts +4 -448
  102. package/dist/git-adapter.d.ts.map +1 -1
  103. package/dist/git-adapter.js +4 -772
  104. package/dist/git-adapter.js.map +1 -1
  105. package/dist/git-context-extractor.d.ts +4 -98
  106. package/dist/git-context-extractor.d.ts.map +1 -1
  107. package/dist/git-context-extractor.js +4 -563
  108. package/dist/git-context-extractor.js.map +1 -1
  109. package/dist/git-staged-validator.d.ts +4 -29
  110. package/dist/git-staged-validator.d.ts.map +1 -1
  111. package/dist/git-staged-validator.js +4 -46
  112. package/dist/git-staged-validator.js.map +1 -1
  113. package/dist/incremental-lint.d.ts.map +1 -1
  114. package/dist/incremental-lint.js +3 -2
  115. package/dist/incremental-lint.js.map +1 -1
  116. package/dist/incremental-test.d.ts +1 -32
  117. package/dist/incremental-test.d.ts.map +1 -1
  118. package/dist/incremental-test.js +4 -61
  119. package/dist/incremental-test.js.map +1 -1
  120. package/dist/index.d.ts +3 -2
  121. package/dist/index.d.ts.map +1 -1
  122. package/dist/index.js +10 -2
  123. package/dist/index.js.map +1 -1
  124. package/dist/integration-target.d.ts +30 -0
  125. package/dist/integration-target.d.ts.map +1 -0
  126. package/dist/integration-target.js +51 -0
  127. package/dist/integration-target.js.map +1 -0
  128. package/dist/lane-checker.d.ts.map +1 -1
  129. package/dist/lane-checker.js +8 -0
  130. package/dist/lane-checker.js.map +1 -1
  131. package/dist/lumenflow-config-schema.d.ts +73 -29
  132. package/dist/lumenflow-config-schema.d.ts.map +1 -1
  133. package/dist/lumenflow-config-schema.js +1 -1
  134. package/dist/lumenflow-config-schema.js.map +1 -1
  135. package/dist/lumenflow-config.d.ts +10 -34
  136. package/dist/lumenflow-config.d.ts.map +1 -1
  137. package/dist/lumenflow-config.js +32 -142
  138. package/dist/lumenflow-config.js.map +1 -1
  139. package/dist/manual-test-validator.d.ts +1 -96
  140. package/dist/manual-test-validator.d.ts.map +1 -1
  141. package/dist/manual-test-validator.js +4 -245
  142. package/dist/manual-test-validator.js.map +1 -1
  143. package/dist/micro-worktree-shared.d.ts.map +1 -1
  144. package/dist/micro-worktree-shared.js +10 -9
  145. package/dist/micro-worktree-shared.js.map +1 -1
  146. package/dist/micro-worktree.d.ts.map +1 -1
  147. package/dist/micro-worktree.js +26 -23
  148. package/dist/micro-worktree.js.map +1 -1
  149. package/dist/normalize-config-keys.d.ts +1 -10
  150. package/dist/normalize-config-keys.d.ts.map +1 -1
  151. package/dist/normalize-config-keys.js +7 -73
  152. package/dist/normalize-config-keys.js.map +1 -1
  153. package/dist/object-guards.d.ts +1 -10
  154. package/dist/object-guards.d.ts.map +1 -1
  155. package/dist/object-guards.js +7 -20
  156. package/dist/object-guards.js.map +1 -1
  157. package/dist/ports/config.ports.d.ts +1 -82
  158. package/dist/ports/config.ports.d.ts.map +1 -1
  159. package/dist/ports/config.ports.js +2 -1
  160. package/dist/ports/config.ports.js.map +1 -1
  161. package/dist/ports/dashboard-renderer.port.d.ts +1 -112
  162. package/dist/ports/dashboard-renderer.port.d.ts.map +1 -1
  163. package/dist/ports/dashboard-renderer.port.js +2 -1
  164. package/dist/ports/dashboard-renderer.port.js.map +1 -1
  165. package/dist/ports/git-validator.ports.d.ts +5 -110
  166. package/dist/ports/git-validator.ports.d.ts.map +1 -1
  167. package/dist/ports/git-validator.ports.js +8 -1
  168. package/dist/ports/git-validator.ports.js.map +1 -1
  169. package/dist/ports/sync-validator.ports.d.ts +1 -51
  170. package/dist/ports/sync-validator.ports.d.ts.map +1 -1
  171. package/dist/ports/sync-validator.ports.js +2 -1
  172. package/dist/ports/sync-validator.ports.js.map +1 -1
  173. package/dist/ports/wu-helpers.ports.d.ts +1 -156
  174. package/dist/ports/wu-helpers.ports.d.ts.map +1 -1
  175. package/dist/ports/wu-helpers.ports.js +2 -1
  176. package/dist/ports/wu-helpers.ports.js.map +1 -1
  177. package/dist/ports/wu-state.ports.d.ts +1 -208
  178. package/dist/ports/wu-state.ports.d.ts.map +1 -1
  179. package/dist/ports/wu-state.ports.js +2 -1
  180. package/dist/ports/wu-state.ports.js.map +1 -1
  181. package/dist/rebase-artifact-cleanup.d.ts.map +1 -1
  182. package/dist/rebase-artifact-cleanup.js +6 -3
  183. package/dist/rebase-artifact-cleanup.js.map +1 -1
  184. package/dist/sandbox-allowlist.d.ts +1 -15
  185. package/dist/sandbox-allowlist.d.ts.map +1 -1
  186. package/dist/sandbox-allowlist.js +4 -74
  187. package/dist/sandbox-allowlist.js.map +1 -1
  188. package/dist/sandbox-backend-linux.d.ts +1 -5
  189. package/dist/sandbox-backend-linux.d.ts.map +1 -1
  190. package/dist/sandbox-backend-linux.js +4 -64
  191. package/dist/sandbox-backend-linux.js.map +1 -1
  192. package/dist/sandbox-backend-macos.d.ts +1 -5
  193. package/dist/sandbox-backend-macos.d.ts.map +1 -1
  194. package/dist/sandbox-backend-macos.js +4 -109
  195. package/dist/sandbox-backend-macos.js.map +1 -1
  196. package/dist/sandbox-backend-windows.d.ts +1 -5
  197. package/dist/sandbox-backend-windows.d.ts.map +1 -1
  198. package/dist/sandbox-backend-windows.js +4 -27
  199. package/dist/sandbox-backend-windows.js.map +1 -1
  200. package/dist/sandbox-profile.d.ts +1 -57
  201. package/dist/sandbox-profile.d.ts.map +1 -1
  202. package/dist/sandbox-profile.js +4 -65
  203. package/dist/sandbox-profile.js.map +1 -1
  204. package/dist/schemas/agents-config.d.ts +47 -0
  205. package/dist/schemas/agents-config.d.ts.map +1 -1
  206. package/dist/schemas/agents-config.js +59 -0
  207. package/dist/schemas/agents-config.js.map +1 -1
  208. package/dist/schemas/command-schemas.d.ts +4 -4
  209. package/dist/schemas/flow-arg-validators.d.ts +2 -2
  210. package/dist/schemas/flow-schemas.d.ts +4 -4
  211. package/dist/schemas/gates-section-config.d.ts +32 -13
  212. package/dist/schemas/gates-section-config.d.ts.map +1 -1
  213. package/dist/schemas/gates-section-config.js +16 -1
  214. package/dist/schemas/gates-section-config.js.map +1 -1
  215. package/dist/schemas/initiative-arg-validators.d.ts +2 -2
  216. package/dist/schemas/initiative-schemas.d.ts +12 -12
  217. package/dist/schemas/lanes-config.d.ts +5 -5
  218. package/dist/schemas/memory-arg-validators.d.ts +6 -0
  219. package/dist/schemas/memory-arg-validators.d.ts.map +1 -1
  220. package/dist/schemas/memory-config.d.ts +4 -4
  221. package/dist/schemas/memory-schemas.d.ts +12 -0
  222. package/dist/schemas/memory-schemas.d.ts.map +1 -1
  223. package/dist/schemas/memory-schemas.js +12 -0
  224. package/dist/schemas/memory-schemas.js.map +1 -1
  225. package/dist/schemas/operational-config.d.ts +4 -4
  226. package/dist/schemas/setup-arg-validators.d.ts +3 -3
  227. package/dist/schemas/setup-schemas.d.ts +8 -8
  228. package/dist/schemas/wu-config.d.ts +3 -3
  229. package/dist/schemas/wu-lifecycle-arg-validators.d.ts +2 -2
  230. package/dist/schemas/wu-lifecycle-schemas.d.ts +4 -4
  231. package/dist/section-headings.d.ts +1 -34
  232. package/dist/section-headings.d.ts.map +1 -1
  233. package/dist/section-headings.js +2 -51
  234. package/dist/section-headings.js.map +1 -1
  235. package/dist/spawn-constraints-generator.js +3 -3
  236. package/dist/spawn-constraints-generator.js.map +1 -1
  237. package/dist/spawn-guidance-generators.d.ts +1 -1
  238. package/dist/spawn-guidance-generators.d.ts.map +1 -1
  239. package/dist/spawn-policy-resolver.d.ts +1 -1
  240. package/dist/spawn-policy-resolver.d.ts.map +1 -1
  241. package/dist/spawn-task-builder.d.ts +17 -1
  242. package/dist/spawn-task-builder.d.ts.map +1 -1
  243. package/dist/spawn-task-builder.js +63 -1
  244. package/dist/spawn-task-builder.js.map +1 -1
  245. package/dist/spawn-template-assembler.d.ts +1 -1
  246. package/dist/spawn-template-assembler.d.ts.map +1 -1
  247. package/dist/state-machine.d.ts +1 -9
  248. package/dist/state-machine.d.ts.map +1 -1
  249. package/dist/state-machine.js +2 -86
  250. package/dist/state-machine.js.map +1 -1
  251. package/dist/sync-validator.d.ts.map +1 -1
  252. package/dist/sync-validator.js +15 -12
  253. package/dist/sync-validator.js.map +1 -1
  254. package/dist/telemetry.d.ts +20 -6
  255. package/dist/telemetry.d.ts.map +1 -1
  256. package/dist/telemetry.js +27 -6
  257. package/dist/telemetry.js.map +1 -1
  258. package/dist/work-classifier.d.ts +1 -102
  259. package/dist/work-classifier.d.ts.map +1 -1
  260. package/dist/work-classifier.js +2 -424
  261. package/dist/work-classifier.js.map +1 -1
  262. package/dist/worktree-symlink.d.ts +2 -2
  263. package/dist/worktree-symlink.d.ts.map +1 -1
  264. package/dist/worktree-symlink.js +37 -12
  265. package/dist/worktree-symlink.js.map +1 -1
  266. package/dist/wu-cli-constants.d.ts +1 -433
  267. package/dist/wu-cli-constants.d.ts.map +1 -1
  268. package/dist/wu-cli-constants.js +4 -436
  269. package/dist/wu-cli-constants.js.map +1 -1
  270. package/dist/wu-consistency-file-repairs.d.ts.map +1 -1
  271. package/dist/wu-consistency-file-repairs.js +5 -3
  272. package/dist/wu-consistency-file-repairs.js.map +1 -1
  273. package/dist/wu-context-constants.d.ts +22 -0
  274. package/dist/wu-context-constants.d.ts.map +1 -1
  275. package/dist/wu-context-constants.js +22 -0
  276. package/dist/wu-context-constants.js.map +1 -1
  277. package/dist/wu-doc-types.d.ts +1 -47
  278. package/dist/wu-doc-types.d.ts.map +1 -1
  279. package/dist/wu-domain-constants.d.ts +1 -295
  280. package/dist/wu-domain-constants.d.ts.map +1 -1
  281. package/dist/wu-domain-constants.js +4 -397
  282. package/dist/wu-domain-constants.js.map +1 -1
  283. package/dist/wu-done-branch-only.d.ts +1 -1
  284. package/dist/wu-done-branch-only.d.ts.map +1 -1
  285. package/dist/wu-done-branch-only.js +22 -13
  286. package/dist/wu-done-branch-only.js.map +1 -1
  287. package/dist/wu-done-branch-utils.d.ts.map +1 -1
  288. package/dist/wu-done-branch-utils.js +5 -3
  289. package/dist/wu-done-branch-utils.js.map +1 -1
  290. package/dist/wu-done-cleanup.d.ts.map +1 -1
  291. package/dist/wu-done-cleanup.js +66 -22
  292. package/dist/wu-done-cleanup.js.map +1 -1
  293. package/dist/wu-done-concurrent-merge.d.ts.map +1 -1
  294. package/dist/wu-done-concurrent-merge.js +9 -6
  295. package/dist/wu-done-concurrent-merge.js.map +1 -1
  296. package/dist/wu-done-errors.d.ts +3 -3
  297. package/dist/wu-done-errors.d.ts.map +1 -1
  298. package/dist/wu-done-inputs.d.ts.map +1 -1
  299. package/dist/wu-done-inputs.js +3 -0
  300. package/dist/wu-done-inputs.js.map +1 -1
  301. package/dist/wu-done-merge-phase.d.ts.map +1 -1
  302. package/dist/wu-done-merge-phase.js +4 -2
  303. package/dist/wu-done-merge-phase.js.map +1 -1
  304. package/dist/wu-done-merge.d.ts.map +1 -1
  305. package/dist/wu-done-merge.js +16 -8
  306. package/dist/wu-done-merge.js.map +1 -1
  307. package/dist/wu-done-merged-worktree.d.ts.map +1 -1
  308. package/dist/wu-done-merged-worktree.js +7 -8
  309. package/dist/wu-done-merged-worktree.js.map +1 -1
  310. package/dist/wu-done-messages.d.ts.map +1 -1
  311. package/dist/wu-done-messages.js +12 -5
  312. package/dist/wu-done-messages.js.map +1 -1
  313. package/dist/wu-done-metadata.d.ts.map +1 -1
  314. package/dist/wu-done-metadata.js +3 -8
  315. package/dist/wu-done-metadata.js.map +1 -1
  316. package/dist/wu-done-preflight-checks.d.ts.map +1 -1
  317. package/dist/wu-done-preflight-checks.js +21 -15
  318. package/dist/wu-done-preflight-checks.js.map +1 -1
  319. package/dist/wu-done-rebase.d.ts.map +1 -1
  320. package/dist/wu-done-rebase.js +10 -8
  321. package/dist/wu-done-rebase.js.map +1 -1
  322. package/dist/wu-done-retry-helpers.d.ts.map +1 -1
  323. package/dist/wu-done-retry-helpers.js +13 -11
  324. package/dist/wu-done-retry-helpers.js.map +1 -1
  325. package/dist/wu-done-validation.d.ts.map +1 -1
  326. package/dist/wu-done-validation.js +4 -2
  327. package/dist/wu-done-validation.js.map +1 -1
  328. package/dist/wu-done-worktree-services.d.ts.map +1 -1
  329. package/dist/wu-done-worktree-services.js +4 -2
  330. package/dist/wu-done-worktree-services.js.map +1 -1
  331. package/dist/wu-done-worktree.d.ts.map +1 -1
  332. package/dist/wu-done-worktree.js +4 -2
  333. package/dist/wu-done-worktree.js.map +1 -1
  334. package/dist/wu-git-constants.d.ts +1 -175
  335. package/dist/wu-git-constants.d.ts.map +1 -1
  336. package/dist/wu-git-constants.js +4 -175
  337. package/dist/wu-git-constants.js.map +1 -1
  338. package/dist/wu-helpers.d.ts +24 -0
  339. package/dist/wu-helpers.d.ts.map +1 -1
  340. package/dist/wu-helpers.js +37 -4
  341. package/dist/wu-helpers.js.map +1 -1
  342. package/dist/wu-id-format.d.ts +1 -137
  343. package/dist/wu-id-format.d.ts.map +1 -1
  344. package/dist/wu-id-format.js +2 -249
  345. package/dist/wu-id-format.js.map +1 -1
  346. package/dist/wu-id-generator.d.ts.map +1 -1
  347. package/dist/wu-id-generator.js +8 -5
  348. package/dist/wu-id-generator.js.map +1 -1
  349. package/dist/wu-paths-constants.d.ts +1 -253
  350. package/dist/wu-paths-constants.d.ts.map +1 -1
  351. package/dist/wu-paths-constants.js +4 -273
  352. package/dist/wu-paths-constants.js.map +1 -1
  353. package/dist/wu-paths.d.ts +1 -274
  354. package/dist/wu-paths.d.ts.map +1 -1
  355. package/dist/wu-paths.js +4 -236
  356. package/dist/wu-paths.js.map +1 -1
  357. package/dist/wu-rules-resolvers.d.ts.map +1 -1
  358. package/dist/wu-rules-resolvers.js +11 -6
  359. package/dist/wu-rules-resolvers.js.map +1 -1
  360. package/dist/wu-schema.d.ts +1 -830
  361. package/dist/wu-schema.d.ts.map +1 -1
  362. package/dist/wu-schema.js +4 -929
  363. package/dist/wu-schema.js.map +1 -1
  364. package/dist/wu-spawn-helpers.d.ts.map +1 -1
  365. package/dist/wu-spawn-helpers.js +5 -2
  366. package/dist/wu-spawn-helpers.js.map +1 -1
  367. package/dist/wu-spawn.d.ts +2 -2
  368. package/dist/wu-spawn.d.ts.map +1 -1
  369. package/dist/wu-spawn.js +2 -2
  370. package/dist/wu-spawn.js.map +1 -1
  371. package/dist/wu-state-schema.d.ts +1 -291
  372. package/dist/wu-state-schema.d.ts.map +1 -1
  373. package/dist/wu-state-schema.js +4 -212
  374. package/dist/wu-state-schema.js.map +1 -1
  375. package/dist/wu-status-transition.d.ts +3 -1
  376. package/dist/wu-status-transition.d.ts.map +1 -1
  377. package/dist/wu-status-transition.js +9 -24
  378. package/dist/wu-status-transition.js.map +1 -1
  379. package/dist/wu-statuses.d.ts +1 -208
  380. package/dist/wu-statuses.d.ts.map +1 -1
  381. package/dist/wu-statuses.js +4 -242
  382. package/dist/wu-statuses.js.map +1 -1
  383. package/dist/wu-transaction-collectors.d.ts +1 -0
  384. package/dist/wu-transaction-collectors.d.ts.map +1 -1
  385. package/dist/wu-transaction-collectors.js +13 -8
  386. package/dist/wu-transaction-collectors.js.map +1 -1
  387. package/dist/wu-type-helpers.d.ts +1 -27
  388. package/dist/wu-type-helpers.d.ts.map +1 -1
  389. package/dist/wu-type-helpers.js +4 -46
  390. package/dist/wu-type-helpers.js.map +1 -1
  391. package/dist/wu-ui-constants.d.ts +1 -235
  392. package/dist/wu-ui-constants.d.ts.map +1 -1
  393. package/dist/wu-ui-constants.js +5 -235
  394. package/dist/wu-ui-constants.js.map +1 -1
  395. package/dist/wu-validation-constants.d.ts +1 -60
  396. package/dist/wu-validation-constants.d.ts.map +1 -1
  397. package/dist/wu-validation-constants.js +4 -66
  398. package/dist/wu-validation-constants.js.map +1 -1
  399. package/dist/wu-yaml.d.ts +1 -112
  400. package/dist/wu-yaml.d.ts.map +1 -1
  401. package/dist/wu-yaml.js +4 -304
  402. package/dist/wu-yaml.js.map +1 -1
  403. package/package.json +12 -9
  404. package/dist/coverage-gate.d.ts +0 -128
  405. package/dist/coverage-gate.d.ts.map +0 -1
  406. package/dist/coverage-gate.js +0 -211
  407. package/dist/coverage-gate.js.map +0 -1
  408. package/dist/gates-agent-mode.d.ts +0 -108
  409. package/dist/gates-agent-mode.d.ts.map +0 -1
  410. package/dist/gates-agent-mode.js +0 -138
  411. package/dist/gates-agent-mode.js.map +0 -1
  412. package/dist/gates-config-internal.d.ts +0 -54
  413. package/dist/gates-config-internal.d.ts.map +0 -1
  414. package/dist/gates-config-internal.js +0 -107
  415. package/dist/gates-config-internal.js.map +0 -1
  416. package/dist/gates-config.d.ts +0 -68
  417. package/dist/gates-config.d.ts.map +0 -1
  418. package/dist/gates-config.js +0 -193
  419. package/dist/gates-config.js.map +0 -1
  420. package/dist/gates-coverage.d.ts +0 -42
  421. package/dist/gates-coverage.d.ts.map +0 -1
  422. package/dist/gates-coverage.js +0 -162
  423. package/dist/gates-coverage.js.map +0 -1
  424. package/dist/gates-presets.d.ts +0 -52
  425. package/dist/gates-presets.d.ts.map +0 -1
  426. package/dist/gates-presets.js +0 -117
  427. package/dist/gates-presets.js.map +0 -1
  428. package/dist/gates-schemas.d.ts +0 -143
  429. package/dist/gates-schemas.d.ts.map +0 -1
  430. package/dist/gates-schemas.js +0 -67
  431. package/dist/gates-schemas.js.map +0 -1
  432. package/dist/package-manager-resolver.d.ts +0 -80
  433. package/dist/package-manager-resolver.d.ts.map +0 -1
  434. package/dist/package-manager-resolver.js +0 -245
  435. package/dist/package-manager-resolver.js.map +0 -1
  436. package/dist/resolve-policy.d.ts +0 -293
  437. package/dist/resolve-policy.d.ts.map +0 -1
  438. package/dist/resolve-policy.js +0 -303
  439. package/dist/resolve-policy.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"gates-presets.js","sourceRoot":"","sources":["../src/gates-presets.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,yCAAyC;AAczC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,YAAY,GAAkD;IACzE,IAAI,EAAE;QACJ,KAAK,EAAE,uBAAuB;QAC9B,MAAM,EAAE,wBAAwB;QAChC,IAAI,EAAE,cAAc;QACpB,SAAS,EAAE,kBAAkB;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD,MAAM,EAAE;QACN,KAAK,EAAE,4DAA4D;QACnE,MAAM,EAAE,uBAAuB;QAC/B,IAAI,EAAE,cAAc;QACpB,SAAS,EAAE,QAAQ;QACnB,IAAI,EAAE,QAAQ;KACf;IACD,EAAE,EAAE;QACF,MAAM,EAAE,+CAA+C;QACvD,IAAI,EAAE,mBAAmB;QACzB,SAAS,EAAE,cAAc;QACzB,IAAI,EAAE,eAAe;KACtB;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,mBAAmB;QAC3B,IAAI,EAAE,6BAA6B;QACnC,SAAS,EAAE,aAAa;QACxB,IAAI,EAAE,YAAY;KACnB;IACD,MAAM,EAAE;QACN,KAAK,EAAE,gBAAgB;QACvB,MAAM,EAAE,mCAAmC;QAC3C,IAAI,EAAE,wCAAwC;QAC9C,IAAI,EAAE,0BAA0B;KACjC;IACD,2CAA2C;IAC3C,IAAI,EAAE;QACJ,MAAM,EAAE,+CAA+C;QACvD,IAAI,EAAE,kDAAkD;QACxD,SAAS,EAAE,kDAAkD;QAC7D,IAAI,EAAE,4BAA4B;KACnC;IACD,IAAI,EAAE;QACJ,KAAK,EAAE,gBAAgB;QACvB,MAAM,EAAE,oDAAoD;QAC5D,IAAI,EAAE,qBAAqB;QAC3B,IAAI,EAAE,mBAAmB;KAC1B;IACD,GAAG,EAAE;QACH,KAAK,EAAE,kBAAkB;QACzB,MAAM,EAAE,8CAA8C;QACtD,IAAI,EAAE,4BAA4B;QAClC,IAAI,EAAE,oBAAoB;KAC3B;CACF,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,MAA0B;IACrD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;AACpC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAA2B;IACzD,IAAI,EAAE,8BAA8B;IACpC,MAAM,EAAE,oBAAoB;IAC5B,EAAE,EAAE,iBAAiB;IACrB,IAAI,EAAE,WAAW;IACjB,MAAM,EAAE,eAAe;IACvB,IAAI,EAAE,oBAAoB;IAC1B,IAAI,EAAE,+BAA+B;IACrC,GAAG,EAAE,oCAAoC;CAC1C,CAAC;AAEF;;;;GAIG;AACH,MAAM,0BAA0B,GAAG,8BAA8B,CAAC;AAElE;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAc;IAChD,OAAO,mBAAmB,CAAC,MAAM,CAAC,IAAI,0BAA0B,CAAC;AACnE,CAAC"}
@@ -1,143 +0,0 @@
1
- /// <reference path="./types.d.ts" />
2
- /**
3
- * Gates Schemas and Types
4
- *
5
- * WU-2037: Extracted from gates-config.ts
6
- *
7
- * Zod schema definitions, TypeScript types, and interfaces for gates configuration.
8
- * This module contains only shape definitions -- no runtime logic.
9
- *
10
- * @module gates-schemas
11
- */
12
- import { z } from 'zod';
13
- import type { CoverageMode } from './resolve-policy.js';
14
- /**
15
- * Schema for a gate command - either a string or an object with options
16
- */
17
- export declare const GateCommandConfigSchema: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
18
- command: z.ZodString;
19
- continueOnError: z.ZodOptional<z.ZodBoolean>;
20
- timeout: z.ZodOptional<z.ZodNumber>;
21
- }, z.core.$strip>]>;
22
- /**
23
- * Type for parsed gate command configuration
24
- */
25
- export type GateCommandConfig = z.infer<typeof GateCommandConfigSchema>;
26
- /**
27
- * Schema for the gates execution configuration section
28
- */
29
- export declare const GatesExecutionConfigSchema: z.ZodObject<{
30
- preset: z.ZodOptional<z.ZodString>;
31
- setup: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
32
- command: z.ZodString;
33
- continueOnError: z.ZodOptional<z.ZodBoolean>;
34
- timeout: z.ZodOptional<z.ZodNumber>;
35
- }, z.core.$strip>]>>;
36
- format: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
37
- command: z.ZodString;
38
- continueOnError: z.ZodOptional<z.ZodBoolean>;
39
- timeout: z.ZodOptional<z.ZodNumber>;
40
- }, z.core.$strip>]>>;
41
- lint: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
42
- command: z.ZodString;
43
- continueOnError: z.ZodOptional<z.ZodBoolean>;
44
- timeout: z.ZodOptional<z.ZodNumber>;
45
- }, z.core.$strip>]>>;
46
- typecheck: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
47
- command: z.ZodString;
48
- continueOnError: z.ZodOptional<z.ZodBoolean>;
49
- timeout: z.ZodOptional<z.ZodNumber>;
50
- }, z.core.$strip>]>>;
51
- test: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
52
- command: z.ZodString;
53
- continueOnError: z.ZodOptional<z.ZodBoolean>;
54
- timeout: z.ZodOptional<z.ZodNumber>;
55
- }, z.core.$strip>]>>;
56
- coverage: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
57
- command: z.ZodString;
58
- threshold: z.ZodOptional<z.ZodNumber>;
59
- }, z.core.$strip>]>>;
60
- }, z.core.$strip>;
61
- /**
62
- * Type for gates execution configuration
63
- */
64
- export type GatesExecutionConfig = z.infer<typeof GatesExecutionConfigSchema>;
65
- /**
66
- * Parsed gate command ready for execution
67
- */
68
- export interface ParsedGateCommand {
69
- /** The shell command to execute */
70
- command: string;
71
- /** Whether to continue if this gate fails */
72
- continueOnError: boolean;
73
- /** Timeout in milliseconds */
74
- timeout: number;
75
- }
76
- /**
77
- * WU-1191: Lane health gate mode
78
- * Controls how lane health check behaves during gates
79
- */
80
- export type LaneHealthMode = 'warn' | 'error' | 'off';
81
- /**
82
- * Schema for lane health mode validation
83
- */
84
- export declare const LaneHealthModeSchema: z.ZodEnum<{
85
- warn: "warn";
86
- off: "off";
87
- error: "error";
88
- }>;
89
- /**
90
- * Default lane health mode (advisory by default)
91
- */
92
- export declare const DEFAULT_LANE_HEALTH_MODE: LaneHealthMode;
93
- /**
94
- * WU-1262: Resolved coverage configuration
95
- * Contains threshold and mode derived from methodology policy
96
- */
97
- export interface CoverageConfig {
98
- /** Coverage threshold (0-100) */
99
- threshold: number;
100
- /** Coverage mode (block, warn, or off) */
101
- mode: CoverageMode;
102
- }
103
- /**
104
- * WU-2020: Focused coverage policy interface (ISP-compliant).
105
- * Single-responsibility: coverage threshold and enforcement mode.
106
- */
107
- export interface CoveragePolicy {
108
- /** Coverage threshold (0-100) */
109
- threshold: number;
110
- /** Coverage mode (block, warn, or off) */
111
- mode: CoverageMode;
112
- }
113
- /**
114
- * WU-2020: Focused test runner policy interface (ISP-compliant).
115
- * Single-responsibility: whether tests are mandatory for completion.
116
- */
117
- export interface TestRunnerPolicy {
118
- /** Whether tests are required for completion (from methodology.testing) */
119
- tests_required: boolean;
120
- }
121
- /**
122
- * WU-1280: Resolved test policy configuration
123
- * Extends CoverageConfig with tests_required from methodology policy.
124
- *
125
- * WU-2020: Now defined as the intersection of CoveragePolicy and
126
- * TestRunnerPolicy. Consumers that only need coverage or test-runner
127
- * semantics should prefer the focused interfaces.
128
- */
129
- export interface TestPolicy extends CoveragePolicy, TestRunnerPolicy {
130
- }
131
- /**
132
- * WU-1356: Gates commands configuration type
133
- */
134
- export interface GatesCommands {
135
- test_full: string;
136
- test_docs_only: string;
137
- test_incremental: string;
138
- lint?: string;
139
- typecheck?: string;
140
- format?: string;
141
- migration_verify: string;
142
- }
143
- //# sourceMappingURL=gates-schemas.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gates-schemas.d.ts","sourceRoot":"","sources":["../src/gates-schemas.ts"],"names":[],"mappings":"AAGA;;;;;;;;;GASG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAkBxD;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;mBAAiD,CAAC;AAEtF;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAuBrC,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAM9E;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,mCAAmC;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,6CAA6C;IAC7C,eAAe,EAAE,OAAO,CAAC;IACzB,8BAA8B;IAC9B,OAAO,EAAE,MAAM,CAAC;CACjB;AAMD;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;AAEtD;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;EAAmC,CAAC;AAErE;;GAEG;AACH,eAAO,MAAM,wBAAwB,EAAE,cAAuB,CAAC;AAM/D;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,iCAAiC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,IAAI,EAAE,YAAY,CAAC;CACpB;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,iCAAiC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,IAAI,EAAE,YAAY,CAAC;CACpB;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,2EAA2E;IAC3E,cAAc,EAAE,OAAO,CAAC;CACzB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,UAAW,SAAQ,cAAc,EAAE,gBAAgB;CAAG;AAMvE;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;CAC1B"}
@@ -1,67 +0,0 @@
1
- // Copyright (c) 2026 Hellmai Ltd
2
- // SPDX-License-Identifier: AGPL-3.0-only
3
- /**
4
- * Gates Schemas and Types
5
- *
6
- * WU-2037: Extracted from gates-config.ts
7
- *
8
- * Zod schema definitions, TypeScript types, and interfaces for gates configuration.
9
- * This module contains only shape definitions -- no runtime logic.
10
- *
11
- * @module gates-schemas
12
- */
13
- import { z } from 'zod';
14
- // ---------------------------------------------------------------------------
15
- // Gate command schemas
16
- // ---------------------------------------------------------------------------
17
- /**
18
- * Schema for a gate command object with options
19
- */
20
- const GateCommandObjectSchema = z.object({
21
- /** The shell command to execute */
22
- command: z.string(),
23
- /** Whether to continue if this gate fails (default: false) */
24
- continueOnError: z.boolean().optional(),
25
- /** Timeout in milliseconds */
26
- timeout: z.number().int().positive().optional(),
27
- });
28
- /**
29
- * Schema for a gate command - either a string or an object with options
30
- */
31
- export const GateCommandConfigSchema = z.union([z.string(), GateCommandObjectSchema]);
32
- /**
33
- * Schema for the gates execution configuration section
34
- */
35
- export const GatesExecutionConfigSchema = z.object({
36
- /** Preset to use for default commands (node, python, go, rust, dotnet) */
37
- preset: z.string().optional(),
38
- /** Setup command (e.g., install dependencies) */
39
- setup: GateCommandConfigSchema.optional(),
40
- /** Format check command */
41
- format: GateCommandConfigSchema.optional(),
42
- /** Lint command */
43
- lint: GateCommandConfigSchema.optional(),
44
- /** Type check command */
45
- typecheck: GateCommandConfigSchema.optional(),
46
- /** Test command */
47
- test: GateCommandConfigSchema.optional(),
48
- /** Coverage configuration */
49
- coverage: z
50
- .union([
51
- z.string(),
52
- z.object({
53
- command: z.string(),
54
- threshold: z.number().min(0).max(100).optional(),
55
- }),
56
- ])
57
- .optional(),
58
- });
59
- /**
60
- * Schema for lane health mode validation
61
- */
62
- export const LaneHealthModeSchema = z.enum(['warn', 'error', 'off']);
63
- /**
64
- * Default lane health mode (advisory by default)
65
- */
66
- export const DEFAULT_LANE_HEALTH_MODE = 'warn';
67
- //# sourceMappingURL=gates-schemas.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gates-schemas.js","sourceRoot":"","sources":["../src/gates-schemas.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,yCAAyC;AAEzC;;;;;;;;;GASG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,8EAA8E;AAC9E,uBAAuB;AACvB,8EAA8E;AAE9E;;GAEG;AACH,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,mCAAmC;IACnC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,8DAA8D;IAC9D,eAAe,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACvC,8BAA8B;IAC9B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAChD,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,uBAAuB,CAAC,CAAC,CAAC;AAOtF;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,0EAA0E;IAC1E,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,iDAAiD;IACjD,KAAK,EAAE,uBAAuB,CAAC,QAAQ,EAAE;IACzC,2BAA2B;IAC3B,MAAM,EAAE,uBAAuB,CAAC,QAAQ,EAAE;IAC1C,mBAAmB;IACnB,IAAI,EAAE,uBAAuB,CAAC,QAAQ,EAAE;IACxC,yBAAyB;IACzB,SAAS,EAAE,uBAAuB,CAAC,QAAQ,EAAE;IAC7C,mBAAmB;IACnB,IAAI,EAAE,uBAAuB,CAAC,QAAQ,EAAE;IACxC,6BAA6B;IAC7B,QAAQ,EAAE,CAAC;SACR,KAAK,CAAC;QACL,CAAC,CAAC,MAAM,EAAE;QACV,CAAC,CAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;YACnB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;SACjD,CAAC;KACH,CAAC;SACD,QAAQ,EAAE;CACd,CAAC,CAAC;AAiCH;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;AAErE;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAmB,MAAM,CAAC"}
@@ -1,80 +0,0 @@
1
- /// <reference path="./types.d.ts" />
2
- import type { GatesCommands } from './gates-schemas.js';
3
- declare const SUPPORTED_PACKAGE_MANAGERS: readonly ["pnpm", "npm", "yarn", "bun"];
4
- declare const SUPPORTED_TEST_RUNNERS: readonly ["vitest", "jest", "mocha"];
5
- /**
6
- * WU-1356: Supported package managers type
7
- */
8
- type PackageManager = (typeof SUPPORTED_PACKAGE_MANAGERS)[number];
9
- /**
10
- * WU-1356: Supported test runners type
11
- */
12
- type TestRunner = (typeof SUPPORTED_TEST_RUNNERS)[number];
13
- export type ScopedUnitTestExecutionPlan = {
14
- mode: 'direct';
15
- runner: TestRunner;
16
- args: string[];
17
- } | {
18
- mode: 'default-flow';
19
- preset: string;
20
- };
21
- export declare function resolveGatePreset(projectRoot: string): string | undefined;
22
- export declare function resolveScopedUnitTestExecutionPlan(options: {
23
- projectRoot: string;
24
- scopedUnitTests: string[];
25
- }): ScopedUnitTestExecutionPlan | null;
26
- export declare function formatScopedUnitTestFallbackMessage(plan: Extract<ScopedUnitTestExecutionPlan, {
27
- mode: 'default-flow';
28
- }>): string;
29
- /**
30
- * WU-1356: Resolve package manager from configuration
31
- *
32
- * Reads the package_manager field from workspace.yaml software_delivery.
33
- * Returns 'pnpm' as default if not configured.
34
- *
35
- * @param projectRoot - Project root directory
36
- * @returns Resolved package manager ('pnpm', 'npm', 'yarn', or 'bun')
37
- */
38
- export declare function resolvePackageManager(projectRoot: string): PackageManager;
39
- /**
40
- * WU-1356: Resolve test runner from configuration
41
- *
42
- * Reads the test_runner field from workspace.yaml software_delivery.
43
- * Returns 'vitest' as default if not configured.
44
- *
45
- * @param projectRoot - Project root directory
46
- * @returns Resolved test runner ('vitest', 'jest', or 'mocha')
47
- */
48
- export declare function resolveTestRunner(projectRoot: string): TestRunner;
49
- /**
50
- * WU-1356: Resolve build command from configuration
51
- *
52
- * Reads the build_command field from workspace.yaml software_delivery.
53
- * If not configured, uses default based on package_manager.
54
- *
55
- * @param projectRoot - Project root directory
56
- * @returns Resolved build command
57
- */
58
- export declare function resolveBuildCommand(projectRoot: string): string;
59
- /**
60
- * WU-1356: Resolve gates commands from configuration
61
- *
62
- * Reads gates.commands from workspace.yaml software_delivery.
63
- * Merges with defaults based on package_manager if not fully specified.
64
- *
65
- * @param projectRoot - Project root directory
66
- * @returns Resolved gates commands configuration
67
- */
68
- export declare function resolveGatesCommands(projectRoot: string): GatesCommands;
69
- /**
70
- * WU-1356: Get ignore patterns for test runner
71
- *
72
- * Returns patterns to ignore when detecting changed tests,
73
- * based on the test runner configuration.
74
- *
75
- * @param testRunner - Test runner type (vitest, jest, mocha)
76
- * @returns Array of ignore patterns
77
- */
78
- export declare function getIgnorePatterns(testRunner: TestRunner): string[];
79
- export {};
80
- //# sourceMappingURL=package-manager-resolver.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"package-manager-resolver.d.ts","sourceRoot":"","sources":["../src/package-manager-resolver.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAcxD,QAAA,MAAM,0BAA0B,yCAA0C,CAAC;AAC3E,QAAA,MAAM,sBAAsB,sCAAuC,CAAC;AAIpE;;GAEG;AACH,KAAK,cAAc,GAAG,CAAC,OAAO,0BAA0B,CAAC,CAAC,MAAM,CAAC,CAAC;AAElE;;GAEG;AACH,KAAK,UAAU,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1D,MAAM,MAAM,2BAA2B,GACnC;IACE,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,UAAU,CAAC;IACnB,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB,GACD;IACE,IAAI,EAAE,cAAc,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAoFN,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAWzE;AAED,wBAAgB,kCAAkC,CAAC,OAAO,EAAE;IAC1D,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B,GAAG,2BAA2B,GAAG,IAAI,CAoBrC;AAED,wBAAgB,mCAAmC,CACjD,IAAI,EAAE,OAAO,CAAC,2BAA2B,EAAE;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,CAAC,GACnE,MAAM,CAKR;AAMD;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,cAAc,CAazE;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU,CAajE;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAe/D;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,aAAa,CA+BvE;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,EAAE,CAKlE"}
@@ -1,245 +0,0 @@
1
- // Copyright (c) 2026 Hellmai Ltd
2
- // SPDX-License-Identifier: AGPL-3.0-only
3
- /**
4
- * Package Manager and Test Runner Resolution
5
- *
6
- * WU-2037: Extracted from gates-config.ts
7
- *
8
- * Resolves package manager, test runner, build commands, gates commands,
9
- * and ignore patterns from workspace.yaml software_delivery configuration.
10
- *
11
- * @module package-manager-resolver
12
- */
13
- import { asRecord, isString } from './object-guards.js';
14
- import { GATES_RUNTIME_DEFAULTS, SOFTWARE_DELIVERY_FIELDS, GATES_FIELDS, GATES_COMMAND_FIELDS, loadSoftwareDeliveryConfig, getGatesSection, } from './gates-config-internal.js';
15
- // ---------------------------------------------------------------------------
16
- // Supported values
17
- // ---------------------------------------------------------------------------
18
- const SUPPORTED_PACKAGE_MANAGERS = ['pnpm', 'npm', 'yarn', 'bun'];
19
- const SUPPORTED_TEST_RUNNERS = ['vitest', 'jest', 'mocha'];
20
- const GATE_PRESET_FIELD = 'preset';
21
- const NODE_GATE_PRESET = 'node';
22
- // ---------------------------------------------------------------------------
23
- // Default command tables
24
- // ---------------------------------------------------------------------------
25
- /**
26
- * WU-1356: Default gates commands by package manager
27
- *
28
- * Provides sensible defaults for different package manager and test runner combinations.
29
- */
30
- const DEFAULT_GATES_COMMANDS = {
31
- pnpm: {
32
- test_full: 'pnpm turbo run test',
33
- test_docs_only: '',
34
- test_incremental: 'pnpm vitest run --changed origin/main',
35
- lint: 'pnpm lint',
36
- typecheck: 'pnpm typecheck',
37
- format: 'pnpm format:check',
38
- migration_verify: '',
39
- },
40
- npm: {
41
- test_full: 'npm test',
42
- test_docs_only: '',
43
- test_incremental: 'npm test -- --onlyChanged',
44
- lint: 'npm run lint',
45
- typecheck: 'npm run typecheck',
46
- format: 'npm run format:check',
47
- migration_verify: '',
48
- },
49
- yarn: {
50
- test_full: 'yarn test',
51
- test_docs_only: '',
52
- test_incremental: 'yarn test --onlyChanged',
53
- lint: 'yarn lint',
54
- typecheck: 'yarn typecheck',
55
- format: 'yarn format:check',
56
- migration_verify: '',
57
- },
58
- bun: {
59
- test_full: 'bun test',
60
- test_docs_only: '',
61
- test_incremental: 'bun test --changed',
62
- lint: 'bun run lint',
63
- typecheck: 'bun run typecheck',
64
- format: 'bun run format:check',
65
- migration_verify: '',
66
- },
67
- };
68
- /**
69
- * WU-1356: Default build commands by package manager
70
- */
71
- const DEFAULT_BUILD_COMMANDS = {
72
- pnpm: 'pnpm --filter @lumenflow/cli build',
73
- npm: 'npm run build --workspace @lumenflow/cli',
74
- yarn: 'yarn workspace @lumenflow/cli build',
75
- bun: 'bun run --filter @lumenflow/cli build',
76
- };
77
- /**
78
- * WU-1356: Ignore patterns by test runner
79
- *
80
- * Different test runners use different cache directories that should be ignored.
81
- */
82
- const IGNORE_PATTERNS_BY_RUNNER = {
83
- vitest: ['.turbo'],
84
- jest: ['coverage', '.jest-cache'],
85
- mocha: ['coverage', '.nyc_output'],
86
- };
87
- const SCOPED_UNIT_TEST_ARGS_BY_RUNNER = {
88
- vitest: (paths) => ['vitest', 'run', ...paths, '--passWithNoTests'],
89
- jest: (paths) => ['jest', ...paths, '--passWithNoTests'],
90
- mocha: (paths) => ['mocha', ...paths],
91
- };
92
- function normalizeScopedUnitTestPaths(scopedUnitTests) {
93
- return scopedUnitTests
94
- .filter((entry) => typeof entry === 'string')
95
- .map((entry) => entry.trim())
96
- .filter(Boolean);
97
- }
98
- export function resolveGatePreset(projectRoot) {
99
- const gates = getGatesSection(projectRoot);
100
- const execution = asRecord(gates?.[GATES_FIELDS.EXECUTION]);
101
- const preset = execution?.[GATE_PRESET_FIELD];
102
- if (!isString(preset)) {
103
- return undefined;
104
- }
105
- const normalized = preset.trim();
106
- return normalized.length > 0 ? normalized : undefined;
107
- }
108
- export function resolveScopedUnitTestExecutionPlan(options) {
109
- const normalizedPaths = normalizeScopedUnitTestPaths(options.scopedUnitTests);
110
- if (normalizedPaths.length === 0) {
111
- return null;
112
- }
113
- const preset = resolveGatePreset(options.projectRoot);
114
- if (preset && preset !== NODE_GATE_PRESET) {
115
- return {
116
- mode: 'default-flow',
117
- preset,
118
- };
119
- }
120
- const runner = resolveTestRunner(options.projectRoot);
121
- return {
122
- mode: 'direct',
123
- runner,
124
- args: SCOPED_UNIT_TEST_ARGS_BY_RUNNER[runner](normalizedPaths),
125
- };
126
- }
127
- export function formatScopedUnitTestFallbackMessage(plan) {
128
- return (`gates.execution.preset "${plan.preset}" does not support path-scoped tests.unit execution; ` +
129
- 'falling back to the configured default test flow.');
130
- }
131
- // ---------------------------------------------------------------------------
132
- // Public API
133
- // ---------------------------------------------------------------------------
134
- /**
135
- * WU-1356: Resolve package manager from configuration
136
- *
137
- * Reads the package_manager field from workspace.yaml software_delivery.
138
- * Returns 'pnpm' as default if not configured.
139
- *
140
- * @param projectRoot - Project root directory
141
- * @returns Resolved package manager ('pnpm', 'npm', 'yarn', or 'bun')
142
- */
143
- export function resolvePackageManager(projectRoot) {
144
- const softwareDelivery = loadSoftwareDeliveryConfig(projectRoot);
145
- if (!softwareDelivery) {
146
- return GATES_RUNTIME_DEFAULTS.DEFAULT_PACKAGE_MANAGER;
147
- }
148
- const pm = softwareDelivery[SOFTWARE_DELIVERY_FIELDS.PACKAGE_MANAGER] ??
149
- softwareDelivery[SOFTWARE_DELIVERY_FIELDS.PACKAGE_MANAGER_CAMEL];
150
- if (isString(pm) && SUPPORTED_PACKAGE_MANAGERS.includes(pm)) {
151
- return pm;
152
- }
153
- return GATES_RUNTIME_DEFAULTS.DEFAULT_PACKAGE_MANAGER;
154
- }
155
- /**
156
- * WU-1356: Resolve test runner from configuration
157
- *
158
- * Reads the test_runner field from workspace.yaml software_delivery.
159
- * Returns 'vitest' as default if not configured.
160
- *
161
- * @param projectRoot - Project root directory
162
- * @returns Resolved test runner ('vitest', 'jest', or 'mocha')
163
- */
164
- export function resolveTestRunner(projectRoot) {
165
- const softwareDelivery = loadSoftwareDeliveryConfig(projectRoot);
166
- if (!softwareDelivery) {
167
- return GATES_RUNTIME_DEFAULTS.DEFAULT_TEST_RUNNER;
168
- }
169
- const runner = softwareDelivery[SOFTWARE_DELIVERY_FIELDS.TEST_RUNNER] ??
170
- softwareDelivery[SOFTWARE_DELIVERY_FIELDS.TEST_RUNNER_CAMEL];
171
- if (isString(runner) && SUPPORTED_TEST_RUNNERS.includes(runner)) {
172
- return runner;
173
- }
174
- return GATES_RUNTIME_DEFAULTS.DEFAULT_TEST_RUNNER;
175
- }
176
- /**
177
- * WU-1356: Resolve build command from configuration
178
- *
179
- * Reads the build_command field from workspace.yaml software_delivery.
180
- * If not configured, uses default based on package_manager.
181
- *
182
- * @param projectRoot - Project root directory
183
- * @returns Resolved build command
184
- */
185
- export function resolveBuildCommand(projectRoot) {
186
- const defaultPm = resolvePackageManager(projectRoot);
187
- const softwareDelivery = loadSoftwareDeliveryConfig(projectRoot);
188
- if (!softwareDelivery) {
189
- return DEFAULT_BUILD_COMMANDS[defaultPm];
190
- }
191
- const configuredBuildCommand = softwareDelivery[SOFTWARE_DELIVERY_FIELDS.BUILD_COMMAND] ??
192
- softwareDelivery[SOFTWARE_DELIVERY_FIELDS.BUILD_COMMAND_CAMEL];
193
- if (isString(configuredBuildCommand) && configuredBuildCommand.length > 0) {
194
- return configuredBuildCommand;
195
- }
196
- return DEFAULT_BUILD_COMMANDS[defaultPm];
197
- }
198
- /**
199
- * WU-1356: Resolve gates commands from configuration
200
- *
201
- * Reads gates.commands from workspace.yaml software_delivery.
202
- * Merges with defaults based on package_manager if not fully specified.
203
- *
204
- * @param projectRoot - Project root directory
205
- * @returns Resolved gates commands configuration
206
- */
207
- export function resolveGatesCommands(projectRoot) {
208
- const pm = resolvePackageManager(projectRoot);
209
- const defaults = DEFAULT_GATES_COMMANDS[pm];
210
- const gates = getGatesSection(projectRoot);
211
- if (!gates) {
212
- return defaults;
213
- }
214
- const commands = asRecord(gates[GATES_FIELDS.COMMANDS]);
215
- if (!commands) {
216
- return defaults;
217
- }
218
- // Merge user config with defaults (user config wins)
219
- return {
220
- test_full: commands[GATES_COMMAND_FIELDS.TEST_FULL] ?? defaults.test_full,
221
- test_docs_only: commands[GATES_COMMAND_FIELDS.TEST_DOCS_ONLY] ??
222
- defaults.test_docs_only,
223
- test_incremental: commands[GATES_COMMAND_FIELDS.TEST_INCREMENTAL] ??
224
- defaults.test_incremental,
225
- lint: commands[GATES_COMMAND_FIELDS.LINT] ?? defaults.lint,
226
- typecheck: commands[GATES_COMMAND_FIELDS.TYPECHECK] ?? defaults.typecheck,
227
- format: commands[GATES_COMMAND_FIELDS.FORMAT] ?? defaults.format,
228
- migration_verify: commands[GATES_COMMAND_FIELDS.MIGRATION_VERIFY] ??
229
- defaults.migration_verify,
230
- };
231
- }
232
- /**
233
- * WU-1356: Get ignore patterns for test runner
234
- *
235
- * Returns patterns to ignore when detecting changed tests,
236
- * based on the test runner configuration.
237
- *
238
- * @param testRunner - Test runner type (vitest, jest, mocha)
239
- * @returns Array of ignore patterns
240
- */
241
- export function getIgnorePatterns(testRunner) {
242
- return (IGNORE_PATTERNS_BY_RUNNER[testRunner] ??
243
- IGNORE_PATTERNS_BY_RUNNER[GATES_RUNTIME_DEFAULTS.DEFAULT_TEST_RUNNER]);
244
- }
245
- //# sourceMappingURL=package-manager-resolver.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"package-manager-resolver.js","sourceRoot":"","sources":["../src/package-manager-resolver.ts"],"names":[],"mappings":"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"}