@lumenflow/core 3.1.1 → 3.1.3

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 (1008) hide show
  1. package/README.md +16 -16
  2. package/dist/cli/is-agent-branch.js +31 -10
  3. package/dist/index.js +3 -0
  4. package/package.json +5 -2
  5. package/dist/active-wu-detector.d.ts +0 -25
  6. package/dist/active-wu-detector.d.ts.map +0 -1
  7. package/dist/active-wu-detector.js +0 -109
  8. package/dist/active-wu-detector.js.map +0 -1
  9. package/dist/adapters/context-adapters.d.ts +0 -101
  10. package/dist/adapters/context-adapters.d.ts.map +0 -1
  11. package/dist/adapters/context-adapters.js +0 -98
  12. package/dist/adapters/context-adapters.js.map +0 -1
  13. package/dist/adapters/filesystem-metrics.adapter.d.ts +0 -91
  14. package/dist/adapters/filesystem-metrics.adapter.d.ts.map +0 -1
  15. package/dist/adapters/filesystem-metrics.adapter.js +0 -530
  16. package/dist/adapters/filesystem-metrics.adapter.js.map +0 -1
  17. package/dist/adapters/index.d.ts +0 -15
  18. package/dist/adapters/index.d.ts.map +0 -1
  19. package/dist/adapters/index.js +0 -21
  20. package/dist/adapters/index.js.map +0 -1
  21. package/dist/adapters/mock-dashboard-renderer.adapter.d.ts +0 -86
  22. package/dist/adapters/mock-dashboard-renderer.adapter.d.ts.map +0 -1
  23. package/dist/adapters/mock-dashboard-renderer.adapter.js +0 -93
  24. package/dist/adapters/mock-dashboard-renderer.adapter.js.map +0 -1
  25. package/dist/adapters/recovery-adapters.d.ts +0 -41
  26. package/dist/adapters/recovery-adapters.d.ts.map +0 -1
  27. package/dist/adapters/recovery-adapters.js +0 -32
  28. package/dist/adapters/recovery-adapters.js.map +0 -1
  29. package/dist/adapters/terminal-renderer.adapter.d.ts +0 -86
  30. package/dist/adapters/terminal-renderer.adapter.d.ts.map +0 -1
  31. package/dist/adapters/terminal-renderer.adapter.js +0 -342
  32. package/dist/adapters/terminal-renderer.adapter.js.map +0 -1
  33. package/dist/adapters/validation-adapters.d.ts +0 -53
  34. package/dist/adapters/validation-adapters.d.ts.map +0 -1
  35. package/dist/adapters/validation-adapters.js +0 -48
  36. package/dist/adapters/validation-adapters.js.map +0 -1
  37. package/dist/agent-patterns-registry.d.ts +0 -141
  38. package/dist/agent-patterns-registry.d.ts.map +0 -1
  39. package/dist/agent-patterns-registry.js +0 -319
  40. package/dist/agent-patterns-registry.js.map +0 -1
  41. package/dist/arg-parser.d.ts +0 -94
  42. package/dist/arg-parser.d.ts.map +0 -1
  43. package/dist/arg-parser.js +0 -774
  44. package/dist/arg-parser.js.map +0 -1
  45. package/dist/atomic-merge.d.ts +0 -21
  46. package/dist/atomic-merge.d.ts.map +0 -1
  47. package/dist/atomic-merge.js +0 -87
  48. package/dist/atomic-merge.js.map +0 -1
  49. package/dist/backlog-editor.d.ts +0 -103
  50. package/dist/backlog-editor.d.ts.map +0 -1
  51. package/dist/backlog-editor.js +0 -158
  52. package/dist/backlog-editor.js.map +0 -1
  53. package/dist/backlog-generator.d.ts +0 -90
  54. package/dist/backlog-generator.d.ts.map +0 -1
  55. package/dist/backlog-generator.js +0 -536
  56. package/dist/backlog-generator.js.map +0 -1
  57. package/dist/backlog-parser.d.ts +0 -46
  58. package/dist/backlog-parser.d.ts.map +0 -1
  59. package/dist/backlog-parser.js +0 -105
  60. package/dist/backlog-parser.js.map +0 -1
  61. package/dist/backlog-sync-validator.d.ts +0 -88
  62. package/dist/backlog-sync-validator.d.ts.map +0 -1
  63. package/dist/backlog-sync-validator.js +0 -324
  64. package/dist/backlog-sync-validator.js.map +0 -1
  65. package/dist/beacon-migration.d.ts +0 -56
  66. package/dist/beacon-migration.js +0 -101
  67. package/dist/branch-check.d.ts +0 -63
  68. package/dist/branch-check.d.ts.map +0 -1
  69. package/dist/branch-check.js +0 -197
  70. package/dist/branch-check.js.map +0 -1
  71. package/dist/branch-drift.d.ts +0 -24
  72. package/dist/branch-drift.d.ts.map +0 -1
  73. package/dist/branch-drift.js +0 -54
  74. package/dist/branch-drift.js.map +0 -1
  75. package/dist/cleanup-install-config.d.ts +0 -24
  76. package/dist/cleanup-install-config.d.ts.map +0 -1
  77. package/dist/cleanup-install-config.js +0 -40
  78. package/dist/cleanup-install-config.js.map +0 -1
  79. package/dist/cleanup-lock.d.ts +0 -125
  80. package/dist/cleanup-lock.d.ts.map +0 -1
  81. package/dist/cleanup-lock.js +0 -325
  82. package/dist/cleanup-lock.js.map +0 -1
  83. package/dist/cli/is-agent-branch.d.ts +0 -15
  84. package/dist/cli/is-agent-branch.d.ts.map +0 -1
  85. package/dist/cli/is-agent-branch.js.map +0 -1
  86. package/dist/cloud-detect.d.ts +0 -145
  87. package/dist/cloud-detect.d.ts.map +0 -1
  88. package/dist/cloud-detect.js +0 -116
  89. package/dist/cloud-detect.js.map +0 -1
  90. package/dist/code-path-validator.d.ts +0 -147
  91. package/dist/code-path-validator.d.ts.map +0 -1
  92. package/dist/code-path-validator.js +0 -551
  93. package/dist/code-path-validator.js.map +0 -1
  94. package/dist/code-paths-overlap.d.ts +0 -50
  95. package/dist/code-paths-overlap.d.ts.map +0 -1
  96. package/dist/code-paths-overlap.js +0 -248
  97. package/dist/code-paths-overlap.js.map +0 -1
  98. package/dist/color-support.d.ts +0 -21
  99. package/dist/color-support.d.ts.map +0 -1
  100. package/dist/color-support.js +0 -67
  101. package/dist/color-support.js.map +0 -1
  102. package/dist/commands-logger.d.ts +0 -71
  103. package/dist/commands-logger.d.ts.map +0 -1
  104. package/dist/commands-logger.js +0 -256
  105. package/dist/commands-logger.js.map +0 -1
  106. package/dist/commit-message-utils.d.ts +0 -26
  107. package/dist/commit-message-utils.d.ts.map +0 -1
  108. package/dist/commit-message-utils.js +0 -44
  109. package/dist/commit-message-utils.js.map +0 -1
  110. package/dist/compliance-parser.d.ts +0 -125
  111. package/dist/compliance-parser.d.ts.map +0 -1
  112. package/dist/compliance-parser.js +0 -457
  113. package/dist/compliance-parser.js.map +0 -1
  114. package/dist/constants/backlog-patterns.d.ts +0 -21
  115. package/dist/constants/backlog-patterns.d.ts.map +0 -1
  116. package/dist/constants/backlog-patterns.js +0 -26
  117. package/dist/constants/backlog-patterns.js.map +0 -1
  118. package/dist/constants/dora-constants.d.ts +0 -50
  119. package/dist/constants/dora-constants.d.ts.map +0 -1
  120. package/dist/constants/dora-constants.js +0 -56
  121. package/dist/constants/dora-constants.js.map +0 -1
  122. package/dist/constants/gate-constants.d.ts +0 -16
  123. package/dist/constants/gate-constants.d.ts.map +0 -1
  124. package/dist/constants/gate-constants.js +0 -18
  125. package/dist/constants/gate-constants.js.map +0 -1
  126. package/dist/constants/linter-constants.d.ts +0 -17
  127. package/dist/constants/linter-constants.d.ts.map +0 -1
  128. package/dist/constants/linter-constants.js +0 -19
  129. package/dist/constants/linter-constants.js.map +0 -1
  130. package/dist/constants/tokenizer-constants.d.ts +0 -16
  131. package/dist/constants/tokenizer-constants.d.ts.map +0 -1
  132. package/dist/constants/tokenizer-constants.js +0 -18
  133. package/dist/constants/tokenizer-constants.js.map +0 -1
  134. package/dist/context/context-computer.d.ts +0 -36
  135. package/dist/context/context-computer.d.ts.map +0 -1
  136. package/dist/context/context-computer.js +0 -128
  137. package/dist/context/context-computer.js.map +0 -1
  138. package/dist/context/git-state-reader.d.ts +0 -37
  139. package/dist/context/git-state-reader.d.ts.map +0 -1
  140. package/dist/context/git-state-reader.js +0 -64
  141. package/dist/context/git-state-reader.js.map +0 -1
  142. package/dist/context/index.d.ts +0 -18
  143. package/dist/context/index.d.ts.map +0 -1
  144. package/dist/context/index.js +0 -20
  145. package/dist/context/index.js.map +0 -1
  146. package/dist/context/location-resolver.d.ts +0 -34
  147. package/dist/context/location-resolver.d.ts.map +0 -1
  148. package/dist/context/location-resolver.js +0 -179
  149. package/dist/context/location-resolver.js.map +0 -1
  150. package/dist/context/wu-state-reader.d.ts +0 -30
  151. package/dist/context/wu-state-reader.d.ts.map +0 -1
  152. package/dist/context/wu-state-reader.js +0 -126
  153. package/dist/context/wu-state-reader.js.map +0 -1
  154. package/dist/context-di.d.ts +0 -185
  155. package/dist/context-di.d.ts.map +0 -1
  156. package/dist/context-di.js +0 -165
  157. package/dist/context-di.js.map +0 -1
  158. package/dist/context-validation-integration.d.ts +0 -69
  159. package/dist/context-validation-integration.d.ts.map +0 -1
  160. package/dist/context-validation-integration.js +0 -161
  161. package/dist/context-validation-integration.js.map +0 -1
  162. package/dist/core/scope-checker.d.ts +0 -80
  163. package/dist/core/scope-checker.d.ts.map +0 -1
  164. package/dist/core/scope-checker.js +0 -166
  165. package/dist/core/scope-checker.js.map +0 -1
  166. package/dist/core/tool-runner.d.ts +0 -136
  167. package/dist/core/tool-runner.d.ts.map +0 -1
  168. package/dist/core/tool-runner.js +0 -396
  169. package/dist/core/tool-runner.js.map +0 -1
  170. package/dist/core/tool.constants.d.ts +0 -106
  171. package/dist/core/tool.constants.d.ts.map +0 -1
  172. package/dist/core/tool.constants.js +0 -104
  173. package/dist/core/tool.constants.js.map +0 -1
  174. package/dist/core/tool.schemas.d.ts +0 -227
  175. package/dist/core/tool.schemas.d.ts.map +0 -1
  176. package/dist/core/tool.schemas.js +0 -229
  177. package/dist/core/tool.schemas.js.map +0 -1
  178. package/dist/core/worktree-guard.d.ts +0 -115
  179. package/dist/core/worktree-guard.d.ts.map +0 -1
  180. package/dist/core/worktree-guard.js +0 -245
  181. package/dist/core/worktree-guard.js.map +0 -1
  182. package/dist/coverage-gate.d.ts +0 -126
  183. package/dist/coverage-gate.d.ts.map +0 -1
  184. package/dist/coverage-gate.js +0 -209
  185. package/dist/coverage-gate.js.map +0 -1
  186. package/dist/cycle-detector.d.ts +0 -52
  187. package/dist/cycle-detector.d.ts.map +0 -1
  188. package/dist/cycle-detector.js +0 -84
  189. package/dist/cycle-detector.js.map +0 -1
  190. package/dist/date-utils.d.ts +0 -66
  191. package/dist/date-utils.d.ts.map +0 -1
  192. package/dist/date-utils.js +0 -143
  193. package/dist/date-utils.js.map +0 -1
  194. package/dist/delegation-escalation.d.ts +0 -71
  195. package/dist/delegation-escalation.d.ts.map +0 -1
  196. package/dist/delegation-escalation.js +0 -264
  197. package/dist/delegation-escalation.js.map +0 -1
  198. package/dist/delegation-monitor.d.ts +0 -262
  199. package/dist/delegation-monitor.d.ts.map +0 -1
  200. package/dist/delegation-monitor.js +0 -678
  201. package/dist/delegation-monitor.js.map +0 -1
  202. package/dist/delegation-recovery.d.ts +0 -62
  203. package/dist/delegation-recovery.d.ts.map +0 -1
  204. package/dist/delegation-recovery.js +0 -304
  205. package/dist/delegation-recovery.js.map +0 -1
  206. package/dist/delegation-registry-schema.d.ts +0 -75
  207. package/dist/delegation-registry-schema.d.ts.map +0 -1
  208. package/dist/delegation-registry-schema.js +0 -93
  209. package/dist/delegation-registry-schema.js.map +0 -1
  210. package/dist/delegation-registry-store.d.ts +0 -145
  211. package/dist/delegation-registry-store.d.ts.map +0 -1
  212. package/dist/delegation-registry-store.js +0 -308
  213. package/dist/delegation-registry-store.js.map +0 -1
  214. package/dist/delegation-tree.d.ts +0 -52
  215. package/dist/delegation-tree.d.ts.map +0 -1
  216. package/dist/delegation-tree.js +0 -205
  217. package/dist/delegation-tree.js.map +0 -1
  218. package/dist/dependency-graph.d.ts +0 -169
  219. package/dist/dependency-graph.d.ts.map +0 -1
  220. package/dist/dependency-graph.js +0 -612
  221. package/dist/dependency-graph.js.map +0 -1
  222. package/dist/dependency-guard.d.ts +0 -41
  223. package/dist/dependency-guard.d.ts.map +0 -1
  224. package/dist/dependency-guard.js +0 -145
  225. package/dist/dependency-guard.js.map +0 -1
  226. package/dist/dependency-validator.d.ts +0 -89
  227. package/dist/dependency-validator.d.ts.map +0 -1
  228. package/dist/dependency-validator.js +0 -155
  229. package/dist/dependency-validator.js.map +0 -1
  230. package/dist/docs-path-validator.d.ts +0 -16
  231. package/dist/docs-path-validator.d.ts.map +0 -1
  232. package/dist/docs-path-validator.js +0 -98
  233. package/dist/docs-path-validator.js.map +0 -1
  234. package/dist/domain/context.schemas.d.ts +0 -170
  235. package/dist/domain/context.schemas.d.ts.map +0 -1
  236. package/dist/domain/context.schemas.js +0 -151
  237. package/dist/domain/context.schemas.js.map +0 -1
  238. package/dist/domain/index.d.ts +0 -15
  239. package/dist/domain/index.d.ts.map +0 -1
  240. package/dist/domain/index.js +0 -23
  241. package/dist/domain/index.js.map +0 -1
  242. package/dist/domain/orchestration.constants.d.ts +0 -111
  243. package/dist/domain/orchestration.constants.d.ts.map +0 -1
  244. package/dist/domain/orchestration.constants.js +0 -130
  245. package/dist/domain/orchestration.constants.js.map +0 -1
  246. package/dist/domain/orchestration.schemas.d.ts +0 -307
  247. package/dist/domain/orchestration.schemas.d.ts.map +0 -1
  248. package/dist/domain/orchestration.schemas.js +0 -214
  249. package/dist/domain/orchestration.schemas.js.map +0 -1
  250. package/dist/domain/orchestration.types.d.ts +0 -134
  251. package/dist/domain/orchestration.types.d.ts.map +0 -1
  252. package/dist/domain/orchestration.types.js +0 -5
  253. package/dist/domain/orchestration.types.js.map +0 -1
  254. package/dist/domain/recovery.schemas.d.ts +0 -164
  255. package/dist/domain/recovery.schemas.d.ts.map +0 -1
  256. package/dist/domain/recovery.schemas.js +0 -134
  257. package/dist/domain/recovery.schemas.js.map +0 -1
  258. package/dist/domain/validation.schemas.d.ts +0 -147
  259. package/dist/domain/validation.schemas.d.ts.map +0 -1
  260. package/dist/domain/validation.schemas.js +0 -117
  261. package/dist/domain/validation.schemas.js.map +0 -1
  262. package/dist/error-handler.d.ts +0 -144
  263. package/dist/error-handler.d.ts.map +0 -1
  264. package/dist/error-handler.js +0 -214
  265. package/dist/error-handler.js.map +0 -1
  266. package/dist/file-classifiers.d.ts +0 -63
  267. package/dist/file-classifiers.d.ts.map +0 -1
  268. package/dist/file-classifiers.js +0 -111
  269. package/dist/file-classifiers.js.map +0 -1
  270. package/dist/force-bypass-audit.d.ts +0 -47
  271. package/dist/force-bypass-audit.d.ts.map +0 -1
  272. package/dist/force-bypass-audit.js +0 -146
  273. package/dist/force-bypass-audit.js.map +0 -1
  274. package/dist/gates-agent-mode.d.ts +0 -107
  275. package/dist/gates-agent-mode.d.ts.map +0 -1
  276. package/dist/gates-agent-mode.js +0 -138
  277. package/dist/gates-agent-mode.js.map +0 -1
  278. package/dist/gates-config.d.ts +0 -268
  279. package/dist/gates-config.d.ts.map +0 -1
  280. package/dist/gates-config.js +0 -644
  281. package/dist/gates-config.js.map +0 -1
  282. package/dist/generate-traceability.d.ts +0 -106
  283. package/dist/generate-traceability.d.ts.map +0 -1
  284. package/dist/generate-traceability.js +0 -387
  285. package/dist/generate-traceability.js.map +0 -1
  286. package/dist/git-adapter.d.ts +0 -406
  287. package/dist/git-adapter.d.ts.map +0 -1
  288. package/dist/git-adapter.js +0 -686
  289. package/dist/git-adapter.js.map +0 -1
  290. package/dist/git-context-extractor.d.ts +0 -102
  291. package/dist/git-context-extractor.d.ts.map +0 -1
  292. package/dist/git-context-extractor.js +0 -571
  293. package/dist/git-context-extractor.js.map +0 -1
  294. package/dist/git-staged-validator.d.ts +0 -33
  295. package/dist/git-staged-validator.d.ts.map +0 -1
  296. package/dist/git-staged-validator.js +0 -52
  297. package/dist/git-staged-validator.js.map +0 -1
  298. package/dist/hardcoded-strings.d.ts +0 -67
  299. package/dist/hardcoded-strings.d.ts.map +0 -1
  300. package/dist/hardcoded-strings.js +0 -276
  301. package/dist/hardcoded-strings.js.map +0 -1
  302. package/dist/incremental-lint.d.ts +0 -71
  303. package/dist/incremental-lint.d.ts.map +0 -1
  304. package/dist/incremental-lint.js +0 -132
  305. package/dist/incremental-lint.js.map +0 -1
  306. package/dist/incremental-test.d.ts +0 -33
  307. package/dist/incremental-test.d.ts.map +0 -1
  308. package/dist/incremental-test.js +0 -64
  309. package/dist/incremental-test.js.map +0 -1
  310. package/dist/index.d.ts +0 -104
  311. package/dist/index.d.ts.map +0 -1
  312. package/dist/index.js.map +0 -1
  313. package/dist/invariants/check-automated-tests.d.ts +0 -42
  314. package/dist/invariants/check-automated-tests.d.ts.map +0 -1
  315. package/dist/invariants/check-automated-tests.js +0 -171
  316. package/dist/invariants/check-automated-tests.js.map +0 -1
  317. package/dist/invariants-runner.d.ts +0 -108
  318. package/dist/invariants-runner.d.ts.map +0 -1
  319. package/dist/invariants-runner.js +0 -547
  320. package/dist/invariants-runner.js.map +0 -1
  321. package/dist/lane-checker.d.ts +0 -132
  322. package/dist/lane-checker.d.ts.map +0 -1
  323. package/dist/lane-checker.js +0 -743
  324. package/dist/lane-checker.js.map +0 -1
  325. package/dist/lane-inference.d.ts +0 -29
  326. package/dist/lane-inference.d.ts.map +0 -1
  327. package/dist/lane-inference.js +0 -210
  328. package/dist/lane-inference.js.map +0 -1
  329. package/dist/lane-lock.d.ts +0 -220
  330. package/dist/lane-lock.d.ts.map +0 -1
  331. package/dist/lane-lock.js +0 -499
  332. package/dist/lane-lock.js.map +0 -1
  333. package/dist/lane-suggest-prompt.d.ts +0 -97
  334. package/dist/lane-suggest-prompt.d.ts.map +0 -1
  335. package/dist/lane-suggest-prompt.js +0 -362
  336. package/dist/lane-suggest-prompt.js.map +0 -1
  337. package/dist/lane-validator.d.ts +0 -49
  338. package/dist/lane-validator.d.ts.map +0 -1
  339. package/dist/lane-validator.js +0 -117
  340. package/dist/lane-validator.js.map +0 -1
  341. package/dist/logs-lib.d.ts +0 -89
  342. package/dist/logs-lib.d.ts.map +0 -1
  343. package/dist/logs-lib.js +0 -214
  344. package/dist/logs-lib.js.map +0 -1
  345. package/dist/lumenflow-config-schema.d.ts +0 -1428
  346. package/dist/lumenflow-config-schema.d.ts.map +0 -1
  347. package/dist/lumenflow-config-schema.js +0 -1255
  348. package/dist/lumenflow-config-schema.js.map +0 -1
  349. package/dist/lumenflow-config.d.ts +0 -94
  350. package/dist/lumenflow-config.d.ts.map +0 -1
  351. package/dist/lumenflow-config.js +0 -253
  352. package/dist/lumenflow-config.js.map +0 -1
  353. package/dist/lumenflow-home.d.ts +0 -118
  354. package/dist/lumenflow-home.d.ts.map +0 -1
  355. package/dist/lumenflow-home.js +0 -214
  356. package/dist/lumenflow-home.js.map +0 -1
  357. package/dist/manual-test-validator.d.ts +0 -84
  358. package/dist/manual-test-validator.d.ts.map +0 -1
  359. package/dist/manual-test-validator.js +0 -206
  360. package/dist/manual-test-validator.js.map +0 -1
  361. package/dist/merge-lock.d.ts +0 -107
  362. package/dist/merge-lock.d.ts.map +0 -1
  363. package/dist/merge-lock.js +0 -263
  364. package/dist/merge-lock.js.map +0 -1
  365. package/dist/micro-worktree-shared.d.ts +0 -128
  366. package/dist/micro-worktree-shared.d.ts.map +0 -1
  367. package/dist/micro-worktree-shared.js +0 -352
  368. package/dist/micro-worktree-shared.js.map +0 -1
  369. package/dist/micro-worktree.d.ts +0 -165
  370. package/dist/micro-worktree.d.ts.map +0 -1
  371. package/dist/micro-worktree.js +0 -463
  372. package/dist/micro-worktree.js.map +0 -1
  373. package/dist/migration-deployer.d.ts +0 -70
  374. package/dist/migration-deployer.d.ts.map +0 -1
  375. package/dist/migration-deployer.js +0 -152
  376. package/dist/migration-deployer.js.map +0 -1
  377. package/dist/normalize-config-keys.d.ts +0 -10
  378. package/dist/normalize-config-keys.d.ts.map +0 -1
  379. package/dist/normalize-config-keys.js +0 -70
  380. package/dist/normalize-config-keys.js.map +0 -1
  381. package/dist/orchestration-advisory-loader.d.ts +0 -19
  382. package/dist/orchestration-advisory-loader.d.ts.map +0 -1
  383. package/dist/orchestration-advisory-loader.js +0 -94
  384. package/dist/orchestration-advisory-loader.js.map +0 -1
  385. package/dist/orchestration-advisory.d.ts +0 -49
  386. package/dist/orchestration-advisory.d.ts.map +0 -1
  387. package/dist/orchestration-advisory.js +0 -97
  388. package/dist/orchestration-advisory.js.map +0 -1
  389. package/dist/orchestration-di.d.ts +0 -36
  390. package/dist/orchestration-di.d.ts.map +0 -1
  391. package/dist/orchestration-di.js +0 -60
  392. package/dist/orchestration-di.js.map +0 -1
  393. package/dist/orchestration-rules.d.ts +0 -60
  394. package/dist/orchestration-rules.d.ts.map +0 -1
  395. package/dist/orchestration-rules.js +0 -212
  396. package/dist/orchestration-rules.js.map +0 -1
  397. package/dist/orphan-detector.d.ts +0 -148
  398. package/dist/orphan-detector.d.ts.map +0 -1
  399. package/dist/orphan-detector.js +0 -253
  400. package/dist/orphan-detector.js.map +0 -1
  401. package/dist/pack-authoring-template-engine.d.ts +0 -54
  402. package/dist/pack-authoring-template-engine.d.ts.map +0 -1
  403. package/dist/pack-authoring-template-engine.js +0 -510
  404. package/dist/pack-authoring-template-engine.js.map +0 -1
  405. package/dist/path-classifiers.d.ts +0 -58
  406. package/dist/path-classifiers.d.ts.map +0 -1
  407. package/dist/path-classifiers.js +0 -96
  408. package/dist/path-classifiers.js.map +0 -1
  409. package/dist/patrol-loop.d.ts +0 -171
  410. package/dist/patrol-loop.d.ts.map +0 -1
  411. package/dist/patrol-loop.js +0 -197
  412. package/dist/patrol-loop.js.map +0 -1
  413. package/dist/piped-command-detector.d.ts +0 -25
  414. package/dist/piped-command-detector.d.ts.map +0 -1
  415. package/dist/piped-command-detector.js +0 -67
  416. package/dist/piped-command-detector.js.map +0 -1
  417. package/dist/ports/context.ports.d.ts +0 -136
  418. package/dist/ports/context.ports.d.ts.map +0 -1
  419. package/dist/ports/context.ports.js +0 -4
  420. package/dist/ports/context.ports.js.map +0 -1
  421. package/dist/ports/core-tools.ports.d.ts +0 -282
  422. package/dist/ports/core-tools.ports.d.ts.map +0 -1
  423. package/dist/ports/core-tools.ports.js +0 -4
  424. package/dist/ports/core-tools.ports.js.map +0 -1
  425. package/dist/ports/dashboard-renderer.port.d.ts +0 -113
  426. package/dist/ports/dashboard-renderer.port.d.ts.map +0 -1
  427. package/dist/ports/dashboard-renderer.port.js +0 -4
  428. package/dist/ports/dashboard-renderer.port.js.map +0 -1
  429. package/dist/ports/git-validator.ports.d.ts +0 -114
  430. package/dist/ports/git-validator.ports.d.ts.map +0 -1
  431. package/dist/ports/git-validator.ports.js +0 -4
  432. package/dist/ports/git-validator.ports.js.map +0 -1
  433. package/dist/ports/index.d.ts +0 -21
  434. package/dist/ports/index.d.ts.map +0 -1
  435. package/dist/ports/index.js +0 -23
  436. package/dist/ports/index.js.map +0 -1
  437. package/dist/ports/metrics-collector.port.d.ts +0 -133
  438. package/dist/ports/metrics-collector.port.d.ts.map +0 -1
  439. package/dist/ports/metrics-collector.port.js +0 -4
  440. package/dist/ports/metrics-collector.port.js.map +0 -1
  441. package/dist/ports/recovery.ports.d.ts +0 -59
  442. package/dist/ports/recovery.ports.d.ts.map +0 -1
  443. package/dist/ports/recovery.ports.js +0 -4
  444. package/dist/ports/recovery.ports.js.map +0 -1
  445. package/dist/ports/validation.ports.d.ts +0 -75
  446. package/dist/ports/validation.ports.d.ts.map +0 -1
  447. package/dist/ports/validation.ports.js +0 -4
  448. package/dist/ports/validation.ports.js.map +0 -1
  449. package/dist/ports/wu-helpers.ports.d.ts +0 -227
  450. package/dist/ports/wu-helpers.ports.d.ts.map +0 -1
  451. package/dist/ports/wu-helpers.ports.js +0 -4
  452. package/dist/ports/wu-helpers.ports.js.map +0 -1
  453. package/dist/process-detector.d.ts +0 -69
  454. package/dist/process-detector.d.ts.map +0 -1
  455. package/dist/process-detector.js +0 -175
  456. package/dist/process-detector.js.map +0 -1
  457. package/dist/prompt-linter.d.ts +0 -66
  458. package/dist/prompt-linter.d.ts.map +0 -1
  459. package/dist/prompt-linter.js +0 -323
  460. package/dist/prompt-linter.js.map +0 -1
  461. package/dist/prompt-monitor.d.ts +0 -6
  462. package/dist/prompt-monitor.d.ts.map +0 -1
  463. package/dist/prompt-monitor.js +0 -218
  464. package/dist/prompt-monitor.js.map +0 -1
  465. package/dist/rebase-artifact-cleanup.d.ts +0 -156
  466. package/dist/rebase-artifact-cleanup.d.ts.map +0 -1
  467. package/dist/rebase-artifact-cleanup.js +0 -475
  468. package/dist/rebase-artifact-cleanup.js.map +0 -1
  469. package/dist/recovery/index.d.ts +0 -12
  470. package/dist/recovery/index.d.ts.map +0 -1
  471. package/dist/recovery/index.js +0 -14
  472. package/dist/recovery/index.js.map +0 -1
  473. package/dist/recovery/recovery-analyzer.d.ts +0 -49
  474. package/dist/recovery/recovery-analyzer.d.ts.map +0 -1
  475. package/dist/recovery/recovery-analyzer.js +0 -149
  476. package/dist/recovery/recovery-analyzer.js.map +0 -1
  477. package/dist/resolve-policy.d.ts +0 -257
  478. package/dist/resolve-policy.d.ts.map +0 -1
  479. package/dist/resolve-policy.js +0 -269
  480. package/dist/resolve-policy.js.map +0 -1
  481. package/dist/retry-strategy.d.ts +0 -191
  482. package/dist/retry-strategy.d.ts.map +0 -1
  483. package/dist/retry-strategy.js +0 -286
  484. package/dist/retry-strategy.js.map +0 -1
  485. package/dist/risk-detector.d.ts +0 -109
  486. package/dist/risk-detector.d.ts.map +0 -1
  487. package/dist/risk-detector.js +0 -253
  488. package/dist/risk-detector.js.map +0 -1
  489. package/dist/rollback-utils.d.ts +0 -129
  490. package/dist/rollback-utils.d.ts.map +0 -1
  491. package/dist/rollback-utils.js +0 -217
  492. package/dist/rollback-utils.js.map +0 -1
  493. package/dist/sandbox-allowlist.d.ts +0 -16
  494. package/dist/sandbox-allowlist.d.ts.map +0 -1
  495. package/dist/sandbox-allowlist.js +0 -77
  496. package/dist/sandbox-allowlist.js.map +0 -1
  497. package/dist/sandbox-backend-linux.d.ts +0 -6
  498. package/dist/sandbox-backend-linux.d.ts.map +0 -1
  499. package/dist/sandbox-backend-linux.js +0 -67
  500. package/dist/sandbox-backend-linux.js.map +0 -1
  501. package/dist/sandbox-backend-macos.d.ts +0 -6
  502. package/dist/sandbox-backend-macos.d.ts.map +0 -1
  503. package/dist/sandbox-backend-macos.js +0 -66
  504. package/dist/sandbox-backend-macos.js.map +0 -1
  505. package/dist/sandbox-backend-windows.d.ts +0 -6
  506. package/dist/sandbox-backend-windows.d.ts.map +0 -1
  507. package/dist/sandbox-backend-windows.js +0 -30
  508. package/dist/sandbox-backend-windows.js.map +0 -1
  509. package/dist/sandbox-profile.d.ts +0 -53
  510. package/dist/sandbox-profile.d.ts.map +0 -1
  511. package/dist/sandbox-profile.js +0 -64
  512. package/dist/sandbox-profile.js.map +0 -1
  513. package/dist/schemas/arg-validators.d.ts +0 -58
  514. package/dist/schemas/arg-validators.d.ts.map +0 -1
  515. package/dist/schemas/arg-validators.js +0 -193
  516. package/dist/schemas/arg-validators.js.map +0 -1
  517. package/dist/schemas/command-schemas.d.ts +0 -171
  518. package/dist/schemas/command-schemas.d.ts.map +0 -1
  519. package/dist/schemas/command-schemas.js +0 -145
  520. package/dist/schemas/command-schemas.js.map +0 -1
  521. package/dist/schemas/flow-arg-validators.d.ts +0 -32
  522. package/dist/schemas/flow-arg-validators.d.ts.map +0 -1
  523. package/dist/schemas/flow-arg-validators.js +0 -57
  524. package/dist/schemas/flow-arg-validators.js.map +0 -1
  525. package/dist/schemas/flow-schemas.d.ts +0 -152
  526. package/dist/schemas/flow-schemas.d.ts.map +0 -1
  527. package/dist/schemas/flow-schemas.js +0 -105
  528. package/dist/schemas/flow-schemas.js.map +0 -1
  529. package/dist/schemas/index.d.ts +0 -33
  530. package/dist/schemas/index.d.ts.map +0 -1
  531. package/dist/schemas/index.js +0 -96
  532. package/dist/schemas/index.js.map +0 -1
  533. package/dist/schemas/initiative-arg-validators.d.ts +0 -64
  534. package/dist/schemas/initiative-arg-validators.d.ts.map +0 -1
  535. package/dist/schemas/initiative-arg-validators.js +0 -65
  536. package/dist/schemas/initiative-arg-validators.js.map +0 -1
  537. package/dist/schemas/initiative-schemas.d.ts +0 -256
  538. package/dist/schemas/initiative-schemas.d.ts.map +0 -1
  539. package/dist/schemas/initiative-schemas.js +0 -186
  540. package/dist/schemas/initiative-schemas.js.map +0 -1
  541. package/dist/schemas/memory-arg-validators.d.ts +0 -91
  542. package/dist/schemas/memory-arg-validators.d.ts.map +0 -1
  543. package/dist/schemas/memory-arg-validators.js +0 -75
  544. package/dist/schemas/memory-arg-validators.js.map +0 -1
  545. package/dist/schemas/memory-schemas.d.ts +0 -287
  546. package/dist/schemas/memory-schemas.d.ts.map +0 -1
  547. package/dist/schemas/memory-schemas.js +0 -242
  548. package/dist/schemas/memory-schemas.js.map +0 -1
  549. package/dist/schemas/schema-utils.d.ts +0 -87
  550. package/dist/schemas/schema-utils.d.ts.map +0 -1
  551. package/dist/schemas/schema-utils.js +0 -320
  552. package/dist/schemas/schema-utils.js.map +0 -1
  553. package/dist/schemas/setup-arg-validators.d.ts +0 -91
  554. package/dist/schemas/setup-arg-validators.d.ts.map +0 -1
  555. package/dist/schemas/setup-arg-validators.js +0 -98
  556. package/dist/schemas/setup-arg-validators.js.map +0 -1
  557. package/dist/schemas/setup-schemas.d.ts +0 -335
  558. package/dist/schemas/setup-schemas.d.ts.map +0 -1
  559. package/dist/schemas/setup-schemas.js +0 -260
  560. package/dist/schemas/setup-schemas.js.map +0 -1
  561. package/dist/schemas/validation-arg-validators.d.ts +0 -18
  562. package/dist/schemas/validation-arg-validators.d.ts.map +0 -1
  563. package/dist/schemas/validation-arg-validators.js +0 -59
  564. package/dist/schemas/validation-arg-validators.js.map +0 -1
  565. package/dist/schemas/validation-schemas.d.ts +0 -80
  566. package/dist/schemas/validation-schemas.d.ts.map +0 -1
  567. package/dist/schemas/validation-schemas.js +0 -88
  568. package/dist/schemas/validation-schemas.js.map +0 -1
  569. package/dist/schemas/wu-lifecycle-arg-validators.d.ts +0 -118
  570. package/dist/schemas/wu-lifecycle-arg-validators.d.ts.map +0 -1
  571. package/dist/schemas/wu-lifecycle-arg-validators.js +0 -82
  572. package/dist/schemas/wu-lifecycle-arg-validators.js.map +0 -1
  573. package/dist/schemas/wu-lifecycle-schemas.d.ts +0 -362
  574. package/dist/schemas/wu-lifecycle-schemas.d.ts.map +0 -1
  575. package/dist/schemas/wu-lifecycle-schemas.js +0 -284
  576. package/dist/schemas/wu-lifecycle-schemas.js.map +0 -1
  577. package/dist/section-headings.d.ts +0 -35
  578. package/dist/section-headings.d.ts.map +0 -1
  579. package/dist/section-headings.js +0 -54
  580. package/dist/section-headings.js.map +0 -1
  581. package/dist/spawn-escalation.d.ts +0 -91
  582. package/dist/spawn-escalation.d.ts.map +0 -1
  583. package/dist/spawn-escalation.js +0 -258
  584. package/dist/spawn-escalation.js.map +0 -1
  585. package/dist/spawn-monitor.d.ts +0 -230
  586. package/dist/spawn-monitor.d.ts.map +0 -1
  587. package/dist/spawn-monitor.js +0 -675
  588. package/dist/spawn-monitor.js.map +0 -1
  589. package/dist/spawn-prompt-schema.d.ts +0 -107
  590. package/dist/spawn-prompt-schema.d.ts.map +0 -1
  591. package/dist/spawn-prompt-schema.js +0 -163
  592. package/dist/spawn-prompt-schema.js.map +0 -1
  593. package/dist/spawn-recovery.d.ts +0 -83
  594. package/dist/spawn-recovery.d.ts.map +0 -1
  595. package/dist/spawn-recovery.js +0 -299
  596. package/dist/spawn-recovery.js.map +0 -1
  597. package/dist/spawn-registry-schema.d.ts +0 -122
  598. package/dist/spawn-registry-schema.d.ts.map +0 -1
  599. package/dist/spawn-registry-schema.js +0 -129
  600. package/dist/spawn-registry-schema.js.map +0 -1
  601. package/dist/spawn-registry-store.d.ts +0 -161
  602. package/dist/spawn-registry-store.d.ts.map +0 -1
  603. package/dist/spawn-registry-store.js +0 -301
  604. package/dist/spawn-registry-store.js.map +0 -1
  605. package/dist/spawn-strategy.d.ts +0 -60
  606. package/dist/spawn-strategy.d.ts.map +0 -1
  607. package/dist/spawn-strategy.js +0 -112
  608. package/dist/spawn-strategy.js.map +0 -1
  609. package/dist/spawn-tree.d.ts +0 -125
  610. package/dist/spawn-tree.d.ts.map +0 -1
  611. package/dist/spawn-tree.js +0 -286
  612. package/dist/spawn-tree.js.map +0 -1
  613. package/dist/stamp-status-validator.d.ts +0 -77
  614. package/dist/stamp-status-validator.d.ts.map +0 -1
  615. package/dist/stamp-status-validator.js +0 -138
  616. package/dist/stamp-status-validator.js.map +0 -1
  617. package/dist/stamp-tracking.d.ts +0 -12
  618. package/dist/stamp-tracking.d.ts.map +0 -1
  619. package/dist/stamp-tracking.js +0 -43
  620. package/dist/stamp-tracking.js.map +0 -1
  621. package/dist/stamp-utils.d.ts +0 -94
  622. package/dist/stamp-utils.d.ts.map +0 -1
  623. package/dist/stamp-utils.js +0 -245
  624. package/dist/stamp-utils.js.map +0 -1
  625. package/dist/state-cleanup-core.d.ts +0 -206
  626. package/dist/state-cleanup-core.d.ts.map +0 -1
  627. package/dist/state-cleanup-core.js +0 -225
  628. package/dist/state-cleanup-core.js.map +0 -1
  629. package/dist/state-doctor-core.d.ts +0 -177
  630. package/dist/state-doctor-core.d.ts.map +0 -1
  631. package/dist/state-doctor-core.js +0 -395
  632. package/dist/state-doctor-core.js.map +0 -1
  633. package/dist/state-machine.d.ts +0 -10
  634. package/dist/state-machine.d.ts.map +0 -1
  635. package/dist/state-machine.js +0 -89
  636. package/dist/state-machine.js.map +0 -1
  637. package/dist/stream-error-handler.d.ts +0 -68
  638. package/dist/stream-error-handler.d.ts.map +0 -1
  639. package/dist/stream-error-handler.js +0 -77
  640. package/dist/stream-error-handler.js.map +0 -1
  641. package/dist/system-map-validator.d.ts +0 -111
  642. package/dist/system-map-validator.d.ts.map +0 -1
  643. package/dist/system-map-validator.js +0 -383
  644. package/dist/system-map-validator.js.map +0 -1
  645. package/dist/telemetry.d.ts +0 -81
  646. package/dist/telemetry.d.ts.map +0 -1
  647. package/dist/telemetry.js +0 -219
  648. package/dist/telemetry.js.map +0 -1
  649. package/dist/template-loader.d.ts +0 -151
  650. package/dist/template-loader.d.ts.map +0 -1
  651. package/dist/template-loader.js +0 -400
  652. package/dist/template-loader.js.map +0 -1
  653. package/dist/test-baseline.d.ts +0 -177
  654. package/dist/test-baseline.d.ts.map +0 -1
  655. package/dist/test-baseline.js +0 -286
  656. package/dist/test-baseline.js.map +0 -1
  657. package/dist/token-counter.d.ts +0 -50
  658. package/dist/token-counter.d.ts.map +0 -1
  659. package/dist/token-counter.js +0 -144
  660. package/dist/token-counter.js.map +0 -1
  661. package/dist/usecases/analyze-recovery.usecase.d.ts +0 -43
  662. package/dist/usecases/analyze-recovery.usecase.d.ts.map +0 -1
  663. package/dist/usecases/analyze-recovery.usecase.js +0 -34
  664. package/dist/usecases/analyze-recovery.usecase.js.map +0 -1
  665. package/dist/usecases/compute-context.usecase.d.ts +0 -63
  666. package/dist/usecases/compute-context.usecase.d.ts.map +0 -1
  667. package/dist/usecases/compute-context.usecase.js +0 -91
  668. package/dist/usecases/compute-context.usecase.js.map +0 -1
  669. package/dist/usecases/get-dashboard-data.usecase.d.ts +0 -53
  670. package/dist/usecases/get-dashboard-data.usecase.d.ts.map +0 -1
  671. package/dist/usecases/get-dashboard-data.usecase.js +0 -54
  672. package/dist/usecases/get-dashboard-data.usecase.js.map +0 -1
  673. package/dist/usecases/get-suggestions.usecase.d.ts +0 -101
  674. package/dist/usecases/get-suggestions.usecase.d.ts.map +0 -1
  675. package/dist/usecases/get-suggestions.usecase.js +0 -148
  676. package/dist/usecases/get-suggestions.usecase.js.map +0 -1
  677. package/dist/usecases/index.d.ts +0 -15
  678. package/dist/usecases/index.d.ts.map +0 -1
  679. package/dist/usecases/index.js +0 -21
  680. package/dist/usecases/index.js.map +0 -1
  681. package/dist/usecases/validate-command.usecase.d.ts +0 -56
  682. package/dist/usecases/validate-command.usecase.d.ts.map +0 -1
  683. package/dist/usecases/validate-command.usecase.js +0 -143
  684. package/dist/usecases/validate-command.usecase.js.map +0 -1
  685. package/dist/user-normalizer.d.ts +0 -36
  686. package/dist/user-normalizer.d.ts.map +0 -1
  687. package/dist/user-normalizer.js +0 -149
  688. package/dist/user-normalizer.js.map +0 -1
  689. package/dist/validation/command-registry.d.ts +0 -26
  690. package/dist/validation/command-registry.d.ts.map +0 -1
  691. package/dist/validation/command-registry.js +0 -269
  692. package/dist/validation/command-registry.js.map +0 -1
  693. package/dist/validation/index.d.ts +0 -16
  694. package/dist/validation/index.d.ts.map +0 -1
  695. package/dist/validation/index.js +0 -18
  696. package/dist/validation/index.js.map +0 -1
  697. package/dist/validation/types.d.ts +0 -140
  698. package/dist/validation/types.d.ts.map +0 -1
  699. package/dist/validation/types.js +0 -4
  700. package/dist/validation/types.js.map +0 -1
  701. package/dist/validation/validate-command.d.ts +0 -16
  702. package/dist/validation/validate-command.d.ts.map +0 -1
  703. package/dist/validation/validate-command.js +0 -163
  704. package/dist/validation/validate-command.js.map +0 -1
  705. package/dist/validators/backlog-sync.d.ts +0 -11
  706. package/dist/validators/backlog-sync.d.ts.map +0 -1
  707. package/dist/validators/backlog-sync.js +0 -65
  708. package/dist/validators/backlog-sync.js.map +0 -1
  709. package/dist/validators/phi-constants.d.ts +0 -98
  710. package/dist/validators/phi-constants.d.ts.map +0 -1
  711. package/dist/validators/phi-constants.js +0 -153
  712. package/dist/validators/phi-constants.js.map +0 -1
  713. package/dist/validators/phi-scanner.d.ts +0 -59
  714. package/dist/validators/phi-scanner.d.ts.map +0 -1
  715. package/dist/validators/phi-scanner.js +0 -222
  716. package/dist/validators/phi-scanner.js.map +0 -1
  717. package/dist/validators/supabase-docs-linter.d.ts +0 -15
  718. package/dist/validators/supabase-docs-linter.d.ts.map +0 -1
  719. package/dist/validators/supabase-docs-linter.js +0 -45
  720. package/dist/validators/supabase-docs-linter.js.map +0 -1
  721. package/dist/validators/wu-tasks.d.ts +0 -21
  722. package/dist/validators/wu-tasks.d.ts.map +0 -1
  723. package/dist/validators/wu-tasks.js +0 -93
  724. package/dist/validators/wu-tasks.js.map +0 -1
  725. package/dist/work-classifier.d.ts +0 -95
  726. package/dist/work-classifier.d.ts.map +0 -1
  727. package/dist/work-classifier.js +0 -408
  728. package/dist/work-classifier.js.map +0 -1
  729. package/dist/worktree-ownership.d.ts +0 -51
  730. package/dist/worktree-ownership.d.ts.map +0 -1
  731. package/dist/worktree-ownership.js +0 -77
  732. package/dist/worktree-ownership.js.map +0 -1
  733. package/dist/worktree-scanner.d.ts +0 -118
  734. package/dist/worktree-scanner.d.ts.map +0 -1
  735. package/dist/worktree-scanner.js +0 -171
  736. package/dist/worktree-scanner.js.map +0 -1
  737. package/dist/worktree-symlink.d.ts +0 -86
  738. package/dist/worktree-symlink.d.ts.map +0 -1
  739. package/dist/worktree-symlink.js +0 -349
  740. package/dist/worktree-symlink.js.map +0 -1
  741. package/dist/wu-backlog-updater.d.ts +0 -10
  742. package/dist/wu-backlog-updater.d.ts.map +0 -1
  743. package/dist/wu-backlog-updater.js +0 -40
  744. package/dist/wu-backlog-updater.js.map +0 -1
  745. package/dist/wu-checkpoint.d.ts +0 -110
  746. package/dist/wu-checkpoint.d.ts.map +0 -1
  747. package/dist/wu-checkpoint.js +0 -236
  748. package/dist/wu-checkpoint.js.map +0 -1
  749. package/dist/wu-claim-helpers.d.ts +0 -21
  750. package/dist/wu-claim-helpers.d.ts.map +0 -1
  751. package/dist/wu-claim-helpers.js +0 -66
  752. package/dist/wu-claim-helpers.js.map +0 -1
  753. package/dist/wu-claim-resume.d.ts +0 -106
  754. package/dist/wu-claim-resume.d.ts.map +0 -1
  755. package/dist/wu-claim-resume.js +0 -279
  756. package/dist/wu-claim-resume.js.map +0 -1
  757. package/dist/wu-cli-constants.d.ts +0 -425
  758. package/dist/wu-cli-constants.d.ts.map +0 -1
  759. package/dist/wu-cli-constants.js +0 -430
  760. package/dist/wu-cli-constants.js.map +0 -1
  761. package/dist/wu-consistency-checker.d.ts +0 -189
  762. package/dist/wu-consistency-checker.d.ts.map +0 -1
  763. package/dist/wu-consistency-checker.js +0 -1026
  764. package/dist/wu-consistency-checker.js.map +0 -1
  765. package/dist/wu-constants.d.ts +0 -29
  766. package/dist/wu-constants.d.ts.map +0 -1
  767. package/dist/wu-constants.js +0 -37
  768. package/dist/wu-constants.js.map +0 -1
  769. package/dist/wu-context-constants.d.ts +0 -270
  770. package/dist/wu-context-constants.d.ts.map +0 -1
  771. package/dist/wu-context-constants.js +0 -267
  772. package/dist/wu-context-constants.js.map +0 -1
  773. package/dist/wu-create-defaults.d.ts +0 -11
  774. package/dist/wu-create-defaults.d.ts.map +0 -1
  775. package/dist/wu-create-defaults.js +0 -13
  776. package/dist/wu-create-defaults.js.map +0 -1
  777. package/dist/wu-create-validators.d.ts +0 -89
  778. package/dist/wu-create-validators.d.ts.map +0 -1
  779. package/dist/wu-create-validators.js +0 -215
  780. package/dist/wu-create-validators.js.map +0 -1
  781. package/dist/wu-domain-constants.d.ts +0 -295
  782. package/dist/wu-domain-constants.d.ts.map +0 -1
  783. package/dist/wu-domain-constants.js +0 -399
  784. package/dist/wu-domain-constants.js.map +0 -1
  785. package/dist/wu-done-branch-only.d.ts +0 -120
  786. package/dist/wu-done-branch-only.d.ts.map +0 -1
  787. package/dist/wu-done-branch-only.js +0 -412
  788. package/dist/wu-done-branch-only.js.map +0 -1
  789. package/dist/wu-done-branch-utils.d.ts +0 -8
  790. package/dist/wu-done-branch-utils.d.ts.map +0 -1
  791. package/dist/wu-done-branch-utils.js +0 -34
  792. package/dist/wu-done-branch-utils.js.map +0 -1
  793. package/dist/wu-done-cleanup.d.ts +0 -6
  794. package/dist/wu-done-cleanup.d.ts.map +0 -1
  795. package/dist/wu-done-cleanup.js +0 -161
  796. package/dist/wu-done-cleanup.js.map +0 -1
  797. package/dist/wu-done-concurrent-merge.d.ts +0 -103
  798. package/dist/wu-done-concurrent-merge.d.ts.map +0 -1
  799. package/dist/wu-done-concurrent-merge.js +0 -375
  800. package/dist/wu-done-concurrent-merge.js.map +0 -1
  801. package/dist/wu-done-docs-generate.d.ts +0 -72
  802. package/dist/wu-done-docs-generate.d.ts.map +0 -1
  803. package/dist/wu-done-docs-generate.js +0 -129
  804. package/dist/wu-done-docs-generate.js.map +0 -1
  805. package/dist/wu-done-docs-only.d.ts +0 -16
  806. package/dist/wu-done-docs-only.d.ts.map +0 -1
  807. package/dist/wu-done-docs-only.js +0 -68
  808. package/dist/wu-done-docs-only.js.map +0 -1
  809. package/dist/wu-done-errors.d.ts +0 -13
  810. package/dist/wu-done-errors.d.ts.map +0 -1
  811. package/dist/wu-done-errors.js +0 -27
  812. package/dist/wu-done-errors.js.map +0 -1
  813. package/dist/wu-done-initiative-sync.d.ts +0 -13
  814. package/dist/wu-done-initiative-sync.d.ts.map +0 -1
  815. package/dist/wu-done-initiative-sync.js +0 -235
  816. package/dist/wu-done-initiative-sync.js.map +0 -1
  817. package/dist/wu-done-inputs.d.ts +0 -10
  818. package/dist/wu-done-inputs.d.ts.map +0 -1
  819. package/dist/wu-done-inputs.js +0 -55
  820. package/dist/wu-done-inputs.js.map +0 -1
  821. package/dist/wu-done-machine.d.ts +0 -175
  822. package/dist/wu-done-machine.d.ts.map +0 -1
  823. package/dist/wu-done-machine.js +0 -227
  824. package/dist/wu-done-machine.js.map +0 -1
  825. package/dist/wu-done-merged-worktree.d.ts +0 -65
  826. package/dist/wu-done-merged-worktree.d.ts.map +0 -1
  827. package/dist/wu-done-merged-worktree.js +0 -197
  828. package/dist/wu-done-merged-worktree.js.map +0 -1
  829. package/dist/wu-done-messages.d.ts +0 -120
  830. package/dist/wu-done-messages.d.ts.map +0 -1
  831. package/dist/wu-done-messages.js +0 -191
  832. package/dist/wu-done-messages.js.map +0 -1
  833. package/dist/wu-done-metadata.d.ts +0 -123
  834. package/dist/wu-done-metadata.d.ts.map +0 -1
  835. package/dist/wu-done-metadata.js +0 -240
  836. package/dist/wu-done-metadata.js.map +0 -1
  837. package/dist/wu-done-paths.d.ts +0 -87
  838. package/dist/wu-done-paths.d.ts.map +0 -1
  839. package/dist/wu-done-paths.js +0 -263
  840. package/dist/wu-done-paths.js.map +0 -1
  841. package/dist/wu-done-pr.d.ts +0 -76
  842. package/dist/wu-done-pr.d.ts.map +0 -1
  843. package/dist/wu-done-pr.js +0 -189
  844. package/dist/wu-done-pr.js.map +0 -1
  845. package/dist/wu-done-preflight.d.ts +0 -65
  846. package/dist/wu-done-preflight.d.ts.map +0 -1
  847. package/dist/wu-done-preflight.js +0 -205
  848. package/dist/wu-done-preflight.js.map +0 -1
  849. package/dist/wu-done-retry-helpers.d.ts +0 -75
  850. package/dist/wu-done-retry-helpers.d.ts.map +0 -1
  851. package/dist/wu-done-retry-helpers.js +0 -175
  852. package/dist/wu-done-retry-helpers.js.map +0 -1
  853. package/dist/wu-done-ui.d.ts +0 -29
  854. package/dist/wu-done-ui.d.ts.map +0 -1
  855. package/dist/wu-done-ui.js +0 -74
  856. package/dist/wu-done-ui.js.map +0 -1
  857. package/dist/wu-done-validation.d.ts +0 -128
  858. package/dist/wu-done-validation.d.ts.map +0 -1
  859. package/dist/wu-done-validation.js +0 -530
  860. package/dist/wu-done-validation.js.map +0 -1
  861. package/dist/wu-done-validators.d.ts +0 -16
  862. package/dist/wu-done-validators.d.ts.map +0 -1
  863. package/dist/wu-done-validators.js +0 -16
  864. package/dist/wu-done-validators.js.map +0 -1
  865. package/dist/wu-done-worktree-services.d.ts +0 -174
  866. package/dist/wu-done-worktree-services.d.ts.map +0 -1
  867. package/dist/wu-done-worktree-services.js +0 -274
  868. package/dist/wu-done-worktree-services.js.map +0 -1
  869. package/dist/wu-done-worktree.d.ts +0 -229
  870. package/dist/wu-done-worktree.d.ts.map +0 -1
  871. package/dist/wu-done-worktree.js +0 -1290
  872. package/dist/wu-done-worktree.js.map +0 -1
  873. package/dist/wu-events-cleanup.d.ts +0 -131
  874. package/dist/wu-events-cleanup.d.ts.map +0 -1
  875. package/dist/wu-events-cleanup.js +0 -404
  876. package/dist/wu-events-cleanup.js.map +0 -1
  877. package/dist/wu-git-constants.d.ts +0 -176
  878. package/dist/wu-git-constants.d.ts.map +0 -1
  879. package/dist/wu-git-constants.js +0 -178
  880. package/dist/wu-git-constants.js.map +0 -1
  881. package/dist/wu-helpers.d.ts +0 -133
  882. package/dist/wu-helpers.d.ts.map +0 -1
  883. package/dist/wu-helpers.js +0 -268
  884. package/dist/wu-helpers.js.map +0 -1
  885. package/dist/wu-id-generator.d.ts +0 -51
  886. package/dist/wu-id-generator.d.ts.map +0 -1
  887. package/dist/wu-id-generator.js +0 -110
  888. package/dist/wu-id-generator.js.map +0 -1
  889. package/dist/wu-lint.d.ts +0 -191
  890. package/dist/wu-lint.d.ts.map +0 -1
  891. package/dist/wu-lint.js +0 -338
  892. package/dist/wu-lint.js.map +0 -1
  893. package/dist/wu-list.d.ts +0 -76
  894. package/dist/wu-list.d.ts.map +0 -1
  895. package/dist/wu-list.js +0 -181
  896. package/dist/wu-list.js.map +0 -1
  897. package/dist/wu-paths-constants.d.ts +0 -264
  898. package/dist/wu-paths-constants.d.ts.map +0 -1
  899. package/dist/wu-paths-constants.js +0 -272
  900. package/dist/wu-paths-constants.js.map +0 -1
  901. package/dist/wu-paths.d.ts +0 -211
  902. package/dist/wu-paths.d.ts.map +0 -1
  903. package/dist/wu-paths.js +0 -223
  904. package/dist/wu-paths.js.map +0 -1
  905. package/dist/wu-preflight-validators.d.ts +0 -64
  906. package/dist/wu-preflight-validators.d.ts.map +0 -1
  907. package/dist/wu-preflight-validators.js +0 -277
  908. package/dist/wu-preflight-validators.js.map +0 -1
  909. package/dist/wu-recovery.d.ts +0 -220
  910. package/dist/wu-recovery.d.ts.map +0 -1
  911. package/dist/wu-recovery.js +0 -470
  912. package/dist/wu-recovery.js.map +0 -1
  913. package/dist/wu-repair-core.d.ts +0 -150
  914. package/dist/wu-repair-core.d.ts.map +0 -1
  915. package/dist/wu-repair-core.js +0 -718
  916. package/dist/wu-repair-core.js.map +0 -1
  917. package/dist/wu-rules-core.d.ts +0 -95
  918. package/dist/wu-rules-core.d.ts.map +0 -1
  919. package/dist/wu-rules-core.js +0 -401
  920. package/dist/wu-rules-core.js.map +0 -1
  921. package/dist/wu-rules-engine.d.ts +0 -29
  922. package/dist/wu-rules-engine.d.ts.map +0 -1
  923. package/dist/wu-rules-engine.js +0 -61
  924. package/dist/wu-rules-engine.js.map +0 -1
  925. package/dist/wu-rules-resolvers.d.ts +0 -19
  926. package/dist/wu-rules-resolvers.d.ts.map +0 -1
  927. package/dist/wu-rules-resolvers.js +0 -210
  928. package/dist/wu-rules-resolvers.js.map +0 -1
  929. package/dist/wu-schema-normalization.d.ts +0 -18
  930. package/dist/wu-schema-normalization.d.ts.map +0 -1
  931. package/dist/wu-schema-normalization.js +0 -87
  932. package/dist/wu-schema-normalization.js.map +0 -1
  933. package/dist/wu-schema.d.ts +0 -772
  934. package/dist/wu-schema.d.ts.map +0 -1
  935. package/dist/wu-schema.js +0 -897
  936. package/dist/wu-schema.js.map +0 -1
  937. package/dist/wu-spawn-context.d.ts +0 -66
  938. package/dist/wu-spawn-context.d.ts.map +0 -1
  939. package/dist/wu-spawn-context.js +0 -185
  940. package/dist/wu-spawn-context.js.map +0 -1
  941. package/dist/wu-spawn-helpers.d.ts +0 -110
  942. package/dist/wu-spawn-helpers.d.ts.map +0 -1
  943. package/dist/wu-spawn-helpers.js +0 -276
  944. package/dist/wu-spawn-helpers.js.map +0 -1
  945. package/dist/wu-spawn-skills.d.ts +0 -39
  946. package/dist/wu-spawn-skills.d.ts.map +0 -1
  947. package/dist/wu-spawn-skills.js +0 -214
  948. package/dist/wu-spawn-skills.js.map +0 -1
  949. package/dist/wu-spawn.d.ts +0 -394
  950. package/dist/wu-spawn.d.ts.map +0 -1
  951. package/dist/wu-spawn.js +0 -1977
  952. package/dist/wu-spawn.js.map +0 -1
  953. package/dist/wu-state-schema.d.ts +0 -237
  954. package/dist/wu-state-schema.d.ts.map +0 -1
  955. package/dist/wu-state-schema.js +0 -172
  956. package/dist/wu-state-schema.js.map +0 -1
  957. package/dist/wu-state-store.d.ts +0 -275
  958. package/dist/wu-state-store.d.ts.map +0 -1
  959. package/dist/wu-state-store.js +0 -1057
  960. package/dist/wu-state-store.js.map +0 -1
  961. package/dist/wu-status-transition.d.ts +0 -58
  962. package/dist/wu-status-transition.d.ts.map +0 -1
  963. package/dist/wu-status-transition.js +0 -370
  964. package/dist/wu-status-transition.js.map +0 -1
  965. package/dist/wu-status-updater.d.ts +0 -18
  966. package/dist/wu-status-updater.d.ts.map +0 -1
  967. package/dist/wu-status-updater.js +0 -123
  968. package/dist/wu-status-updater.js.map +0 -1
  969. package/dist/wu-statuses.d.ts +0 -154
  970. package/dist/wu-statuses.d.ts.map +0 -1
  971. package/dist/wu-statuses.js +0 -176
  972. package/dist/wu-statuses.js.map +0 -1
  973. package/dist/wu-transaction-collectors.d.ts +0 -116
  974. package/dist/wu-transaction-collectors.d.ts.map +0 -1
  975. package/dist/wu-transaction-collectors.js +0 -273
  976. package/dist/wu-transaction-collectors.js.map +0 -1
  977. package/dist/wu-transaction.d.ts +0 -172
  978. package/dist/wu-transaction.d.ts.map +0 -1
  979. package/dist/wu-transaction.js +0 -288
  980. package/dist/wu-transaction.js.map +0 -1
  981. package/dist/wu-type-helpers.d.ts +0 -26
  982. package/dist/wu-type-helpers.d.ts.map +0 -1
  983. package/dist/wu-type-helpers.js +0 -45
  984. package/dist/wu-type-helpers.js.map +0 -1
  985. package/dist/wu-ui-constants.d.ts +0 -235
  986. package/dist/wu-ui-constants.d.ts.map +0 -1
  987. package/dist/wu-ui-constants.js +0 -237
  988. package/dist/wu-ui-constants.js.map +0 -1
  989. package/dist/wu-validation-constants.d.ts +0 -61
  990. package/dist/wu-validation-constants.d.ts.map +0 -1
  991. package/dist/wu-validation-constants.js +0 -69
  992. package/dist/wu-validation-constants.js.map +0 -1
  993. package/dist/wu-validation.d.ts +0 -121
  994. package/dist/wu-validation.d.ts.map +0 -1
  995. package/dist/wu-validation.js +0 -266
  996. package/dist/wu-validation.js.map +0 -1
  997. package/dist/wu-validator.d.ts +0 -128
  998. package/dist/wu-validator.d.ts.map +0 -1
  999. package/dist/wu-validator.js +0 -445
  1000. package/dist/wu-validator.js.map +0 -1
  1001. package/dist/wu-yaml-fixer.d.ts +0 -74
  1002. package/dist/wu-yaml-fixer.d.ts.map +0 -1
  1003. package/dist/wu-yaml-fixer.js +0 -273
  1004. package/dist/wu-yaml-fixer.js.map +0 -1
  1005. package/dist/wu-yaml.d.ts +0 -110
  1006. package/dist/wu-yaml.d.ts.map +0 -1
  1007. package/dist/wu-yaml.js +0 -300
  1008. package/dist/wu-yaml.js.map +0 -1
@@ -1,143 +0,0 @@
1
- // Copyright (c) 2026 Hellmai Ltd
2
- // SPDX-License-Identifier: AGPL-3.0-only
3
- import { CONTEXT_VALIDATION } from '../wu-constants.js';
4
- const { ERROR_CODES, SEVERITY } = CONTEXT_VALIDATION;
5
- /**
6
- * ValidateCommandUseCase
7
- *
8
- * Validates a command against the current WU context, returning
9
- * validation errors and warnings with fix suggestions.
10
- *
11
- * @example
12
- * // Using default registry via DI factory
13
- * const useCase = createValidateCommandUseCase();
14
- * const result = await useCase.execute('wu:done', context);
15
- *
16
- * @example
17
- * // Using custom registry for testing
18
- * const useCase = new ValidateCommandUseCase(mockRegistry);
19
- * const result = await useCase.execute('wu:claim', context);
20
- */
21
- export class ValidateCommandUseCase {
22
- commandRegistry;
23
- constructor(commandRegistry) {
24
- this.commandRegistry = commandRegistry;
25
- }
26
- /**
27
- * Execute the use case to validate a command.
28
- *
29
- * @param command - Command name (e.g., 'wu:done')
30
- * @param context - Current WU context
31
- * @returns Promise<ValidationResult> - Validation result with errors/warnings
32
- */
33
- async execute(command, context) {
34
- const errors = [];
35
- const warnings = [];
36
- // Step 1: Look up command definition
37
- const commandDef = this.commandRegistry.getCommandDefinition(command);
38
- if (!commandDef) {
39
- errors.push({
40
- // Use WU_NOT_FOUND as a general "not found" error code
41
- // The message clarifies it's an unknown command
42
- code: ERROR_CODES.WU_NOT_FOUND,
43
- message: `Unknown command: ${command}`,
44
- fixCommand: null,
45
- });
46
- return {
47
- valid: false,
48
- errors,
49
- warnings,
50
- context,
51
- };
52
- }
53
- // Step 2: Check location requirement
54
- if (commandDef.requiredLocation !== null) {
55
- if (context.location.type !== commandDef.requiredLocation) {
56
- const fixCommand = this.getLocationFixCommand(commandDef.requiredLocation, context, command);
57
- errors.push({
58
- code: ERROR_CODES.WRONG_LOCATION,
59
- message: `${command} must be run from ${commandDef.requiredLocation} checkout`,
60
- fixCommand,
61
- context: {
62
- required: commandDef.requiredLocation,
63
- actual: context.location.type,
64
- },
65
- });
66
- }
67
- }
68
- // Step 3: Check WU status requirement
69
- if (commandDef.requiredWuStatus !== null) {
70
- const actualStatus = context.wu?.status ?? null;
71
- if (actualStatus !== commandDef.requiredWuStatus) {
72
- errors.push({
73
- code: ERROR_CODES.WRONG_WU_STATUS,
74
- message: `${command} requires WU status '${commandDef.requiredWuStatus}' but got '${actualStatus ?? 'no WU'}'`,
75
- fixCommand: null,
76
- context: {
77
- required: commandDef.requiredWuStatus,
78
- actual: actualStatus,
79
- },
80
- });
81
- }
82
- }
83
- // Step 4: Check predicates
84
- if (commandDef.predicates && commandDef.predicates.length > 0) {
85
- for (const predicate of commandDef.predicates) {
86
- const passed = predicate.check(context);
87
- if (!passed) {
88
- const message = predicate.getFixMessage
89
- ? predicate.getFixMessage(context)
90
- : predicate.description;
91
- if (predicate.severity === SEVERITY.ERROR) {
92
- errors.push({
93
- // Use GATES_NOT_PASSED for predicate failures (e.g., dirty worktree)
94
- code: ERROR_CODES.GATES_NOT_PASSED,
95
- message,
96
- fixCommand: null,
97
- context: { predicateId: predicate.id },
98
- });
99
- }
100
- else {
101
- warnings.push({
102
- id: predicate.id,
103
- message,
104
- });
105
- }
106
- }
107
- }
108
- }
109
- return {
110
- valid: errors.length === 0,
111
- errors,
112
- warnings,
113
- context,
114
- };
115
- }
116
- /**
117
- * Get valid commands for the current context.
118
- *
119
- * @param context - Current WU context
120
- * @returns Promise<CommandDefinition[]> - Array of valid commands
121
- */
122
- async getValidCommands(context) {
123
- return this.commandRegistry.getValidCommandsForContext(context);
124
- }
125
- /**
126
- * Generate fix command for location errors.
127
- */
128
- getLocationFixCommand(requiredLocation, context, command) {
129
- if (requiredLocation === 'main') {
130
- // Need to cd to main checkout
131
- const wuIdParam = context.wu?.id ? ` --id ${context.wu.id}` : '';
132
- return `cd ${context.location.mainCheckout} && pnpm ${command}${wuIdParam}`;
133
- }
134
- else if (requiredLocation === 'worktree') {
135
- // Need to cd to worktree
136
- if (context.location.worktreeName) {
137
- return `cd ${context.location.mainCheckout}/worktrees/${context.location.worktreeName}`;
138
- }
139
- }
140
- return '';
141
- }
142
- }
143
- //# sourceMappingURL=validate-command.usecase.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validate-command.usecase.js","sourceRoot":"","sources":["../../src/usecases/validate-command.usecase.ts"],"names":[],"mappings":"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"}
@@ -1,36 +0,0 @@
1
- /**
2
- * Default domain fallback when git config and lumenflow config unavailable
3
- * WU-1068: Changed from hardcoded 'exampleapp.co.uk' to generic default
4
- */
5
- export declare const DEFAULT_DOMAIN: string;
6
- /**
7
- * Check if a value is a valid email address (simple check)
8
- *
9
- * @param {string|null|undefined} value - Value to check
10
- * @returns {boolean} True if value is a valid email
11
- */
12
- export declare function isValidEmail(value: UnsafeAny): boolean;
13
- /**
14
- * Infer the default email domain from available sources
15
- *
16
- * Priority:
17
- * 1. Git config user.email domain
18
- * 2. .lumenflow.config.yaml OWNER_EMAIL domain
19
- * 3. DEFAULT_DOMAIN constant
20
- *
21
- * @param {string} [cwd] - Working directory for config lookup
22
- * @returns {Promise<string>} Inferred domain (never null/undefined)
23
- */
24
- export declare function inferDefaultDomain(cwd?: string): Promise<any>;
25
- /**
26
- * Normalize a username or email to full email format
27
- *
28
- * If value is already a valid email, returns it unchanged (with normalization).
29
- * If value is a plain username, appends the default domain.
30
- *
31
- * @param {string|null|undefined} value - Username or email
32
- * @param {string} [domain] - Optional domain override
33
- * @returns {Promise<string>} Normalized email address, or empty string for null/undefined
34
- */
35
- export declare function normalizeToEmail(value: UnsafeAny, domain: UnsafeAny): Promise<string>;
36
- //# sourceMappingURL=user-normalizer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"user-normalizer.d.ts","sourceRoot":"","sources":["../src/user-normalizer.ts"],"names":[],"mappings":"AAmBA;;;GAGG;AACH,eAAO,MAAM,cAAc,QAAwB,CAAC;AAOpD;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,SAAS,WAQ5C;AA4DD;;;;;;;;;;GAUG;AACH,wBAAsB,kBAAkB,CAAC,GAAG,SAAgB,gBAe3D;AAED;;;;;;;;;GASG;AACH,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,mBAmBzE"}
@@ -1,149 +0,0 @@
1
- // Copyright (c) 2026 Hellmai Ltd
2
- // SPDX-License-Identifier: AGPL-3.0-only
3
- /**
4
- * WU-1333: User normalizer utilities
5
- *
6
- * Provides email normalization and domain inference for WU ownership.
7
- * Converts plain usernames (e.g., "tom") to email format (e.g., "tom@hellm.ai")
8
- * using domain from git config or .lumenflow.config.yaml.
9
- *
10
- * WU-1068: Removed hardcoded exampleapp.co.uk domain. Domain is now inferred
11
- * from git config user.email or .lumenflow.config.yaml OWNER_EMAIL.
12
- */
13
- import { readFile, access } from 'node:fs/promises';
14
- import { join } from 'node:path';
15
- import { getGitForCwd } from './git-adapter.js';
16
- import { DEFAULTS } from './wu-constants.js';
17
- /**
18
- * Default domain fallback when git config and lumenflow config unavailable
19
- * WU-1068: Changed from hardcoded 'exampleapp.co.uk' to generic default
20
- */
21
- export const DEFAULT_DOMAIN = DEFAULTS.EMAIL_DOMAIN;
22
- /**
23
- * Minimum length for a valid email local part
24
- */
25
- const MIN_LOCAL_PART_LENGTH = 1;
26
- /**
27
- * Check if a value is a valid email address (simple check)
28
- *
29
- * @param {string|null|undefined} value - Value to check
30
- * @returns {boolean} True if value is a valid email
31
- */
32
- export function isValidEmail(value) {
33
- if (!value || typeof value !== 'string') {
34
- return false;
35
- }
36
- const str = value.trim();
37
- // Simple email validation: must have @ with content before and after
38
- const atIndex = str.indexOf('@');
39
- return atIndex > 0 && atIndex < str.length - 1;
40
- }
41
- /**
42
- * Extract domain from an email address
43
- *
44
- * @param {string} email - Email address
45
- * @returns {string|null} Domain part or null if invalid
46
- */
47
- function extractDomain(email) {
48
- if (!isValidEmail(email)) {
49
- return null;
50
- }
51
- const atIndex = email.indexOf('@');
52
- return email.slice(atIndex + 1);
53
- }
54
- /**
55
- * Try to get domain from git config user.email
56
- *
57
- * @returns {Promise<string|null>} Domain from git config or null
58
- */
59
- async function getDomainFromGitConfig() {
60
- try {
61
- const git = getGitForCwd();
62
- const email = await git.getConfigValue('user.email');
63
- return extractDomain(email?.trim() || '');
64
- }
65
- catch {
66
- return null;
67
- }
68
- }
69
- /**
70
- * Try to get domain from .lumenflow.config.yaml OWNER_EMAIL
71
- *
72
- * @param {string} [cwd] - Working directory to search from
73
- * @returns {Promise<string|null>} Domain from config or null
74
- */
75
- async function getDomainFromLumenflowConfig(cwd = process.cwd()) {
76
- const configPath = join(cwd, '.lumenflow.config.yaml');
77
- try {
78
- await access(configPath);
79
- }
80
- catch {
81
- return null;
82
- }
83
- try {
84
- const content = await readFile(configPath, { encoding: 'utf-8' });
85
- // Simple pattern match for OWNER_EMAIL (avoid full YAML parse for performance)
86
- // Looking for: OWNER_EMAIL: "email@domain"
87
- const match = content.match(/OWNER_EMAIL:\s*["']?([^"'\s]+)["']?/i);
88
- if (match && match[1]) {
89
- return extractDomain(match[1]);
90
- }
91
- return null;
92
- }
93
- catch {
94
- return null;
95
- }
96
- }
97
- /**
98
- * Infer the default email domain from available sources
99
- *
100
- * Priority:
101
- * 1. Git config user.email domain
102
- * 2. .lumenflow.config.yaml OWNER_EMAIL domain
103
- * 3. DEFAULT_DOMAIN constant
104
- *
105
- * @param {string} [cwd] - Working directory for config lookup
106
- * @returns {Promise<string>} Inferred domain (never null/undefined)
107
- */
108
- export async function inferDefaultDomain(cwd = process.cwd()) {
109
- // Try git config first
110
- const gitDomain = await getDomainFromGitConfig();
111
- if (gitDomain) {
112
- return gitDomain;
113
- }
114
- // Try lumenflow config
115
- const configDomain = await getDomainFromLumenflowConfig(cwd);
116
- if (configDomain) {
117
- return configDomain;
118
- }
119
- // Fallback to default
120
- return DEFAULT_DOMAIN;
121
- }
122
- /**
123
- * Normalize a username or email to full email format
124
- *
125
- * If value is already a valid email, returns it unchanged (with normalization).
126
- * If value is a plain username, appends the default domain.
127
- *
128
- * @param {string|null|undefined} value - Username or email
129
- * @param {string} [domain] - Optional domain override
130
- * @returns {Promise<string>} Normalized email address, or empty string for null/undefined
131
- */
132
- export async function normalizeToEmail(value, domain) {
133
- // Handle null/undefined/empty
134
- if (!value) {
135
- return '';
136
- }
137
- const str = String(value).trim().toLowerCase();
138
- if (str.length < MIN_LOCAL_PART_LENGTH) {
139
- return '';
140
- }
141
- // Already a valid email - return as-is (normalized)
142
- if (isValidEmail(str)) {
143
- return str;
144
- }
145
- // Plain username - append domain
146
- const effectiveDomain = domain || (await inferDefaultDomain());
147
- return `${str}@${effectiveDomain}`;
148
- }
149
- //# sourceMappingURL=user-normalizer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"user-normalizer.js","sourceRoot":"","sources":["../src/user-normalizer.ts"],"names":[],"mappings":"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"}
@@ -1,26 +0,0 @@
1
- import type { CommandDefinition, CommandPredicate, WuContext } from './types.js';
2
- /**
3
- * Command registry mapping command names to definitions.
4
- */
5
- export declare const COMMAND_REGISTRY: Map<string, CommandDefinition>;
6
- /**
7
- * Get command definition by name.
8
- *
9
- * @param command - Command name (e.g., 'wu:create')
10
- * @returns CommandDefinition or null if not found
11
- */
12
- export declare function getCommandDefinition(command: string): CommandDefinition | null;
13
- /**
14
- * Get all commands valid for the current context.
15
- *
16
- * A command is valid if:
17
- * - Location requirement is satisfied (or null = UnsafeAny)
18
- * - WU status requirement is satisfied (or null = no WU required)
19
- * - All error-severity predicates pass
20
- *
21
- * @param context - Current WU context
22
- * @returns Array of valid CommandDefinitions
23
- */
24
- export declare function getValidCommandsForContext(context: WuContext): CommandDefinition[];
25
- export type { CommandDefinition, CommandPredicate, WuContext };
26
- //# sourceMappingURL=command-registry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"command-registry.d.ts","sourceRoot":"","sources":["../../src/validation/command-registry.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAmMjF;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAS1D,CAAC;AAEH;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI,CAE9E;AA8BD;;;;;;;;;;GAUG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,SAAS,GAAG,iBAAiB,EAAE,CAgBlF;AAGD,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAC"}
@@ -1,269 +0,0 @@
1
- // Copyright (c) 2026 Hellmai Ltd
2
- // SPDX-License-Identifier: AGPL-3.0-only
3
- /**
4
- * Command Registry for WU Lifecycle Commands
5
- *
6
- * WU-1090: Context-aware state machine for WU lifecycle commands
7
- *
8
- * Declarative definitions for all wu:* commands specifying:
9
- * - Required location (main vs worktree)
10
- * - Required WU status
11
- * - Custom validation predicates
12
- * - Success next steps
13
- *
14
- * @module
15
- */
16
- import { CONTEXT_VALIDATION, WU_STATUS } from '../wu-constants.js';
17
- const { LOCATION_TYPES, COMMANDS, SEVERITY } = CONTEXT_VALIDATION;
18
- /**
19
- * Predicate: Check if worktree is clean (no uncommitted changes).
20
- *
21
- * WU-1092: Checks worktreeGit.isDirty when available (running from main),
22
- * falls back to git.isDirty otherwise (running from worktree itself).
23
- */
24
- const worktreeCleanPredicate = {
25
- id: 'worktree-clean',
26
- description: 'Worktree must not have uncommitted changes',
27
- severity: SEVERITY.ERROR,
28
- check: (context) => {
29
- // WU-1092: Prefer worktreeGit when available (running wu:done from main)
30
- if (context.worktreeGit !== undefined) {
31
- return !context.worktreeGit.isDirty;
32
- }
33
- // Fallback: check current git state (running from worktree itself)
34
- return !context.git.isDirty;
35
- },
36
- getFixMessage: (context) => {
37
- const worktreePath = context.location.worktreeName
38
- ? `worktrees/${context.location.worktreeName}`
39
- : 'worktree';
40
- return `Commit or stash changes in ${worktreePath} before running wu:done`;
41
- },
42
- };
43
- /**
44
- * Predicate: Check if branch has commits to push.
45
- */
46
- const hasCommitsPredicate = {
47
- id: 'has-commits',
48
- description: 'Branch must have commits ahead of tracking branch',
49
- severity: SEVERITY.WARNING,
50
- check: (context) => context.git.ahead > 0,
51
- getFixMessage: () => 'No new commits to merge. Did you forget to commit your changes?',
52
- };
53
- /**
54
- * Predicate: Check if WU state is consistent between YAML and state store.
55
- */
56
- const stateConsistentPredicate = {
57
- id: 'state-consistent',
58
- description: 'WU state must be consistent between YAML and state store',
59
- severity: SEVERITY.WARNING,
60
- check: (context) => context.wu?.isConsistent ?? true,
61
- getFixMessage: (context) => context.wu?.inconsistencyReason || 'State store and YAML are inconsistent',
62
- };
63
- /**
64
- * Command definition for wu:create.
65
- */
66
- const wuCreate = {
67
- name: COMMANDS.WU_CREATE,
68
- description: 'Create a new WU YAML spec',
69
- requiredLocation: LOCATION_TYPES.MAIN,
70
- requiredWuStatus: null, // Creates new WU, no existing status required
71
- predicates: [],
72
- getNextSteps: (context) => [
73
- `1. Edit the WU spec with acceptance criteria`,
74
- `2. Run: pnpm wu:claim --id ${context.wu?.id || 'WU-XXX'} --lane "<lane>"`,
75
- ],
76
- };
77
- /**
78
- * Command definition for wu:claim.
79
- */
80
- const wuClaim = {
81
- name: COMMANDS.WU_CLAIM,
82
- description: 'Claim a WU and create worktree',
83
- requiredLocation: LOCATION_TYPES.MAIN,
84
- requiredWuStatus: WU_STATUS.READY,
85
- predicates: [],
86
- getNextSteps: (context) => {
87
- const wuId = context.wu?.id?.toLowerCase() || 'wu-xxx';
88
- const lane = context.wu?.lane?.toLowerCase().replace(/[: ]+/g, '-') || 'lane';
89
- return [
90
- `1. cd worktrees/${lane}-${wuId}`,
91
- '2. Implement changes per acceptance criteria',
92
- '3. Run: pnpm gates',
93
- `4. Return to main and run: pnpm wu:done --id ${context.wu?.id || 'WU-XXX'}`,
94
- ];
95
- },
96
- };
97
- /**
98
- * Predicate: Check if worktree has no uncommitted changes.
99
- * For wu:prep running from worktree itself.
100
- */
101
- const gitCleanPredicate = {
102
- id: 'git-clean',
103
- description: 'Worktree must not have uncommitted changes',
104
- severity: SEVERITY.ERROR,
105
- check: (context) => !context.git.isDirty,
106
- getFixMessage: () => 'Commit or stash changes in worktree before running wu:prep',
107
- };
108
- /**
109
- * Command definition for wu:prep (WU-1223).
110
- *
111
- * Runs gates and generates docs in the worktree, then prints copy-paste
112
- * instruction to run wu:done from main checkout for merge/cleanup.
113
- */
114
- const wuPrep = {
115
- name: COMMANDS.WU_PREP,
116
- description: 'Run gates + docs in worktree, prepare for wu:done',
117
- requiredLocation: LOCATION_TYPES.WORKTREE,
118
- requiredWuStatus: WU_STATUS.IN_PROGRESS,
119
- predicates: [gitCleanPredicate, stateConsistentPredicate],
120
- getNextSteps: (context) => {
121
- const mainPath = context.location.mainCheckout || '/path/to/main';
122
- const wuId = context.wu?.id || 'WU-XXX';
123
- return [
124
- `1. Gates and docs generated in worktree`,
125
- `2. Return to main checkout and complete:`,
126
- ` cd ${mainPath} && pnpm wu:done --id ${wuId}`,
127
- ];
128
- },
129
- };
130
- /**
131
- * Command definition for wu:done.
132
- *
133
- * WU-1223: Now requires main checkout (merge + cleanup only).
134
- * Use wu:prep from worktree for gates and docs generation.
135
- */
136
- const wuDone = {
137
- name: COMMANDS.WU_DONE,
138
- description: 'Complete WU (merge, stamp, cleanup)',
139
- requiredLocation: LOCATION_TYPES.MAIN,
140
- requiredWuStatus: WU_STATUS.IN_PROGRESS,
141
- predicates: [worktreeCleanPredicate, hasCommitsPredicate, stateConsistentPredicate],
142
- getNextSteps: () => [
143
- 'WU completed successfully!',
144
- 'Check backlog.md for your next task or run: pnpm wu:status',
145
- ],
146
- };
147
- /**
148
- * Command definition for wu:block.
149
- */
150
- const wuBlock = {
151
- name: COMMANDS.WU_BLOCK,
152
- description: 'Block WU due to external dependency',
153
- requiredLocation: null, // Can run from main or worktree
154
- requiredWuStatus: WU_STATUS.IN_PROGRESS,
155
- predicates: [],
156
- getNextSteps: () => [
157
- 'WU blocked. The lane is now available for other work.',
158
- 'When blocker is resolved, run: pnpm wu:unblock --id WU-XXX',
159
- ],
160
- };
161
- /**
162
- * Command definition for wu:unblock.
163
- */
164
- const wuUnblock = {
165
- name: COMMANDS.WU_UNBLOCK,
166
- description: 'Unblock a blocked WU',
167
- requiredLocation: null, // Can run from main or worktree
168
- requiredWuStatus: WU_STATUS.BLOCKED,
169
- predicates: [],
170
- getNextSteps: (context) => [
171
- 'WU unblocked and returned to in_progress.',
172
- `Continue working in the worktree or run: pnpm wu:done --id ${context.wu?.id || 'WU-XXX'}`,
173
- ],
174
- };
175
- /**
176
- * Command definition for wu:status.
177
- */
178
- const wuStatus = {
179
- name: COMMANDS.WU_STATUS,
180
- description: 'Show WU status, location, and valid commands',
181
- requiredLocation: null, // Informational, works anywhere
182
- requiredWuStatus: null, // Works without WU context too
183
- predicates: [],
184
- };
185
- /**
186
- * Command definition for wu:recover.
187
- */
188
- const wuRecover = {
189
- name: COMMANDS.WU_RECOVER,
190
- description: 'Analyze and fix WU state inconsistencies',
191
- requiredLocation: LOCATION_TYPES.MAIN,
192
- requiredWuStatus: null, // Handles UnsafeAny state
193
- predicates: [],
194
- getNextSteps: () => ['Review recovery actions and confirm to proceed.'],
195
- };
196
- /**
197
- * Command registry mapping command names to definitions.
198
- */
199
- export const COMMAND_REGISTRY = new Map([
200
- [COMMANDS.WU_CREATE, wuCreate],
201
- [COMMANDS.WU_CLAIM, wuClaim],
202
- [COMMANDS.WU_PREP, wuPrep],
203
- [COMMANDS.WU_DONE, wuDone],
204
- [COMMANDS.WU_BLOCK, wuBlock],
205
- [COMMANDS.WU_UNBLOCK, wuUnblock],
206
- [COMMANDS.WU_STATUS, wuStatus],
207
- [COMMANDS.WU_RECOVER, wuRecover],
208
- ]);
209
- /**
210
- * Get command definition by name.
211
- *
212
- * @param command - Command name (e.g., 'wu:create')
213
- * @returns CommandDefinition or null if not found
214
- */
215
- export function getCommandDefinition(command) {
216
- return COMMAND_REGISTRY.get(command) ?? null;
217
- }
218
- /**
219
- * Check if a command's location requirement is satisfied.
220
- */
221
- function isLocationValid(def, locationType) {
222
- // null means UnsafeAny location is valid
223
- if (def.requiredLocation === null)
224
- return true;
225
- return def.requiredLocation === locationType;
226
- }
227
- /**
228
- * Check if a command's WU status requirement is satisfied.
229
- */
230
- function isStatusValid(def, wuStatus) {
231
- // null requirement means no status check needed
232
- if (def.requiredWuStatus === null)
233
- return true;
234
- return def.requiredWuStatus === wuStatus;
235
- }
236
- /**
237
- * Check if all predicates pass (ignoring warnings).
238
- */
239
- function arePredicatesValid(def, context) {
240
- if (!def.predicates || def.predicates.length === 0)
241
- return true;
242
- // Only check error-severity predicates for validity
243
- return def.predicates.filter((p) => p.severity === SEVERITY.ERROR).every((p) => p.check(context));
244
- }
245
- /**
246
- * Get all commands valid for the current context.
247
- *
248
- * A command is valid if:
249
- * - Location requirement is satisfied (or null = UnsafeAny)
250
- * - WU status requirement is satisfied (or null = no WU required)
251
- * - All error-severity predicates pass
252
- *
253
- * @param context - Current WU context
254
- * @returns Array of valid CommandDefinitions
255
- */
256
- export function getValidCommandsForContext(context) {
257
- const validCommands = [];
258
- const locationType = context.location.type;
259
- const wuStatus = context.wu?.status ?? null;
260
- for (const def of COMMAND_REGISTRY.values()) {
261
- if (isLocationValid(def, locationType) &&
262
- isStatusValid(def, wuStatus) &&
263
- arePredicatesValid(def, context)) {
264
- validCommands.push(def);
265
- }
266
- }
267
- return validCommands;
268
- }
269
- //# sourceMappingURL=command-registry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"command-registry.js","sourceRoot":"","sources":["../../src/validation/command-registry.ts"],"names":[],"mappings":"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"}
@@ -1,16 +0,0 @@
1
- /**
2
- * Validation Module
3
- *
4
- * WU-1090: Context-aware state machine for WU lifecycle commands
5
- *
6
- * Exports:
7
- * - Type definitions
8
- * - Command registry
9
- * - Validation functions
10
- *
11
- * @module
12
- */
13
- export * from './types.js';
14
- export * from './command-registry.js';
15
- export * from './validate-command.js';
16
- //# sourceMappingURL=index.d.ts.map