@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,395 +0,0 @@
1
- // Copyright (c) 2026 Hellmai Ltd
2
- // SPDX-License-Identifier: AGPL-3.0-only
3
- /**
4
- * State Doctor Core (WU-1209, WU-1420)
5
- *
6
- * Integrity checker for LumenFlow state that detects:
7
- * - Orphaned WUs (done status but no stamp)
8
- * - Dangling signals (reference non-existent WUs)
9
- * - Broken memory relationships (events for missing WU specs)
10
- * - Status mismatches between WU YAML and state store (WU-1420)
11
- *
12
- * Inspired by Beads bd doctor command.
13
- *
14
- * Design principles:
15
- * - Non-destructive by default (read-only diagnosis)
16
- * - --fix flag for safe auto-repair of resolvable issues
17
- * - Dependency injection for testability
18
- * - Human-readable output with actionable suggestions
19
- *
20
- * @see {@link packages/@lumenflow/cli/src/state-doctor.ts} - CLI wrapper
21
- * @see {@link packages/@lumenflow/core/src/__tests__/state-doctor-core.test.ts} - Tests
22
- */
23
- import { WU_STATUS } from './wu-constants.js';
24
- /**
25
- * Issue type constants
26
- */
27
- export const ISSUE_TYPES = {
28
- /** WU has done status but no stamp file */
29
- ORPHANED_WU: 'orphaned_wu',
30
- /** Signal references a WU that doesn't exist */
31
- DANGLING_SIGNAL: 'dangling_signal',
32
- /** Event references a WU that doesn't exist */
33
- BROKEN_EVENT: 'broken_event',
34
- /** WU YAML status differs from state store derived status (WU-1420) */
35
- STATUS_MISMATCH: 'status_mismatch',
36
- };
37
- /**
38
- * Issue severity levels
39
- */
40
- export const ISSUE_SEVERITY = {
41
- /** Critical issues that may cause data loss */
42
- ERROR: 'error',
43
- /** Issues that should be fixed but aren't blocking */
44
- WARNING: 'warning',
45
- /** Informational findings */
46
- INFO: 'info',
47
- };
48
- /**
49
- * Derive WU status from events (WU-1420)
50
- *
51
- * Replays events to determine the current derived status:
52
- * - claim/create -> in_progress
53
- * - release -> ready
54
- * - complete -> done
55
- * - block -> blocked
56
- * - unblock -> in_progress
57
- *
58
- * @param events - All events for this WU
59
- * @returns Derived status or undefined if no events
60
- */
61
- function deriveStatusFromEvents(events) {
62
- if (events.length === 0) {
63
- return undefined;
64
- }
65
- let status = undefined;
66
- for (const event of events) {
67
- switch (event.type) {
68
- case 'claim':
69
- case 'create':
70
- status = WU_STATUS.IN_PROGRESS;
71
- break;
72
- case 'release':
73
- status = WU_STATUS.READY;
74
- break;
75
- case 'complete':
76
- status = WU_STATUS.DONE;
77
- break;
78
- case 'block':
79
- status = WU_STATUS.BLOCKED;
80
- break;
81
- case 'unblock':
82
- status = WU_STATUS.IN_PROGRESS;
83
- break;
84
- // checkpoint doesn't change status
85
- }
86
- }
87
- return status;
88
- }
89
- /**
90
- * Detect status mismatches between WU YAML and state store (WU-1420)
91
- *
92
- * Compares the status field in WU YAML against the derived status from events.
93
- * Only reports issues for WUs that have events in the state store.
94
- */
95
- function detectStatusMismatches(wus, events) {
96
- const issues = [];
97
- // Group events by WU ID
98
- const eventsByWu = new Map();
99
- for (const event of events) {
100
- const existing = eventsByWu.get(event.wuId) || [];
101
- existing.push(event);
102
- eventsByWu.set(event.wuId, existing);
103
- }
104
- for (const wu of wus) {
105
- const wuEvents = eventsByWu.get(wu.id);
106
- if (!wuEvents || wuEvents.length === 0) {
107
- // No events for this WU - nothing to compare
108
- continue;
109
- }
110
- const derivedStatus = deriveStatusFromEvents(wuEvents);
111
- if (derivedStatus && derivedStatus !== wu.status) {
112
- issues.push({
113
- type: ISSUE_TYPES.STATUS_MISMATCH,
114
- severity: ISSUE_SEVERITY.WARNING,
115
- wuId: wu.id,
116
- description: `WU ${wu.id} YAML status is '${wu.status}' but state store says '${derivedStatus}'`,
117
- suggestion: `Emit corrective event using: pnpm state:doctor --fix`,
118
- canAutoFix: true,
119
- statusMismatch: {
120
- yamlStatus: wu.status,
121
- derivedStatus,
122
- },
123
- });
124
- }
125
- }
126
- return issues;
127
- }
128
- /**
129
- * Detect orphaned WUs (done status but no stamp)
130
- */
131
- function detectOrphanedWUs(wus, stamps) {
132
- const issues = [];
133
- for (const wu of wus) {
134
- if (wu.status === WU_STATUS.DONE && !stamps.has(wu.id)) {
135
- issues.push({
136
- type: ISSUE_TYPES.ORPHANED_WU,
137
- severity: ISSUE_SEVERITY.WARNING,
138
- wuId: wu.id,
139
- description: `WU ${wu.id} has status '${WU_STATUS.DONE}' but no stamp file exists`,
140
- suggestion: `Create stamp file for ${wu.id} using: pnpm state:doctor --fix`,
141
- canAutoFix: true,
142
- });
143
- }
144
- }
145
- return issues;
146
- }
147
- /**
148
- * Detect dangling signals (reference non-existent WUs)
149
- */
150
- function detectDanglingSignals(signals, wuIds) {
151
- const issues = [];
152
- for (const signal of signals) {
153
- // Skip signals without WU references
154
- if (!signal.wuId) {
155
- continue;
156
- }
157
- if (!wuIds.has(signal.wuId)) {
158
- issues.push({
159
- type: ISSUE_TYPES.DANGLING_SIGNAL,
160
- severity: ISSUE_SEVERITY.WARNING,
161
- wuId: signal.wuId,
162
- signalId: signal.id,
163
- description: `Signal ${signal.id} references non-existent WU ${signal.wuId}`,
164
- suggestion: `Remove dangling signal using: pnpm state:doctor --fix`,
165
- canAutoFix: true,
166
- });
167
- }
168
- }
169
- return issues;
170
- }
171
- /**
172
- * Detect broken events (reference non-existent WUs)
173
- */
174
- function detectBrokenEvents(events, wuIds) {
175
- const issues = [];
176
- const seenWuIds = new Set();
177
- for (const event of events) {
178
- // Only report once per WU
179
- if (seenWuIds.has(event.wuId)) {
180
- continue;
181
- }
182
- if (!wuIds.has(event.wuId)) {
183
- seenWuIds.add(event.wuId);
184
- issues.push({
185
- type: ISSUE_TYPES.BROKEN_EVENT,
186
- severity: ISSUE_SEVERITY.WARNING,
187
- wuId: event.wuId,
188
- description: `Events exist for non-existent WU ${event.wuId}`,
189
- suggestion: `Archive or remove events for missing WU using: pnpm state:doctor --fix`,
190
- canAutoFix: true,
191
- });
192
- }
193
- }
194
- return issues;
195
- }
196
- /**
197
- * Calculate summary statistics from issues
198
- */
199
- function calculateSummary(issues) {
200
- let orphanedWUs = 0;
201
- let danglingSignals = 0;
202
- let brokenEvents = 0;
203
- let statusMismatches = 0;
204
- for (const issue of issues) {
205
- switch (issue.type) {
206
- case ISSUE_TYPES.ORPHANED_WU:
207
- orphanedWUs++;
208
- break;
209
- case ISSUE_TYPES.DANGLING_SIGNAL:
210
- danglingSignals++;
211
- break;
212
- case ISSUE_TYPES.BROKEN_EVENT:
213
- brokenEvents++;
214
- break;
215
- case ISSUE_TYPES.STATUS_MISMATCH:
216
- statusMismatches++;
217
- break;
218
- }
219
- }
220
- return {
221
- orphanedWUs,
222
- danglingSignals,
223
- brokenEvents,
224
- statusMismatches,
225
- totalIssues: issues.length,
226
- };
227
- }
228
- /**
229
- * Determine the corrective event type for a status mismatch (WU-1420)
230
- *
231
- * When YAML says X but state says Y, emit event to transition state to X:
232
- * - YAML=ready, state=in_progress -> emit release
233
- * - YAML=done, state=in_progress -> emit complete
234
- * - YAML=in_progress, state=ready -> cannot fix (would need claim with lane/title)
235
- * - YAML=in_progress, state=done -> cannot fix (cannot un-complete)
236
- */
237
- function getCorrectiveEventType(yamlStatus, derivedStatus) {
238
- // Transition from in_progress to ready: emit release
239
- if (yamlStatus === WU_STATUS.READY && derivedStatus === WU_STATUS.IN_PROGRESS) {
240
- return 'release';
241
- }
242
- // Transition from in_progress to done: emit complete
243
- if (yamlStatus === WU_STATUS.DONE && derivedStatus === WU_STATUS.IN_PROGRESS) {
244
- return 'complete';
245
- }
246
- // Other transitions are not auto-fixable by emitting events
247
- // - ready -> in_progress would need claim (requires lane/title context)
248
- // - done -> in_progress would need to revert complete (not supported)
249
- return null;
250
- }
251
- /**
252
- * Attempt to fix an issue
253
- */
254
- async function fixIssue(issue, deps, wus) {
255
- try {
256
- switch (issue.type) {
257
- case ISSUE_TYPES.DANGLING_SIGNAL:
258
- if (deps.removeSignal && issue.signalId) {
259
- await deps.removeSignal(issue.signalId);
260
- return { fixed: true };
261
- }
262
- return { fixed: false, error: 'No removeSignal function provided' };
263
- case ISSUE_TYPES.BROKEN_EVENT:
264
- if (deps.removeEvent && issue.wuId) {
265
- await deps.removeEvent(issue.wuId);
266
- return { fixed: true };
267
- }
268
- return { fixed: false, error: 'No removeEvent function provided' };
269
- case ISSUE_TYPES.ORPHANED_WU:
270
- if (deps.createStamp && issue.wuId) {
271
- const wu = wus.find((w) => w.id === issue.wuId);
272
- await deps.createStamp(issue.wuId, wu?.title || `WU ${issue.wuId}`);
273
- return { fixed: true };
274
- }
275
- return { fixed: false, error: 'No createStamp function provided' };
276
- case ISSUE_TYPES.STATUS_MISMATCH: {
277
- if (!deps.emitEvent) {
278
- return { fixed: false, error: 'No emitEvent function provided' };
279
- }
280
- if (!issue.wuId || !issue.statusMismatch) {
281
- return { fixed: false, error: 'Missing WU ID or status mismatch details' };
282
- }
283
- const { yamlStatus, derivedStatus } = issue.statusMismatch;
284
- const eventType = getCorrectiveEventType(yamlStatus, derivedStatus);
285
- if (!eventType) {
286
- return {
287
- fixed: false,
288
- error: `Cannot auto-fix: transition from '${derivedStatus}' to '${yamlStatus}' requires manual intervention`,
289
- };
290
- }
291
- await deps.emitEvent({
292
- wuId: issue.wuId,
293
- type: eventType,
294
- reason: `state:doctor --fix: reconciling state store with YAML status '${yamlStatus}'`,
295
- timestamp: new Date().toISOString(),
296
- });
297
- return { fixed: true };
298
- }
299
- default:
300
- return { fixed: false, error: `Unknown issue type: ${issue.type}` };
301
- }
302
- }
303
- catch (err) {
304
- const error = err instanceof Error ? err.message : String(err);
305
- return { fixed: false, error };
306
- }
307
- }
308
- /**
309
- * Diagnose state integrity issues.
310
- *
311
- * Detects:
312
- * - Orphaned WUs (done status but no stamp)
313
- * - Dangling signals (reference non-existent WUs)
314
- * - Broken events (events for missing WU specs)
315
- *
316
- * @param baseDir - Project base directory
317
- * @param deps - Dependency functions for reading/writing state
318
- * @param options - Diagnosis options
319
- * @returns Diagnosis result with issues and optional fixes
320
- *
321
- * @example
322
- * // Diagnose without fixing
323
- * const result = await diagnoseState(baseDir, deps);
324
- *
325
- * @example
326
- * // Diagnose and fix
327
- * const result = await diagnoseState(baseDir, deps, { fix: true });
328
- *
329
- * @example
330
- * // Dry-run (report what would be fixed)
331
- * const result = await diagnoseState(baseDir, deps, { fix: true, dryRun: true });
332
- */
333
- /**
334
- * Apply fixes to auto-fixable issues
335
- */
336
- async function applyFixes(issues, deps, wus, result) {
337
- const fixableIssues = issues.filter((i) => i.canAutoFix);
338
- for (const issue of fixableIssues) {
339
- const fixResult = await fixIssue(issue, deps, wus);
340
- if (fixResult.fixed) {
341
- result.fixed.push(issue);
342
- }
343
- else if (fixResult.error) {
344
- result.fixErrors.push({
345
- type: issue.type,
346
- wuId: issue.wuId,
347
- signalId: issue.signalId,
348
- error: fixResult.error,
349
- });
350
- }
351
- }
352
- }
353
- export async function diagnoseState(_baseDir, deps, options = {}) {
354
- const { fix = false, dryRun = false } = options;
355
- // Gather state data
356
- const [wus, stamps, signals, events] = await Promise.all([
357
- deps.listWUs(),
358
- deps.listStamps(),
359
- deps.listSignals(),
360
- deps.listEvents(),
361
- ]);
362
- // Build lookup sets
363
- const wuIds = new Set(wus.map((wu) => wu.id));
364
- const stampIds = new Set(stamps);
365
- // Detect issues
366
- const orphanedWUissues = detectOrphanedWUs(wus, stampIds);
367
- const danglingSignalIssues = detectDanglingSignals(signals, wuIds);
368
- const brokenEventIssues = detectBrokenEvents(events, wuIds);
369
- const statusMismatchIssues = detectStatusMismatches(wus, events);
370
- const issues = [
371
- ...orphanedWUissues,
372
- ...danglingSignalIssues,
373
- ...brokenEventIssues,
374
- ...statusMismatchIssues,
375
- ];
376
- const summary = calculateSummary(issues);
377
- // Initialize result
378
- const result = {
379
- healthy: issues.length === 0,
380
- issues,
381
- summary,
382
- fixed: [],
383
- fixErrors: [],
384
- };
385
- // Handle fixing
386
- if (fix && dryRun) {
387
- result.dryRun = true;
388
- result.wouldFix = issues.filter((i) => i.canAutoFix);
389
- }
390
- else if (fix) {
391
- await applyFixes(issues, deps, wus, result);
392
- }
393
- return result;
394
- }
395
- //# sourceMappingURL=state-doctor-core.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"state-doctor-core.js","sourceRoot":"","sources":["../src/state-doctor-core.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- /**
2
- * Validates a state transition and throws if illegal
3
- *
4
- * @param {string|null|undefined} from - Current WU status
5
- * @param {string|null|undefined} to - Desired WU status
6
- * @param {string} wuid - Work Unit ID (e.g., 'WU-416') for error messages
7
- * @throws {Error} If transition is illegal or states are invalid
8
- */
9
- export declare function assertTransition(from: string | null | undefined, to: string | null | undefined, wuid: string): void;
10
- //# sourceMappingURL=state-machine.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"state-machine.d.ts","sourceRoot":"","sources":["../src/state-machine.ts"],"names":[],"mappings":"AA0CA;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAC/B,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAC7B,IAAI,EAAE,MAAM,QAkDb"}
@@ -1,89 +0,0 @@
1
- // Copyright (c) 2026 Hellmai Ltd
2
- // SPDX-License-Identifier: AGPL-3.0-only
3
- /**
4
- * State Machine Validation Library
5
- *
6
- * Enforces canonical WU state transitions according to LumenFlow §2.4
7
- * Prevents illegal state changes (e.g., done → in_progress) and ensures workflow integrity.
8
- *
9
- * Canonical state machine:
10
- * - ready → in_progress (claim)
11
- * - in_progress → blocked (block)
12
- * - in_progress → waiting (implementation complete, awaiting sign-off)
13
- * - in_progress → done (direct completion)
14
- * - in_progress → ready (release - WU-1080: orphan recovery)
15
- * - blocked → in_progress (unblock)
16
- * - blocked → done (blocker resolved, direct completion)
17
- * - waiting → in_progress (changes requested)
18
- * - waiting → done (approved)
19
- * - done → (terminal, no transitions)
20
- */
21
- import { createError, ErrorCodes } from './error-handler.js';
22
- /**
23
- * Valid WU states as defined in LumenFlow §2.4
24
- */
25
- const VALID_STATES = new Set(['ready', 'in_progress', 'blocked', 'waiting', 'done']);
26
- /**
27
- * Transition table mapping each state to its allowed next states
28
- * Based on LumenFlow §2.4 Flow States & Lanes
29
- */
30
- const TRANSITIONS = {
31
- ready: ['in_progress'],
32
- in_progress: ['blocked', 'waiting', 'done', 'ready'], // WU-1080: 'ready' via release for orphan recovery
33
- blocked: ['in_progress', 'done'],
34
- waiting: ['in_progress', 'done'],
35
- done: [], // Terminal state - no outgoing transitions
36
- };
37
- /**
38
- * Validates a state transition and throws if illegal
39
- *
40
- * @param {string|null|undefined} from - Current WU status
41
- * @param {string|null|undefined} to - Desired WU status
42
- * @param {string} wuid - Work Unit ID (e.g., 'WU-416') for error messages
43
- * @throws {Error} If transition is illegal or states are invalid
44
- */
45
- export function assertTransition(from, to, wuid) {
46
- // Validate states exist and are non-empty
47
- if (from === null || from === undefined || from === '') {
48
- throw createError(ErrorCodes.STATE_ERROR, `Invalid state: ${from}`, {
49
- wuid,
50
- from,
51
- to,
52
- reason: 'from state is null/undefined/empty',
53
- });
54
- }
55
- if (to === null || to === undefined || to === '') {
56
- throw createError(ErrorCodes.STATE_ERROR, `Invalid state: ${to}`, {
57
- wuid,
58
- from,
59
- to,
60
- reason: 'to state is null/undefined/empty',
61
- });
62
- }
63
- // Validate states are recognized
64
- if (!VALID_STATES.has(from)) {
65
- throw createError(ErrorCodes.STATE_ERROR, `Invalid state: ${from}`, {
66
- wuid,
67
- from,
68
- to,
69
- validStates: Array.from(VALID_STATES),
70
- });
71
- }
72
- if (!VALID_STATES.has(to)) {
73
- throw createError(ErrorCodes.STATE_ERROR, `Invalid state: ${to}`, {
74
- wuid,
75
- from,
76
- to,
77
- validStates: Array.from(VALID_STATES),
78
- });
79
- }
80
- // Check if transition is allowed
81
- const fromState = from;
82
- const toState = to;
83
- const allowedNextStates = TRANSITIONS[fromState];
84
- if (!allowedNextStates.includes(toState)) {
85
- const terminalHint = from === 'done' ? ' (done is a terminal state)' : '';
86
- throw createError(ErrorCodes.STATE_ERROR, `Illegal state transition for ${wuid}: ${from} → ${to}${terminalHint}`, { wuid, from, to, allowedNextStates });
87
- }
88
- }
89
- //# sourceMappingURL=state-machine.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"state-machine.js","sourceRoot":"","sources":["../src/state-machine.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAE7D;;GAEG;AACH,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;AAGrF;;;GAGG;AACH,MAAM,WAAW,GAA+B;IAC9C,KAAK,EAAE,CAAC,aAAa,CAAC;IACtB,WAAW,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,mDAAmD;IACzG,OAAO,EAAE,CAAC,aAAa,EAAE,MAAM,CAAC;IAChC,OAAO,EAAE,CAAC,aAAa,EAAE,MAAM,CAAC;IAChC,IAAI,EAAE,EAAE,EAAE,2CAA2C;CACtD,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAC9B,IAA+B,EAC/B,EAA6B,EAC7B,IAAY;IAEZ,0CAA0C;IAC1C,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;QACvD,MAAM,WAAW,CAAC,UAAU,CAAC,WAAW,EAAE,kBAAkB,IAAI,EAAE,EAAE;YAClE,IAAI;YACJ,IAAI;YACJ,EAAE;YACF,MAAM,EAAE,oCAAoC;SAC7C,CAAC,CAAC;IACL,CAAC;IACD,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACjD,MAAM,WAAW,CAAC,UAAU,CAAC,WAAW,EAAE,kBAAkB,EAAE,EAAE,EAAE;YAChE,IAAI;YACJ,IAAI;YACJ,EAAE;YACF,MAAM,EAAE,kCAAkC;SAC3C,CAAC,CAAC;IACL,CAAC;IAED,iCAAiC;IACjC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAe,CAAC,EAAE,CAAC;QACvC,MAAM,WAAW,CAAC,UAAU,CAAC,WAAW,EAAE,kBAAkB,IAAI,EAAE,EAAE;YAClE,IAAI;YACJ,IAAI;YACJ,EAAE;YACF,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC;SACtC,CAAC,CAAC;IACL,CAAC;IACD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAa,CAAC,EAAE,CAAC;QACrC,MAAM,WAAW,CAAC,UAAU,CAAC,WAAW,EAAE,kBAAkB,EAAE,EAAE,EAAE;YAChE,IAAI;YACJ,IAAI;YACJ,EAAE;YACF,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC;SACtC,CAAC,CAAC;IACL,CAAC;IAED,iCAAiC;IACjC,MAAM,SAAS,GAAG,IAAe,CAAC;IAClC,MAAM,OAAO,GAAG,EAAa,CAAC;IAC9B,MAAM,iBAAiB,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;IACjD,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACzC,MAAM,YAAY,GAAG,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1E,MAAM,WAAW,CACf,UAAU,CAAC,WAAW,EACtB,gCAAgC,IAAI,KAAK,IAAI,MAAM,EAAE,GAAG,YAAY,EAAE,EACtE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,iBAAiB,EAAE,CACtC,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -1,68 +0,0 @@
1
- /**
2
- * Stream Error Handler
3
- *
4
- * WU-1233: Centralized EPIPE protection for CLI commands.
5
- *
6
- * When CLI output is piped through head/tail, the pipe may close before
7
- * all output is written. Node.js throws EPIPE errors in this case.
8
- * This handler catches those errors and exits gracefully.
9
- *
10
- * Unix convention: Exit with code 0 on EPIPE (the consumer got what it needed).
11
- *
12
- * @example
13
- * ```typescript
14
- * import { StreamErrorHandler } from '@lumenflow/core';
15
- *
16
- * // In CLI entry point:
17
- * const handler = StreamErrorHandler.createWithDefaults();
18
- * handler.attach();
19
- * ```
20
- */
21
- import type { WriteStream } from 'node:tty';
22
- /**
23
- * Dependencies for StreamErrorHandler
24
- *
25
- * Uses dependency injection for testability.
26
- */
27
- export interface StreamErrorHandlerDeps {
28
- /** Standard output stream */
29
- stdout: WriteStream;
30
- /** Standard error stream */
31
- stderr: WriteStream;
32
- /** Exit function (defaults to process.exit) */
33
- exitFn: (code: number) => void;
34
- }
35
- /**
36
- * StreamErrorHandler
37
- *
38
- * Attaches error listeners to stdout/stderr to handle EPIPE errors gracefully.
39
- * Follows single responsibility principle - only handles stream errors.
40
- */
41
- export declare class StreamErrorHandler {
42
- private readonly deps;
43
- private attached;
44
- private stdoutHandler;
45
- private stderrHandler;
46
- constructor(deps: StreamErrorHandlerDeps);
47
- /**
48
- * Create a handler with default dependencies (process.stdout, process.stderr, process.exit)
49
- */
50
- static createWithDefaults(): StreamErrorHandler;
51
- /**
52
- * Attach error listeners to stdout and stderr
53
- *
54
- * Safe to call multiple times - will not attach duplicate listeners.
55
- */
56
- attach(): void;
57
- /**
58
- * Detach error listeners from stdout and stderr
59
- *
60
- * Safe to call even if not attached.
61
- */
62
- detach(): void;
63
- /**
64
- * Create an error handler that catches EPIPE and exits gracefully
65
- */
66
- private createErrorHandler;
67
- }
68
- //# sourceMappingURL=stream-error-handler.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stream-error-handler.d.ts","sourceRoot":"","sources":["../src/stream-error-handler.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAG5C;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC,6BAA6B;IAC7B,MAAM,EAAE,WAAW,CAAC;IACpB,4BAA4B;IAC5B,MAAM,EAAE,WAAW,CAAC;IACpB,+CAA+C;IAC/C,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAChC;AASD;;;;;GAKG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAyB;IAC9C,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,aAAa,CAAiD;IACtE,OAAO,CAAC,aAAa,CAAiD;gBAE1D,IAAI,EAAE,sBAAsB;IAIxC;;OAEG;IACH,MAAM,CAAC,kBAAkB,IAAI,kBAAkB;IAQ/C;;;;OAIG;IACH,MAAM,IAAI,IAAI;IAcd;;;;OAIG;IACH,MAAM,IAAI,IAAI;IAkBd;;OAEG;IACH,OAAO,CAAC,kBAAkB;CAW3B"}
@@ -1,77 +0,0 @@
1
- // Copyright (c) 2026 Hellmai Ltd
2
- // SPDX-License-Identifier: AGPL-3.0-only
3
- import { STREAM_ERRORS, EXIT_CODES } from './wu-constants.js';
4
- /**
5
- * StreamErrorHandler
6
- *
7
- * Attaches error listeners to stdout/stderr to handle EPIPE errors gracefully.
8
- * Follows single responsibility principle - only handles stream errors.
9
- */
10
- export class StreamErrorHandler {
11
- deps;
12
- attached = false;
13
- stdoutHandler = null;
14
- stderrHandler = null;
15
- constructor(deps) {
16
- this.deps = deps;
17
- }
18
- /**
19
- * Create a handler with default dependencies (process.stdout, process.stderr, process.exit)
20
- */
21
- static createWithDefaults() {
22
- return new StreamErrorHandler({
23
- stdout: process.stdout,
24
- stderr: process.stderr,
25
- exitFn: (code) => process.exit(code),
26
- });
27
- }
28
- /**
29
- * Attach error listeners to stdout and stderr
30
- *
31
- * Safe to call multiple times - will not attach duplicate listeners.
32
- */
33
- attach() {
34
- if (this.attached) {
35
- return;
36
- }
37
- this.stdoutHandler = this.createErrorHandler();
38
- this.stderrHandler = this.createErrorHandler();
39
- this.deps.stdout.on('error', this.stdoutHandler);
40
- this.deps.stderr.on('error', this.stderrHandler);
41
- this.attached = true;
42
- }
43
- /**
44
- * Detach error listeners from stdout and stderr
45
- *
46
- * Safe to call even if not attached.
47
- */
48
- detach() {
49
- if (!this.attached) {
50
- return;
51
- }
52
- if (this.stdoutHandler) {
53
- this.deps.stdout.removeListener('error', this.stdoutHandler);
54
- this.stdoutHandler = null;
55
- }
56
- if (this.stderrHandler) {
57
- this.deps.stderr.removeListener('error', this.stderrHandler);
58
- this.stderrHandler = null;
59
- }
60
- this.attached = false;
61
- }
62
- /**
63
- * Create an error handler that catches EPIPE and exits gracefully
64
- */
65
- createErrorHandler() {
66
- return (err) => {
67
- // Only handle EPIPE errors
68
- if (err.code === STREAM_ERRORS.EPIPE) {
69
- // Exit gracefully with success code (Unix convention)
70
- // The consumer of the pipe got what it needed
71
- this.deps.exitFn(EXIT_CODES.SUCCESS);
72
- }
73
- // Non-EPIPE errors are not handled here - let them propagate
74
- };
75
- }
76
- }
77
- //# sourceMappingURL=stream-error-handler.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stream-error-handler.js","sourceRoot":"","sources":["../src/stream-error-handler.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,yCAAyC;AAwBzC,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAuB9D;;;;;GAKG;AACH,MAAM,OAAO,kBAAkB;IACZ,IAAI,CAAyB;IACtC,QAAQ,GAAG,KAAK,CAAC;IACjB,aAAa,GAA4C,IAAI,CAAC;IAC9D,aAAa,GAA4C,IAAI,CAAC;IAEtE,YAAY,IAA4B;QACtC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,kBAAkB;QACvB,OAAO,IAAI,kBAAkB,CAAC;YAC5B,MAAM,EAAE,OAAO,CAAC,MAAqB;YACrC,MAAM,EAAE,OAAO,CAAC,MAAqB;YACrC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;SAC7C,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,MAAM;QACJ,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,OAAO;QACT,CAAC;QAED,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC/C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE/C,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QACjD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAEjD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACvB,CAAC;IAED;;;;OAIG;IACH,MAAM;QACJ,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QAED,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YAC7D,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;QAED,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YAC7D,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;QAED,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;IACxB,CAAC;IAED;;OAEG;IACK,kBAAkB;QACxB,OAAO,CAAC,GAAoB,EAAE,EAAE;YAC9B,2BAA2B;YAC3B,IAAI,GAAG,CAAC,IAAI,KAAK,aAAa,CAAC,KAAK,EAAE,CAAC;gBACrC,sDAAsD;gBACtD,8CAA8C;gBAC9C,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACvC,CAAC;YACD,6DAA6D;QAC/D,CAAC,CAAC;IACJ,CAAC;CACF"}