@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,273 +0,0 @@
1
- // Copyright (c) 2026 Hellmai Ltd
2
- // SPDX-License-Identifier: AGPL-3.0-only
3
- /**
4
- * WU YAML Auto-Fixer
5
- *
6
- * Detects and auto-repairs common YAML validation issues that would fail at wu:done.
7
- * Part of WU-1359: Early YAML validation at wu:claim.
8
- *
9
- * Common issues fixed:
10
- * - ISO timestamp dates → YYYY-MM-DD format
11
- * - Username → email format (with configurable domain)
12
- * - docs → documentation (type field)
13
- * - String numbers → number (phase field)
14
- *
15
- * @see {@link packages/@lumenflow/cli/src/lib/wu-schema.ts} - WU schema definition
16
- * @see {@link packages/@lumenflow/cli/src/wu-claim.ts} - Consumer
17
- */
18
- import { readFileSync, writeFileSync, copyFileSync } from 'node:fs';
19
- import { parseYAML, stringifyYAML } from './wu-yaml.js';
20
- import { DEFAULTS, STRING_LITERALS } from './wu-constants.js';
21
- // Valid type values from wu-schema.ts
22
- const VALID_TYPES = ['feature', 'bug', 'documentation', 'process', 'tooling', 'chore', 'refactor'];
23
- // Common type aliases that should be auto-fixed
24
- const TYPE_ALIASES = {
25
- docs: 'documentation',
26
- doc: 'documentation',
27
- feat: 'feature',
28
- fix: 'bug',
29
- bugfix: 'bug',
30
- tool: 'tooling',
31
- tools: 'tooling',
32
- ref: 'refactor',
33
- proc: 'process',
34
- };
35
- /**
36
- * Default email domain for username -> email conversion
37
- * WU-1068: Changed from hardcoded 'exampleapp.co.uk' to configurable default
38
- */
39
- const DEFAULT_EMAIL_DOMAIN = DEFAULTS.EMAIL_DOMAIN;
40
- /**
41
- * Issue types that can be detected and auto-fixed
42
- */
43
- export const FIXABLE_ISSUES = {
44
- DATE_ISO_TIMESTAMP: 'DATE_ISO_TIMESTAMP',
45
- USERNAME_NOT_EMAIL: 'USERNAME_NOT_EMAIL',
46
- TYPE_ALIAS: 'TYPE_ALIAS',
47
- PHASE_STRING: 'PHASE_STRING',
48
- PRIORITY_LOWERCASE: 'PRIORITY_LOWERCASE',
49
- };
50
- /**
51
- * Check created field for ISO timestamp issues
52
- * @param {object} doc - Parsed WU YAML data
53
- * @returns {object|null} Issue object or null
54
- */
55
- function checkCreatedField(doc) {
56
- if (!doc.created)
57
- return null;
58
- const createdStr = String(doc.created);
59
- // Match ISO 8601 timestamp (2025-12-02T00:00:00.000Z or similar)
60
- if (/^\d{4}-\d{2}-\d{2}T/.test(createdStr)) {
61
- const dateOnly = createdStr.slice(0, 10);
62
- return {
63
- type: FIXABLE_ISSUES.DATE_ISO_TIMESTAMP,
64
- field: 'created',
65
- current: createdStr,
66
- suggested: dateOnly,
67
- description: `ISO timestamp should be YYYY-MM-DD: ${createdStr} → ${dateOnly}`,
68
- };
69
- }
70
- // Handle Date objects that YAML parser may create
71
- if (doc.created instanceof Date) {
72
- const dateOnly = doc.created.toISOString().slice(0, 10);
73
- return {
74
- type: FIXABLE_ISSUES.DATE_ISO_TIMESTAMP,
75
- field: 'created',
76
- current: doc.created.toISOString(),
77
- suggested: dateOnly,
78
- description: `Date object should be YYYY-MM-DD string: ${doc.created.toISOString()} → ${dateOnly}`,
79
- };
80
- }
81
- return null;
82
- }
83
- /**
84
- * Check assigned_to field for username without email domain
85
- * @param {object} doc - Parsed WU YAML data
86
- * @returns {object|null} Issue object or null
87
- */
88
- function checkAssignedToField(doc) {
89
- if (!doc.assigned_to || typeof doc.assigned_to !== 'string')
90
- return null;
91
- const assignee = doc.assigned_to.trim();
92
- if (assignee && !assignee.includes('@')) {
93
- const suggested = `${assignee}@${DEFAULT_EMAIL_DOMAIN}`;
94
- return {
95
- type: FIXABLE_ISSUES.USERNAME_NOT_EMAIL,
96
- field: 'assigned_to',
97
- current: assignee,
98
- suggested,
99
- description: `Username should be email format: ${assignee} → ${suggested}`,
100
- };
101
- }
102
- return null;
103
- }
104
- /**
105
- * Check type field for common aliases or typos
106
- * @param {object} doc - Parsed WU YAML data
107
- * @returns {object|null} Issue object or null
108
- */
109
- function checkTypeField(doc) {
110
- if (!doc.type || typeof doc.type !== 'string')
111
- return null;
112
- const typeLower = doc.type.toLowerCase();
113
- const alias = TYPE_ALIASES[typeLower];
114
- if (alias) {
115
- return {
116
- type: FIXABLE_ISSUES.TYPE_ALIAS,
117
- field: 'type',
118
- current: doc.type,
119
- suggested: alias,
120
- description: `Type alias should use canonical form: ${doc.type} → ${alias}`,
121
- };
122
- }
123
- // Check for invalid type not in aliases - try fuzzy match
124
- if (!VALID_TYPES.includes(typeLower)) {
125
- const closest = VALID_TYPES.find((t) => t.startsWith(typeLower.slice(0, 3)) || typeLower.startsWith(t.slice(0, 3)));
126
- if (closest) {
127
- return {
128
- type: FIXABLE_ISSUES.TYPE_ALIAS,
129
- field: 'type',
130
- current: doc.type,
131
- suggested: closest,
132
- description: `Invalid type "${doc.type}" - did you mean "${closest}"?`,
133
- };
134
- }
135
- }
136
- return null;
137
- }
138
- /**
139
- * Check phase field for string instead of number
140
- * @param {object} doc - Parsed WU YAML data
141
- * @returns {object|null} Issue object or null
142
- */
143
- function checkPhaseField(doc) {
144
- if (doc.phase == null || typeof doc.phase !== 'string')
145
- return null;
146
- const num = parseInt(doc.phase, 10);
147
- if (!isNaN(num) && num > 0) {
148
- return {
149
- type: FIXABLE_ISSUES.PHASE_STRING,
150
- field: 'phase',
151
- current: doc.phase,
152
- suggested: num,
153
- description: `Phase should be number: "${doc.phase}" → ${num}`,
154
- };
155
- }
156
- return null;
157
- }
158
- /**
159
- * Check priority field for lowercase
160
- * @param {object} doc - Parsed WU YAML data
161
- * @returns {object|null} Issue object or null
162
- */
163
- function checkPriorityField(doc) {
164
- if (!doc.priority || typeof doc.priority !== 'string')
165
- return null;
166
- const upper = doc.priority.toUpperCase();
167
- if (doc.priority !== upper && /^P[0-3]$/i.test(doc.priority)) {
168
- return {
169
- type: FIXABLE_ISSUES.PRIORITY_LOWERCASE,
170
- field: 'priority',
171
- current: doc.priority,
172
- suggested: upper,
173
- description: `Priority should be uppercase: ${doc.priority} → ${upper}`,
174
- };
175
- }
176
- return null;
177
- }
178
- /**
179
- * Detects fixable issues in WU YAML data
180
- *
181
- * @param {object} doc - Parsed WU YAML data
182
- * @returns {Array<{type: string, field: string, current: unknown, suggested: unknown, description: string}>}
183
- */
184
- export function detectFixableIssues(doc) {
185
- const checks = [
186
- checkCreatedField,
187
- checkAssignedToField,
188
- checkTypeField,
189
- checkPhaseField,
190
- checkPriorityField,
191
- ];
192
- return checks.map((check) => check(doc)).filter((issue) => issue !== null);
193
- }
194
- /**
195
- * Applies fixes to WU YAML data in-place
196
- *
197
- * @param {object} doc - Parsed WU YAML data (will be modified)
198
- * @param {Array<{type: string, field: string, suggested: unknown}>} issues - Issues to fix
199
- * @returns {number} Number of fixes applied
200
- */
201
- export function applyFixes(doc, issues) {
202
- let fixed = 0;
203
- for (const issue of issues) {
204
- switch (issue.type) {
205
- case FIXABLE_ISSUES.DATE_ISO_TIMESTAMP:
206
- doc[issue.field] = issue.suggested;
207
- fixed++;
208
- break;
209
- case FIXABLE_ISSUES.USERNAME_NOT_EMAIL:
210
- doc[issue.field] = issue.suggested;
211
- fixed++;
212
- break;
213
- case FIXABLE_ISSUES.TYPE_ALIAS:
214
- doc[issue.field] = issue.suggested;
215
- fixed++;
216
- break;
217
- case FIXABLE_ISSUES.PHASE_STRING:
218
- doc[issue.field] = issue.suggested;
219
- fixed++;
220
- break;
221
- case FIXABLE_ISSUES.PRIORITY_LOWERCASE:
222
- doc[issue.field] = issue.suggested;
223
- fixed++;
224
- break;
225
- }
226
- }
227
- return fixed;
228
- }
229
- /**
230
- * Auto-fix WU YAML file
231
- *
232
- * @param {string} wuPath - Path to WU YAML file
233
- * @param {AutoFixWUYamlOptions} options - Options
234
- * @returns {{fixed: number, issues: Array, backupPath?: string}}
235
- */
236
- export function autoFixWUYaml(wuPath, options = {}) {
237
- const { dryRun = false, backup = true } = options;
238
- // Read and parse
239
- const text = readFileSync(wuPath, { encoding: 'utf-8' });
240
- const doc = parseYAML(text);
241
- // Detect issues
242
- const issues = detectFixableIssues(doc);
243
- if (issues.length === 0) {
244
- return { fixed: 0, issues: [] };
245
- }
246
- if (dryRun) {
247
- return { fixed: 0, issues, wouldFix: issues.length };
248
- }
249
- // Create backup if requested
250
- let backupPath;
251
- if (backup) {
252
- backupPath = `${wuPath}.bak`;
253
- copyFileSync(wuPath, backupPath);
254
- }
255
- // Apply fixes
256
- const fixed = applyFixes(doc, issues);
257
- // Write back
258
- const newText = stringifyYAML(doc);
259
- writeFileSync(wuPath, newText, { encoding: 'utf-8' });
260
- return { fixed, issues, backupPath };
261
- }
262
- /**
263
- * Format issues for CLI output
264
- *
265
- * @param {Array<{field: string, description: string}>} issues
266
- * @returns {string}
267
- */
268
- export function formatIssues(issues) {
269
- return issues
270
- .map((issue) => ` - ${issue.field}: ${issue.description}`)
271
- .join(STRING_LITERALS.NEWLINE);
272
- }
273
- //# sourceMappingURL=wu-yaml-fixer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wu-yaml-fixer.js","sourceRoot":"","sources":["../src/wu-yaml-fixer.ts"],"names":[],"mappings":"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"}
package/dist/wu-yaml.d.ts DELETED
@@ -1,110 +0,0 @@
1
- /**
2
- * WU-1352: Standardized YAML stringify options.
3
- *
4
- * Ensures consistent output across all WU tools:
5
- * - lineWidth: 100 (wrap long lines)
6
- * - singleQuote: true (prefer 'single' over "double")
7
- * - defaultKeyType: PLAIN (unquoted keys when safe)
8
- *
9
- * @type {import('yaml').ToStringOptions}
10
- */
11
- export declare const YAML_STRINGIFY_OPTIONS: Readonly<{
12
- lineWidth: 100;
13
- singleQuote: true;
14
- defaultKeyType: "PLAIN";
15
- }>;
16
- /**
17
- * Read and parse WU YAML file.
18
- *
19
- * Validates:
20
- * - File exists
21
- * - YAML is valid
22
- * - WU ID matches expected ID
23
- *
24
- * @param {string} wuPath - Path to WU YAML file
25
- * @param {string} expectedId - Expected WU ID (e.g., 'WU-123')
26
- * @returns {object} Parsed YAML document
27
- * @throws {Error} If file not found, YAML invalid, or ID mismatch
28
- */
29
- export declare function readWU(wuPath: string, expectedId: string): UnsafeAny;
30
- /**
31
- * Read and parse WU YAML file asynchronously.
32
- *
33
- * Validates:
34
- * - File exists
35
- * - YAML is valid
36
- * - WU ID matches expected ID
37
- *
38
- * @param {string} wuPath - Path to WU YAML file
39
- * @param {string} expectedId - Expected WU ID (e.g., 'WU-123')
40
- * @returns {Promise<object>} Parsed YAML document
41
- * @throws {Error} If file not found, YAML invalid, or ID mismatch
42
- */
43
- export declare function readWUAsync(wuPath: string, expectedId: string): Promise<UnsafeAny>;
44
- /**
45
- * Parse YAML string to object.
46
- * WU-1352: Centralized YAML parsing for consistency.
47
- *
48
- * @param {string} text - YAML string to parse
49
- * @returns {object} Parsed object
50
- * @throws {Error} If YAML is invalid
51
- */
52
- export declare function parseYAML(text: string): UnsafeAny;
53
- /**
54
- * Stringify object to YAML with standardized options.
55
- * WU-1352: Centralized YAML serialization for consistency.
56
- *
57
- * @param {object} doc - Object to stringify
58
- * @param {object} [options] - Additional stringify options (merged with YAML_STRINGIFY_OPTIONS)
59
- * @returns {string} YAML string
60
- */
61
- export declare function stringifyYAML(doc: UnsafeAny, options?: Record<string, unknown>): string;
62
- /**
63
- * Read and parse YAML file without ID validation.
64
- * WU-1352: For cases where you don't know/need to validate the WU ID.
65
- *
66
- * @param {string} yamlPath - Path to YAML file
67
- * @returns {object} Parsed YAML document
68
- * @throws {Error} If file not found or YAML invalid
69
- */
70
- export declare function readWURaw(yamlPath: string): UnsafeAny;
71
- /**
72
- * Read and parse YAML file without ID validation asynchronously.
73
- * WU-1352: For cases where you don't know/need to validate the WU ID.
74
- *
75
- * @param {string} yamlPath - Path to YAML file
76
- * @returns {Promise<object>} Parsed YAML document
77
- * @throws {Error} If file not found or YAML invalid
78
- */
79
- export declare function readWURawAsync(yamlPath: string): Promise<UnsafeAny>;
80
- /**
81
- * Write WU YAML file with consistent formatting.
82
- * WU-1352: Uses YAML_STRINGIFY_OPTIONS for consistent output.
83
- *
84
- * @param {string} wuPath - Path to WU YAML file
85
- * @param {object} doc - YAML document to write
86
- */
87
- export declare function writeWU(wuPath: string, doc: UnsafeAny): void;
88
- /**
89
- * Append note to WU document's notes field.
90
- *
91
- * Always outputs a string (Zod schema requires string type).
92
- * Handles various input formats:
93
- * - undefined/null/empty: Set note directly as string
94
- * - string: Append with newline separator
95
- * - array: Convert to newline-separated string, then append
96
- * - other: Replace with note
97
- *
98
- * @param {object} doc - WU document
99
- * @param {string} note - Note to append
100
- */
101
- export declare function appendNote(doc: UnsafeAny, note: string): void;
102
- /**
103
- * Append an agent session entry to a WU's agent_sessions[] array
104
- *
105
- * @param {string} wuId - WU ID (e.g., "WU-1234")
106
- * @param {object} sessionData - Session summary from endSession()
107
- * @throws {Error} if WU file not found
108
- */
109
- export declare function appendAgentSession(wuId: string, sessionData: UnsafeAny): void;
110
- //# sourceMappingURL=wu-yaml.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wu-yaml.d.ts","sourceRoot":"","sources":["../src/wu-yaml.ts"],"names":[],"mappings":"AA6DA;;;;;;;;;GASG;AACH,eAAO,MAAM,sBAAsB;;;;EAIjC,CAAC;AAEH;;;;;;;;;;;;GAYG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,SAAS,CA8BpE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAqCxF;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAEjD;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,MAAM,CAE3F;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAqBrD;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAwBzE;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,GAAG,IAAI,CAG5D;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAqB7D;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,GAAG,IAAI,CAqB7E"}
package/dist/wu-yaml.js DELETED
@@ -1,300 +0,0 @@
1
- // Copyright (c) 2026 Hellmai Ltd
2
- // SPDX-License-Identifier: AGPL-3.0-only
3
- /* eslint-disable @typescript-eslint/no-explicit-any */
4
- import { existsSync, readFileSync, writeFileSync, promises as fs } from 'node:fs';
5
- import { parse, stringify } from 'yaml';
6
- import { createError, ErrorCodes } from './error-handler.js';
7
- import { STRING_LITERALS } from './wu-constants.js';
8
- import { createWuPaths } from './wu-paths.js';
9
- /**
10
- * Unified WU YAML I/O module.
11
- *
12
- * Replaces 4 duplicate read/write functions scattered across wu-claim, wu-done,
13
- * wu-block, and wu-unblock. Single source of truth for WU YAML operations.
14
- *
15
- * WU-1352: Standardized on yaml v2.8.1 (eemeli) with consistent stringify options.
16
- *
17
- * Functions:
18
- * - readWU(path, id): Read and validate WU YAML
19
- * - readWURaw(path): Read YAML without ID validation
20
- * - parseYAML(text): Parse YAML string to object
21
- * - writeWU(path, doc): Write WU YAML with consistent formatting
22
- * - stringifyYAML(doc): Stringify object to YAML with consistent formatting
23
- * - appendNote(doc, note): Append note to doc.notes field
24
- *
25
- * @example
26
- * import { readWU, writeWU, appendNote } from './lib/wu-yaml.js';
27
- *
28
- * // Read WU
29
- * const doc = readWU('docs/04-operations/tasks/wu/WU-123.yaml', 'WU-123');
30
- *
31
- * // Modify doc
32
- * doc.status = 'in_progress';
33
- * appendNote(doc, 'Started work on this WU');
34
- *
35
- * // Write back
36
- * writeWU('docs/04-operations/tasks/wu/WU-123.yaml', doc);
37
- */
38
- /**
39
- * WU-1352: YAML scalar type constants (from yaml library).
40
- * These match the string values expected by the yaml package.
41
- * @see https://github.com/eemeli/yaml/blob/main/docs/03_options.md
42
- */
43
- const YAML_SCALAR_TYPES = Object.freeze({
44
- /** Unquoted string (when safe) */
45
- PLAIN: 'PLAIN',
46
- /** Single-quoted string */
47
- QUOTE_SINGLE: 'QUOTE_SINGLE',
48
- /** Double-quoted string */
49
- QUOTE_DOUBLE: 'QUOTE_DOUBLE',
50
- /** Block literal (|) */
51
- BLOCK_LITERAL: 'BLOCK_LITERAL',
52
- /** Block folded (>) */
53
- BLOCK_FOLDED: 'BLOCK_FOLDED',
54
- });
55
- /** Standard line width for WU YAML files */
56
- const YAML_LINE_WIDTH = 100;
57
- /**
58
- * WU-1352: Standardized YAML stringify options.
59
- *
60
- * Ensures consistent output across all WU tools:
61
- * - lineWidth: 100 (wrap long lines)
62
- * - singleQuote: true (prefer 'single' over "double")
63
- * - defaultKeyType: PLAIN (unquoted keys when safe)
64
- *
65
- * @type {import('yaml').ToStringOptions}
66
- */
67
- export const YAML_STRINGIFY_OPTIONS = Object.freeze({
68
- lineWidth: YAML_LINE_WIDTH,
69
- singleQuote: true,
70
- defaultKeyType: YAML_SCALAR_TYPES.PLAIN,
71
- });
72
- /**
73
- * Read and parse WU YAML file.
74
- *
75
- * Validates:
76
- * - File exists
77
- * - YAML is valid
78
- * - WU ID matches expected ID
79
- *
80
- * @param {string} wuPath - Path to WU YAML file
81
- * @param {string} expectedId - Expected WU ID (e.g., 'WU-123')
82
- * @returns {object} Parsed YAML document
83
- * @throws {Error} If file not found, YAML invalid, or ID mismatch
84
- */
85
- export function readWU(wuPath, expectedId) {
86
- if (!existsSync(wuPath)) {
87
- throw createError(ErrorCodes.FILE_NOT_FOUND, `WU file not found: ${wuPath}`, {
88
- path: wuPath,
89
- expectedId,
90
- });
91
- }
92
- const text = readFileSync(wuPath, { encoding: 'utf-8' });
93
- let doc;
94
- try {
95
- doc = parse(text);
96
- }
97
- catch (e) {
98
- throw createError(ErrorCodes.YAML_PARSE_ERROR, `Failed to parse YAML ${wuPath}: ${e.message}`, {
99
- path: wuPath,
100
- originalError: e.message,
101
- });
102
- }
103
- // Validate ID matches
104
- if (!doc || doc.id !== expectedId) {
105
- throw createError(ErrorCodes.WU_NOT_FOUND, `WU YAML id mismatch. Expected ${expectedId}, found ${doc && doc.id}`, { path: wuPath, expectedId, foundId: doc && doc.id });
106
- }
107
- return doc;
108
- }
109
- /**
110
- * Read and parse WU YAML file asynchronously.
111
- *
112
- * Validates:
113
- * - File exists
114
- * - YAML is valid
115
- * - WU ID matches expected ID
116
- *
117
- * @param {string} wuPath - Path to WU YAML file
118
- * @param {string} expectedId - Expected WU ID (e.g., 'WU-123')
119
- * @returns {Promise<object>} Parsed YAML document
120
- * @throws {Error} If file not found, YAML invalid, or ID mismatch
121
- */
122
- export async function readWUAsync(wuPath, expectedId) {
123
- try {
124
- const text = await fs.readFile(wuPath, { encoding: 'utf-8' });
125
- let doc;
126
- try {
127
- doc = parse(text);
128
- }
129
- catch (e) {
130
- throw createError(ErrorCodes.YAML_PARSE_ERROR, `Failed to parse YAML ${wuPath}: ${e.message}`, {
131
- path: wuPath,
132
- originalError: e.message,
133
- });
134
- }
135
- // Validate ID matches
136
- if (!doc || doc.id !== expectedId) {
137
- throw createError(ErrorCodes.WU_NOT_FOUND, `WU YAML id mismatch. Expected ${expectedId}, found ${doc && doc.id}`, { path: wuPath, expectedId, foundId: doc && doc.id });
138
- }
139
- return doc;
140
- }
141
- catch (err) {
142
- if (err.code === 'ENOENT') {
143
- throw createError(ErrorCodes.FILE_NOT_FOUND, `WU file not found: ${wuPath}`, {
144
- path: wuPath,
145
- expectedId,
146
- });
147
- }
148
- throw err;
149
- }
150
- }
151
- /**
152
- * Parse YAML string to object.
153
- * WU-1352: Centralized YAML parsing for consistency.
154
- *
155
- * @param {string} text - YAML string to parse
156
- * @returns {object} Parsed object
157
- * @throws {Error} If YAML is invalid
158
- */
159
- export function parseYAML(text) {
160
- return parse(text);
161
- }
162
- /**
163
- * Stringify object to YAML with standardized options.
164
- * WU-1352: Centralized YAML serialization for consistency.
165
- *
166
- * @param {object} doc - Object to stringify
167
- * @param {object} [options] - Additional stringify options (merged with YAML_STRINGIFY_OPTIONS)
168
- * @returns {string} YAML string
169
- */
170
- export function stringifyYAML(doc, options = {}) {
171
- return stringify(doc, { ...YAML_STRINGIFY_OPTIONS, ...options });
172
- }
173
- /**
174
- * Read and parse YAML file without ID validation.
175
- * WU-1352: For cases where you don't know/need to validate the WU ID.
176
- *
177
- * @param {string} yamlPath - Path to YAML file
178
- * @returns {object} Parsed YAML document
179
- * @throws {Error} If file not found or YAML invalid
180
- */
181
- export function readWURaw(yamlPath) {
182
- if (!existsSync(yamlPath)) {
183
- throw createError(ErrorCodes.FILE_NOT_FOUND, `YAML file not found: ${yamlPath}`, {
184
- path: yamlPath,
185
- });
186
- }
187
- const text = readFileSync(yamlPath, { encoding: 'utf-8' });
188
- try {
189
- return parse(text);
190
- }
191
- catch (e) {
192
- throw createError(ErrorCodes.YAML_PARSE_ERROR, `Failed to parse YAML ${yamlPath}: ${e.message}`, {
193
- path: yamlPath,
194
- originalError: e.message,
195
- });
196
- }
197
- }
198
- /**
199
- * Read and parse YAML file without ID validation asynchronously.
200
- * WU-1352: For cases where you don't know/need to validate the WU ID.
201
- *
202
- * @param {string} yamlPath - Path to YAML file
203
- * @returns {Promise<object>} Parsed YAML document
204
- * @throws {Error} If file not found or YAML invalid
205
- */
206
- export async function readWURawAsync(yamlPath) {
207
- try {
208
- const text = await fs.readFile(yamlPath, { encoding: 'utf-8' });
209
- try {
210
- return parse(text);
211
- }
212
- catch (e) {
213
- throw createError(ErrorCodes.YAML_PARSE_ERROR, `Failed to parse YAML ${yamlPath}: ${e.message}`, {
214
- path: yamlPath,
215
- originalError: e.message,
216
- });
217
- }
218
- }
219
- catch (err) {
220
- if (err.code === 'ENOENT') {
221
- throw createError(ErrorCodes.FILE_NOT_FOUND, `YAML file not found: ${yamlPath}`, {
222
- path: yamlPath,
223
- });
224
- }
225
- throw err;
226
- }
227
- }
228
- /**
229
- * Write WU YAML file with consistent formatting.
230
- * WU-1352: Uses YAML_STRINGIFY_OPTIONS for consistent output.
231
- *
232
- * @param {string} wuPath - Path to WU YAML file
233
- * @param {object} doc - YAML document to write
234
- */
235
- export function writeWU(wuPath, doc) {
236
- const out = stringify(doc, YAML_STRINGIFY_OPTIONS);
237
- writeFileSync(wuPath, out, { encoding: 'utf-8' });
238
- }
239
- /**
240
- * Append note to WU document's notes field.
241
- *
242
- * Always outputs a string (Zod schema requires string type).
243
- * Handles various input formats:
244
- * - undefined/null/empty: Set note directly as string
245
- * - string: Append with newline separator
246
- * - array: Convert to newline-separated string, then append
247
- * - other: Replace with note
248
- *
249
- * @param {object} doc - WU document
250
- * @param {string} note - Note to append
251
- */
252
- export function appendNote(doc, note) {
253
- // Do nothing if note is falsy
254
- if (!note)
255
- return;
256
- const existing = doc.notes;
257
- if (existing === undefined || existing === null || existing === '') {
258
- // No existing notes: set directly as string
259
- doc.notes = note;
260
- }
261
- else if (Array.isArray(existing)) {
262
- // Array notes: convert to string first (schema requires string), then append
263
- const joined = existing.filter(Boolean).join(STRING_LITERALS.NEWLINE).trimEnd();
264
- doc.notes = joined ? `${joined}${STRING_LITERALS.NEWLINE}${note}` : note;
265
- }
266
- else if (typeof existing === 'string') {
267
- // String notes: append with newline
268
- const trimmed = existing.trimEnd();
269
- doc.notes = trimmed ? `${trimmed}${STRING_LITERALS.NEWLINE}${note}` : note;
270
- }
271
- else {
272
- // Invalid type: replace with note
273
- doc.notes = note;
274
- }
275
- }
276
- /**
277
- * Append an agent session entry to a WU's agent_sessions[] array
278
- *
279
- * @param {string} wuId - WU ID (e.g., "WU-1234")
280
- * @param {object} sessionData - Session summary from endSession()
281
- * @throws {Error} if WU file not found
282
- */
283
- export function appendAgentSession(wuId, sessionData) {
284
- const paths = createWuPaths();
285
- const wuPath = paths.WU(wuId);
286
- if (!existsSync(wuPath)) {
287
- throw new Error(`WU file not found: ${wuPath}`);
288
- }
289
- // Parse WU YAML
290
- const doc = readWU(wuPath, wuId);
291
- // Initialize agent_sessions array if needed
292
- if (!Array.isArray(doc.agent_sessions)) {
293
- doc.agent_sessions = [];
294
- }
295
- // Append session
296
- doc.agent_sessions.push(sessionData);
297
- // Write back
298
- writeWU(wuPath, doc);
299
- }
300
- //# sourceMappingURL=wu-yaml.js.map