@lumenflow/core 3.2.0 → 3.2.1

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 (1155) hide show
  1. package/dist/active-wu-detector.d.ts +25 -0
  2. package/dist/active-wu-detector.d.ts.map +1 -0
  3. package/dist/active-wu-detector.js +109 -0
  4. package/dist/active-wu-detector.js.map +1 -0
  5. package/dist/adapters/context-adapters.d.ts +101 -0
  6. package/dist/adapters/context-adapters.d.ts.map +1 -0
  7. package/dist/adapters/context-adapters.js +98 -0
  8. package/dist/adapters/context-adapters.js.map +1 -0
  9. package/dist/adapters/filesystem-metrics.adapter.d.ts +91 -0
  10. package/dist/adapters/filesystem-metrics.adapter.d.ts.map +1 -0
  11. package/dist/adapters/filesystem-metrics.adapter.js +530 -0
  12. package/dist/adapters/filesystem-metrics.adapter.js.map +1 -0
  13. package/dist/adapters/index.d.ts +15 -0
  14. package/dist/adapters/index.d.ts.map +1 -0
  15. package/dist/adapters/index.js +21 -0
  16. package/dist/adapters/index.js.map +1 -0
  17. package/dist/adapters/mock-dashboard-renderer.adapter.d.ts +86 -0
  18. package/dist/adapters/mock-dashboard-renderer.adapter.d.ts.map +1 -0
  19. package/dist/adapters/mock-dashboard-renderer.adapter.js +93 -0
  20. package/dist/adapters/mock-dashboard-renderer.adapter.js.map +1 -0
  21. package/dist/adapters/recovery-adapters.d.ts +41 -0
  22. package/dist/adapters/recovery-adapters.d.ts.map +1 -0
  23. package/dist/adapters/recovery-adapters.js +32 -0
  24. package/dist/adapters/recovery-adapters.js.map +1 -0
  25. package/dist/adapters/terminal-renderer.adapter.d.ts +86 -0
  26. package/dist/adapters/terminal-renderer.adapter.d.ts.map +1 -0
  27. package/dist/adapters/terminal-renderer.adapter.js +344 -0
  28. package/dist/adapters/terminal-renderer.adapter.js.map +1 -0
  29. package/dist/adapters/validation-adapters.d.ts +53 -0
  30. package/dist/adapters/validation-adapters.d.ts.map +1 -0
  31. package/dist/adapters/validation-adapters.js +48 -0
  32. package/dist/adapters/validation-adapters.js.map +1 -0
  33. package/dist/agent-patterns-registry.d.ts +141 -0
  34. package/dist/agent-patterns-registry.d.ts.map +1 -0
  35. package/dist/agent-patterns-registry.js +320 -0
  36. package/dist/agent-patterns-registry.js.map +1 -0
  37. package/dist/arg-parser.d.ts +94 -0
  38. package/dist/arg-parser.d.ts.map +1 -0
  39. package/dist/arg-parser.js +774 -0
  40. package/dist/arg-parser.js.map +1 -0
  41. package/dist/atomic-merge.d.ts +21 -0
  42. package/dist/atomic-merge.d.ts.map +1 -0
  43. package/dist/atomic-merge.js +87 -0
  44. package/dist/atomic-merge.js.map +1 -0
  45. package/dist/backlog-editor.d.ts +103 -0
  46. package/dist/backlog-editor.d.ts.map +1 -0
  47. package/dist/backlog-editor.js +158 -0
  48. package/dist/backlog-editor.js.map +1 -0
  49. package/dist/backlog-generator.d.ts +90 -0
  50. package/dist/backlog-generator.d.ts.map +1 -0
  51. package/dist/backlog-generator.js +536 -0
  52. package/dist/backlog-generator.js.map +1 -0
  53. package/dist/backlog-parser.d.ts +46 -0
  54. package/dist/backlog-parser.d.ts.map +1 -0
  55. package/dist/backlog-parser.js +105 -0
  56. package/dist/backlog-parser.js.map +1 -0
  57. package/dist/backlog-sync-validator.d.ts +88 -0
  58. package/dist/backlog-sync-validator.d.ts.map +1 -0
  59. package/dist/backlog-sync-validator.js +322 -0
  60. package/dist/backlog-sync-validator.js.map +1 -0
  61. package/dist/branch-check.d.ts +63 -0
  62. package/dist/branch-check.d.ts.map +1 -0
  63. package/dist/branch-check.js +197 -0
  64. package/dist/branch-check.js.map +1 -0
  65. package/dist/branch-drift.d.ts +24 -0
  66. package/dist/branch-drift.d.ts.map +1 -0
  67. package/dist/branch-drift.js +54 -0
  68. package/dist/branch-drift.js.map +1 -0
  69. package/dist/cleanup-install-config.d.ts +24 -0
  70. package/dist/cleanup-install-config.d.ts.map +1 -0
  71. package/dist/cleanup-install-config.js +40 -0
  72. package/dist/cleanup-install-config.js.map +1 -0
  73. package/dist/cleanup-lock.d.ts +125 -0
  74. package/dist/cleanup-lock.d.ts.map +1 -0
  75. package/dist/cleanup-lock.js +322 -0
  76. package/dist/cleanup-lock.js.map +1 -0
  77. package/dist/cli/is-agent-branch.d.ts +22 -0
  78. package/dist/cli/is-agent-branch.d.ts.map +1 -0
  79. package/dist/cli/is-agent-branch.js.map +1 -0
  80. package/dist/cloud-detect.d.ts +145 -0
  81. package/dist/cloud-detect.d.ts.map +1 -0
  82. package/dist/cloud-detect.js +116 -0
  83. package/dist/cloud-detect.js.map +1 -0
  84. package/dist/code-path-validator.d.ts +145 -0
  85. package/dist/code-path-validator.d.ts.map +1 -0
  86. package/dist/code-path-validator.js +553 -0
  87. package/dist/code-path-validator.js.map +1 -0
  88. package/dist/code-paths-overlap.d.ts +50 -0
  89. package/dist/code-paths-overlap.d.ts.map +1 -0
  90. package/dist/code-paths-overlap.js +248 -0
  91. package/dist/code-paths-overlap.js.map +1 -0
  92. package/dist/color-support.d.ts +21 -0
  93. package/dist/color-support.d.ts.map +1 -0
  94. package/dist/color-support.js +67 -0
  95. package/dist/color-support.js.map +1 -0
  96. package/dist/commands-logger.d.ts +71 -0
  97. package/dist/commands-logger.d.ts.map +1 -0
  98. package/dist/commands-logger.js +257 -0
  99. package/dist/commands-logger.js.map +1 -0
  100. package/dist/commit-message-utils.d.ts +26 -0
  101. package/dist/commit-message-utils.d.ts.map +1 -0
  102. package/dist/commit-message-utils.js +44 -0
  103. package/dist/commit-message-utils.js.map +1 -0
  104. package/dist/config-contract.d.ts +12 -0
  105. package/dist/config-contract.d.ts.map +1 -0
  106. package/dist/config-contract.js +14 -0
  107. package/dist/config-contract.js.map +1 -0
  108. package/dist/constants/backlog-patterns.d.ts +21 -0
  109. package/dist/constants/backlog-patterns.d.ts.map +1 -0
  110. package/dist/constants/backlog-patterns.js +26 -0
  111. package/dist/constants/backlog-patterns.js.map +1 -0
  112. package/dist/constants/display-constants.d.ts +22 -0
  113. package/dist/constants/display-constants.d.ts.map +1 -0
  114. package/dist/constants/display-constants.js +26 -0
  115. package/dist/constants/display-constants.js.map +1 -0
  116. package/dist/constants/dora-constants.d.ts +50 -0
  117. package/dist/constants/dora-constants.d.ts.map +1 -0
  118. package/dist/constants/dora-constants.js +56 -0
  119. package/dist/constants/dora-constants.js.map +1 -0
  120. package/dist/constants/duration-constants.d.ts +29 -0
  121. package/dist/constants/duration-constants.d.ts.map +1 -0
  122. package/dist/constants/duration-constants.js +31 -0
  123. package/dist/constants/duration-constants.js.map +1 -0
  124. package/dist/constants/gate-constants.d.ts +24 -0
  125. package/dist/constants/gate-constants.d.ts.map +1 -0
  126. package/dist/constants/gate-constants.js +26 -0
  127. package/dist/constants/gate-constants.js.map +1 -0
  128. package/dist/constants/git-constants.d.ts +33 -0
  129. package/dist/constants/git-constants.d.ts.map +1 -0
  130. package/dist/constants/git-constants.js +35 -0
  131. package/dist/constants/git-constants.js.map +1 -0
  132. package/dist/constants/index.d.ts +20 -0
  133. package/dist/constants/index.d.ts.map +1 -0
  134. package/dist/constants/index.js +31 -0
  135. package/dist/constants/index.js.map +1 -0
  136. package/dist/constants/linter-constants.d.ts +17 -0
  137. package/dist/constants/linter-constants.d.ts.map +1 -0
  138. package/dist/constants/linter-constants.js +19 -0
  139. package/dist/constants/linter-constants.js.map +1 -0
  140. package/dist/constants/lock-constants.d.ts +29 -0
  141. package/dist/constants/lock-constants.d.ts.map +1 -0
  142. package/dist/constants/lock-constants.js +31 -0
  143. package/dist/constants/lock-constants.js.map +1 -0
  144. package/dist/constants/tokenizer-constants.d.ts +16 -0
  145. package/dist/constants/tokenizer-constants.d.ts.map +1 -0
  146. package/dist/constants/tokenizer-constants.js +18 -0
  147. package/dist/constants/tokenizer-constants.js.map +1 -0
  148. package/dist/constants/validation-constants.d.ts +15 -0
  149. package/dist/constants/validation-constants.d.ts.map +1 -0
  150. package/dist/constants/validation-constants.js +17 -0
  151. package/dist/constants/validation-constants.js.map +1 -0
  152. package/dist/context/context-computer.d.ts +36 -0
  153. package/dist/context/context-computer.d.ts.map +1 -0
  154. package/dist/context/context-computer.js +128 -0
  155. package/dist/context/context-computer.js.map +1 -0
  156. package/dist/context/git-state-reader.d.ts +37 -0
  157. package/dist/context/git-state-reader.d.ts.map +1 -0
  158. package/dist/context/git-state-reader.js +64 -0
  159. package/dist/context/git-state-reader.js.map +1 -0
  160. package/dist/context/index.d.ts +18 -0
  161. package/dist/context/index.d.ts.map +1 -0
  162. package/dist/context/index.js +20 -0
  163. package/dist/context/index.js.map +1 -0
  164. package/dist/context/location-resolver.d.ts +34 -0
  165. package/dist/context/location-resolver.d.ts.map +1 -0
  166. package/dist/context/location-resolver.js +179 -0
  167. package/dist/context/location-resolver.js.map +1 -0
  168. package/dist/context/wu-state-reader.d.ts +30 -0
  169. package/dist/context/wu-state-reader.d.ts.map +1 -0
  170. package/dist/context/wu-state-reader.js +126 -0
  171. package/dist/context/wu-state-reader.js.map +1 -0
  172. package/dist/context-di.d.ts +185 -0
  173. package/dist/context-di.d.ts.map +1 -0
  174. package/dist/context-di.js +165 -0
  175. package/dist/context-di.js.map +1 -0
  176. package/dist/context-validation-integration.d.ts +69 -0
  177. package/dist/context-validation-integration.d.ts.map +1 -0
  178. package/dist/context-validation-integration.js +161 -0
  179. package/dist/context-validation-integration.js.map +1 -0
  180. package/dist/core/scope-checker.d.ts +80 -0
  181. package/dist/core/scope-checker.d.ts.map +1 -0
  182. package/dist/core/scope-checker.js +166 -0
  183. package/dist/core/scope-checker.js.map +1 -0
  184. package/dist/core/tool-runner.d.ts +136 -0
  185. package/dist/core/tool-runner.d.ts.map +1 -0
  186. package/dist/core/tool-runner.js +396 -0
  187. package/dist/core/tool-runner.js.map +1 -0
  188. package/dist/core/tool.constants.d.ts +106 -0
  189. package/dist/core/tool.constants.d.ts.map +1 -0
  190. package/dist/core/tool.constants.js +104 -0
  191. package/dist/core/tool.constants.js.map +1 -0
  192. package/dist/core/tool.schemas.d.ts +227 -0
  193. package/dist/core/tool.schemas.d.ts.map +1 -0
  194. package/dist/core/tool.schemas.js +229 -0
  195. package/dist/core/tool.schemas.js.map +1 -0
  196. package/dist/core/worktree-guard.d.ts +115 -0
  197. package/dist/core/worktree-guard.d.ts.map +1 -0
  198. package/dist/core/worktree-guard.js +245 -0
  199. package/dist/core/worktree-guard.js.map +1 -0
  200. package/dist/coverage-gate.d.ts +127 -0
  201. package/dist/coverage-gate.d.ts.map +1 -0
  202. package/dist/coverage-gate.js +211 -0
  203. package/dist/coverage-gate.js.map +1 -0
  204. package/dist/cycle-detector.d.ts +52 -0
  205. package/dist/cycle-detector.d.ts.map +1 -0
  206. package/dist/cycle-detector.js +84 -0
  207. package/dist/cycle-detector.js.map +1 -0
  208. package/dist/date-utils.d.ts +66 -0
  209. package/dist/date-utils.d.ts.map +1 -0
  210. package/dist/date-utils.js +143 -0
  211. package/dist/date-utils.js.map +1 -0
  212. package/dist/delegation-escalation.d.ts +71 -0
  213. package/dist/delegation-escalation.d.ts.map +1 -0
  214. package/dist/delegation-escalation.js +264 -0
  215. package/dist/delegation-escalation.js.map +1 -0
  216. package/dist/delegation-monitor.d.ts +262 -0
  217. package/dist/delegation-monitor.d.ts.map +1 -0
  218. package/dist/delegation-monitor.js +678 -0
  219. package/dist/delegation-monitor.js.map +1 -0
  220. package/dist/delegation-recovery.d.ts +62 -0
  221. package/dist/delegation-recovery.d.ts.map +1 -0
  222. package/dist/delegation-recovery.js +304 -0
  223. package/dist/delegation-recovery.js.map +1 -0
  224. package/dist/delegation-registry-schema.d.ts +75 -0
  225. package/dist/delegation-registry-schema.d.ts.map +1 -0
  226. package/dist/delegation-registry-schema.js +93 -0
  227. package/dist/delegation-registry-schema.js.map +1 -0
  228. package/dist/delegation-registry-store.d.ts +145 -0
  229. package/dist/delegation-registry-store.d.ts.map +1 -0
  230. package/dist/delegation-registry-store.js +308 -0
  231. package/dist/delegation-registry-store.js.map +1 -0
  232. package/dist/delegation-tree.d.ts +52 -0
  233. package/dist/delegation-tree.d.ts.map +1 -0
  234. package/dist/delegation-tree.js +205 -0
  235. package/dist/delegation-tree.js.map +1 -0
  236. package/dist/dependency-graph.d.ts +169 -0
  237. package/dist/dependency-graph.d.ts.map +1 -0
  238. package/dist/dependency-graph.js +612 -0
  239. package/dist/dependency-graph.js.map +1 -0
  240. package/dist/dependency-guard.d.ts +41 -0
  241. package/dist/dependency-guard.d.ts.map +1 -0
  242. package/dist/dependency-guard.js +145 -0
  243. package/dist/dependency-guard.js.map +1 -0
  244. package/dist/dependency-validator.d.ts +89 -0
  245. package/dist/dependency-validator.d.ts.map +1 -0
  246. package/dist/dependency-validator.js +155 -0
  247. package/dist/dependency-validator.js.map +1 -0
  248. package/dist/docs-path-validator.d.ts +16 -0
  249. package/dist/docs-path-validator.d.ts.map +1 -0
  250. package/dist/docs-path-validator.js +98 -0
  251. package/dist/docs-path-validator.js.map +1 -0
  252. package/dist/domain/context.schemas.d.ts +170 -0
  253. package/dist/domain/context.schemas.d.ts.map +1 -0
  254. package/dist/domain/context.schemas.js +151 -0
  255. package/dist/domain/context.schemas.js.map +1 -0
  256. package/dist/domain/index.d.ts +15 -0
  257. package/dist/domain/index.d.ts.map +1 -0
  258. package/dist/domain/index.js +23 -0
  259. package/dist/domain/index.js.map +1 -0
  260. package/dist/domain/orchestration.constants.d.ts +111 -0
  261. package/dist/domain/orchestration.constants.d.ts.map +1 -0
  262. package/dist/domain/orchestration.constants.js +130 -0
  263. package/dist/domain/orchestration.constants.js.map +1 -0
  264. package/dist/domain/orchestration.schemas.d.ts +307 -0
  265. package/dist/domain/orchestration.schemas.d.ts.map +1 -0
  266. package/dist/domain/orchestration.schemas.js +214 -0
  267. package/dist/domain/orchestration.schemas.js.map +1 -0
  268. package/dist/domain/orchestration.types.d.ts +134 -0
  269. package/dist/domain/orchestration.types.d.ts.map +1 -0
  270. package/dist/domain/orchestration.types.js +5 -0
  271. package/dist/domain/orchestration.types.js.map +1 -0
  272. package/dist/domain/recovery.schemas.d.ts +164 -0
  273. package/dist/domain/recovery.schemas.d.ts.map +1 -0
  274. package/dist/domain/recovery.schemas.js +134 -0
  275. package/dist/domain/recovery.schemas.js.map +1 -0
  276. package/dist/domain/validation.schemas.d.ts +147 -0
  277. package/dist/domain/validation.schemas.d.ts.map +1 -0
  278. package/dist/domain/validation.schemas.js +117 -0
  279. package/dist/domain/validation.schemas.js.map +1 -0
  280. package/dist/error-handler.d.ts +144 -0
  281. package/dist/error-handler.d.ts.map +1 -0
  282. package/dist/error-handler.js +214 -0
  283. package/dist/error-handler.js.map +1 -0
  284. package/dist/file-classifiers.d.ts +63 -0
  285. package/dist/file-classifiers.d.ts.map +1 -0
  286. package/dist/file-classifiers.js +111 -0
  287. package/dist/file-classifiers.js.map +1 -0
  288. package/dist/force-bypass-audit.d.ts +47 -0
  289. package/dist/force-bypass-audit.d.ts.map +1 -0
  290. package/dist/force-bypass-audit.js +146 -0
  291. package/dist/force-bypass-audit.js.map +1 -0
  292. package/dist/gates-agent-mode.d.ts +107 -0
  293. package/dist/gates-agent-mode.d.ts.map +1 -0
  294. package/dist/gates-agent-mode.js +138 -0
  295. package/dist/gates-agent-mode.js.map +1 -0
  296. package/dist/gates-config-internal.d.ts +51 -0
  297. package/dist/gates-config-internal.d.ts.map +1 -0
  298. package/dist/gates-config-internal.js +105 -0
  299. package/dist/gates-config-internal.js.map +1 -0
  300. package/dist/gates-config.d.ts +65 -0
  301. package/dist/gates-config.d.ts.map +1 -0
  302. package/dist/gates-config.js +191 -0
  303. package/dist/gates-config.js.map +1 -0
  304. package/dist/gates-coverage.d.ts +39 -0
  305. package/dist/gates-coverage.d.ts.map +1 -0
  306. package/dist/gates-coverage.js +148 -0
  307. package/dist/gates-coverage.js.map +1 -0
  308. package/dist/gates-presets.d.ts +25 -0
  309. package/dist/gates-presets.d.ts.map +1 -0
  310. package/dist/gates-presets.js +74 -0
  311. package/dist/gates-presets.js.map +1 -0
  312. package/dist/gates-schemas.d.ts +141 -0
  313. package/dist/gates-schemas.d.ts.map +1 -0
  314. package/dist/gates-schemas.js +67 -0
  315. package/dist/gates-schemas.js.map +1 -0
  316. package/dist/generate-traceability.d.ts +106 -0
  317. package/dist/generate-traceability.d.ts.map +1 -0
  318. package/dist/generate-traceability.js +387 -0
  319. package/dist/generate-traceability.js.map +1 -0
  320. package/dist/git-adapter.d.ts +406 -0
  321. package/dist/git-adapter.d.ts.map +1 -0
  322. package/dist/git-adapter.js +686 -0
  323. package/dist/git-adapter.js.map +1 -0
  324. package/dist/git-context-extractor.d.ts +102 -0
  325. package/dist/git-context-extractor.d.ts.map +1 -0
  326. package/dist/git-context-extractor.js +569 -0
  327. package/dist/git-context-extractor.js.map +1 -0
  328. package/dist/git-staged-validator.d.ts +33 -0
  329. package/dist/git-staged-validator.d.ts.map +1 -0
  330. package/dist/git-staged-validator.js +52 -0
  331. package/dist/git-staged-validator.js.map +1 -0
  332. package/dist/hardcoded-strings.d.ts +67 -0
  333. package/dist/hardcoded-strings.d.ts.map +1 -0
  334. package/dist/hardcoded-strings.js +276 -0
  335. package/dist/hardcoded-strings.js.map +1 -0
  336. package/dist/incremental-lint.d.ts +71 -0
  337. package/dist/incremental-lint.d.ts.map +1 -0
  338. package/dist/incremental-lint.js +132 -0
  339. package/dist/incremental-lint.js.map +1 -0
  340. package/dist/incremental-test.d.ts +33 -0
  341. package/dist/incremental-test.d.ts.map +1 -0
  342. package/dist/incremental-test.js +64 -0
  343. package/dist/incremental-test.js.map +1 -0
  344. package/dist/index.d.ts +108 -0
  345. package/dist/index.d.ts.map +1 -0
  346. package/dist/index.js.map +1 -0
  347. package/dist/invariants/check-automated-tests.d.ts +42 -0
  348. package/dist/invariants/check-automated-tests.d.ts.map +1 -0
  349. package/dist/invariants/check-automated-tests.js +171 -0
  350. package/dist/invariants/check-automated-tests.js.map +1 -0
  351. package/dist/invariants-runner.d.ts +166 -0
  352. package/dist/invariants-runner.d.ts.map +1 -0
  353. package/dist/invariants-runner.js +583 -0
  354. package/dist/invariants-runner.js.map +1 -0
  355. package/dist/lane-checker.d.ts +132 -0
  356. package/dist/lane-checker.d.ts.map +1 -0
  357. package/dist/lane-checker.js +687 -0
  358. package/dist/lane-checker.js.map +1 -0
  359. package/dist/lane-inference.d.ts +29 -0
  360. package/dist/lane-inference.d.ts.map +1 -0
  361. package/dist/lane-inference.js +210 -0
  362. package/dist/lane-inference.js.map +1 -0
  363. package/dist/lane-lock.d.ts +220 -0
  364. package/dist/lane-lock.d.ts.map +1 -0
  365. package/dist/lane-lock.js +499 -0
  366. package/dist/lane-lock.js.map +1 -0
  367. package/dist/lane-suggest-prompt.d.ts +97 -0
  368. package/dist/lane-suggest-prompt.d.ts.map +1 -0
  369. package/dist/lane-suggest-prompt.js +362 -0
  370. package/dist/lane-suggest-prompt.js.map +1 -0
  371. package/dist/lane-validator.d.ts +49 -0
  372. package/dist/lane-validator.d.ts.map +1 -0
  373. package/dist/lane-validator.js +117 -0
  374. package/dist/lane-validator.js.map +1 -0
  375. package/dist/logs-lib.d.ts +89 -0
  376. package/dist/logs-lib.d.ts.map +1 -0
  377. package/dist/logs-lib.js +214 -0
  378. package/dist/logs-lib.js.map +1 -0
  379. package/dist/lumenflow-config-schema.d.ts +643 -0
  380. package/dist/lumenflow-config-schema.d.ts.map +1 -0
  381. package/dist/lumenflow-config-schema.js +120 -0
  382. package/dist/lumenflow-config-schema.js.map +1 -0
  383. package/dist/lumenflow-config.d.ts +112 -0
  384. package/dist/lumenflow-config.d.ts.map +1 -0
  385. package/dist/lumenflow-config.js +328 -0
  386. package/dist/lumenflow-config.js.map +1 -0
  387. package/dist/lumenflow-home.d.ts +118 -0
  388. package/dist/lumenflow-home.d.ts.map +1 -0
  389. package/dist/lumenflow-home.js +214 -0
  390. package/dist/lumenflow-home.js.map +1 -0
  391. package/dist/manual-test-validator.d.ts +84 -0
  392. package/dist/manual-test-validator.d.ts.map +1 -0
  393. package/dist/manual-test-validator.js +206 -0
  394. package/dist/manual-test-validator.js.map +1 -0
  395. package/dist/merge-lock.d.ts +107 -0
  396. package/dist/merge-lock.d.ts.map +1 -0
  397. package/dist/merge-lock.js +260 -0
  398. package/dist/merge-lock.js.map +1 -0
  399. package/dist/micro-worktree-shared.d.ts +128 -0
  400. package/dist/micro-worktree-shared.d.ts.map +1 -0
  401. package/dist/micro-worktree-shared.js +352 -0
  402. package/dist/micro-worktree-shared.js.map +1 -0
  403. package/dist/micro-worktree.d.ts +165 -0
  404. package/dist/micro-worktree.d.ts.map +1 -0
  405. package/dist/micro-worktree.js +463 -0
  406. package/dist/micro-worktree.js.map +1 -0
  407. package/dist/normalize-config-keys.d.ts +10 -0
  408. package/dist/normalize-config-keys.d.ts.map +1 -0
  409. package/dist/normalize-config-keys.js +70 -0
  410. package/dist/normalize-config-keys.js.map +1 -0
  411. package/dist/object-guards.d.ts +11 -0
  412. package/dist/object-guards.d.ts.map +1 -0
  413. package/dist/object-guards.js +23 -0
  414. package/dist/object-guards.js.map +1 -0
  415. package/dist/orchestration-advisory-loader.d.ts +19 -0
  416. package/dist/orchestration-advisory-loader.d.ts.map +1 -0
  417. package/dist/orchestration-advisory-loader.js +94 -0
  418. package/dist/orchestration-advisory-loader.js.map +1 -0
  419. package/dist/orchestration-advisory.d.ts +49 -0
  420. package/dist/orchestration-advisory.d.ts.map +1 -0
  421. package/dist/orchestration-advisory.js +97 -0
  422. package/dist/orchestration-advisory.js.map +1 -0
  423. package/dist/orchestration-di.d.ts +36 -0
  424. package/dist/orchestration-di.d.ts.map +1 -0
  425. package/dist/orchestration-di.js +60 -0
  426. package/dist/orchestration-di.js.map +1 -0
  427. package/dist/orchestration-rules.d.ts +60 -0
  428. package/dist/orchestration-rules.d.ts.map +1 -0
  429. package/dist/orchestration-rules.js +212 -0
  430. package/dist/orchestration-rules.js.map +1 -0
  431. package/dist/orphan-detector.d.ts +148 -0
  432. package/dist/orphan-detector.d.ts.map +1 -0
  433. package/dist/orphan-detector.js +253 -0
  434. package/dist/orphan-detector.js.map +1 -0
  435. package/dist/pack-authoring-template-engine.d.ts +54 -0
  436. package/dist/pack-authoring-template-engine.d.ts.map +1 -0
  437. package/dist/pack-authoring-template-engine.js +510 -0
  438. package/dist/pack-authoring-template-engine.js.map +1 -0
  439. package/dist/package-manager-resolver.d.ts +63 -0
  440. package/dist/package-manager-resolver.d.ts.map +1 -0
  441. package/dist/package-manager-resolver.js +193 -0
  442. package/dist/package-manager-resolver.js.map +1 -0
  443. package/dist/path-classifiers.d.ts +58 -0
  444. package/dist/path-classifiers.d.ts.map +1 -0
  445. package/dist/path-classifiers.js +96 -0
  446. package/dist/path-classifiers.js.map +1 -0
  447. package/dist/patrol-loop.d.ts +171 -0
  448. package/dist/patrol-loop.d.ts.map +1 -0
  449. package/dist/patrol-loop.js +197 -0
  450. package/dist/patrol-loop.js.map +1 -0
  451. package/dist/piped-command-detector.d.ts +25 -0
  452. package/dist/piped-command-detector.d.ts.map +1 -0
  453. package/dist/piped-command-detector.js +67 -0
  454. package/dist/piped-command-detector.js.map +1 -0
  455. package/dist/ports/config.ports.d.ts +83 -0
  456. package/dist/ports/config.ports.d.ts.map +1 -0
  457. package/dist/ports/config.ports.js +4 -0
  458. package/dist/ports/config.ports.js.map +1 -0
  459. package/dist/ports/context.ports.d.ts +136 -0
  460. package/dist/ports/context.ports.d.ts.map +1 -0
  461. package/dist/ports/context.ports.js +4 -0
  462. package/dist/ports/context.ports.js.map +1 -0
  463. package/dist/ports/core-tools.ports.d.ts +282 -0
  464. package/dist/ports/core-tools.ports.d.ts.map +1 -0
  465. package/dist/ports/core-tools.ports.js +4 -0
  466. package/dist/ports/core-tools.ports.js.map +1 -0
  467. package/dist/ports/dashboard-renderer.port.d.ts +113 -0
  468. package/dist/ports/dashboard-renderer.port.d.ts.map +1 -0
  469. package/dist/ports/dashboard-renderer.port.js +4 -0
  470. package/dist/ports/dashboard-renderer.port.js.map +1 -0
  471. package/dist/ports/git-validator.ports.d.ts +114 -0
  472. package/dist/ports/git-validator.ports.d.ts.map +1 -0
  473. package/dist/ports/git-validator.ports.js +4 -0
  474. package/dist/ports/git-validator.ports.js.map +1 -0
  475. package/dist/ports/index.d.ts +23 -0
  476. package/dist/ports/index.d.ts.map +1 -0
  477. package/dist/ports/index.js +25 -0
  478. package/dist/ports/index.js.map +1 -0
  479. package/dist/ports/metrics-collector.port.d.ts +133 -0
  480. package/dist/ports/metrics-collector.port.d.ts.map +1 -0
  481. package/dist/ports/metrics-collector.port.js +4 -0
  482. package/dist/ports/metrics-collector.port.js.map +1 -0
  483. package/dist/ports/recovery.ports.d.ts +59 -0
  484. package/dist/ports/recovery.ports.d.ts.map +1 -0
  485. package/dist/ports/recovery.ports.js +4 -0
  486. package/dist/ports/recovery.ports.js.map +1 -0
  487. package/dist/ports/validation.ports.d.ts +75 -0
  488. package/dist/ports/validation.ports.d.ts.map +1 -0
  489. package/dist/ports/validation.ports.js +4 -0
  490. package/dist/ports/validation.ports.js.map +1 -0
  491. package/dist/ports/wu-helpers.ports.d.ts +168 -0
  492. package/dist/ports/wu-helpers.ports.d.ts.map +1 -0
  493. package/dist/ports/wu-helpers.ports.js +4 -0
  494. package/dist/ports/wu-helpers.ports.js.map +1 -0
  495. package/dist/ports/wu-state.ports.d.ts +190 -0
  496. package/dist/ports/wu-state.ports.d.ts.map +1 -0
  497. package/dist/ports/wu-state.ports.js +4 -0
  498. package/dist/ports/wu-state.ports.js.map +1 -0
  499. package/dist/process-detector.d.ts +69 -0
  500. package/dist/process-detector.d.ts.map +1 -0
  501. package/dist/process-detector.js +175 -0
  502. package/dist/process-detector.js.map +1 -0
  503. package/dist/prompt-linter.d.ts +73 -0
  504. package/dist/prompt-linter.d.ts.map +1 -0
  505. package/dist/prompt-linter.js +338 -0
  506. package/dist/prompt-linter.js.map +1 -0
  507. package/dist/prompt-monitor.d.ts +13 -0
  508. package/dist/prompt-monitor.d.ts.map +1 -0
  509. package/dist/prompt-monitor.js +233 -0
  510. package/dist/prompt-monitor.js.map +1 -0
  511. package/dist/rebase-artifact-cleanup.d.ts +156 -0
  512. package/dist/rebase-artifact-cleanup.d.ts.map +1 -0
  513. package/dist/rebase-artifact-cleanup.js +475 -0
  514. package/dist/rebase-artifact-cleanup.js.map +1 -0
  515. package/dist/recovery/index.d.ts +12 -0
  516. package/dist/recovery/index.d.ts.map +1 -0
  517. package/dist/recovery/index.js +14 -0
  518. package/dist/recovery/index.js.map +1 -0
  519. package/dist/recovery/recovery-analyzer.d.ts +49 -0
  520. package/dist/recovery/recovery-analyzer.d.ts.map +1 -0
  521. package/dist/recovery/recovery-analyzer.js +149 -0
  522. package/dist/recovery/recovery-analyzer.js.map +1 -0
  523. package/dist/resolve-policy.d.ts +257 -0
  524. package/dist/resolve-policy.d.ts.map +1 -0
  525. package/dist/resolve-policy.js +269 -0
  526. package/dist/resolve-policy.js.map +1 -0
  527. package/dist/retry-strategy.d.ts +191 -0
  528. package/dist/retry-strategy.d.ts.map +1 -0
  529. package/dist/retry-strategy.js +286 -0
  530. package/dist/retry-strategy.js.map +1 -0
  531. package/dist/rollback-utils.d.ts +129 -0
  532. package/dist/rollback-utils.d.ts.map +1 -0
  533. package/dist/rollback-utils.js +217 -0
  534. package/dist/rollback-utils.js.map +1 -0
  535. package/dist/sandbox-allowlist.d.ts +16 -0
  536. package/dist/sandbox-allowlist.d.ts.map +1 -0
  537. package/dist/sandbox-allowlist.js +77 -0
  538. package/dist/sandbox-allowlist.js.map +1 -0
  539. package/dist/sandbox-backend-linux.d.ts +6 -0
  540. package/dist/sandbox-backend-linux.d.ts.map +1 -0
  541. package/dist/sandbox-backend-linux.js +67 -0
  542. package/dist/sandbox-backend-linux.js.map +1 -0
  543. package/dist/sandbox-backend-macos.d.ts +6 -0
  544. package/dist/sandbox-backend-macos.d.ts.map +1 -0
  545. package/dist/sandbox-backend-macos.js +66 -0
  546. package/dist/sandbox-backend-macos.js.map +1 -0
  547. package/dist/sandbox-backend-windows.d.ts +6 -0
  548. package/dist/sandbox-backend-windows.d.ts.map +1 -0
  549. package/dist/sandbox-backend-windows.js +30 -0
  550. package/dist/sandbox-backend-windows.js.map +1 -0
  551. package/dist/sandbox-profile.d.ts +53 -0
  552. package/dist/sandbox-profile.d.ts.map +1 -0
  553. package/dist/sandbox-profile.js +64 -0
  554. package/dist/sandbox-profile.js.map +1 -0
  555. package/dist/schemas/agents-config.d.ts +130 -0
  556. package/dist/schemas/agents-config.d.ts.map +1 -0
  557. package/dist/schemas/agents-config.js +153 -0
  558. package/dist/schemas/agents-config.js.map +1 -0
  559. package/dist/schemas/arg-validators.d.ts +58 -0
  560. package/dist/schemas/arg-validators.d.ts.map +1 -0
  561. package/dist/schemas/arg-validators.js +193 -0
  562. package/dist/schemas/arg-validators.js.map +1 -0
  563. package/dist/schemas/cloud-config.d.ts +66 -0
  564. package/dist/schemas/cloud-config.d.ts.map +1 -0
  565. package/dist/schemas/cloud-config.js +81 -0
  566. package/dist/schemas/cloud-config.js.map +1 -0
  567. package/dist/schemas/command-schemas.d.ts +171 -0
  568. package/dist/schemas/command-schemas.d.ts.map +1 -0
  569. package/dist/schemas/command-schemas.js +145 -0
  570. package/dist/schemas/command-schemas.js.map +1 -0
  571. package/dist/schemas/directories-config.d.ts +64 -0
  572. package/dist/schemas/directories-config.d.ts.map +1 -0
  573. package/dist/schemas/directories-config.js +103 -0
  574. package/dist/schemas/directories-config.js.map +1 -0
  575. package/dist/schemas/flow-arg-validators.d.ts +32 -0
  576. package/dist/schemas/flow-arg-validators.d.ts.map +1 -0
  577. package/dist/schemas/flow-arg-validators.js +57 -0
  578. package/dist/schemas/flow-arg-validators.js.map +1 -0
  579. package/dist/schemas/flow-schemas.d.ts +152 -0
  580. package/dist/schemas/flow-schemas.d.ts.map +1 -0
  581. package/dist/schemas/flow-schemas.js +105 -0
  582. package/dist/schemas/flow-schemas.js.map +1 -0
  583. package/dist/schemas/gates-section-config.d.ts +94 -0
  584. package/dist/schemas/gates-section-config.d.ts.map +1 -0
  585. package/dist/schemas/gates-section-config.js +105 -0
  586. package/dist/schemas/gates-section-config.js.map +1 -0
  587. package/dist/schemas/git-config.d.ts +48 -0
  588. package/dist/schemas/git-config.d.ts.map +1 -0
  589. package/dist/schemas/git-config.js +157 -0
  590. package/dist/schemas/git-config.js.map +1 -0
  591. package/dist/schemas/index.d.ts +33 -0
  592. package/dist/schemas/index.d.ts.map +1 -0
  593. package/dist/schemas/index.js +96 -0
  594. package/dist/schemas/index.js.map +1 -0
  595. package/dist/schemas/initiative-arg-validators.d.ts +64 -0
  596. package/dist/schemas/initiative-arg-validators.d.ts.map +1 -0
  597. package/dist/schemas/initiative-arg-validators.js +65 -0
  598. package/dist/schemas/initiative-arg-validators.js.map +1 -0
  599. package/dist/schemas/initiative-schemas.d.ts +256 -0
  600. package/dist/schemas/initiative-schemas.d.ts.map +1 -0
  601. package/dist/schemas/initiative-schemas.js +186 -0
  602. package/dist/schemas/initiative-schemas.js.map +1 -0
  603. package/dist/schemas/lanes-config.d.ts +153 -0
  604. package/dist/schemas/lanes-config.d.ts.map +1 -0
  605. package/dist/schemas/lanes-config.js +125 -0
  606. package/dist/schemas/lanes-config.js.map +1 -0
  607. package/dist/schemas/memory-arg-validators.d.ts +91 -0
  608. package/dist/schemas/memory-arg-validators.d.ts.map +1 -0
  609. package/dist/schemas/memory-arg-validators.js +75 -0
  610. package/dist/schemas/memory-arg-validators.js.map +1 -0
  611. package/dist/schemas/memory-config.d.ts +169 -0
  612. package/dist/schemas/memory-config.d.ts.map +1 -0
  613. package/dist/schemas/memory-config.js +253 -0
  614. package/dist/schemas/memory-config.js.map +1 -0
  615. package/dist/schemas/memory-schemas.d.ts +287 -0
  616. package/dist/schemas/memory-schemas.d.ts.map +1 -0
  617. package/dist/schemas/memory-schemas.js +242 -0
  618. package/dist/schemas/memory-schemas.js.map +1 -0
  619. package/dist/schemas/operational-config.d.ts +145 -0
  620. package/dist/schemas/operational-config.d.ts.map +1 -0
  621. package/dist/schemas/operational-config.js +161 -0
  622. package/dist/schemas/operational-config.js.map +1 -0
  623. package/dist/schemas/schema-utils.d.ts +87 -0
  624. package/dist/schemas/schema-utils.d.ts.map +1 -0
  625. package/dist/schemas/schema-utils.js +320 -0
  626. package/dist/schemas/schema-utils.js.map +1 -0
  627. package/dist/schemas/setup-arg-validators.d.ts +91 -0
  628. package/dist/schemas/setup-arg-validators.d.ts.map +1 -0
  629. package/dist/schemas/setup-arg-validators.js +98 -0
  630. package/dist/schemas/setup-arg-validators.js.map +1 -0
  631. package/dist/schemas/setup-schemas.d.ts +335 -0
  632. package/dist/schemas/setup-schemas.d.ts.map +1 -0
  633. package/dist/schemas/setup-schemas.js +260 -0
  634. package/dist/schemas/setup-schemas.js.map +1 -0
  635. package/dist/schemas/validation-arg-validators.d.ts +18 -0
  636. package/dist/schemas/validation-arg-validators.d.ts.map +1 -0
  637. package/dist/schemas/validation-arg-validators.js +59 -0
  638. package/dist/schemas/validation-arg-validators.js.map +1 -0
  639. package/dist/schemas/validation-schemas.d.ts +80 -0
  640. package/dist/schemas/validation-schemas.d.ts.map +1 -0
  641. package/dist/schemas/validation-schemas.js +88 -0
  642. package/dist/schemas/validation-schemas.js.map +1 -0
  643. package/dist/schemas/workspace-config.d.ts +48 -0
  644. package/dist/schemas/workspace-config.d.ts.map +1 -0
  645. package/dist/schemas/workspace-config.js +33 -0
  646. package/dist/schemas/workspace-config.js.map +1 -0
  647. package/dist/schemas/wu-config.d.ts +21 -0
  648. package/dist/schemas/wu-config.d.ts.map +1 -0
  649. package/dist/schemas/wu-config.js +28 -0
  650. package/dist/schemas/wu-config.js.map +1 -0
  651. package/dist/schemas/wu-lifecycle-arg-validators.d.ts +118 -0
  652. package/dist/schemas/wu-lifecycle-arg-validators.d.ts.map +1 -0
  653. package/dist/schemas/wu-lifecycle-arg-validators.js +82 -0
  654. package/dist/schemas/wu-lifecycle-arg-validators.js.map +1 -0
  655. package/dist/schemas/wu-lifecycle-schemas.d.ts +362 -0
  656. package/dist/schemas/wu-lifecycle-schemas.d.ts.map +1 -0
  657. package/dist/schemas/wu-lifecycle-schemas.js +284 -0
  658. package/dist/schemas/wu-lifecycle-schemas.js.map +1 -0
  659. package/dist/section-headings.d.ts +35 -0
  660. package/dist/section-headings.d.ts.map +1 -0
  661. package/dist/section-headings.js +54 -0
  662. package/dist/section-headings.js.map +1 -0
  663. package/dist/spawn-agent-guidance.d.ts +90 -0
  664. package/dist/spawn-agent-guidance.d.ts.map +1 -0
  665. package/dist/spawn-agent-guidance.js +431 -0
  666. package/dist/spawn-agent-guidance.js.map +1 -0
  667. package/dist/spawn-constraints-generator.d.ts +30 -0
  668. package/dist/spawn-constraints-generator.d.ts.map +1 -0
  669. package/dist/spawn-constraints-generator.js +121 -0
  670. package/dist/spawn-constraints-generator.js.map +1 -0
  671. package/dist/spawn-guidance-generators.d.ts +47 -0
  672. package/dist/spawn-guidance-generators.d.ts.map +1 -0
  673. package/dist/spawn-guidance-generators.js +346 -0
  674. package/dist/spawn-guidance-generators.js.map +1 -0
  675. package/dist/spawn-policy-resolver.d.ts +26 -0
  676. package/dist/spawn-policy-resolver.d.ts.map +1 -0
  677. package/dist/spawn-policy-resolver.js +31 -0
  678. package/dist/spawn-policy-resolver.js.map +1 -0
  679. package/dist/spawn-prompt-helpers.d.ts +45 -0
  680. package/dist/spawn-prompt-helpers.d.ts.map +1 -0
  681. package/dist/spawn-prompt-helpers.js +271 -0
  682. package/dist/spawn-prompt-helpers.js.map +1 -0
  683. package/dist/spawn-prompt-schema.d.ts +107 -0
  684. package/dist/spawn-prompt-schema.d.ts.map +1 -0
  685. package/dist/spawn-prompt-schema.js +163 -0
  686. package/dist/spawn-prompt-schema.js.map +1 -0
  687. package/dist/spawn-strategy.d.ts +60 -0
  688. package/dist/spawn-strategy.d.ts.map +1 -0
  689. package/dist/spawn-strategy.js +112 -0
  690. package/dist/spawn-strategy.js.map +1 -0
  691. package/dist/spawn-task-builder.d.ts +68 -0
  692. package/dist/spawn-task-builder.d.ts.map +1 -0
  693. package/dist/spawn-task-builder.js +356 -0
  694. package/dist/spawn-task-builder.js.map +1 -0
  695. package/dist/spawn-template-assembler.d.ts +65 -0
  696. package/dist/spawn-template-assembler.d.ts.map +1 -0
  697. package/dist/spawn-template-assembler.js +111 -0
  698. package/dist/spawn-template-assembler.js.map +1 -0
  699. package/dist/stamp-status-validator.d.ts +77 -0
  700. package/dist/stamp-status-validator.d.ts.map +1 -0
  701. package/dist/stamp-status-validator.js +138 -0
  702. package/dist/stamp-status-validator.js.map +1 -0
  703. package/dist/stamp-tracking.d.ts +12 -0
  704. package/dist/stamp-tracking.d.ts.map +1 -0
  705. package/dist/stamp-tracking.js +43 -0
  706. package/dist/stamp-tracking.js.map +1 -0
  707. package/dist/stamp-utils.d.ts +94 -0
  708. package/dist/stamp-utils.d.ts.map +1 -0
  709. package/dist/stamp-utils.js +245 -0
  710. package/dist/stamp-utils.js.map +1 -0
  711. package/dist/state-cleanup-core.d.ts +206 -0
  712. package/dist/state-cleanup-core.d.ts.map +1 -0
  713. package/dist/state-cleanup-core.js +225 -0
  714. package/dist/state-cleanup-core.js.map +1 -0
  715. package/dist/state-doctor-core.d.ts +177 -0
  716. package/dist/state-doctor-core.d.ts.map +1 -0
  717. package/dist/state-doctor-core.js +420 -0
  718. package/dist/state-doctor-core.js.map +1 -0
  719. package/dist/state-machine.d.ts +10 -0
  720. package/dist/state-machine.d.ts.map +1 -0
  721. package/dist/state-machine.js +89 -0
  722. package/dist/state-machine.js.map +1 -0
  723. package/dist/stream-error-handler.d.ts +69 -0
  724. package/dist/stream-error-handler.d.ts.map +1 -0
  725. package/dist/stream-error-handler.js +80 -0
  726. package/dist/stream-error-handler.js.map +1 -0
  727. package/dist/telemetry.d.ts +81 -0
  728. package/dist/telemetry.d.ts.map +1 -0
  729. package/dist/telemetry.js +219 -0
  730. package/dist/telemetry.js.map +1 -0
  731. package/dist/template-loader.d.ts +151 -0
  732. package/dist/template-loader.d.ts.map +1 -0
  733. package/dist/template-loader.js +400 -0
  734. package/dist/template-loader.js.map +1 -0
  735. package/dist/test-baseline.d.ts +177 -0
  736. package/dist/test-baseline.d.ts.map +1 -0
  737. package/dist/test-baseline.js +286 -0
  738. package/dist/test-baseline.js.map +1 -0
  739. package/dist/token-counter.d.ts +50 -0
  740. package/dist/token-counter.d.ts.map +1 -0
  741. package/dist/token-counter.js +144 -0
  742. package/dist/token-counter.js.map +1 -0
  743. package/dist/usecases/analyze-recovery.usecase.d.ts +43 -0
  744. package/dist/usecases/analyze-recovery.usecase.d.ts.map +1 -0
  745. package/dist/usecases/analyze-recovery.usecase.js +34 -0
  746. package/dist/usecases/analyze-recovery.usecase.js.map +1 -0
  747. package/dist/usecases/compute-context.usecase.d.ts +63 -0
  748. package/dist/usecases/compute-context.usecase.d.ts.map +1 -0
  749. package/dist/usecases/compute-context.usecase.js +91 -0
  750. package/dist/usecases/compute-context.usecase.js.map +1 -0
  751. package/dist/usecases/get-dashboard-data.usecase.d.ts +53 -0
  752. package/dist/usecases/get-dashboard-data.usecase.d.ts.map +1 -0
  753. package/dist/usecases/get-dashboard-data.usecase.js +54 -0
  754. package/dist/usecases/get-dashboard-data.usecase.js.map +1 -0
  755. package/dist/usecases/get-suggestions.usecase.d.ts +101 -0
  756. package/dist/usecases/get-suggestions.usecase.d.ts.map +1 -0
  757. package/dist/usecases/get-suggestions.usecase.js +148 -0
  758. package/dist/usecases/get-suggestions.usecase.js.map +1 -0
  759. package/dist/usecases/index.d.ts +15 -0
  760. package/dist/usecases/index.d.ts.map +1 -0
  761. package/dist/usecases/index.js +21 -0
  762. package/dist/usecases/index.js.map +1 -0
  763. package/dist/usecases/validate-command.usecase.d.ts +56 -0
  764. package/dist/usecases/validate-command.usecase.d.ts.map +1 -0
  765. package/dist/usecases/validate-command.usecase.js +143 -0
  766. package/dist/usecases/validate-command.usecase.js.map +1 -0
  767. package/dist/user-normalizer.d.ts +36 -0
  768. package/dist/user-normalizer.d.ts.map +1 -0
  769. package/dist/user-normalizer.js +177 -0
  770. package/dist/user-normalizer.js.map +1 -0
  771. package/dist/validation/command-registry.d.ts +26 -0
  772. package/dist/validation/command-registry.d.ts.map +1 -0
  773. package/dist/validation/command-registry.js +269 -0
  774. package/dist/validation/command-registry.js.map +1 -0
  775. package/dist/validation/index.d.ts +16 -0
  776. package/dist/validation/index.d.ts.map +1 -0
  777. package/dist/validation/index.js +18 -0
  778. package/dist/validation/index.js.map +1 -0
  779. package/dist/validation/types.d.ts +140 -0
  780. package/dist/validation/types.d.ts.map +1 -0
  781. package/dist/validation/types.js +4 -0
  782. package/dist/validation/types.js.map +1 -0
  783. package/dist/validation/validate-command.d.ts +16 -0
  784. package/dist/validation/validate-command.d.ts.map +1 -0
  785. package/dist/validation/validate-command.js +163 -0
  786. package/dist/validation/validate-command.js.map +1 -0
  787. package/dist/validators/backlog-sync.d.ts +11 -0
  788. package/dist/validators/backlog-sync.d.ts.map +1 -0
  789. package/dist/validators/backlog-sync.js +65 -0
  790. package/dist/validators/backlog-sync.js.map +1 -0
  791. package/dist/validators/claim-validation.d.ts +46 -0
  792. package/dist/validators/claim-validation.d.ts.map +1 -0
  793. package/dist/validators/claim-validation.js +491 -0
  794. package/dist/validators/claim-validation.js.map +1 -0
  795. package/dist/validators/supabase-docs-linter.d.ts +15 -0
  796. package/dist/validators/supabase-docs-linter.d.ts.map +1 -0
  797. package/dist/validators/supabase-docs-linter.js +45 -0
  798. package/dist/validators/supabase-docs-linter.js.map +1 -0
  799. package/dist/validators/wu-tasks.d.ts +21 -0
  800. package/dist/validators/wu-tasks.d.ts.map +1 -0
  801. package/dist/validators/wu-tasks.js +93 -0
  802. package/dist/validators/wu-tasks.js.map +1 -0
  803. package/dist/work-classifier.d.ts +95 -0
  804. package/dist/work-classifier.d.ts.map +1 -0
  805. package/dist/work-classifier.js +407 -0
  806. package/dist/work-classifier.js.map +1 -0
  807. package/dist/worktree-ownership.d.ts +51 -0
  808. package/dist/worktree-ownership.d.ts.map +1 -0
  809. package/dist/worktree-ownership.js +77 -0
  810. package/dist/worktree-ownership.js.map +1 -0
  811. package/dist/worktree-scanner.d.ts +118 -0
  812. package/dist/worktree-scanner.d.ts.map +1 -0
  813. package/dist/worktree-scanner.js +171 -0
  814. package/dist/worktree-scanner.js.map +1 -0
  815. package/dist/worktree-symlink.d.ts +98 -0
  816. package/dist/worktree-symlink.d.ts.map +1 -0
  817. package/dist/worktree-symlink.js +530 -0
  818. package/dist/worktree-symlink.js.map +1 -0
  819. package/dist/wu-backlog-updater.d.ts +10 -0
  820. package/dist/wu-backlog-updater.d.ts.map +1 -0
  821. package/dist/wu-backlog-updater.js +40 -0
  822. package/dist/wu-backlog-updater.js.map +1 -0
  823. package/dist/wu-checkpoint.d.ts +110 -0
  824. package/dist/wu-checkpoint.d.ts.map +1 -0
  825. package/dist/wu-checkpoint.js +238 -0
  826. package/dist/wu-checkpoint.js.map +1 -0
  827. package/dist/wu-claim-helpers.d.ts +21 -0
  828. package/dist/wu-claim-helpers.d.ts.map +1 -0
  829. package/dist/wu-claim-helpers.js +66 -0
  830. package/dist/wu-claim-helpers.js.map +1 -0
  831. package/dist/wu-claim-resume.d.ts +106 -0
  832. package/dist/wu-claim-resume.d.ts.map +1 -0
  833. package/dist/wu-claim-resume.js +279 -0
  834. package/dist/wu-claim-resume.js.map +1 -0
  835. package/dist/wu-cli-constants.d.ts +427 -0
  836. package/dist/wu-cli-constants.d.ts.map +1 -0
  837. package/dist/wu-cli-constants.js +432 -0
  838. package/dist/wu-cli-constants.js.map +1 -0
  839. package/dist/wu-consistency-checker.d.ts +23 -0
  840. package/dist/wu-consistency-checker.d.ts.map +1 -0
  841. package/dist/wu-consistency-checker.js +24 -0
  842. package/dist/wu-consistency-checker.js.map +1 -0
  843. package/dist/wu-consistency-detector.d.ts +94 -0
  844. package/dist/wu-consistency-detector.d.ts.map +1 -0
  845. package/dist/wu-consistency-detector.js +410 -0
  846. package/dist/wu-consistency-detector.js.map +1 -0
  847. package/dist/wu-consistency-file-repairs.d.ts +75 -0
  848. package/dist/wu-consistency-file-repairs.d.ts.map +1 -0
  849. package/dist/wu-consistency-file-repairs.js +326 -0
  850. package/dist/wu-consistency-file-repairs.js.map +1 -0
  851. package/dist/wu-constants.d.ts +29 -0
  852. package/dist/wu-constants.d.ts.map +1 -0
  853. package/dist/wu-constants.js +37 -0
  854. package/dist/wu-constants.js.map +1 -0
  855. package/dist/wu-context-constants.d.ts +270 -0
  856. package/dist/wu-context-constants.d.ts.map +1 -0
  857. package/dist/wu-context-constants.js +267 -0
  858. package/dist/wu-context-constants.js.map +1 -0
  859. package/dist/wu-create-defaults.d.ts +11 -0
  860. package/dist/wu-create-defaults.d.ts.map +1 -0
  861. package/dist/wu-create-defaults.js +13 -0
  862. package/dist/wu-create-defaults.js.map +1 -0
  863. package/dist/wu-create-validators.d.ts +89 -0
  864. package/dist/wu-create-validators.d.ts.map +1 -0
  865. package/dist/wu-create-validators.js +215 -0
  866. package/dist/wu-create-validators.js.map +1 -0
  867. package/dist/wu-delegation-cutover.d.ts +5 -0
  868. package/dist/wu-delegation-cutover.d.ts.map +1 -0
  869. package/dist/wu-delegation-cutover.js +231 -0
  870. package/dist/wu-delegation-cutover.js.map +1 -0
  871. package/dist/wu-doc-types.d.ts +48 -0
  872. package/dist/wu-doc-types.d.ts.map +1 -0
  873. package/dist/wu-doc-types.js +4 -0
  874. package/dist/wu-doc-types.js.map +1 -0
  875. package/dist/wu-domain-constants.d.ts +295 -0
  876. package/dist/wu-domain-constants.d.ts.map +1 -0
  877. package/dist/wu-domain-constants.js +399 -0
  878. package/dist/wu-domain-constants.js.map +1 -0
  879. package/dist/wu-done-branch-only.d.ts +120 -0
  880. package/dist/wu-done-branch-only.d.ts.map +1 -0
  881. package/dist/wu-done-branch-only.js +412 -0
  882. package/dist/wu-done-branch-only.js.map +1 -0
  883. package/dist/wu-done-branch-utils.d.ts +8 -0
  884. package/dist/wu-done-branch-utils.d.ts.map +1 -0
  885. package/dist/wu-done-branch-utils.js +34 -0
  886. package/dist/wu-done-branch-utils.js.map +1 -0
  887. package/dist/wu-done-cleanup.d.ts +6 -0
  888. package/dist/wu-done-cleanup.d.ts.map +1 -0
  889. package/dist/wu-done-cleanup.js +161 -0
  890. package/dist/wu-done-cleanup.js.map +1 -0
  891. package/dist/wu-done-concurrent-merge.d.ts +103 -0
  892. package/dist/wu-done-concurrent-merge.d.ts.map +1 -0
  893. package/dist/wu-done-concurrent-merge.js +375 -0
  894. package/dist/wu-done-concurrent-merge.js.map +1 -0
  895. package/dist/wu-done-docs-generate.d.ts +72 -0
  896. package/dist/wu-done-docs-generate.d.ts.map +1 -0
  897. package/dist/wu-done-docs-generate.js +129 -0
  898. package/dist/wu-done-docs-generate.js.map +1 -0
  899. package/dist/wu-done-docs-only.d.ts +16 -0
  900. package/dist/wu-done-docs-only.d.ts.map +1 -0
  901. package/dist/wu-done-docs-only.js +68 -0
  902. package/dist/wu-done-docs-only.js.map +1 -0
  903. package/dist/wu-done-error-handling.d.ts +35 -0
  904. package/dist/wu-done-error-handling.d.ts.map +1 -0
  905. package/dist/wu-done-error-handling.js +109 -0
  906. package/dist/wu-done-error-handling.js.map +1 -0
  907. package/dist/wu-done-errors.d.ts +13 -0
  908. package/dist/wu-done-errors.d.ts.map +1 -0
  909. package/dist/wu-done-errors.js +27 -0
  910. package/dist/wu-done-errors.js.map +1 -0
  911. package/dist/wu-done-initiative-sync.d.ts +13 -0
  912. package/dist/wu-done-initiative-sync.d.ts.map +1 -0
  913. package/dist/wu-done-initiative-sync.js +235 -0
  914. package/dist/wu-done-initiative-sync.js.map +1 -0
  915. package/dist/wu-done-inputs.d.ts +10 -0
  916. package/dist/wu-done-inputs.d.ts.map +1 -0
  917. package/dist/wu-done-inputs.js +55 -0
  918. package/dist/wu-done-inputs.js.map +1 -0
  919. package/dist/wu-done-machine.d.ts +175 -0
  920. package/dist/wu-done-machine.d.ts.map +1 -0
  921. package/dist/wu-done-machine.js +227 -0
  922. package/dist/wu-done-machine.js.map +1 -0
  923. package/dist/wu-done-main-sync.d.ts +36 -0
  924. package/dist/wu-done-main-sync.d.ts.map +1 -0
  925. package/dist/wu-done-main-sync.js +67 -0
  926. package/dist/wu-done-main-sync.js.map +1 -0
  927. package/dist/wu-done-merge-phase.d.ts +49 -0
  928. package/dist/wu-done-merge-phase.d.ts.map +1 -0
  929. package/dist/wu-done-merge-phase.js +121 -0
  930. package/dist/wu-done-merge-phase.js.map +1 -0
  931. package/dist/wu-done-merge.d.ts +46 -0
  932. package/dist/wu-done-merge.d.ts.map +1 -0
  933. package/dist/wu-done-merge.js +123 -0
  934. package/dist/wu-done-merge.js.map +1 -0
  935. package/dist/wu-done-merged-worktree.d.ts +65 -0
  936. package/dist/wu-done-merged-worktree.d.ts.map +1 -0
  937. package/dist/wu-done-merged-worktree.js +197 -0
  938. package/dist/wu-done-merged-worktree.js.map +1 -0
  939. package/dist/wu-done-messages.d.ts +120 -0
  940. package/dist/wu-done-messages.d.ts.map +1 -0
  941. package/dist/wu-done-messages.js +191 -0
  942. package/dist/wu-done-messages.js.map +1 -0
  943. package/dist/wu-done-metadata.d.ts +123 -0
  944. package/dist/wu-done-metadata.d.ts.map +1 -0
  945. package/dist/wu-done-metadata.js +240 -0
  946. package/dist/wu-done-metadata.js.map +1 -0
  947. package/dist/wu-done-paths.d.ts +79 -0
  948. package/dist/wu-done-paths.d.ts.map +1 -0
  949. package/dist/wu-done-paths.js +263 -0
  950. package/dist/wu-done-paths.js.map +1 -0
  951. package/dist/wu-done-pr.d.ts +76 -0
  952. package/dist/wu-done-pr.d.ts.map +1 -0
  953. package/dist/wu-done-pr.js +189 -0
  954. package/dist/wu-done-pr.js.map +1 -0
  955. package/dist/wu-done-preflight-checks.d.ts +66 -0
  956. package/dist/wu-done-preflight-checks.d.ts.map +1 -0
  957. package/dist/wu-done-preflight-checks.js +275 -0
  958. package/dist/wu-done-preflight-checks.js.map +1 -0
  959. package/dist/wu-done-preflight.d.ts +65 -0
  960. package/dist/wu-done-preflight.d.ts.map +1 -0
  961. package/dist/wu-done-preflight.js +205 -0
  962. package/dist/wu-done-preflight.js.map +1 -0
  963. package/dist/wu-done-rebase.d.ts +44 -0
  964. package/dist/wu-done-rebase.d.ts.map +1 -0
  965. package/dist/wu-done-rebase.js +360 -0
  966. package/dist/wu-done-rebase.js.map +1 -0
  967. package/dist/wu-done-retry-helpers.d.ts +75 -0
  968. package/dist/wu-done-retry-helpers.d.ts.map +1 -0
  969. package/dist/wu-done-retry-helpers.js +175 -0
  970. package/dist/wu-done-retry-helpers.js.map +1 -0
  971. package/dist/wu-done-ui.d.ts +29 -0
  972. package/dist/wu-done-ui.d.ts.map +1 -0
  973. package/dist/wu-done-ui.js +74 -0
  974. package/dist/wu-done-ui.js.map +1 -0
  975. package/dist/wu-done-utils.d.ts +31 -0
  976. package/dist/wu-done-utils.d.ts.map +1 -0
  977. package/dist/wu-done-utils.js +60 -0
  978. package/dist/wu-done-utils.js.map +1 -0
  979. package/dist/wu-done-validation.d.ts +128 -0
  980. package/dist/wu-done-validation.d.ts.map +1 -0
  981. package/dist/wu-done-validation.js +553 -0
  982. package/dist/wu-done-validation.js.map +1 -0
  983. package/dist/wu-done-validators.d.ts +16 -0
  984. package/dist/wu-done-validators.d.ts.map +1 -0
  985. package/dist/wu-done-validators.js +16 -0
  986. package/dist/wu-done-validators.js.map +1 -0
  987. package/dist/wu-done-worktree-services.d.ts +174 -0
  988. package/dist/wu-done-worktree-services.d.ts.map +1 -0
  989. package/dist/wu-done-worktree-services.js +274 -0
  990. package/dist/wu-done-worktree-services.js.map +1 -0
  991. package/dist/wu-done-worktree.d.ts +71 -0
  992. package/dist/wu-done-worktree.d.ts.map +1 -0
  993. package/dist/wu-done-worktree.js +243 -0
  994. package/dist/wu-done-worktree.js.map +1 -0
  995. package/dist/wu-done-zombie-recovery.d.ts +18 -0
  996. package/dist/wu-done-zombie-recovery.d.ts.map +1 -0
  997. package/dist/wu-done-zombie-recovery.js +84 -0
  998. package/dist/wu-done-zombie-recovery.js.map +1 -0
  999. package/dist/wu-event-sourcer.d.ts +44 -0
  1000. package/dist/wu-event-sourcer.d.ts.map +1 -0
  1001. package/dist/wu-event-sourcer.js +135 -0
  1002. package/dist/wu-event-sourcer.js.map +1 -0
  1003. package/dist/wu-events-cleanup.d.ts +131 -0
  1004. package/dist/wu-events-cleanup.d.ts.map +1 -0
  1005. package/dist/wu-events-cleanup.js +403 -0
  1006. package/dist/wu-events-cleanup.js.map +1 -0
  1007. package/dist/wu-git-constants.d.ts +176 -0
  1008. package/dist/wu-git-constants.d.ts.map +1 -0
  1009. package/dist/wu-git-constants.js +178 -0
  1010. package/dist/wu-git-constants.js.map +1 -0
  1011. package/dist/wu-helpers.d.ts +133 -0
  1012. package/dist/wu-helpers.d.ts.map +1 -0
  1013. package/dist/wu-helpers.js +268 -0
  1014. package/dist/wu-helpers.js.map +1 -0
  1015. package/dist/wu-id-generator.d.ts +51 -0
  1016. package/dist/wu-id-generator.d.ts.map +1 -0
  1017. package/dist/wu-id-generator.js +110 -0
  1018. package/dist/wu-id-generator.js.map +1 -0
  1019. package/dist/wu-inconsistency-repairer.d.ts +69 -0
  1020. package/dist/wu-inconsistency-repairer.d.ts.map +1 -0
  1021. package/dist/wu-inconsistency-repairer.js +271 -0
  1022. package/dist/wu-inconsistency-repairer.js.map +1 -0
  1023. package/dist/wu-lint.d.ts +191 -0
  1024. package/dist/wu-lint.d.ts.map +1 -0
  1025. package/dist/wu-lint.js +338 -0
  1026. package/dist/wu-lint.js.map +1 -0
  1027. package/dist/wu-list.d.ts +76 -0
  1028. package/dist/wu-list.d.ts.map +1 -0
  1029. package/dist/wu-list.js +181 -0
  1030. package/dist/wu-list.js.map +1 -0
  1031. package/dist/wu-lock-manager.d.ts +28 -0
  1032. package/dist/wu-lock-manager.d.ts.map +1 -0
  1033. package/dist/wu-lock-manager.js +164 -0
  1034. package/dist/wu-lock-manager.js.map +1 -0
  1035. package/dist/wu-paths-constants.d.ts +264 -0
  1036. package/dist/wu-paths-constants.d.ts.map +1 -0
  1037. package/dist/wu-paths-constants.js +273 -0
  1038. package/dist/wu-paths-constants.js.map +1 -0
  1039. package/dist/wu-paths.d.ts +211 -0
  1040. package/dist/wu-paths.d.ts.map +1 -0
  1041. package/dist/wu-paths.js +223 -0
  1042. package/dist/wu-paths.js.map +1 -0
  1043. package/dist/wu-preflight-validators.d.ts +64 -0
  1044. package/dist/wu-preflight-validators.d.ts.map +1 -0
  1045. package/dist/wu-preflight-validators.js +277 -0
  1046. package/dist/wu-preflight-validators.js.map +1 -0
  1047. package/dist/wu-recovery.d.ts +220 -0
  1048. package/dist/wu-recovery.d.ts.map +1 -0
  1049. package/dist/wu-recovery.js +470 -0
  1050. package/dist/wu-recovery.js.map +1 -0
  1051. package/dist/wu-repair-core.d.ts +137 -0
  1052. package/dist/wu-repair-core.d.ts.map +1 -0
  1053. package/dist/wu-repair-core.js +719 -0
  1054. package/dist/wu-repair-core.js.map +1 -0
  1055. package/dist/wu-repair-service.d.ts +22 -0
  1056. package/dist/wu-repair-service.d.ts.map +1 -0
  1057. package/dist/wu-repair-service.js +131 -0
  1058. package/dist/wu-repair-service.js.map +1 -0
  1059. package/dist/wu-rules-core.d.ts +95 -0
  1060. package/dist/wu-rules-core.d.ts.map +1 -0
  1061. package/dist/wu-rules-core.js +401 -0
  1062. package/dist/wu-rules-core.js.map +1 -0
  1063. package/dist/wu-rules-engine.d.ts +29 -0
  1064. package/dist/wu-rules-engine.d.ts.map +1 -0
  1065. package/dist/wu-rules-engine.js +61 -0
  1066. package/dist/wu-rules-engine.js.map +1 -0
  1067. package/dist/wu-rules-resolvers.d.ts +19 -0
  1068. package/dist/wu-rules-resolvers.d.ts.map +1 -0
  1069. package/dist/wu-rules-resolvers.js +229 -0
  1070. package/dist/wu-rules-resolvers.js.map +1 -0
  1071. package/dist/wu-schema-normalization.d.ts +18 -0
  1072. package/dist/wu-schema-normalization.d.ts.map +1 -0
  1073. package/dist/wu-schema-normalization.js +87 -0
  1074. package/dist/wu-schema-normalization.js.map +1 -0
  1075. package/dist/wu-schema.d.ts +772 -0
  1076. package/dist/wu-schema.d.ts.map +1 -0
  1077. package/dist/wu-schema.js +897 -0
  1078. package/dist/wu-schema.js.map +1 -0
  1079. package/dist/wu-spawn-context.d.ts +66 -0
  1080. package/dist/wu-spawn-context.d.ts.map +1 -0
  1081. package/dist/wu-spawn-context.js +185 -0
  1082. package/dist/wu-spawn-context.js.map +1 -0
  1083. package/dist/wu-spawn-helpers.d.ts +110 -0
  1084. package/dist/wu-spawn-helpers.d.ts.map +1 -0
  1085. package/dist/wu-spawn-helpers.js +276 -0
  1086. package/dist/wu-spawn-helpers.js.map +1 -0
  1087. package/dist/wu-spawn-skills.d.ts +39 -0
  1088. package/dist/wu-spawn-skills.d.ts.map +1 -0
  1089. package/dist/wu-spawn-skills.js +214 -0
  1090. package/dist/wu-spawn-skills.js.map +1 -0
  1091. package/dist/wu-spawn.d.ts +33 -0
  1092. package/dist/wu-spawn.d.ts.map +1 -0
  1093. package/dist/wu-spawn.js +212 -0
  1094. package/dist/wu-spawn.js.map +1 -0
  1095. package/dist/wu-state-indexer.d.ts +49 -0
  1096. package/dist/wu-state-indexer.d.ts.map +1 -0
  1097. package/dist/wu-state-indexer.js +156 -0
  1098. package/dist/wu-state-indexer.js.map +1 -0
  1099. package/dist/wu-state-schema.d.ts +253 -0
  1100. package/dist/wu-state-schema.d.ts.map +1 -0
  1101. package/dist/wu-state-schema.js +188 -0
  1102. package/dist/wu-state-schema.js.map +1 -0
  1103. package/dist/wu-state-store.d.ts +64 -0
  1104. package/dist/wu-state-store.d.ts.map +1 -0
  1105. package/dist/wu-state-store.js +171 -0
  1106. package/dist/wu-state-store.js.map +1 -0
  1107. package/dist/wu-status-transition.d.ts +58 -0
  1108. package/dist/wu-status-transition.d.ts.map +1 -0
  1109. package/dist/wu-status-transition.js +370 -0
  1110. package/dist/wu-status-transition.js.map +1 -0
  1111. package/dist/wu-status-updater.d.ts +18 -0
  1112. package/dist/wu-status-updater.d.ts.map +1 -0
  1113. package/dist/wu-status-updater.js +123 -0
  1114. package/dist/wu-status-updater.js.map +1 -0
  1115. package/dist/wu-statuses.d.ts +154 -0
  1116. package/dist/wu-statuses.d.ts.map +1 -0
  1117. package/dist/wu-statuses.js +176 -0
  1118. package/dist/wu-statuses.js.map +1 -0
  1119. package/dist/wu-transaction-collectors.d.ts +111 -0
  1120. package/dist/wu-transaction-collectors.d.ts.map +1 -0
  1121. package/dist/wu-transaction-collectors.js +273 -0
  1122. package/dist/wu-transaction-collectors.js.map +1 -0
  1123. package/dist/wu-transaction.d.ts +172 -0
  1124. package/dist/wu-transaction.d.ts.map +1 -0
  1125. package/dist/wu-transaction.js +288 -0
  1126. package/dist/wu-transaction.js.map +1 -0
  1127. package/dist/wu-type-helpers.d.ts +26 -0
  1128. package/dist/wu-type-helpers.d.ts.map +1 -0
  1129. package/dist/wu-type-helpers.js +45 -0
  1130. package/dist/wu-type-helpers.js.map +1 -0
  1131. package/dist/wu-ui-constants.d.ts +235 -0
  1132. package/dist/wu-ui-constants.d.ts.map +1 -0
  1133. package/dist/wu-ui-constants.js +237 -0
  1134. package/dist/wu-ui-constants.js.map +1 -0
  1135. package/dist/wu-validation-constants.d.ts +61 -0
  1136. package/dist/wu-validation-constants.d.ts.map +1 -0
  1137. package/dist/wu-validation-constants.js +69 -0
  1138. package/dist/wu-validation-constants.js.map +1 -0
  1139. package/dist/wu-validation.d.ts +121 -0
  1140. package/dist/wu-validation.d.ts.map +1 -0
  1141. package/dist/wu-validation.js +266 -0
  1142. package/dist/wu-validation.js.map +1 -0
  1143. package/dist/wu-validator.d.ts +128 -0
  1144. package/dist/wu-validator.d.ts.map +1 -0
  1145. package/dist/wu-validator.js +447 -0
  1146. package/dist/wu-validator.js.map +1 -0
  1147. package/dist/wu-yaml-fixer.d.ts +74 -0
  1148. package/dist/wu-yaml-fixer.d.ts.map +1 -0
  1149. package/dist/wu-yaml-fixer.js +273 -0
  1150. package/dist/wu-yaml-fixer.js.map +1 -0
  1151. package/dist/wu-yaml.d.ts +110 -0
  1152. package/dist/wu-yaml.d.ts.map +1 -0
  1153. package/dist/wu-yaml.js +300 -0
  1154. package/dist/wu-yaml.js.map +1 -0
  1155. package/package.json +2 -2
@@ -0,0 +1,66 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Options for branch divergence and merge commit checks.
4
+ */
5
+ export interface CheckBranchOptions {
6
+ /** Automatically rebase if diverged */
7
+ autoRebase?: boolean;
8
+ /** Path to worktree (required if autoRebase=true) */
9
+ worktreePath?: string | null;
10
+ /** WU ID for artifact cleanup (e.g., 'WU-1371') */
11
+ wuId?: string | null;
12
+ }
13
+ /**
14
+ * Check for branch drift (commits behind main)
15
+ * WU-755 pre-flight check
16
+ *
17
+ * @param {string} branch - Lane branch name
18
+ * @returns {Promise<number>} Number of commits behind main
19
+ */
20
+ export declare function checkBranchDrift(branch: string): Promise<number>;
21
+ /**
22
+ * Check for branch divergence (main has advanced since branch creation)
23
+ * WU-1303: Added autoRebase option (default ON) to automatically rebase diverged branches
24
+ * WU-1371: Added wuId option for post-rebase artifact cleanup
25
+ *
26
+ * @param {string} branch - Lane branch name
27
+ * @param {CheckBranchOptions} [options] - Check options
28
+ * @throws {Error} If divergence detected and auto-rebase fails or is disabled
29
+ */
30
+ export declare function checkBranchDivergence(branch: string, options?: CheckBranchOptions): Promise<void>;
31
+ /**
32
+ * Check for merge commits in lane branch that would violate linear history
33
+ * WU-1384: GitHub requires linear history; merge commits in lane branches must be eliminated
34
+ * WU-1371: Added wuId option for post-rebase artifact cleanup
35
+ *
36
+ * If merge commits are found, triggers auto-rebase to linearize history.
37
+ *
38
+ * @param {string} branch - Lane branch name
39
+ * @param {CheckBranchOptions} [options] - Check options
40
+ * @throws {Error} If merge commits found and auto-rebase fails or is disabled
41
+ */
42
+ export declare function checkMergeCommits(branch: string, options?: CheckBranchOptions): Promise<void>;
43
+ /**
44
+ * Check for merge conflicts using git merge-tree
45
+ * WU-755 pre-flight check
46
+ *
47
+ * @param {string} branch - Lane branch name
48
+ */
49
+ export declare function checkMergeConflicts(branch: string): Promise<void>;
50
+ /**
51
+ * WU-1456: Check for empty merge (no work commits beyond claim)
52
+ * WU-1460: Upgraded to BLOCK when code_paths defined but files not modified
53
+ *
54
+ * Detects when an agent runs wu:done without committing actual work.
55
+ * - If code_paths defined: BLOCK if those files weren't modified
56
+ * - If no code_paths: WARNING only (docs-only or metadata updates are valid)
57
+ *
58
+ * @param {string} branch - Lane branch name
59
+ * @param {object} [doc] - WU document with code_paths array (optional for backwards compatibility)
60
+ * @returns {Promise<void>}
61
+ * @throws {Error} When code_paths defined but files not modified in commits
62
+ */
63
+ export declare function checkEmptyMerge(branch: string, doc?: {
64
+ code_paths?: string[];
65
+ } | null): Promise<void>;
66
+ //# sourceMappingURL=wu-done-preflight-checks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wu-done-preflight-checks.d.ts","sourceRoot":"","sources":["../src/wu-done-preflight-checks.ts"],"names":[],"mappings":";AAyCA;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,uCAAuC;IACvC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,qDAAqD;IACrD,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,mDAAmD;IACnD,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA+BtE;AAED;;;;;;;;GAQG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,IAAI,CAAC,CAkDf;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,IAAI,CAAC,CA2Df;AAED;;;;;GAKG;AACH,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAgDvE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,MAAM,EACd,GAAG,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,IAAW,GAC3C,OAAO,CAAC,IAAI,CAAC,CA4Df"}
@@ -0,0 +1,275 @@
1
+ #!/usr/bin/env node
2
+ // Copyright (c) 2026 Hellmai Ltd
3
+ // SPDX-License-Identifier: AGPL-3.0-only
4
+ /**
5
+ * WU-2014: Pre-merge validation checks for wu:done
6
+ *
7
+ * Extracted from wu-done-worktree.ts to enforce single responsibility.
8
+ * Each function performs one specific pre-flight check before merge.
9
+ *
10
+ * Functions:
11
+ * checkBranchDrift - Verify branch is not too far behind main
12
+ * checkBranchDivergence - Detect and optionally auto-rebase diverged branches
13
+ * checkMergeCommits - Detect merge commits that violate linear history
14
+ * checkMergeConflicts - Detect merge conflicts using git merge-tree
15
+ * checkEmptyMerge - Detect empty merges with no work commits
16
+ */
17
+ import { spawnSync } from 'node:child_process';
18
+ import { getGitForCwd } from './git-adapter.js';
19
+ import { BRANCHES, REMOTES, THRESHOLDS, LOG_PREFIX, STRING_LITERALS, GIT_COMMANDS, GIT_FLAGS, } from './wu-constants.js';
20
+ import { PREFLIGHT } from './wu-done-messages.js';
21
+ import { createError, ErrorCodes, getErrorMessage } from './error-handler.js';
22
+ import { createValidationError } from './wu-done-errors.js';
23
+ import { autoRebaseBranch } from './wu-done-rebase.js';
24
+ function isErrorWithCode(error, code) {
25
+ if (typeof error !== 'object' || error === null || !('code' in error)) {
26
+ return false;
27
+ }
28
+ return error.code === code;
29
+ }
30
+ /**
31
+ * Check for branch drift (commits behind main)
32
+ * WU-755 pre-flight check
33
+ *
34
+ * @param {string} branch - Lane branch name
35
+ * @returns {Promise<number>} Number of commits behind main
36
+ */
37
+ export async function checkBranchDrift(branch) {
38
+ const gitAdapter = getGitForCwd();
39
+ try {
40
+ const counts = await gitAdapter.revList([
41
+ '--left-right',
42
+ '--count',
43
+ `${BRANCHES.MAIN}...${branch}`,
44
+ ]);
45
+ const [mainAheadRaw] = counts.split(/\s+/).map(Number);
46
+ const mainAhead = typeof mainAheadRaw === 'number' && Number.isFinite(mainAheadRaw) ? mainAheadRaw : 0;
47
+ if (mainAhead > THRESHOLDS.BRANCH_DRIFT_MAX) {
48
+ throw createError(ErrorCodes.GIT_ERROR, PREFLIGHT.BRANCH_DRIFT_ERROR(mainAhead, THRESHOLDS.BRANCH_DRIFT_MAX, REMOTES.ORIGIN, BRANCHES.MAIN), { branch, commitsBehind: mainAhead, threshold: THRESHOLDS.BRANCH_DRIFT_MAX });
49
+ }
50
+ return mainAhead;
51
+ }
52
+ catch (e) {
53
+ if (isErrorWithCode(e, ErrorCodes.GIT_ERROR))
54
+ throw e;
55
+ console.warn(`${LOG_PREFIX.DONE} Warning: Could not check branch drift: ${getErrorMessage(e)}`);
56
+ return 0;
57
+ }
58
+ }
59
+ /**
60
+ * Check for branch divergence (main has advanced since branch creation)
61
+ * WU-1303: Added autoRebase option (default ON) to automatically rebase diverged branches
62
+ * WU-1371: Added wuId option for post-rebase artifact cleanup
63
+ *
64
+ * @param {string} branch - Lane branch name
65
+ * @param {CheckBranchOptions} [options] - Check options
66
+ * @throws {Error} If divergence detected and auto-rebase fails or is disabled
67
+ */
68
+ export async function checkBranchDivergence(branch, options = {}) {
69
+ const { autoRebase = true, worktreePath = null, wuId = null } = options;
70
+ const gitAdapter = getGitForCwd();
71
+ try {
72
+ const mergeBase = await gitAdapter.mergeBase(BRANCHES.MAIN, branch);
73
+ const mainHead = await gitAdapter.getCommitHash(BRANCHES.MAIN);
74
+ if (mergeBase !== mainHead) {
75
+ const mainCommitsAhead = await gitAdapter.revList([
76
+ '--count',
77
+ `${mergeBase}..${BRANCHES.MAIN}`,
78
+ ]);
79
+ const commitCount = Number(mainCommitsAhead);
80
+ console.log(PREFLIGHT.DIVERGENCE_DETECTED(commitCount));
81
+ // Attempt auto-rebase if enabled and worktree path provided
82
+ if (autoRebase && worktreePath) {
83
+ const rebaseResult = await autoRebaseBranch(branch, worktreePath, wuId);
84
+ if (rebaseResult.success) {
85
+ // Rebase succeeded - continue with wu:done
86
+ return;
87
+ }
88
+ // Rebase failed - throw with detailed instructions
89
+ throw createError(ErrorCodes.GIT_ERROR, rebaseResult.error, {
90
+ branch,
91
+ mergeBase,
92
+ mainHead,
93
+ mainCommitsAhead: commitCount,
94
+ autoRebaseAttempted: true,
95
+ });
96
+ }
97
+ // Auto-rebase disabled or no worktree path - throw with manual instructions
98
+ throw createError(ErrorCodes.GIT_ERROR, PREFLIGHT.DIVERGENCE_ERROR(commitCount, REMOTES.ORIGIN, BRANCHES.MAIN, branch), { branch, mergeBase, mainHead, mainCommitsAhead: commitCount });
99
+ }
100
+ console.log(PREFLIGHT.NO_DIVERGENCE);
101
+ }
102
+ catch (e) {
103
+ if (isErrorWithCode(e, ErrorCodes.GIT_ERROR))
104
+ throw e;
105
+ console.warn(`${LOG_PREFIX.DONE} Warning: Could not check branch divergence: ${getErrorMessage(e)}`);
106
+ }
107
+ }
108
+ /**
109
+ * Check for merge commits in lane branch that would violate linear history
110
+ * WU-1384: GitHub requires linear history; merge commits in lane branches must be eliminated
111
+ * WU-1371: Added wuId option for post-rebase artifact cleanup
112
+ *
113
+ * If merge commits are found, triggers auto-rebase to linearize history.
114
+ *
115
+ * @param {string} branch - Lane branch name
116
+ * @param {CheckBranchOptions} [options] - Check options
117
+ * @throws {Error} If merge commits found and auto-rebase fails or is disabled
118
+ */
119
+ export async function checkMergeCommits(branch, options = {}) {
120
+ const { autoRebase = true, worktreePath = null, wuId = null } = options;
121
+ const gitAdapter = getGitForCwd();
122
+ try {
123
+ // Find merge commits in lane branch that are not in main
124
+ // --merges: only merge commits
125
+ // main..branch: commits in branch not reachable from main
126
+ const mergeCommitsRaw = await gitAdapter.raw([
127
+ 'rev-list',
128
+ '--merges',
129
+ `${BRANCHES.MAIN}..${branch}`,
130
+ ]);
131
+ const mergeCommits = mergeCommitsRaw.trim().split(STRING_LITERALS.NEWLINE).filter(Boolean);
132
+ const mergeCount = mergeCommits.length;
133
+ if (mergeCount > 0) {
134
+ console.log(PREFLIGHT.MERGE_COMMITS_DETECTED(mergeCount));
135
+ // Trigger rebase to eliminate merge commits
136
+ if (autoRebase && worktreePath) {
137
+ console.log(PREFLIGHT.MERGE_COMMITS_REBASING);
138
+ const rebaseResult = await autoRebaseBranch(branch, worktreePath, wuId);
139
+ if (rebaseResult.success) {
140
+ // Rebase succeeded - merge commits eliminated
141
+ return;
142
+ }
143
+ // Rebase failed - throw with detailed instructions
144
+ throw createError(ErrorCodes.GIT_ERROR, rebaseResult.error, {
145
+ branch,
146
+ mergeCommitCount: mergeCount,
147
+ autoRebaseAttempted: true,
148
+ });
149
+ }
150
+ // Auto-rebase disabled or no worktree path - throw with manual instructions
151
+ throw createError(ErrorCodes.GIT_ERROR, `Branch ${branch} contains ${mergeCount} merge commit(s).\n\n` +
152
+ `GitHub requires linear history. Merge commits must be eliminated.\n\n` +
153
+ `REQUIRED: Rebase your branch to linearize history:\n` +
154
+ ` 1. cd into your worktree\n` +
155
+ ` 2. git fetch ${REMOTES.ORIGIN} ${BRANCHES.MAIN}\n` +
156
+ ` 3. git rebase ${REMOTES.ORIGIN}/${BRANCHES.MAIN}\n` +
157
+ ` 4. git push --force-with-lease ${REMOTES.ORIGIN} ${branch}\n` +
158
+ ` 5. Return to main checkout and retry`, { branch, mergeCommitCount: mergeCount });
159
+ }
160
+ console.log(PREFLIGHT.NO_MERGE_COMMITS);
161
+ }
162
+ catch (e) {
163
+ if (isErrorWithCode(e, ErrorCodes.GIT_ERROR))
164
+ throw e;
165
+ console.warn(`${LOG_PREFIX.DONE} Warning: Could not check for merge commits: ${getErrorMessage(e)}`);
166
+ }
167
+ }
168
+ /**
169
+ * Check for merge conflicts using git merge-tree
170
+ * WU-755 pre-flight check
171
+ *
172
+ * @param {string} branch - Lane branch name
173
+ */
174
+ export async function checkMergeConflicts(branch) {
175
+ const MERGE_TREE_CONFLICT_EXIT_CODE = 1;
176
+ try {
177
+ // Use git exit status for conflict detection (status=1 indicates conflicts).
178
+ // This avoids brittle parsing of merge-tree output text.
179
+ const result = spawnSync(GIT_COMMANDS.GIT, [GIT_COMMANDS.MERGE_TREE, GIT_FLAGS.WRITE_TREE, BRANCHES.MAIN, branch], {
180
+ cwd: process.cwd(),
181
+ encoding: 'utf-8',
182
+ });
183
+ if (result.error) {
184
+ console.warn(`${LOG_PREFIX.DONE} Warning: Could not check merge conflicts: ${result.error.message}`);
185
+ return;
186
+ }
187
+ if (result.status === 0) {
188
+ console.log(PREFLIGHT.NO_CONFLICTS);
189
+ return;
190
+ }
191
+ if (result.status === MERGE_TREE_CONFLICT_EXIT_CODE) {
192
+ throw createError(ErrorCodes.GIT_ERROR, PREFLIGHT.CONFLICT_ERROR(REMOTES.ORIGIN, BRANCHES.MAIN), {
193
+ branch,
194
+ operation: 'merge-tree --write-tree',
195
+ });
196
+ }
197
+ const stderr = typeof result.stderr === 'string' ? result.stderr.trim() : '';
198
+ const detail = stderr ||
199
+ `${GIT_COMMANDS.GIT} ${GIT_COMMANDS.MERGE_TREE} exited with status ${String(result.status)}`;
200
+ console.warn(`${LOG_PREFIX.DONE} Warning: Could not check merge conflicts: ${detail}`);
201
+ }
202
+ catch (e) {
203
+ if (isErrorWithCode(e, ErrorCodes.GIT_ERROR))
204
+ throw e;
205
+ const message = getErrorMessage(e);
206
+ console.warn(`${LOG_PREFIX.DONE} Warning: Could not check merge conflicts: ${message}`);
207
+ }
208
+ }
209
+ /**
210
+ * WU-1456: Check for empty merge (no work commits beyond claim)
211
+ * WU-1460: Upgraded to BLOCK when code_paths defined but files not modified
212
+ *
213
+ * Detects when an agent runs wu:done without committing actual work.
214
+ * - If code_paths defined: BLOCK if those files weren't modified
215
+ * - If no code_paths: WARNING only (docs-only or metadata updates are valid)
216
+ *
217
+ * @param {string} branch - Lane branch name
218
+ * @param {object} [doc] - WU document with code_paths array (optional for backwards compatibility)
219
+ * @returns {Promise<void>}
220
+ * @throws {Error} When code_paths defined but files not modified in commits
221
+ */
222
+ export async function checkEmptyMerge(branch, doc = null) {
223
+ const gitAdapter = getGitForCwd();
224
+ try {
225
+ // Count commits on lane branch that are not in main
226
+ const commitCountRaw = await gitAdapter.raw([
227
+ 'rev-list',
228
+ '--count',
229
+ `${BRANCHES.MAIN}..${branch}`,
230
+ ]);
231
+ const commitCount = Number(commitCountRaw.trim());
232
+ // WU-1460: If code_paths defined, verify those files were modified
233
+ const codePaths = Array.isArray(doc?.code_paths)
234
+ ? doc.code_paths.filter((filePath) => typeof filePath === 'string')
235
+ : [];
236
+ const hasCodePaths = codePaths.length > 0;
237
+ if (hasCodePaths) {
238
+ // Get list of files modified in lane branch commits
239
+ const modifiedFilesRaw = await gitAdapter.raw([
240
+ 'diff',
241
+ '--name-only',
242
+ `${BRANCHES.MAIN}...${branch}`,
243
+ ]);
244
+ const modifiedFiles = modifiedFilesRaw.trim().split('\n').filter(Boolean);
245
+ // Check if code_paths files are in the modified list
246
+ const missingCodePaths = codePaths.filter((codePath) => !modifiedFiles.some((modified) => modified.includes(codePath) || codePath.includes(modified)));
247
+ if (missingCodePaths.length > 0) {
248
+ // BLOCK: code_paths defined but files not modified
249
+ throw createValidationError(PREFLIGHT.CODE_PATHS_NOT_MODIFIED(missingCodePaths), {
250
+ branch,
251
+ codePaths,
252
+ missingCodePaths,
253
+ modifiedFiles,
254
+ });
255
+ }
256
+ // All code_paths files were modified
257
+ console.log(PREFLIGHT.CODE_PATHS_VERIFIED);
258
+ }
259
+ else if (commitCount <= 1) {
260
+ // No code_paths - just warn (backwards compatible behaviour)
261
+ // If only 0-1 commits beyond main, this is likely the claim commit only
262
+ console.log(PREFLIGHT.EMPTY_MERGE_WARNING(commitCount));
263
+ }
264
+ else {
265
+ console.log(PREFLIGHT.EMPTY_MERGE_CHECK);
266
+ }
267
+ }
268
+ catch (e) {
269
+ // Re-throw validation errors (WU-1460 blocker)
270
+ if (isErrorWithCode(e, ErrorCodes.VALIDATION_ERROR))
271
+ throw e;
272
+ console.warn(`${LOG_PREFIX.DONE} Warning: Could not check for empty merge: ${getErrorMessage(e)}`);
273
+ }
274
+ }
275
+ //# sourceMappingURL=wu-done-preflight-checks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wu-done-preflight-checks.js","sourceRoot":"","sources":["../src/wu-done-preflight-checks.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Preflight validation helpers for wu:done.
3
+ */
4
+ import { validatePreflight } from './wu-preflight-validators.js';
5
+ interface PreflightPaths {
6
+ rootDir: string;
7
+ worktreePath?: string | null;
8
+ }
9
+ interface PreflightCodePathValidationResult {
10
+ valid: boolean;
11
+ errors: string[];
12
+ warnings: string[];
13
+ missingCodePaths: string[];
14
+ missingCoverageCodePaths: string[];
15
+ missingTestPaths: string[];
16
+ suggestedTestPaths?: Record<string, string[]>;
17
+ abortedBeforeGates: boolean;
18
+ }
19
+ interface PreflightTaskValidationResult {
20
+ valid: boolean;
21
+ errors: string[];
22
+ abortedBeforeMerge: boolean;
23
+ localMainModified: boolean;
24
+ hasStampStatusError: boolean;
25
+ }
26
+ /**
27
+ * WU-1781: Build preflight error message with actionable guidance
28
+ */
29
+ export declare function buildPreflightErrorMessage(id: string, errors: string[]): string;
30
+ /**
31
+ * WU-1805: Execute preflight code_paths and test_paths validation
32
+ */
33
+ export interface ExecutePreflightCodePathValidationOptions {
34
+ /** Override validatePreflight for testing */
35
+ validatePreflightFn?: typeof validatePreflight;
36
+ /** Optional base ref for reality-phase diff checks */
37
+ baseRef?: string;
38
+ /** Optional head ref for reality-phase diff checks */
39
+ headRef?: string;
40
+ }
41
+ export declare function executePreflightCodePathValidation(id: string, paths: PreflightPaths, options?: ExecutePreflightCodePathValidationOptions): Promise<PreflightCodePathValidationResult>;
42
+ /**
43
+ * WU-1805: Build preflight code_paths error message with actionable guidance
44
+ */
45
+ export declare function buildPreflightCodePathErrorMessage(id: string, result: PreflightCodePathValidationResult): string;
46
+ /**
47
+ * WU-1781: Run wu:validate as preflight check before git operations
48
+ */
49
+ export declare function runPreflightTasksValidation(id: string): PreflightTaskValidationResult;
50
+ /**
51
+ * WU-2308: Validate all pre-commit hooks with worktree context
52
+ */
53
+ export interface ValidateAllPreCommitHooksOptions {
54
+ runGates?: (options: {
55
+ cwd?: string;
56
+ docsOnly?: boolean;
57
+ wuId?: string;
58
+ }) => Promise<boolean>;
59
+ }
60
+ export declare function validateAllPreCommitHooks(id: string, worktreePath?: string | null, options?: ValidateAllPreCommitHooksOptions): Promise<{
61
+ valid: boolean;
62
+ errors: string[];
63
+ }>;
64
+ export {};
65
+ //# sourceMappingURL=wu-done-preflight.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wu-done-preflight.d.ts","sourceRoot":"","sources":["../src/wu-done-preflight.ts"],"names":[],"mappings":"AAGA;;GAEG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAKjE,UAAU,cAAc;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,UAAU,iCAAiC;IACzC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,wBAAwB,EAAE,MAAM,EAAE,CAAC;IACnC,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9C,kBAAkB,EAAE,OAAO,CAAC;CAC7B;AAED,UAAU,6BAA6B;IACrC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,mBAAmB,EAAE,OAAO,CAAC;CAC9B;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAqC/E;AAED;;GAEG;AACH,MAAM,WAAW,yCAAyC;IACxD,6CAA6C;IAC7C,mBAAmB,CAAC,EAAE,OAAO,iBAAiB,CAAC;IAC/C,sDAAsD;IACtD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sDAAsD;IACtD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,wBAAsB,kCAAkC,CACtD,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,cAAc,EACrB,OAAO,GAAE,yCAA8C,GACtD,OAAO,CAAC,iCAAiC,CAAC,CAuC5C;AAED;;GAEG;AACH,wBAAgB,kCAAkC,CAChD,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,iCAAiC,GACxC,MAAM,CA8ER;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,EAAE,EAAE,MAAM,GAAG,6BAA6B,CA0BrF;AAED;;GAEG;AACH,MAAM,WAAW,gCAAgC;IAC/C,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC/F;AAED,wBAAsB,yBAAyB,CAC7C,EAAE,EAAE,MAAM,EACV,YAAY,GAAE,MAAM,GAAG,IAAW,EAClC,OAAO,GAAE,gCAAqC,GAC7C,OAAO,CAAC;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAqC/C"}
@@ -0,0 +1,205 @@
1
+ // Copyright (c) 2026 Hellmai Ltd
2
+ // SPDX-License-Identifier: AGPL-3.0-only
3
+ /**
4
+ * Preflight validation helpers for wu:done.
5
+ */
6
+ import { validatePreflight } from './wu-preflight-validators.js';
7
+ import { LOG_PREFIX, EMOJI } from './wu-constants.js';
8
+ import { WU_PATHS } from './wu-paths.js';
9
+ import { validateSingleWU } from './validators/wu-tasks.js';
10
+ /**
11
+ * WU-1781: Build preflight error message with actionable guidance
12
+ */
13
+ export function buildPreflightErrorMessage(id, errors) {
14
+ const hasStampStatusError = errors.some((error) => error.includes('stamp but status is not done'));
15
+ let message = `
16
+ ❌ PREFLIGHT VALIDATION FAILED
17
+
18
+ wu:validate found errors that would block pre-push hooks.
19
+ Aborting wu:done BEFORE merge operations to prevent deadlocks.
20
+
21
+ Errors:
22
+ ${errors.map((error) => ` - ${error}`).join('\n')}
23
+
24
+ Fix options:
25
+ `;
26
+ if (hasStampStatusError) {
27
+ message += `
28
+ For stamp-status mismatch errors:
29
+ 1. Fix the WU status to match the stamp (set status: done, locked: true)
30
+ 2. Or add the WU ID to workspace.yaml > software_delivery > exemptions > stamp_status_mismatch
31
+
32
+ `;
33
+ }
34
+ message += `
35
+ General fixes:
36
+ 1. Run: pnpm wu:validate to see full errors
37
+ 2. Fix the validation errors
38
+ 3. Retry: pnpm wu:done --id ${id}
39
+
40
+ This preflight check prevents wu:done from leaving main in a stuck state
41
+ where husky pre-push would block all further operations.
42
+ `;
43
+ return message;
44
+ }
45
+ export async function executePreflightCodePathValidation(id, paths, options = {}) {
46
+ // Use injected validator for testability, default to actual implementation
47
+ const validatePreflightFn = options.validatePreflightFn || validatePreflight;
48
+ console.log(`\n${LOG_PREFIX.DONE} 🔍 Preflight: validating code_paths and test paths...`);
49
+ const result = await validatePreflightFn(id, {
50
+ rootDir: paths.rootDir,
51
+ worktreePath: paths.worktreePath,
52
+ phase: 'reality',
53
+ baseRef: options.baseRef,
54
+ headRef: options.headRef,
55
+ });
56
+ if (result.valid) {
57
+ console.log(`${LOG_PREFIX.DONE} ${EMOJI.SUCCESS} Preflight code_paths validation passed`);
58
+ return {
59
+ valid: true,
60
+ errors: [],
61
+ warnings: result.warnings || [],
62
+ missingCodePaths: [],
63
+ missingCoverageCodePaths: [],
64
+ missingTestPaths: [],
65
+ abortedBeforeGates: false,
66
+ };
67
+ }
68
+ console.error(`\n${LOG_PREFIX.DONE} ${EMOJI.FAILURE} Preflight code_paths validation failed`);
69
+ return {
70
+ valid: false,
71
+ errors: result.errors,
72
+ warnings: result.warnings || [],
73
+ missingCodePaths: result.missingCodePaths || [],
74
+ missingCoverageCodePaths: result.missingCoverageCodePaths || [],
75
+ missingTestPaths: result.missingTestPaths || [],
76
+ suggestedTestPaths: result.suggestedTestPaths || {},
77
+ abortedBeforeGates: true,
78
+ };
79
+ }
80
+ /**
81
+ * WU-1805: Build preflight code_paths error message with actionable guidance
82
+ */
83
+ export function buildPreflightCodePathErrorMessage(id, result) {
84
+ const { errors, missingCodePaths = [], missingCoverageCodePaths = [], missingTestPaths = [], suggestedTestPaths = {}, } = result;
85
+ let message = `
86
+ ❌ PREFLIGHT CODE_PATHS VALIDATION FAILED
87
+
88
+ code_paths/test_paths validation found errors that would cause gates to fail.
89
+ Aborting wu:done BEFORE running gates to save time.
90
+
91
+ Errors:
92
+ ${errors.map((error) => ` ${error}`).join('\n')}
93
+
94
+ `;
95
+ if (missingCodePaths.length > 0) {
96
+ message += `
97
+ Fix options for missing code_paths:
98
+ 1. Create the missing files in your worktree
99
+ 2. Update code_paths in ${id}.yaml using: pnpm wu:edit --id ${id} --code-paths "<corrected-paths>"
100
+ 3. Remove paths that were intentionally not created
101
+
102
+ `;
103
+ }
104
+ if (missingCoverageCodePaths.length > 0) {
105
+ message += `
106
+ Fix options for code_paths coverage (branch diff):
107
+ 1. Commit changes that touch each missing scoped code_path
108
+ 2. Update code_paths in ${id}.yaml to match actual branch scope
109
+ 3. Re-run: pnpm wu:prep --id ${id} (or wu:done when ready)
110
+
111
+ `;
112
+ }
113
+ if (missingTestPaths.length > 0) {
114
+ message += `
115
+ Fix options for missing test_paths:
116
+ 1. Create the missing test files
117
+ 2. Update test paths in ${id}.yaml using wu:edit
118
+ 3. Use tests.manual for descriptions instead of file paths
119
+
120
+ `;
121
+ }
122
+ // Add suggested paths if available
123
+ const suggestionsMap = suggestedTestPaths;
124
+ const hasSuggestions = Object.keys(suggestionsMap).some((missingPath) => (suggestionsMap[missingPath] ?? []).length > 0);
125
+ if (hasSuggestions) {
126
+ message += `Suggested alternatives found:
127
+ `;
128
+ for (const [missingPath, suggestions] of Object.entries(suggestionsMap)) {
129
+ if (suggestions.length > 0) {
130
+ message += `For "${missingPath}":
131
+ ${suggestions.map((s) => ` - ${s}`).join('\n')}
132
+
133
+ `;
134
+ }
135
+ }
136
+ }
137
+ message += `
138
+ After fixing, retry:
139
+ pnpm wu:done --id ${id}
140
+
141
+ This preflight check runs BEFORE gates to catch YAML mismatches early.
142
+ See: https://lumenflow.dev/reference/troubleshooting-wu-done/ for more recovery options.
143
+ `;
144
+ return message;
145
+ }
146
+ /**
147
+ * WU-1781: Run wu:validate as preflight check before git operations
148
+ */
149
+ export function runPreflightTasksValidation(id) {
150
+ console.log(`\n${LOG_PREFIX.DONE} 🔍 Preflight: running wu:validate...`);
151
+ const wuPath = WU_PATHS.WU(id);
152
+ const result = validateSingleWU(wuPath, { strict: false });
153
+ if (result.valid) {
154
+ console.log(`${LOG_PREFIX.DONE} ${EMOJI.SUCCESS} Preflight wu:validate passed`);
155
+ return {
156
+ valid: true,
157
+ errors: [],
158
+ abortedBeforeMerge: false,
159
+ localMainModified: false,
160
+ hasStampStatusError: false,
161
+ };
162
+ }
163
+ console.error(`\n${LOG_PREFIX.DONE} ${EMOJI.FAILURE} Preflight wu:validate failed`);
164
+ return {
165
+ valid: false,
166
+ errors: result.errors ?? [],
167
+ abortedBeforeMerge: true,
168
+ localMainModified: false,
169
+ hasStampStatusError: false,
170
+ };
171
+ }
172
+ export async function validateAllPreCommitHooks(id, worktreePath = null, options = {}) {
173
+ console.log(`\n${LOG_PREFIX.DONE} 🔍 Pre-flight: validating all pre-commit hooks...`);
174
+ const errors = [];
175
+ try {
176
+ // WU-2308: Run from worktree context when provided to ensure audit checks
177
+ // the worktree's dependencies (with fixes) not main's stale dependencies
178
+ if (!options.runGates) {
179
+ throw new Error('runGates not provided for pre-commit validation.');
180
+ }
181
+ const ok = await options.runGates({
182
+ cwd: worktreePath ?? process.cwd(),
183
+ wuId: id,
184
+ });
185
+ if (ok) {
186
+ console.log(`${LOG_PREFIX.DONE} ${EMOJI.SUCCESS} All pre-commit hooks passed`);
187
+ return { valid: true, errors: [] };
188
+ }
189
+ throw new Error('Pre-commit hooks failed.');
190
+ }
191
+ catch {
192
+ // Pre-commit hooks failed
193
+ errors.push('Pre-commit hook validation failed. Fix these issues before wu:done:');
194
+ errors.push('');
195
+ errors.push('Common fixes:');
196
+ errors.push(' • Formatting issues: Run pnpm format');
197
+ errors.push(' • Lint errors: Run pnpm lint:fix');
198
+ errors.push(' • Type errors: Check pnpm typecheck output');
199
+ errors.push(' • Audit issues: Check pnpm audit output');
200
+ errors.push('');
201
+ errors.push(`After fixing, re-run: pnpm wu:done --id ${id}`);
202
+ return { valid: false, errors };
203
+ }
204
+ }
205
+ //# sourceMappingURL=wu-done-preflight.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wu-done-preflight.js","sourceRoot":"","sources":["../src/wu-done-preflight.ts"],"names":[],"mappings":"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"}