@lumenflow/core 4.24.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 (430) 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/duration-constants.d.ts +1 -28
  23. package/dist/constants/duration-constants.d.ts.map +1 -1
  24. package/dist/constants/duration-constants.js +4 -28
  25. package/dist/constants/duration-constants.js.map +1 -1
  26. package/dist/constants/gate-constants.d.ts +1 -23
  27. package/dist/constants/gate-constants.d.ts.map +1 -1
  28. package/dist/constants/gate-constants.js +4 -23
  29. package/dist/constants/gate-constants.js.map +1 -1
  30. package/dist/constants/lock-constants.d.ts +1 -28
  31. package/dist/constants/lock-constants.d.ts.map +1 -1
  32. package/dist/constants/lock-constants.js +2 -28
  33. package/dist/constants/lock-constants.js.map +1 -1
  34. package/dist/core/tool.schemas.d.ts +11 -11
  35. package/dist/core/worktree-guard.js +2 -2
  36. package/dist/core/worktree-guard.js.map +1 -1
  37. package/dist/cycle-detector.d.ts +4 -48
  38. package/dist/cycle-detector.d.ts.map +1 -1
  39. package/dist/cycle-detector.js +4 -78
  40. package/dist/cycle-detector.js.map +1 -1
  41. package/dist/date-utils.d.ts +1 -65
  42. package/dist/date-utils.d.ts.map +1 -1
  43. package/dist/date-utils.js +4 -140
  44. package/dist/date-utils.js.map +1 -1
  45. package/dist/delegation-monitor.d.ts +2 -0
  46. package/dist/delegation-monitor.d.ts.map +1 -1
  47. package/dist/delegation-monitor.js +29 -2
  48. package/dist/delegation-monitor.js.map +1 -1
  49. package/dist/delegation-recovery.d.ts +36 -17
  50. package/dist/delegation-recovery.d.ts.map +1 -1
  51. package/dist/delegation-recovery.js +285 -82
  52. package/dist/delegation-recovery.js.map +1 -1
  53. package/dist/delegation-registry-schema.d.ts +257 -31
  54. package/dist/delegation-registry-schema.d.ts.map +1 -1
  55. package/dist/delegation-registry-schema.js +43 -34
  56. package/dist/delegation-registry-schema.js.map +1 -1
  57. package/dist/delegation-registry-store.d.ts +4 -128
  58. package/dist/delegation-registry-store.d.ts.map +1 -1
  59. package/dist/delegation-registry-store.js +39 -178
  60. package/dist/delegation-registry-store.js.map +1 -1
  61. package/dist/delegation-tree.d.ts +12 -20
  62. package/dist/delegation-tree.d.ts.map +1 -1
  63. package/dist/delegation-tree.js +40 -29
  64. package/dist/delegation-tree.js.map +1 -1
  65. package/dist/delivery-review-contract.d.ts +1 -1
  66. package/dist/delivery-review-contract.d.ts.map +1 -1
  67. package/dist/docs-layout-presets.d.ts +1 -30
  68. package/dist/docs-layout-presets.d.ts.map +1 -1
  69. package/dist/docs-layout-presets.js +4 -38
  70. package/dist/docs-layout-presets.js.map +1 -1
  71. package/dist/domain/context.schemas.d.ts +3 -3
  72. package/dist/domain/orchestration.constants.d.ts +1 -110
  73. package/dist/domain/orchestration.constants.d.ts.map +1 -1
  74. package/dist/domain/orchestration.constants.js +2 -127
  75. package/dist/domain/orchestration.constants.js.map +1 -1
  76. package/dist/domain/orchestration.schemas.d.ts +1 -306
  77. package/dist/domain/orchestration.schemas.d.ts.map +1 -1
  78. package/dist/domain/orchestration.schemas.js +2 -211
  79. package/dist/domain/orchestration.schemas.js.map +1 -1
  80. package/dist/domain/orchestration.types.d.ts +1 -133
  81. package/dist/domain/orchestration.types.d.ts.map +1 -1
  82. package/dist/domain/orchestration.types.js +2 -2
  83. package/dist/domain/orchestration.types.js.map +1 -1
  84. package/dist/domain/recovery.schemas.d.ts +3 -3
  85. package/dist/domain/validation.schemas.d.ts +4 -4
  86. package/dist/error-handler.d.ts +4 -173
  87. package/dist/error-handler.d.ts.map +1 -1
  88. package/dist/error-handler.js +4 -244
  89. package/dist/error-handler.js.map +1 -1
  90. package/dist/file-classifiers.d.ts.map +1 -1
  91. package/dist/file-classifiers.js +26 -0
  92. package/dist/file-classifiers.js.map +1 -1
  93. package/dist/git-adapter.d.ts +4 -448
  94. package/dist/git-adapter.d.ts.map +1 -1
  95. package/dist/git-adapter.js +4 -772
  96. package/dist/git-adapter.js.map +1 -1
  97. package/dist/git-context-extractor.d.ts +4 -98
  98. package/dist/git-context-extractor.d.ts.map +1 -1
  99. package/dist/git-context-extractor.js +4 -563
  100. package/dist/git-context-extractor.js.map +1 -1
  101. package/dist/git-staged-validator.d.ts +4 -29
  102. package/dist/git-staged-validator.d.ts.map +1 -1
  103. package/dist/git-staged-validator.js +4 -46
  104. package/dist/git-staged-validator.js.map +1 -1
  105. package/dist/incremental-lint.d.ts.map +1 -1
  106. package/dist/incremental-lint.js +3 -2
  107. package/dist/incremental-lint.js.map +1 -1
  108. package/dist/incremental-test.d.ts +1 -32
  109. package/dist/incremental-test.d.ts.map +1 -1
  110. package/dist/incremental-test.js +4 -61
  111. package/dist/incremental-test.js.map +1 -1
  112. package/dist/index.d.ts +3 -2
  113. package/dist/index.d.ts.map +1 -1
  114. package/dist/index.js +10 -2
  115. package/dist/index.js.map +1 -1
  116. package/dist/integration-target.d.ts +30 -0
  117. package/dist/integration-target.d.ts.map +1 -0
  118. package/dist/integration-target.js +51 -0
  119. package/dist/integration-target.js.map +1 -0
  120. package/dist/lane-checker.d.ts.map +1 -1
  121. package/dist/lane-checker.js +8 -0
  122. package/dist/lane-checker.js.map +1 -1
  123. package/dist/lumenflow-config-schema.d.ts +73 -29
  124. package/dist/lumenflow-config-schema.d.ts.map +1 -1
  125. package/dist/lumenflow-config-schema.js +1 -1
  126. package/dist/lumenflow-config-schema.js.map +1 -1
  127. package/dist/lumenflow-config.d.ts +10 -34
  128. package/dist/lumenflow-config.d.ts.map +1 -1
  129. package/dist/lumenflow-config.js +32 -142
  130. package/dist/lumenflow-config.js.map +1 -1
  131. package/dist/manual-test-validator.d.ts +1 -96
  132. package/dist/manual-test-validator.d.ts.map +1 -1
  133. package/dist/manual-test-validator.js +4 -245
  134. package/dist/manual-test-validator.js.map +1 -1
  135. package/dist/micro-worktree-shared.d.ts.map +1 -1
  136. package/dist/micro-worktree-shared.js +10 -9
  137. package/dist/micro-worktree-shared.js.map +1 -1
  138. package/dist/micro-worktree.d.ts.map +1 -1
  139. package/dist/micro-worktree.js +26 -23
  140. package/dist/micro-worktree.js.map +1 -1
  141. package/dist/normalize-config-keys.d.ts +1 -10
  142. package/dist/normalize-config-keys.d.ts.map +1 -1
  143. package/dist/normalize-config-keys.js +7 -73
  144. package/dist/normalize-config-keys.js.map +1 -1
  145. package/dist/object-guards.d.ts +1 -10
  146. package/dist/object-guards.d.ts.map +1 -1
  147. package/dist/object-guards.js +7 -20
  148. package/dist/object-guards.js.map +1 -1
  149. package/dist/ports/config.ports.d.ts +1 -82
  150. package/dist/ports/config.ports.d.ts.map +1 -1
  151. package/dist/ports/config.ports.js +2 -1
  152. package/dist/ports/config.ports.js.map +1 -1
  153. package/dist/ports/dashboard-renderer.port.d.ts +1 -112
  154. package/dist/ports/dashboard-renderer.port.d.ts.map +1 -1
  155. package/dist/ports/dashboard-renderer.port.js +2 -1
  156. package/dist/ports/dashboard-renderer.port.js.map +1 -1
  157. package/dist/ports/git-validator.ports.d.ts +5 -110
  158. package/dist/ports/git-validator.ports.d.ts.map +1 -1
  159. package/dist/ports/git-validator.ports.js +8 -1
  160. package/dist/ports/git-validator.ports.js.map +1 -1
  161. package/dist/ports/sync-validator.ports.d.ts +1 -51
  162. package/dist/ports/sync-validator.ports.d.ts.map +1 -1
  163. package/dist/ports/sync-validator.ports.js +2 -1
  164. package/dist/ports/sync-validator.ports.js.map +1 -1
  165. package/dist/ports/wu-helpers.ports.d.ts +1 -156
  166. package/dist/ports/wu-helpers.ports.d.ts.map +1 -1
  167. package/dist/ports/wu-helpers.ports.js +2 -1
  168. package/dist/ports/wu-helpers.ports.js.map +1 -1
  169. package/dist/ports/wu-state.ports.d.ts +1 -208
  170. package/dist/ports/wu-state.ports.d.ts.map +1 -1
  171. package/dist/ports/wu-state.ports.js +2 -1
  172. package/dist/ports/wu-state.ports.js.map +1 -1
  173. package/dist/rebase-artifact-cleanup.d.ts.map +1 -1
  174. package/dist/rebase-artifact-cleanup.js +6 -3
  175. package/dist/rebase-artifact-cleanup.js.map +1 -1
  176. package/dist/sandbox-allowlist.d.ts +1 -15
  177. package/dist/sandbox-allowlist.d.ts.map +1 -1
  178. package/dist/sandbox-allowlist.js +4 -74
  179. package/dist/sandbox-allowlist.js.map +1 -1
  180. package/dist/sandbox-backend-linux.d.ts +1 -5
  181. package/dist/sandbox-backend-linux.d.ts.map +1 -1
  182. package/dist/sandbox-backend-linux.js +4 -64
  183. package/dist/sandbox-backend-linux.js.map +1 -1
  184. package/dist/sandbox-backend-macos.d.ts +1 -5
  185. package/dist/sandbox-backend-macos.d.ts.map +1 -1
  186. package/dist/sandbox-backend-macos.js +4 -109
  187. package/dist/sandbox-backend-macos.js.map +1 -1
  188. package/dist/sandbox-backend-windows.d.ts +1 -5
  189. package/dist/sandbox-backend-windows.d.ts.map +1 -1
  190. package/dist/sandbox-backend-windows.js +4 -27
  191. package/dist/sandbox-backend-windows.js.map +1 -1
  192. package/dist/sandbox-profile.d.ts +1 -57
  193. package/dist/sandbox-profile.d.ts.map +1 -1
  194. package/dist/sandbox-profile.js +4 -65
  195. package/dist/sandbox-profile.js.map +1 -1
  196. package/dist/schemas/agents-config.d.ts +47 -0
  197. package/dist/schemas/agents-config.d.ts.map +1 -1
  198. package/dist/schemas/agents-config.js +59 -0
  199. package/dist/schemas/agents-config.js.map +1 -1
  200. package/dist/schemas/command-schemas.d.ts +4 -4
  201. package/dist/schemas/flow-arg-validators.d.ts +2 -2
  202. package/dist/schemas/flow-schemas.d.ts +4 -4
  203. package/dist/schemas/gates-section-config.d.ts +32 -13
  204. package/dist/schemas/gates-section-config.d.ts.map +1 -1
  205. package/dist/schemas/gates-section-config.js +16 -1
  206. package/dist/schemas/gates-section-config.js.map +1 -1
  207. package/dist/schemas/initiative-arg-validators.d.ts +2 -2
  208. package/dist/schemas/initiative-schemas.d.ts +12 -12
  209. package/dist/schemas/lanes-config.d.ts +5 -5
  210. package/dist/schemas/memory-arg-validators.d.ts +6 -0
  211. package/dist/schemas/memory-arg-validators.d.ts.map +1 -1
  212. package/dist/schemas/memory-config.d.ts +4 -4
  213. package/dist/schemas/memory-schemas.d.ts +12 -0
  214. package/dist/schemas/memory-schemas.d.ts.map +1 -1
  215. package/dist/schemas/memory-schemas.js +12 -0
  216. package/dist/schemas/memory-schemas.js.map +1 -1
  217. package/dist/schemas/operational-config.d.ts +4 -4
  218. package/dist/schemas/setup-arg-validators.d.ts +3 -3
  219. package/dist/schemas/setup-schemas.d.ts +8 -8
  220. package/dist/schemas/wu-config.d.ts +3 -3
  221. package/dist/schemas/wu-lifecycle-arg-validators.d.ts +2 -2
  222. package/dist/schemas/wu-lifecycle-schemas.d.ts +4 -4
  223. package/dist/section-headings.d.ts +1 -34
  224. package/dist/section-headings.d.ts.map +1 -1
  225. package/dist/section-headings.js +2 -51
  226. package/dist/section-headings.js.map +1 -1
  227. package/dist/spawn-constraints-generator.js +3 -3
  228. package/dist/spawn-constraints-generator.js.map +1 -1
  229. package/dist/spawn-guidance-generators.d.ts +1 -1
  230. package/dist/spawn-guidance-generators.d.ts.map +1 -1
  231. package/dist/spawn-policy-resolver.d.ts +1 -1
  232. package/dist/spawn-policy-resolver.d.ts.map +1 -1
  233. package/dist/spawn-task-builder.d.ts +17 -1
  234. package/dist/spawn-task-builder.d.ts.map +1 -1
  235. package/dist/spawn-task-builder.js +63 -1
  236. package/dist/spawn-task-builder.js.map +1 -1
  237. package/dist/spawn-template-assembler.d.ts +1 -1
  238. package/dist/spawn-template-assembler.d.ts.map +1 -1
  239. package/dist/state-machine.d.ts +1 -9
  240. package/dist/state-machine.d.ts.map +1 -1
  241. package/dist/state-machine.js +2 -86
  242. package/dist/state-machine.js.map +1 -1
  243. package/dist/sync-validator.d.ts.map +1 -1
  244. package/dist/sync-validator.js +15 -12
  245. package/dist/sync-validator.js.map +1 -1
  246. package/dist/telemetry.d.ts.map +1 -1
  247. package/dist/telemetry.js +3 -2
  248. package/dist/telemetry.js.map +1 -1
  249. package/dist/work-classifier.d.ts +1 -102
  250. package/dist/work-classifier.d.ts.map +1 -1
  251. package/dist/work-classifier.js +2 -424
  252. package/dist/work-classifier.js.map +1 -1
  253. package/dist/worktree-symlink.d.ts +2 -2
  254. package/dist/worktree-symlink.d.ts.map +1 -1
  255. package/dist/worktree-symlink.js +37 -12
  256. package/dist/worktree-symlink.js.map +1 -1
  257. package/dist/wu-cli-constants.d.ts +1 -433
  258. package/dist/wu-cli-constants.d.ts.map +1 -1
  259. package/dist/wu-cli-constants.js +4 -436
  260. package/dist/wu-cli-constants.js.map +1 -1
  261. package/dist/wu-consistency-file-repairs.d.ts.map +1 -1
  262. package/dist/wu-consistency-file-repairs.js +5 -3
  263. package/dist/wu-consistency-file-repairs.js.map +1 -1
  264. package/dist/wu-context-constants.d.ts +22 -0
  265. package/dist/wu-context-constants.d.ts.map +1 -1
  266. package/dist/wu-context-constants.js +22 -0
  267. package/dist/wu-context-constants.js.map +1 -1
  268. package/dist/wu-doc-types.d.ts +1 -47
  269. package/dist/wu-doc-types.d.ts.map +1 -1
  270. package/dist/wu-domain-constants.d.ts +1 -295
  271. package/dist/wu-domain-constants.d.ts.map +1 -1
  272. package/dist/wu-domain-constants.js +4 -397
  273. package/dist/wu-domain-constants.js.map +1 -1
  274. package/dist/wu-done-branch-only.d.ts +1 -1
  275. package/dist/wu-done-branch-only.d.ts.map +1 -1
  276. package/dist/wu-done-branch-only.js +22 -13
  277. package/dist/wu-done-branch-only.js.map +1 -1
  278. package/dist/wu-done-branch-utils.d.ts.map +1 -1
  279. package/dist/wu-done-branch-utils.js +5 -3
  280. package/dist/wu-done-branch-utils.js.map +1 -1
  281. package/dist/wu-done-cleanup.d.ts.map +1 -1
  282. package/dist/wu-done-cleanup.js +66 -22
  283. package/dist/wu-done-cleanup.js.map +1 -1
  284. package/dist/wu-done-concurrent-merge.d.ts.map +1 -1
  285. package/dist/wu-done-concurrent-merge.js +9 -6
  286. package/dist/wu-done-concurrent-merge.js.map +1 -1
  287. package/dist/wu-done-errors.d.ts +3 -3
  288. package/dist/wu-done-errors.d.ts.map +1 -1
  289. package/dist/wu-done-inputs.d.ts.map +1 -1
  290. package/dist/wu-done-inputs.js +3 -0
  291. package/dist/wu-done-inputs.js.map +1 -1
  292. package/dist/wu-done-merge-phase.d.ts.map +1 -1
  293. package/dist/wu-done-merge-phase.js +4 -2
  294. package/dist/wu-done-merge-phase.js.map +1 -1
  295. package/dist/wu-done-merge.d.ts.map +1 -1
  296. package/dist/wu-done-merge.js +16 -8
  297. package/dist/wu-done-merge.js.map +1 -1
  298. package/dist/wu-done-merged-worktree.d.ts.map +1 -1
  299. package/dist/wu-done-merged-worktree.js +7 -8
  300. package/dist/wu-done-merged-worktree.js.map +1 -1
  301. package/dist/wu-done-messages.d.ts.map +1 -1
  302. package/dist/wu-done-messages.js +12 -5
  303. package/dist/wu-done-messages.js.map +1 -1
  304. package/dist/wu-done-metadata.d.ts.map +1 -1
  305. package/dist/wu-done-metadata.js +3 -8
  306. package/dist/wu-done-metadata.js.map +1 -1
  307. package/dist/wu-done-preflight-checks.d.ts.map +1 -1
  308. package/dist/wu-done-preflight-checks.js +21 -15
  309. package/dist/wu-done-preflight-checks.js.map +1 -1
  310. package/dist/wu-done-rebase.d.ts.map +1 -1
  311. package/dist/wu-done-rebase.js +10 -8
  312. package/dist/wu-done-rebase.js.map +1 -1
  313. package/dist/wu-done-retry-helpers.d.ts.map +1 -1
  314. package/dist/wu-done-retry-helpers.js +13 -11
  315. package/dist/wu-done-retry-helpers.js.map +1 -1
  316. package/dist/wu-done-validation.d.ts.map +1 -1
  317. package/dist/wu-done-validation.js +4 -2
  318. package/dist/wu-done-validation.js.map +1 -1
  319. package/dist/wu-done-worktree-services.d.ts.map +1 -1
  320. package/dist/wu-done-worktree-services.js +4 -2
  321. package/dist/wu-done-worktree-services.js.map +1 -1
  322. package/dist/wu-done-worktree.d.ts.map +1 -1
  323. package/dist/wu-done-worktree.js +4 -2
  324. package/dist/wu-done-worktree.js.map +1 -1
  325. package/dist/wu-git-constants.d.ts +1 -175
  326. package/dist/wu-git-constants.d.ts.map +1 -1
  327. package/dist/wu-git-constants.js +4 -175
  328. package/dist/wu-git-constants.js.map +1 -1
  329. package/dist/wu-helpers.d.ts +24 -0
  330. package/dist/wu-helpers.d.ts.map +1 -1
  331. package/dist/wu-helpers.js +37 -4
  332. package/dist/wu-helpers.js.map +1 -1
  333. package/dist/wu-id-format.d.ts +1 -137
  334. package/dist/wu-id-format.d.ts.map +1 -1
  335. package/dist/wu-id-format.js +2 -249
  336. package/dist/wu-id-format.js.map +1 -1
  337. package/dist/wu-id-generator.d.ts.map +1 -1
  338. package/dist/wu-id-generator.js +8 -5
  339. package/dist/wu-id-generator.js.map +1 -1
  340. package/dist/wu-paths-constants.d.ts +1 -253
  341. package/dist/wu-paths-constants.d.ts.map +1 -1
  342. package/dist/wu-paths-constants.js +4 -273
  343. package/dist/wu-paths-constants.js.map +1 -1
  344. package/dist/wu-paths.d.ts +1 -274
  345. package/dist/wu-paths.d.ts.map +1 -1
  346. package/dist/wu-paths.js +4 -236
  347. package/dist/wu-paths.js.map +1 -1
  348. package/dist/wu-rules-resolvers.d.ts.map +1 -1
  349. package/dist/wu-rules-resolvers.js +11 -6
  350. package/dist/wu-rules-resolvers.js.map +1 -1
  351. package/dist/wu-schema.d.ts +1 -830
  352. package/dist/wu-schema.d.ts.map +1 -1
  353. package/dist/wu-schema.js +4 -929
  354. package/dist/wu-schema.js.map +1 -1
  355. package/dist/wu-spawn-helpers.d.ts.map +1 -1
  356. package/dist/wu-spawn-helpers.js +5 -2
  357. package/dist/wu-spawn-helpers.js.map +1 -1
  358. package/dist/wu-spawn.d.ts +2 -2
  359. package/dist/wu-spawn.d.ts.map +1 -1
  360. package/dist/wu-spawn.js +2 -2
  361. package/dist/wu-spawn.js.map +1 -1
  362. package/dist/wu-state-schema.d.ts +1 -291
  363. package/dist/wu-state-schema.d.ts.map +1 -1
  364. package/dist/wu-state-schema.js +4 -212
  365. package/dist/wu-state-schema.js.map +1 -1
  366. package/dist/wu-status-transition.d.ts +3 -1
  367. package/dist/wu-status-transition.d.ts.map +1 -1
  368. package/dist/wu-status-transition.js +9 -24
  369. package/dist/wu-status-transition.js.map +1 -1
  370. package/dist/wu-statuses.d.ts +1 -208
  371. package/dist/wu-statuses.d.ts.map +1 -1
  372. package/dist/wu-statuses.js +4 -242
  373. package/dist/wu-statuses.js.map +1 -1
  374. package/dist/wu-transaction-collectors.d.ts +1 -0
  375. package/dist/wu-transaction-collectors.d.ts.map +1 -1
  376. package/dist/wu-transaction-collectors.js +13 -8
  377. package/dist/wu-transaction-collectors.js.map +1 -1
  378. package/dist/wu-type-helpers.d.ts +1 -27
  379. package/dist/wu-type-helpers.d.ts.map +1 -1
  380. package/dist/wu-type-helpers.js +4 -46
  381. package/dist/wu-type-helpers.js.map +1 -1
  382. package/dist/wu-ui-constants.d.ts +1 -235
  383. package/dist/wu-ui-constants.d.ts.map +1 -1
  384. package/dist/wu-ui-constants.js +5 -235
  385. package/dist/wu-ui-constants.js.map +1 -1
  386. package/dist/wu-validation-constants.d.ts +1 -60
  387. package/dist/wu-validation-constants.d.ts.map +1 -1
  388. package/dist/wu-validation-constants.js +4 -66
  389. package/dist/wu-validation-constants.js.map +1 -1
  390. package/dist/wu-yaml.d.ts +1 -112
  391. package/dist/wu-yaml.d.ts.map +1 -1
  392. package/dist/wu-yaml.js +4 -304
  393. package/dist/wu-yaml.js.map +1 -1
  394. package/package.json +12 -9
  395. package/dist/coverage-gate.d.ts +0 -128
  396. package/dist/coverage-gate.d.ts.map +0 -1
  397. package/dist/coverage-gate.js +0 -211
  398. package/dist/coverage-gate.js.map +0 -1
  399. package/dist/gates-agent-mode.d.ts +0 -108
  400. package/dist/gates-agent-mode.d.ts.map +0 -1
  401. package/dist/gates-agent-mode.js +0 -138
  402. package/dist/gates-agent-mode.js.map +0 -1
  403. package/dist/gates-config-internal.d.ts +0 -54
  404. package/dist/gates-config-internal.d.ts.map +0 -1
  405. package/dist/gates-config-internal.js +0 -107
  406. package/dist/gates-config-internal.js.map +0 -1
  407. package/dist/gates-config.d.ts +0 -68
  408. package/dist/gates-config.d.ts.map +0 -1
  409. package/dist/gates-config.js +0 -193
  410. package/dist/gates-config.js.map +0 -1
  411. package/dist/gates-coverage.d.ts +0 -42
  412. package/dist/gates-coverage.d.ts.map +0 -1
  413. package/dist/gates-coverage.js +0 -162
  414. package/dist/gates-coverage.js.map +0 -1
  415. package/dist/gates-presets.d.ts +0 -52
  416. package/dist/gates-presets.d.ts.map +0 -1
  417. package/dist/gates-presets.js +0 -117
  418. package/dist/gates-presets.js.map +0 -1
  419. package/dist/gates-schemas.d.ts +0 -143
  420. package/dist/gates-schemas.d.ts.map +0 -1
  421. package/dist/gates-schemas.js +0 -67
  422. package/dist/gates-schemas.js.map +0 -1
  423. package/dist/package-manager-resolver.d.ts +0 -80
  424. package/dist/package-manager-resolver.d.ts.map +0 -1
  425. package/dist/package-manager-resolver.js +0 -245
  426. package/dist/package-manager-resolver.js.map +0 -1
  427. package/dist/resolve-policy.d.ts +0 -293
  428. package/dist/resolve-policy.d.ts.map +0 -1
  429. package/dist/resolve-policy.js +0 -303
  430. 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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"}