factory-factory 0.2.1 → 0.2.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 (276) hide show
  1. package/dist/client/assets/{_basePickBy-DikkcLWt.js → _basePickBy-ClLqD23W.js} +1 -1
  2. package/dist/client/assets/{_baseUniq-DXQLkszL.js → _baseUniq-DVVSJ599.js} +1 -1
  3. package/dist/client/assets/{arc-PlxYF4gs.js → arc-DCPJ-atk.js} +1 -1
  4. package/dist/client/assets/{architectureDiagram-VXUJARFQ-C15kzB-a.js → architectureDiagram-VXUJARFQ-dvBXEdHJ.js} +1 -1
  5. package/dist/client/assets/{blockDiagram-VD42YOAC-CpsrSECi.js → blockDiagram-VD42YOAC-BnlsKN_S.js} +1 -1
  6. package/dist/client/assets/{c4Diagram-YG6GDRKO-lUG_fBjc.js → c4Diagram-YG6GDRKO-AMG1QOcD.js} +1 -1
  7. package/dist/client/assets/channel-DWeb1p1N.js +1 -0
  8. package/dist/client/assets/{chunk-4BX2VUAB-DL5SmHl8.js → chunk-4BX2VUAB-CvbHsudf.js} +1 -1
  9. package/dist/client/assets/{chunk-55IACEB6-6RonniJP.js → chunk-55IACEB6-CtFa9sig.js} +1 -1
  10. package/dist/client/assets/{chunk-B4BG7PRW-BurHg0kj.js → chunk-B4BG7PRW-sjqCuFZK.js} +1 -1
  11. package/dist/client/assets/{chunk-DI55MBZ5-BJ01eABM.js → chunk-DI55MBZ5-vsqDRqHG.js} +1 -1
  12. package/dist/client/assets/{chunk-FMBD7UC4-BnvMi7Ay.js → chunk-FMBD7UC4-lEVbnFWf.js} +1 -1
  13. package/dist/client/assets/{chunk-QN33PNHL-CHzCvA9V.js → chunk-QN33PNHL-laYvT_kS.js} +1 -1
  14. package/dist/client/assets/{chunk-QZHKN3VN-BYtef6TB.js → chunk-QZHKN3VN-Cs-LwO3R.js} +1 -1
  15. package/dist/client/assets/{chunk-TZMSLE5B-5jRzcEei.js → chunk-TZMSLE5B-GQQ1aq3v.js} +1 -1
  16. package/dist/client/assets/classDiagram-2ON5EDUG-DkYgN_SG.js +1 -0
  17. package/dist/client/assets/classDiagram-v2-WZHVMYZB-DkYgN_SG.js +1 -0
  18. package/dist/client/assets/clone-WKF0ejf5.js +1 -0
  19. package/dist/client/assets/{cose-bilkent-S5V4N54A-BRiIkmzf.js → cose-bilkent-S5V4N54A-Y_FrS_Az.js} +1 -1
  20. package/dist/client/assets/{dagre-6UL2VRFP-DB-glvK1.js → dagre-6UL2VRFP-DQIwKP-6.js} +1 -1
  21. package/dist/client/assets/{diagram-PSM6KHXK-CivlU3GF.js → diagram-PSM6KHXK-jFQ4tsW4.js} +1 -1
  22. package/dist/client/assets/{diagram-QEK2KX5R-ux8xYm0V.js → diagram-QEK2KX5R-0kFBcfBt.js} +1 -1
  23. package/dist/client/assets/{diagram-S2PKOQOG-BQ2G1KUX.js → diagram-S2PKOQOG-Cx_fwFHF.js} +1 -1
  24. package/dist/client/assets/{erDiagram-Q2GNP2WA-pDV9J51h.js → erDiagram-Q2GNP2WA-CUgHzWnq.js} +1 -1
  25. package/dist/client/assets/{flowDiagram-NV44I4VS-BzDPdmg2.js → flowDiagram-NV44I4VS-DBPSyGKN.js} +1 -1
  26. package/dist/client/assets/{ganttDiagram-JELNMOA3-asSHWQ1i.js → ganttDiagram-JELNMOA3-BPAxxsuh.js} +1 -1
  27. package/dist/client/assets/{gitGraphDiagram-NY62KEGX-Duv9FC3a.js → gitGraphDiagram-NY62KEGX-BHLuayx7.js} +1 -1
  28. package/dist/client/assets/{graph-6ULGC9RP.js → graph-hSnQ7U0p.js} +1 -1
  29. package/dist/client/assets/{index-DTaPBU72.js → index-CwTQdVJd.js} +133 -142
  30. package/dist/client/assets/index-DCpIgwSv.css +1 -0
  31. package/dist/client/assets/{infoDiagram-WHAUD3N6-BXQPO9ey.js → infoDiagram-WHAUD3N6-DqA4KMDO.js} +1 -1
  32. package/dist/client/assets/{journeyDiagram-XKPGCS4Q-BTZFCnxJ.js → journeyDiagram-XKPGCS4Q-DlVpIfsm.js} +1 -1
  33. package/dist/client/assets/{kanban-definition-3W4ZIXB7-BgM5-joq.js → kanban-definition-3W4ZIXB7-Bn7zJ_Qs.js} +1 -1
  34. package/dist/client/assets/{layout-upXVONoQ.js → layout-BgfjjiLB.js} +1 -1
  35. package/dist/client/assets/{linear-DSEaz9ry.js → linear-pgYyXM7v.js} +1 -1
  36. package/dist/client/assets/{mindmap-definition-VGOIOE7T-BWg5D2xt.js → mindmap-definition-VGOIOE7T-CU2bFQ_O.js} +1 -1
  37. package/dist/client/assets/{pieDiagram-ADFJNKIX-DiebpcAz.js → pieDiagram-ADFJNKIX-CdkFaWPc.js} +1 -1
  38. package/dist/client/assets/{quadrantDiagram-AYHSOK5B-CRdJB1rK.js → quadrantDiagram-AYHSOK5B-gp1mJ5Yc.js} +1 -1
  39. package/dist/client/assets/{requirementDiagram-UZGBJVZJ-BWWp8mm2.js → requirementDiagram-UZGBJVZJ-BO59auEv.js} +1 -1
  40. package/dist/client/assets/{sankeyDiagram-TZEHDZUN-Be_z4SEy.js → sankeyDiagram-TZEHDZUN-BrZ8rlwL.js} +1 -1
  41. package/dist/client/assets/{sequenceDiagram-WL72ISMW-Cmh_NUjH.js → sequenceDiagram-WL72ISMW-LojphsDR.js} +1 -1
  42. package/dist/client/assets/{stateDiagram-FKZM4ZOC-CMVA9mym.js → stateDiagram-FKZM4ZOC-8bPGJ9iG.js} +1 -1
  43. package/dist/client/assets/stateDiagram-v2-4FDKWEC3-BFf_HK07.js +1 -0
  44. package/dist/client/assets/{terminal-instance-CihJB_Qi.js → terminal-instance-YWv2YE4B.js} +1 -1
  45. package/dist/client/assets/{timeline-definition-IT6M3QCI-CkTun4nl.js → timeline-definition-IT6M3QCI-1mTwPI08.js} +1 -1
  46. package/dist/client/assets/{treemap-KMMF4GRG-EA1NDtbB.js → treemap-KMMF4GRG-VwmVQuy1.js} +1 -1
  47. package/dist/client/assets/{xychartDiagram-PRI3JC2R-DZ9QOnNM.js → xychartDiagram-PRI3JC2R-zPQ-EL8y.js} +1 -1
  48. package/dist/client/index.html +2 -2
  49. package/dist/prisma/generated/commonInputTypes.d.ts +120 -60
  50. package/dist/prisma/generated/commonInputTypes.d.ts.map +1 -1
  51. package/dist/prisma/generated/enums.d.ts +15 -0
  52. package/dist/prisma/generated/enums.d.ts.map +1 -1
  53. package/dist/prisma/generated/enums.js +13 -0
  54. package/dist/prisma/generated/enums.js.map +1 -1
  55. package/dist/prisma/generated/internal/class.js +2 -2
  56. package/dist/prisma/generated/internal/class.js.map +1 -1
  57. package/dist/prisma/generated/internal/prismaNamespace.d.ts +7 -7
  58. package/dist/prisma/generated/internal/prismaNamespace.d.ts.map +1 -1
  59. package/dist/prisma/generated/internal/prismaNamespace.js +2 -4
  60. package/dist/prisma/generated/internal/prismaNamespace.js.map +1 -1
  61. package/dist/prisma/generated/internal/prismaNamespaceBrowser.d.ts +2 -4
  62. package/dist/prisma/generated/internal/prismaNamespaceBrowser.d.ts.map +1 -1
  63. package/dist/prisma/generated/internal/prismaNamespaceBrowser.js +2 -4
  64. package/dist/prisma/generated/internal/prismaNamespaceBrowser.js.map +1 -1
  65. package/dist/prisma/generated/models/ClaudeSession.d.ts +3 -0
  66. package/dist/prisma/generated/models/ClaudeSession.d.ts.map +1 -1
  67. package/dist/prisma/generated/models/UserSettings.d.ts +1 -107
  68. package/dist/prisma/generated/models/UserSettings.d.ts.map +1 -1
  69. package/dist/prisma/generated/models/Workspace.d.ts +116 -33
  70. package/dist/prisma/generated/models/Workspace.d.ts.map +1 -1
  71. package/dist/src/backend/claude/permission-coordinator.test.js.map +1 -1
  72. package/dist/src/backend/claude/permissions.test.js.map +1 -1
  73. package/dist/src/backend/claude/process.d.ts.map +1 -1
  74. package/dist/src/backend/claude/process.js +12 -9
  75. package/dist/src/backend/claude/process.js.map +1 -1
  76. package/dist/src/backend/claude/process.test.d.ts +2 -0
  77. package/dist/src/backend/claude/process.test.d.ts.map +1 -0
  78. package/dist/src/backend/claude/process.test.js +22 -0
  79. package/dist/src/backend/claude/process.test.js.map +1 -0
  80. package/dist/src/backend/claude/protocol.d.ts +2 -0
  81. package/dist/src/backend/claude/protocol.d.ts.map +1 -1
  82. package/dist/src/backend/claude/protocol.js +19 -2
  83. package/dist/src/backend/claude/protocol.js.map +1 -1
  84. package/dist/src/backend/claude/protocol.test.js +17 -0
  85. package/dist/src/backend/claude/protocol.test.js.map +1 -1
  86. package/dist/src/backend/claude/session.test.js.map +1 -1
  87. package/dist/src/backend/claude/types.test.js.map +1 -1
  88. package/dist/src/backend/clients/git.client.js.map +1 -1
  89. package/dist/src/backend/index.js +5 -2
  90. package/dist/src/backend/index.js.map +1 -1
  91. package/dist/src/backend/interceptors/index.d.ts.map +1 -1
  92. package/dist/src/backend/interceptors/index.js +0 -2
  93. package/dist/src/backend/interceptors/index.js.map +1 -1
  94. package/dist/src/backend/lib/git-helpers.js.map +1 -1
  95. package/dist/src/backend/lib/ide-helpers.test.js.map +1 -1
  96. package/dist/src/backend/middleware/middleware.test.js.map +1 -1
  97. package/dist/src/backend/prompts/quick-actions.js.map +1 -1
  98. package/dist/src/backend/prompts/workflows.js.map +1 -1
  99. package/dist/src/backend/prompts/workflows.test.js.map +1 -1
  100. package/dist/src/backend/resource_accessors/project.accessor.js.map +1 -1
  101. package/dist/src/backend/resource_accessors/user-settings.accessor.d.ts +0 -4
  102. package/dist/src/backend/resource_accessors/user-settings.accessor.d.ts.map +1 -1
  103. package/dist/src/backend/resource_accessors/user-settings.accessor.js.map +1 -1
  104. package/dist/src/backend/resource_accessors/workspace.accessor.d.ts +18 -3
  105. package/dist/src/backend/resource_accessors/workspace.accessor.d.ts.map +1 -1
  106. package/dist/src/backend/resource_accessors/workspace.accessor.js +29 -1
  107. package/dist/src/backend/resource_accessors/workspace.accessor.js.map +1 -1
  108. package/dist/src/backend/routers/mcp/terminal.mcp.js +1 -1
  109. package/dist/src/backend/routers/mcp/terminal.mcp.js.map +1 -1
  110. package/dist/src/backend/routers/mcp/terminal.mcp.test.js.map +1 -1
  111. package/dist/src/backend/schemas/tool-inputs.schema.test.js.map +1 -1
  112. package/dist/src/backend/services/chat-event-forwarder.service.d.ts +2 -0
  113. package/dist/src/backend/services/chat-event-forwarder.service.d.ts.map +1 -1
  114. package/dist/src/backend/services/chat-event-forwarder.service.js +50 -24
  115. package/dist/src/backend/services/chat-event-forwarder.service.js.map +1 -1
  116. package/dist/src/backend/services/ci-fixer.service.d.ts +1 -1
  117. package/dist/src/backend/services/ci-fixer.service.d.ts.map +1 -1
  118. package/dist/src/backend/services/ci-fixer.service.js +18 -121
  119. package/dist/src/backend/services/ci-fixer.service.js.map +1 -1
  120. package/dist/src/backend/services/ci-fixer.service.test.js +62 -522
  121. package/dist/src/backend/services/ci-fixer.service.test.js.map +1 -1
  122. package/dist/src/backend/services/ci-monitor.service.d.ts.map +1 -1
  123. package/dist/src/backend/services/ci-monitor.service.js +1 -3
  124. package/dist/src/backend/services/ci-monitor.service.js.map +1 -1
  125. package/dist/src/backend/services/config.service.js +2 -2
  126. package/dist/src/backend/services/data-backup.service.d.ts +15 -4
  127. package/dist/src/backend/services/data-backup.service.d.ts.map +1 -1
  128. package/dist/src/backend/services/data-backup.service.js +19 -6
  129. package/dist/src/backend/services/data-backup.service.js.map +1 -1
  130. package/dist/src/backend/services/event-compression.service.d.ts.map +1 -1
  131. package/dist/src/backend/services/event-compression.service.js.map +1 -1
  132. package/dist/src/backend/services/event-compression.service.test.js.map +1 -1
  133. package/dist/src/backend/services/file-lock.service.test.js.map +1 -1
  134. package/dist/src/backend/services/fixer-session.service.d.ts +49 -0
  135. package/dist/src/backend/services/fixer-session.service.d.ts.map +1 -0
  136. package/dist/src/backend/services/fixer-session.service.js +191 -0
  137. package/dist/src/backend/services/fixer-session.service.js.map +1 -0
  138. package/dist/src/backend/services/fixer-session.service.test.d.ts +2 -0
  139. package/dist/src/backend/services/fixer-session.service.test.d.ts.map +1 -0
  140. package/dist/src/backend/services/fixer-session.service.test.js +188 -0
  141. package/dist/src/backend/services/fixer-session.service.test.js.map +1 -0
  142. package/dist/src/backend/services/github-cli.service.d.ts.map +1 -1
  143. package/dist/src/backend/services/github-cli.service.js.map +1 -1
  144. package/dist/src/backend/services/index.d.ts +2 -2
  145. package/dist/src/backend/services/index.d.ts.map +1 -1
  146. package/dist/src/backend/services/index.js +2 -2
  147. package/dist/src/backend/services/index.js.map +1 -1
  148. package/dist/src/backend/services/kanban-state.service.d.ts.map +1 -1
  149. package/dist/src/backend/services/kanban-state.service.js +10 -4
  150. package/dist/src/backend/services/kanban-state.service.js.map +1 -1
  151. package/dist/src/backend/services/message-queue.service.test.js +1 -1
  152. package/dist/src/backend/services/message-queue.service.test.js.map +1 -1
  153. package/dist/src/backend/services/message-state.service.test.js +1 -1
  154. package/dist/src/backend/services/message-state.service.test.js.map +1 -1
  155. package/dist/src/backend/services/pr-review-fixer.service.d.ts +1 -1
  156. package/dist/src/backend/services/pr-review-fixer.service.d.ts.map +1 -1
  157. package/dist/src/backend/services/pr-review-fixer.service.js +34 -135
  158. package/dist/src/backend/services/pr-review-fixer.service.js.map +1 -1
  159. package/dist/src/backend/services/pr-review-monitor.service.d.ts.map +1 -1
  160. package/dist/src/backend/services/pr-review-monitor.service.js +4 -6
  161. package/dist/src/backend/services/pr-review-monitor.service.js.map +1 -1
  162. package/dist/src/backend/services/pr-snapshot.service.d.ts +25 -0
  163. package/dist/src/backend/services/pr-snapshot.service.d.ts.map +1 -0
  164. package/dist/src/backend/services/pr-snapshot.service.js +57 -0
  165. package/dist/src/backend/services/pr-snapshot.service.js.map +1 -0
  166. package/dist/src/backend/services/pr-snapshot.service.test.d.ts +2 -0
  167. package/dist/src/backend/services/pr-snapshot.service.test.d.ts.map +1 -0
  168. package/dist/src/backend/services/pr-snapshot.service.test.js +94 -0
  169. package/dist/src/backend/services/pr-snapshot.service.test.js.map +1 -0
  170. package/dist/src/backend/services/ratchet.service.d.ts +7 -1
  171. package/dist/src/backend/services/ratchet.service.d.ts.map +1 -1
  172. package/dist/src/backend/services/ratchet.service.js +171 -132
  173. package/dist/src/backend/services/ratchet.service.js.map +1 -1
  174. package/dist/src/backend/services/ratchet.service.test.js +255 -2
  175. package/dist/src/backend/services/ratchet.service.test.js.map +1 -1
  176. package/dist/src/backend/services/reconciliation.service.test.js.map +1 -1
  177. package/dist/src/backend/services/run-script.service.d.ts +1 -1
  178. package/dist/src/backend/services/run-script.service.d.ts.map +1 -1
  179. package/dist/src/backend/services/run-script.service.js +12 -0
  180. package/dist/src/backend/services/run-script.service.js.map +1 -1
  181. package/dist/src/backend/services/scheduler.service.d.ts.map +1 -1
  182. package/dist/src/backend/services/scheduler.service.js +7 -21
  183. package/dist/src/backend/services/scheduler.service.js.map +1 -1
  184. package/dist/src/backend/services/scheduler.service.test.js +56 -153
  185. package/dist/src/backend/services/scheduler.service.test.js.map +1 -1
  186. package/dist/src/backend/services/session-file-logger.service.test.js.map +1 -1
  187. package/dist/src/backend/services/session.process-manager.d.ts +1 -0
  188. package/dist/src/backend/services/session.process-manager.d.ts.map +1 -1
  189. package/dist/src/backend/services/session.process-manager.js +20 -0
  190. package/dist/src/backend/services/session.process-manager.js.map +1 -1
  191. package/dist/src/backend/services/session.prompt-builder.d.ts +1 -0
  192. package/dist/src/backend/services/session.prompt-builder.d.ts.map +1 -1
  193. package/dist/src/backend/services/session.prompt-builder.js +4 -1
  194. package/dist/src/backend/services/session.prompt-builder.js.map +1 -1
  195. package/dist/src/backend/services/session.prompt-builder.test.js +20 -3
  196. package/dist/src/backend/services/session.prompt-builder.test.js.map +1 -1
  197. package/dist/src/backend/services/session.repository.d.ts +2 -0
  198. package/dist/src/backend/services/session.repository.d.ts.map +1 -1
  199. package/dist/src/backend/services/session.repository.js +3 -0
  200. package/dist/src/backend/services/session.repository.js.map +1 -1
  201. package/dist/src/backend/services/session.service.d.ts.map +1 -1
  202. package/dist/src/backend/services/session.service.js +11 -1
  203. package/dist/src/backend/services/session.service.js.map +1 -1
  204. package/dist/src/backend/services/session.service.test.js +54 -0
  205. package/dist/src/backend/services/session.service.test.js.map +1 -1
  206. package/dist/src/backend/services/slash-command-cache.service.d.ts.map +1 -1
  207. package/dist/src/backend/services/slash-command-cache.service.js +8 -5
  208. package/dist/src/backend/services/slash-command-cache.service.js.map +1 -1
  209. package/dist/src/backend/services/workspace-creation.service.d.ts +47 -0
  210. package/dist/src/backend/services/workspace-creation.service.d.ts.map +1 -0
  211. package/dist/src/backend/services/workspace-creation.service.js +144 -0
  212. package/dist/src/backend/services/workspace-creation.service.js.map +1 -0
  213. package/dist/src/backend/services/workspace-creation.service.test.d.ts +2 -0
  214. package/dist/src/backend/services/workspace-creation.service.test.d.ts.map +1 -0
  215. package/dist/src/backend/services/workspace-creation.service.test.js +328 -0
  216. package/dist/src/backend/services/workspace-creation.service.test.js.map +1 -0
  217. package/dist/src/backend/services/workspace-flow-state.service.d.ts +22 -0
  218. package/dist/src/backend/services/workspace-flow-state.service.d.ts.map +1 -0
  219. package/dist/src/backend/services/workspace-flow-state.service.js +109 -0
  220. package/dist/src/backend/services/workspace-flow-state.service.js.map +1 -0
  221. package/dist/src/backend/services/workspace-flow-state.service.test.d.ts +2 -0
  222. package/dist/src/backend/services/workspace-flow-state.service.test.d.ts.map +1 -0
  223. package/dist/src/backend/services/workspace-flow-state.service.test.js +120 -0
  224. package/dist/src/backend/services/workspace-flow-state.service.test.js.map +1 -0
  225. package/dist/src/backend/services/workspace-query.service.d.ts +9 -2
  226. package/dist/src/backend/services/workspace-query.service.d.ts.map +1 -1
  227. package/dist/src/backend/services/workspace-query.service.js +25 -27
  228. package/dist/src/backend/services/workspace-query.service.js.map +1 -1
  229. package/dist/src/backend/services/worktree-lifecycle-init.test.js +12 -26
  230. package/dist/src/backend/services/worktree-lifecycle-init.test.js.map +1 -1
  231. package/dist/src/backend/services/worktree-lifecycle.service.d.ts +3 -2
  232. package/dist/src/backend/services/worktree-lifecycle.service.d.ts.map +1 -1
  233. package/dist/src/backend/services/worktree-lifecycle.service.js +33 -13
  234. package/dist/src/backend/services/worktree-lifecycle.service.js.map +1 -1
  235. package/dist/src/backend/trpc/admin.trpc.d.ts +20 -8
  236. package/dist/src/backend/trpc/admin.trpc.d.ts.map +1 -1
  237. package/dist/src/backend/trpc/index.d.ts +94 -56
  238. package/dist/src/backend/trpc/index.d.ts.map +1 -1
  239. package/dist/src/backend/trpc/project.trpc.d.ts +6 -2
  240. package/dist/src/backend/trpc/project.trpc.d.ts.map +1 -1
  241. package/dist/src/backend/trpc/session.trpc.d.ts +15 -19
  242. package/dist/src/backend/trpc/session.trpc.d.ts.map +1 -1
  243. package/dist/src/backend/trpc/session.trpc.js +0 -9
  244. package/dist/src/backend/trpc/session.trpc.js.map +1 -1
  245. package/dist/src/backend/trpc/user-settings.trpc.d.ts +0 -12
  246. package/dist/src/backend/trpc/user-settings.trpc.d.ts.map +1 -1
  247. package/dist/src/backend/trpc/user-settings.trpc.js +1 -10
  248. package/dist/src/backend/trpc/user-settings.trpc.js.map +1 -1
  249. package/dist/src/backend/trpc/workspace/init.trpc.d.ts +3 -1
  250. package/dist/src/backend/trpc/workspace/init.trpc.d.ts.map +1 -1
  251. package/dist/src/backend/trpc/workspace/run-script.trpc.d.ts +1 -1
  252. package/dist/src/backend/trpc/workspace/workspace-helpers.d.ts +6 -2
  253. package/dist/src/backend/trpc/workspace/workspace-helpers.d.ts.map +1 -1
  254. package/dist/src/backend/trpc/workspace.trpc.d.ts +73 -35
  255. package/dist/src/backend/trpc/workspace.trpc.d.ts.map +1 -1
  256. package/dist/src/backend/trpc/workspace.trpc.js +60 -74
  257. package/dist/src/backend/trpc/workspace.trpc.js.map +1 -1
  258. package/dist/src/backend/trpc/workspace.trpc.test.js.map +1 -1
  259. package/dist/src/cli/index.js +6 -0
  260. package/dist/src/cli/index.js.map +1 -1
  261. package/dist/src/shared/workspace-words.d.ts.map +1 -1
  262. package/dist/src/shared/workspace-words.js.map +1 -1
  263. package/dist/tsconfig.backend.tsbuildinfo +1 -1
  264. package/package.json +1 -1
  265. package/prisma/migrations/20260205020000_phase_3_schema_cleanup/migration.sql +93 -0
  266. package/prisma/schema.prisma +20 -9
  267. package/dist/client/assets/channel-DibAzDxU.js +0 -1
  268. package/dist/client/assets/classDiagram-2ON5EDUG-moaJKwcI.js +0 -1
  269. package/dist/client/assets/classDiagram-v2-WZHVMYZB-moaJKwcI.js +0 -1
  270. package/dist/client/assets/clone-Cl_PwNgC.js +0 -1
  271. package/dist/client/assets/index-CwyuSNf-.css +0 -1
  272. package/dist/client/assets/stateDiagram-v2-4FDKWEC3-CELclHRO.js +0 -1
  273. package/dist/src/backend/interceptors/git-push.interceptor.d.ts +0 -3
  274. package/dist/src/backend/interceptors/git-push.interceptor.d.ts.map +0 -1
  275. package/dist/src/backend/interceptors/git-push.interceptor.js +0 -31
  276. package/dist/src/backend/interceptors/git-push.interceptor.js.map +0 -1
@@ -1,3 +1,4 @@
1
+ import { EventEmitter } from 'node:events';
1
2
  import { existsSync, readFileSync } from 'node:fs';
2
3
  import { WS_READY_STATE } from '../constants/index.js';
3
4
  import { interceptorRegistry } from '../interceptors/index.js';
@@ -12,10 +13,20 @@ import { workspaceActivityService } from './workspace-activity.service.js';
12
13
  const logger = createLogger('chat-event-forwarder');
13
14
  const DEBUG_CHAT_WS = configService.getDebugConfig().chatWebSocket;
14
15
  class ChatEventForwarderService {
15
- clientEventSetup = new Set();
16
+ clientEventSetup = new Map();
17
+ registeredListeners = new Map();
16
18
  pendingInteractiveRequests = new Map();
17
19
  workspaceNotificationsSetup = false;
18
20
  lastCompactBoundaryAt = new Map();
21
+ removeForwardingListeners(dbSessionId, client) {
22
+ const listeners = this.registeredListeners.get(dbSessionId);
23
+ if (listeners) {
24
+ for (const { event, handler } of listeners) {
25
+ client.off(event, handler);
26
+ }
27
+ this.registeredListeners.delete(dbSessionId);
28
+ }
29
+ }
19
30
  isSetup(dbSessionId) {
20
31
  return this.clientEventSetup.has(dbSessionId);
21
32
  }
@@ -59,16 +70,31 @@ class ChatEventForwarderService {
59
70
  });
60
71
  }
61
72
  setupClientEvents(dbSessionId, client, context, onDispatchNextMessage) {
62
- if (this.clientEventSetup.has(dbSessionId)) {
73
+ const existingClient = this.clientEventSetup.get(dbSessionId);
74
+ if (existingClient === client) {
63
75
  if (DEBUG_CHAT_WS) {
64
- logger.info('[Chat WS] Event forwarding already set up, skipping', { dbSessionId });
76
+ logger.info('[Chat WS] Event forwarding already set up for same client, skipping', {
77
+ dbSessionId,
78
+ });
65
79
  }
66
80
  return;
67
81
  }
68
- this.clientEventSetup.add(dbSessionId);
82
+ if (existingClient) {
83
+ logger.info('[Chat WS] Replacing event forwarding with new client', { dbSessionId });
84
+ this.removeForwardingListeners(dbSessionId, existingClient);
85
+ this.pendingInteractiveRequests.delete(dbSessionId);
86
+ }
87
+ this.clientEventSetup.set(dbSessionId, client);
69
88
  if (DEBUG_CHAT_WS) {
70
89
  logger.info('[Chat WS] Setting up event forwarding for session', { dbSessionId });
71
90
  }
91
+ const emitterOn = EventEmitter.prototype.on.bind(client);
92
+ const listeners = [];
93
+ const on = (event, handler) => {
94
+ emitterOn(event, handler);
95
+ listeners.push({ event, handler });
96
+ };
97
+ this.registeredListeners.set(dbSessionId, listeners);
72
98
  const initResponse = client.getInitializeResponse();
73
99
  if (initResponse?.commands && initResponse.commands.length > 0) {
74
100
  if (DEBUG_CHAT_WS) {
@@ -87,7 +113,7 @@ class ChatEventForwarderService {
87
113
  }
88
114
  const pendingToolNames = new Map();
89
115
  const pendingToolInputs = new Map();
90
- client.on('tool_use', (toolUse) => {
116
+ on('tool_use', (toolUse) => {
91
117
  pendingToolNames.set(toolUse.id, toolUse.name);
92
118
  pendingToolInputs.set(toolUse.id, toolUse.input);
93
119
  interceptorRegistry.notifyToolStart({ toolUseId: toolUse.id, toolName: toolUse.name, input: toolUse.input }, {
@@ -97,7 +123,7 @@ class ChatEventForwarderService {
97
123
  timestamp: new Date(),
98
124
  });
99
125
  });
100
- client.on('session_id', (claudeSessionId) => {
126
+ on('session_id', (claudeSessionId) => {
101
127
  if (DEBUG_CHAT_WS) {
102
128
  logger.info('[Chat WS] Received session_id from Claude CLI', {
103
129
  dbSessionId,
@@ -109,7 +135,7 @@ class ChatEventForwarderService {
109
135
  messageStateService.storeEvent(dbSessionId, statusMsg);
110
136
  chatConnectionService.forwardToSession(dbSessionId, statusMsg);
111
137
  });
112
- client.on('idle', () => {
138
+ on('idle', () => {
113
139
  if (DEBUG_CHAT_WS) {
114
140
  logger.info('[Chat WS] Claude became idle, checking queue', { dbSessionId });
115
141
  }
@@ -120,7 +146,7 @@ class ChatEventForwarderService {
120
146
  });
121
147
  });
122
148
  });
123
- client.on('stream', (event) => {
149
+ on('stream', (event) => {
124
150
  const streamEvent = event;
125
151
  if (DEBUG_CHAT_WS) {
126
152
  logger.info('[Chat WS] Received stream event from client', {
@@ -134,7 +160,7 @@ class ChatEventForwarderService {
134
160
  messageStateService.storeEvent(dbSessionId, msg);
135
161
  chatConnectionService.forwardToSession(dbSessionId, msg);
136
162
  });
137
- client.on('tool_progress', (event) => {
163
+ on('tool_progress', (event) => {
138
164
  if (DEBUG_CHAT_WS) {
139
165
  logger.info('[Chat WS] Received tool_progress event', { dbSessionId });
140
166
  }
@@ -146,7 +172,7 @@ class ChatEventForwarderService {
146
172
  messageStateService.storeEvent(dbSessionId, sdkEvent);
147
173
  chatConnectionService.forwardToSession(dbSessionId, sdkEvent);
148
174
  });
149
- client.on('tool_use_summary', (event) => {
175
+ on('tool_use_summary', (event) => {
150
176
  if (DEBUG_CHAT_WS) {
151
177
  logger.info('[Chat WS] Received tool_use_summary event', { dbSessionId });
152
178
  }
@@ -158,7 +184,7 @@ class ChatEventForwarderService {
158
184
  messageStateService.storeEvent(dbSessionId, sdkEvent);
159
185
  chatConnectionService.forwardToSession(dbSessionId, sdkEvent);
160
186
  });
161
- client.on('system_init', (event) => {
187
+ on('system_init', (event) => {
162
188
  if (DEBUG_CHAT_WS) {
163
189
  logger.info('[Chat WS] Received system_init event', {
164
190
  dbSessionId,
@@ -184,7 +210,7 @@ class ChatEventForwarderService {
184
210
  messageStateService.storeEvent(dbSessionId, msg);
185
211
  chatConnectionService.forwardToSession(dbSessionId, msg);
186
212
  });
187
- client.on('system_status', (event) => {
213
+ on('system_status', (event) => {
188
214
  if (DEBUG_CHAT_WS) {
189
215
  logger.info('[Chat WS] Received system_status event', {
190
216
  dbSessionId,
@@ -203,7 +229,7 @@ class ChatEventForwarderService {
203
229
  messageStateService.storeEvent(dbSessionId, msg);
204
230
  chatConnectionService.forwardToSession(dbSessionId, msg);
205
231
  });
206
- client.on('compact_boundary', (event) => {
232
+ on('compact_boundary', (event) => {
207
233
  if (DEBUG_CHAT_WS) {
208
234
  logger.info('[Chat WS] Received compact_boundary event', { dbSessionId });
209
235
  }
@@ -221,7 +247,7 @@ class ChatEventForwarderService {
221
247
  messageStateService.storeEvent(dbSessionId, boundaryMsg);
222
248
  chatConnectionService.forwardToSession(dbSessionId, boundaryMsg);
223
249
  });
224
- client.on('hook_started', (event) => {
250
+ on('hook_started', (event) => {
225
251
  if (DEBUG_CHAT_WS) {
226
252
  logger.info('[Chat WS] Received hook_started event', {
227
253
  dbSessionId,
@@ -245,7 +271,7 @@ class ChatEventForwarderService {
245
271
  messageStateService.storeEvent(dbSessionId, msg);
246
272
  chatConnectionService.forwardToSession(dbSessionId, msg);
247
273
  });
248
- client.on('hook_response', (event) => {
274
+ on('hook_response', (event) => {
249
275
  if (DEBUG_CHAT_WS) {
250
276
  logger.info('[Chat WS] Received hook_response event', {
251
277
  dbSessionId,
@@ -272,7 +298,7 @@ class ChatEventForwarderService {
272
298
  messageStateService.storeEvent(dbSessionId, msg);
273
299
  chatConnectionService.forwardToSession(dbSessionId, msg);
274
300
  });
275
- client.on('compacting_start', () => {
301
+ on('compacting_start', () => {
276
302
  if (DEBUG_CHAT_WS) {
277
303
  logger.info('[Chat WS] Context compaction started', { dbSessionId });
278
304
  }
@@ -281,7 +307,7 @@ class ChatEventForwarderService {
281
307
  messageStateService.storeEvent(dbSessionId, event);
282
308
  chatConnectionService.forwardToSession(dbSessionId, event);
283
309
  });
284
- client.on('compacting_end', () => {
310
+ on('compacting_end', () => {
285
311
  if (DEBUG_CHAT_WS) {
286
312
  logger.info('[Chat WS] Context compaction ended', { dbSessionId });
287
313
  }
@@ -290,7 +316,7 @@ class ChatEventForwarderService {
290
316
  messageStateService.storeEvent(dbSessionId, event);
291
317
  chatConnectionService.forwardToSession(dbSessionId, event);
292
318
  });
293
- client.on('message', (msg) => {
319
+ on('message', (msg) => {
294
320
  sessionFileLogger.log(dbSessionId, 'FROM_CLAUDE_CLI', { eventType: 'message', data: msg });
295
321
  const msgWithType = msg;
296
322
  if (msgWithType.type !== 'user') {
@@ -345,7 +371,7 @@ class ChatEventForwarderService {
345
371
  messageStateService.storeEvent(dbSessionId, wsMsg);
346
372
  chatConnectionService.forwardToSession(dbSessionId, wsMsg);
347
373
  });
348
- client.on('result', (result) => {
374
+ on('result', (result) => {
349
375
  if (DEBUG_CHAT_WS) {
350
376
  const res = result;
351
377
  logger.info('[Chat WS] Received result event from client', { dbSessionId, uuid: res.uuid });
@@ -360,7 +386,7 @@ class ChatEventForwarderService {
360
386
  messageStateService.storeEvent(dbSessionId, statusMsg);
361
387
  chatConnectionService.forwardToSession(dbSessionId, statusMsg);
362
388
  });
363
- client.on('interactive_request', (request) => {
389
+ on('interactive_request', (request) => {
364
390
  if (DEBUG_CHAT_WS) {
365
391
  logger.info('[Chat WS] Received interactive_request from client', {
366
392
  dbSessionId,
@@ -374,19 +400,19 @@ class ChatEventForwarderService {
374
400
  });
375
401
  this.routeInteractiveRequest(dbSessionId, request);
376
402
  });
377
- client.on('exit', (result) => {
403
+ on('exit', (result) => {
378
404
  chatConnectionService.forwardToSession(dbSessionId, {
379
405
  type: 'process_exit',
380
406
  code: result.code,
381
407
  processAlive: false,
382
408
  });
383
- client.removeAllListeners();
409
+ this.removeForwardingListeners(dbSessionId, client);
384
410
  this.clientEventSetup.delete(dbSessionId);
385
411
  this.lastCompactBoundaryAt.delete(dbSessionId);
386
412
  this.pendingInteractiveRequests.delete(dbSessionId);
387
413
  messageStateService.clearSession(dbSessionId);
388
414
  });
389
- client.on('permission_cancelled', (requestId) => {
415
+ on('permission_cancelled', (requestId) => {
390
416
  sessionFileLogger.log(dbSessionId, 'FROM_CLAUDE_CLI', {
391
417
  eventType: 'permission_cancelled',
392
418
  requestId,
@@ -397,7 +423,7 @@ class ChatEventForwarderService {
397
423
  requestId,
398
424
  });
399
425
  });
400
- client.on('error', (error) => {
426
+ on('error', (error) => {
401
427
  chatConnectionService.forwardToSession(dbSessionId, {
402
428
  type: 'error',
403
429
  message: error.message,
@@ -1 +1 @@
1
- {"version":3,"file":"chat-event-forwarder.service.js","sourceRoot":"","sources":["../../../../src/backend/services/chat-event-forwarder.service.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAGnD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EACL,0BAA0B,EAC1B,uBAAuB,EACvB,iBAAiB,EACjB,QAAQ,EACR,kBAAkB,GACnB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AAExE,MAAM,MAAM,GAAG,YAAY,CAAC,sBAAsB,CAAC,CAAC;AAEpD,MAAM,aAAa,GAAG,aAAa,CAAC,cAAc,EAAE,CAAC,aAAa,CAAC;AAoBnE,MAAM,yBAAyB;IAErB,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;IAGrC,0BAA0B,GAAG,IAAI,GAAG,EAAqC,CAAC;IAG1E,2BAA2B,GAAG,KAAK,CAAC;IAEpC,qBAAqB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAK1D,OAAO,CAAC,WAAmB;QACzB,OAAO,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAChD,CAAC;IAKD,iBAAiB,CAAC,WAAmB;QACnC,OAAO,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC1D,CAAC;IAMD,mBAAmB,CAAC,WAAmB;QACrC,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACtD,CAAC;IAMD,4BAA4B,CAAC,WAAmB,EAAE,SAAiB;QACjE,MAAM,OAAO,GAAG,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACjE,IAAI,OAAO,EAAE,SAAS,KAAK,SAAS,EAAE,CAAC;YACrC,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAMD,2BAA2B;QACzB,IAAI,IAAI,CAAC,2BAA2B,EAAE,CAAC;YACrC,OAAO;QACT,CAAC;QACD,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC;QAExC,wBAAwB,CAAC,EAAE,CAAC,sBAAsB,EAAE,CAAC,IAAI,EAAE,EAAE;YAC3D,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;YAEtE,MAAM,CAAC,KAAK,CAAC,6CAA6C,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YAG7E,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;gBAC7B,IAAI,EAAE,gCAAgC;gBACtC,WAAW;gBACX,aAAa;gBACb,YAAY;gBACZ,UAAU,EAAE,UAAU,CAAC,WAAW,EAAE;aACrC,CAAC,CAAC;YAEH,KAAK,MAAM,IAAI,IAAI,qBAAqB,CAAC,MAAM,EAAE,EAAE,CAAC;gBAClD,IAAI,IAAI,CAAC,EAAE,CAAC,UAAU,KAAK,cAAc,CAAC,IAAI,EAAE,CAAC;oBAC/C,IAAI,CAAC;wBACH,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBACxB,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,MAAM,CAAC,KAAK,CAAC,uCAAuC,EAAE,KAAc,CAAC,CAAC;oBACxE,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAMD,iBAAiB,CACf,WAAmB,EACnB,MAAoB,EACpB,OAA8B,EAC9B,qBAA0C;QAG1C,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YAC3C,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,qDAAqD,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YACtF,CAAC;YACD,OAAO;QACT,CAAC;QACD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAEvC,IAAI,aAAa,EAAE,CAAC;YAClB,MAAM,CAAC,IAAI,CAAC,mDAAmD,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;QACpF,CAAC;QAGD,MAAM,YAAY,GAAG,MAAM,CAAC,qBAAqB,EAAE,CAAC;QACpD,IAAI,YAAY,EAAE,QAAQ,IAAI,YAAY,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/D,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,iDAAiD,EAAE;oBAC7D,WAAW;oBACX,YAAY,EAAE,YAAY,CAAC,QAAQ,CAAC,MAAM;iBAC3C,CAAC,CAAC;YACL,CAAC;YACD,MAAM,gBAAgB,GAAG;gBACvB,IAAI,EAAE,gBAAgB;gBACtB,aAAa,EAAE,YAAY,CAAC,QAAQ;aACrC,CAAC;YACF,mBAAmB,CAAC,UAAU,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;YAC9D,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;YACtE,KAAK,wBAAwB,CAAC,iBAAiB,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QACzE,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAkB,CAAC;QACnD,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAmC,CAAC;QAErE,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,EAAE;YAChC,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YAC/C,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;YAEjD,mBAAmB,CAAC,eAAe,CACjC,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,EACvE;gBACE,SAAS,EAAE,WAAW;gBACtB,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,SAAS,EAAE,IAAI,IAAI,EAAE;aACtB,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;QAGH,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,eAAe,EAAE,EAAE;YAC1C,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,+CAA+C,EAAE;oBAC3D,WAAW;oBACX,eAAe;iBAChB,CAAC,CAAC;YACL,CAAC;YAGD,wBAAwB,CAAC,kBAAkB,CAAC,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YAG9E,MAAM,SAAS,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,CAAC,SAAS,EAAE,EAAE,CAAC;YACtF,mBAAmB,CAAC,UAAU,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;YACvD,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QAGH,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;YACrB,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,8CAA8C,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YAC/E,CAAC;YAED,qBAAqB,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACtC,MAAM,CAAC,KAAK,CAAC,oDAAoD,EAAE;oBACjE,WAAW;oBACX,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;iBAC9D,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;YAC5B,MAAM,WAAW,GAAG,KAAwB,CAAC;YAC7C,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,6CAA6C,EAAE;oBACzD,WAAW;oBACX,SAAS,EAAE,WAAW,CAAC,IAAI;iBAC5B,CAAC,CAAC;YACL,CAAC;YACD,iBAAiB,CAAC,GAAG,CAAC,WAAW,EAAE,iBAAiB,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAI5F,MAAM,KAAK,GAAG,mBAAmB,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;YAC7D,MAAM,GAAG,GAAG,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;YAC3D,mBAAmB,CAAC,UAAU,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;YACjD,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;QAGH,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,KAAK,EAAE,EAAE;YACnC,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,wCAAwC,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YACzE,CAAC;YACD,iBAAiB,CAAC,GAAG,CAAC,WAAW,EAAE,iBAAiB,EAAE;gBACpD,SAAS,EAAE,eAAe;gBAC1B,IAAI,EAAE,KAAK;aACZ,CAAC,CAAC;YACH,MAAM,QAAQ,GAAG,KAAoC,CAAC;YACtD,mBAAmB,CAAC,UAAU,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;YACtD,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC,KAAK,EAAE,EAAE;YACtC,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,2CAA2C,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YAC5E,CAAC;YACD,iBAAiB,CAAC,GAAG,CAAC,WAAW,EAAE,iBAAiB,EAAE;gBACpD,SAAS,EAAE,kBAAkB;gBAC7B,IAAI,EAAE,KAAK;aACZ,CAAC,CAAC;YACH,MAAM,QAAQ,GAAG,KAAoC,CAAC;YACtD,mBAAmB,CAAC,UAAU,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;YACtD,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;QAGH,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE;YACjC,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,sCAAsC,EAAE;oBAClD,WAAW;oBACX,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC;oBAC/B,KAAK,EAAE,KAAK,CAAC,KAAK;iBACnB,CAAC,CAAC;YACL,CAAC;YACD,iBAAiB,CAAC,GAAG,CAAC,WAAW,EAAE,iBAAiB,EAAE;gBACpD,SAAS,EAAE,aAAa;gBACxB,IAAI,EAAE,KAAK;aACZ,CAAC,CAAC;YACH,MAAM,GAAG,GAAG;gBACV,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE;oBACJ,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,GAAG,EAAE,KAAK,CAAC,GAAG;oBACd,YAAY,EAAE,KAAK,CAAC,YAAY;oBAChC,aAAa,EAAE,KAAK,CAAC,cAAc;oBACnC,OAAO,EAAE,KAAK,CAAC,OAAO;iBACvB;aACF,CAAC;YACF,mBAAmB,CAAC,UAAU,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;YACjD,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,KAAK,EAAE,EAAE;YACnC,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,wCAAwC,EAAE;oBACpD,WAAW;oBACX,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,eAAe,EAAE,KAAK,CAAC,eAAe;iBACvC,CAAC,CAAC;YACL,CAAC;YACD,iBAAiB,CAAC,GAAG,CAAC,WAAW,EAAE,iBAAiB,EAAE;gBACpD,SAAS,EAAE,eAAe;gBAC1B,IAAI,EAAE,KAAK;aACZ,CAAC,CAAC;YACH,MAAM,GAAG,GAAG;gBACV,IAAI,EAAE,eAAe;gBACrB,cAAc,EAAE,KAAK,CAAC,eAAe;aACtC,CAAC;YACF,mBAAmB,CAAC,UAAU,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;YACjD,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC,KAAK,EAAE,EAAE;YACtC,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,2CAA2C,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YAC5E,CAAC;YACD,iBAAiB,CAAC,GAAG,CAAC,WAAW,EAAE,iBAAiB,EAAE;gBACpD,SAAS,EAAE,kBAAkB;gBAC7B,IAAI,EAAE,KAAK;aACZ,CAAC,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,MAAM,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACtE,IAAI,GAAG,GAAG,YAAY,GAAG,IAAI,EAAE,CAAC;gBAC9B,OAAO;YACT,CAAC;YACD,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;YACjD,MAAM,WAAW,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;YACjD,mBAAmB,CAAC,UAAU,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YACzD,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE;YAClC,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,uCAAuC,EAAE;oBACnD,WAAW;oBACX,MAAM,EAAE,KAAK,CAAC,OAAO;oBACrB,QAAQ,EAAE,KAAK,CAAC,SAAS;oBACzB,SAAS,EAAE,KAAK,CAAC,UAAU;iBAC5B,CAAC,CAAC;YACL,CAAC;YACD,iBAAiB,CAAC,GAAG,CAAC,WAAW,EAAE,iBAAiB,EAAE;gBACpD,SAAS,EAAE,cAAc;gBACzB,IAAI,EAAE,KAAK;aACZ,CAAC,CAAC;YACH,MAAM,GAAG,GAAG;gBACV,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE;oBACJ,MAAM,EAAE,KAAK,CAAC,OAAO;oBACrB,QAAQ,EAAE,KAAK,CAAC,SAAS;oBACzB,SAAS,EAAE,KAAK,CAAC,UAAU;iBAC5B;aACF,CAAC;YACF,mBAAmB,CAAC,UAAU,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;YACjD,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,KAAK,EAAE,EAAE;YACnC,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,wCAAwC,EAAE;oBACpD,WAAW;oBACX,MAAM,EAAE,KAAK,CAAC,OAAO;oBACrB,QAAQ,EAAE,KAAK,CAAC,SAAS;oBACzB,OAAO,EAAE,KAAK,CAAC,OAAO;iBACvB,CAAC,CAAC;YACL,CAAC;YACD,iBAAiB,CAAC,GAAG,CAAC,WAAW,EAAE,iBAAiB,EAAE;gBACpD,SAAS,EAAE,eAAe;gBAC1B,IAAI,EAAE,KAAK;aACZ,CAAC,CAAC;YACH,MAAM,GAAG,GAAG;gBACV,IAAI,EAAE,eAAe;gBACrB,IAAI,EAAE;oBACJ,MAAM,EAAE,KAAK,CAAC,OAAO;oBACrB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,QAAQ,EAAE,KAAK,CAAC,SAAS;oBACzB,OAAO,EAAE,KAAK,CAAC,OAAO;iBACvB;aACF,CAAC;YACF,mBAAmB,CAAC,UAAU,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;YACjD,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;QAGH,MAAM,CAAC,EAAE,CAAC,kBAAkB,EAAE,GAAG,EAAE;YACjC,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,sCAAsC,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YACvE,CAAC;YACD,iBAAiB,CAAC,GAAG,CAAC,WAAW,EAAE,iBAAiB,EAAE,EAAE,SAAS,EAAE,kBAAkB,EAAE,CAAC,CAAC;YACzF,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;YAC3C,mBAAmB,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YACnD,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,gBAAgB,EAAE,GAAG,EAAE;YAC/B,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,oCAAoC,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YACrE,CAAC;YACD,iBAAiB,CAAC,GAAG,CAAC,WAAW,EAAE,iBAAiB,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC,CAAC;YACvF,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;YACzC,mBAAmB,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YACnD,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;YAC3B,iBAAiB,CAAC,GAAG,CAAC,WAAW,EAAE,iBAAiB,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;YAE3F,MAAM,WAAW,GAAG,GAInB,CAAC;YACF,IAAI,WAAW,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAChC,iBAAiB,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE;oBACzC,MAAM,EAAE,iBAAiB;oBACzB,MAAM,EAAE,eAAe;oBACvB,IAAI,EAAE,WAAW,CAAC,IAAI;iBACvB,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAID,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;gBACrB,MAAM,OAAO,GAAG,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC;gBACtE,mBAAmB,CAAC,UAAU,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;gBACrD,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;gBAC7D,IAAI,aAAa,EAAE,CAAC;oBAClB,MAAM,CAAC,IAAI,CAAC,wCAAwC,EAAE;wBACpD,WAAW;wBACX,IAAI,EAAE,WAAW,CAAC,IAAI;qBACvB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC;YAC7C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC5B,iBAAiB,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE;oBACzC,MAAM,EAAE,iBAAiB;oBACzB,MAAM,EAAE,kBAAkB;iBAC3B,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC;YAC1E,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,iBAAiB,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE;oBACzC,MAAM,EAAE,iBAAiB;oBACzB,MAAM,EAAE,wBAAwB;oBAChC,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;iBAC1C,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,IAAI,CAAC,4BAA4B,CAAC,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE;gBAC9E,SAAS,EAAE,WAAW;gBACtB,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,UAAU,EAAE,OAAO,CAAC,UAAU;aAC/B,CAAC,CAAC;YAEH,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,oDAAoD,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YACrF,CAAC;YACD,iBAAiB,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE;gBACzC,MAAM,EAAE,0CAA0C;aACnD,CAAC,CAAC;YAGH,MAAM,KAAK,GAAG,mBAAmB,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;YAC7D,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;YAC3D,mBAAmB,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YACnD,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;YAC7B,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,GAAG,GAAG,MAA2B,CAAC;gBACxC,MAAM,CAAC,IAAI,CAAC,6CAA6C,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;YAC9F,CAAC;YACD,iBAAiB,CAAC,GAAG,CAAC,WAAW,EAAE,iBAAiB,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;YAG7F,MAAM,KAAK,GAAG,mBAAmB,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;YAC7D,MAAM,SAAS,GAAG,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;YAClE,mBAAmB,CAAC,UAAU,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;YACvD,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;YAG/D,wBAAwB,CAAC,eAAe,CAAC,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YAE3E,MAAM,SAAS,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,CAAC,SAAS,EAAE,EAAE,CAAC;YACvF,mBAAmB,CAAC,UAAU,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;YACvD,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QAGH,MAAM,CAAC,EAAE,CAAC,qBAAqB,EAAE,CAAC,OAAO,EAAE,EAAE;YAC3C,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,oDAAoD,EAAE;oBAChE,WAAW;oBACX,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;iBAC7B,CAAC,CAAC;YACL,CAAC;YACD,iBAAiB,CAAC,GAAG,CAAC,WAAW,EAAE,iBAAiB,EAAE;gBACpD,SAAS,EAAE,qBAAqB;gBAChC,IAAI,EAAE,OAAO;aACd,CAAC,CAAC;YAEH,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE;YAC3B,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,EAAE;gBAClD,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,YAAY,EAAE,KAAK;aACpB,CAAC,CAAC;YACH,MAAM,CAAC,kBAAkB,EAAE,CAAC;YAC5B,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC1C,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAI/C,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAEpD,mBAAmB,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;QAGH,MAAM,CAAC,EAAE,CAAC,sBAAsB,EAAE,CAAC,SAAiB,EAAE,EAAE;YACtD,iBAAiB,CAAC,GAAG,CAAC,WAAW,EAAE,iBAAiB,EAAE;gBACpD,SAAS,EAAE,sBAAsB;gBACjC,SAAS;aACV,CAAC,CAAC;YAEH,IAAI,CAAC,4BAA4B,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;YAC1D,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,EAAE;gBAClD,IAAI,EAAE,sBAAsB;gBAC5B,SAAS;aACV,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YAC3B,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,EAAE;gBAClD,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,KAAK,CAAC,OAAO;aACvB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAMO,uBAAuB,CAC7B,WAAmB,EACnB,OAKC;QAGD,MAAM,WAAW,GACf,OAAO,CAAC,QAAQ,KAAK,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAGtF,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,WAAW,EAAE;YAC/C,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,WAAW;YACX,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC,CAAC;QAGH,IAAI,OAAO,CAAC,QAAQ,KAAK,iBAAiB,EAAE,CAAC;YAC3C,MAAM,MAAM,GAAG,kBAAkB,CAC/B,0BAA0B,EAC1B,OAAO,CAAC,KAAK,EACb,iBAAiB,EACjB,MAAM,CACP,CAAC;YAGF,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1D,MAAM,CAAC,IAAI,CAAC,kDAAkD,EAAE;oBAC9D,WAAW;oBACX,SAAS,EAAE,OAAO,CAAC,SAAS;oBAC5B,iBAAiB,EAAE,MAAM,CAAC,OAAO;iBAClC,CAAC,CAAC;gBACH,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,EAAE;oBAClD,IAAI,EAAE,OAAO;oBACb,OAAO,EAAE,2CAA2C;iBACrD,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,EAAE;gBAClD,IAAI,EAAE,eAAe;gBACrB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS;aACjC,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,KAAK,cAAc,EAAE,CAAC;YACxC,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,EAAE;gBAClD,IAAI,EAAE,oBAAoB;gBAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,WAAW;aACZ,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAGD,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,EAAE;YAClD,IAAI,EAAE,qBAAqB;YAC3B,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAC,CAAC;IACL,CAAC;IAQO,kBAAkB,CAAC,KAA8B;QAEvD,MAAM,MAAM,GAAG,uBAAuB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,CAAC,IAAI,CAAC,gDAAgD,EAAE;gBAC5D,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC9E,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;aAC9B,CAAC,CAAC;QACL,CAAC;QAGD,MAAM,UAAU,GAAG,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;QACtF,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,UAAU,CAAC;QACpB,CAAC;QAGD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;QACxF,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAC5C,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAMO,mBAAmB,CAAC,QAAgB;QAC1C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAE1B,MAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;YACjE,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC;YACH,OAAO,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACzC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAEf,MAAM,CAAC,KAAK,CAAC,uEAAuE,EAAE;gBACpF,QAAQ;gBACR,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAKO,4BAA4B,CAClC,OAAiC,EACjC,gBAAqC,EACrC,iBAAuD,EACvD,kBAAkF;QAElF,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,SAAS,GAAG,IAKjB,CAAC;YACF,IAAI,SAAS,CAAC,IAAI,KAAK,aAAa,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;gBAC/D,SAAS;YACX,CAAC;YAED,MAAM,QAAQ,GAAG,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,SAAS,CAAC;YAC1E,MAAM,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;YAErE,mBAAmB,CAAC,kBAAkB,CACpC;gBACE,SAAS,EAAE,SAAS,CAAC,WAAW;gBAChC,QAAQ;gBACR,KAAK,EAAE,SAAS;gBAChB,MAAM,EAAE;oBACN,OAAO,EACL,OAAO,SAAS,CAAC,OAAO,KAAK,QAAQ;wBACnC,CAAC,CAAC,SAAS,CAAC,OAAO;wBACnB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC;oBACvC,OAAO,EAAE,SAAS,CAAC,QAAQ,IAAI,KAAK;iBACrC;aACF,EACD,EAAE,GAAG,kBAAkB,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,CACjD,CAAC;YAEF,gBAAgB,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YAC/C,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;CACF;AAED,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,yBAAyB,EAAE,CAAC"}
1
+ {"version":3,"file":"chat-event-forwarder.service.js","sourceRoot":"","sources":["../../../../src/backend/services/chat-event-forwarder.service.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { SessionStatus } from '../../../prisma/generated/client.js';
1
+ import type { SessionStatus } from '../../../prisma/generated/client.js';
2
2
  export interface CIFailureDetails {
3
3
  failedChecks: Array<{
4
4
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ci-fixer.service.d.ts","sourceRoot":"","sources":["../../../../src/backend/services/ci-fixer.service.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAYnD,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,KAAK,CAAC;QAClB,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC,CAAC;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,MAAM,WAAW,GACnB;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GACxC;IAAE,MAAM,EAAE,gBAAgB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAC/C;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACrC;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvC,cAAM,cAAc;IAElB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA2C;IAMlE,YAAY,CAAC,MAAM,EAAE;QACzB,WAAW,EAAE,MAAM,CAAC;QACpB,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,cAAc,CAAC,EAAE,gBAAgB,CAAC;KACnC,GAAG,OAAO,CAAC,WAAW,CAAC;YAwBV,cAAc;IAqKtB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAWzD,qBAAqB,CACzB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,aAAa,CAAA;KAAE,GAAG,IAAI,CAAC;IAalD,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA8B3D,OAAO,CAAC,kBAAkB;CAoC3B;AAED,eAAO,MAAM,cAAc,gBAAuB,CAAC"}
1
+ {"version":3,"file":"ci-fixer.service.d.ts","sourceRoot":"","sources":["../../../../src/backend/services/ci-fixer.service.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AASxD,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,KAAK,CAAC;QAClB,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC,CAAC;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,MAAM,WAAW,GACnB;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GACxC;IAAE,MAAM,EAAE,gBAAgB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAC/C;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACrC;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvC,cAAM,cAAc;IAClB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA2C;IAElE,YAAY,CAAC,MAAM,EAAE;QACzB,WAAW,EAAE,MAAM,CAAC;QACpB,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,cAAc,CAAC,EAAE,gBAAgB,CAAC;KACnC,GAAG,OAAO,CAAC,WAAW,CAAC;YAmBV,cAAc;IA0CtB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAQzD,qBAAqB,CACzB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,aAAa,CAAA;KAAE,GAAG,IAAI,CAAC;IAIlD,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA2B3D,OAAO,CAAC,kBAAkB;CAoC3B;AAED,eAAO,MAAM,cAAc,gBAAuB,CAAC"}
@@ -1,8 +1,4 @@
1
- import { SessionStatus } from '../../../prisma/generated/client.js';
2
- import { prisma } from '../db.js';
3
- import { claudeSessionAccessor } from '../resource_accessors/claude-session.accessor.js';
4
- import { workspaceAccessor } from '../resource_accessors/workspace.accessor.js';
5
- import { configService } from './config.service.js';
1
+ import { fixerSessionService } from './fixer-session.service.js';
6
2
  import { createLogger } from './logger.service.js';
7
3
  import { sessionService } from './session.service.js';
8
4
  const logger = createLogger('ci-fixer');
@@ -28,124 +24,28 @@ class CIFixerService {
28
24
  async doTriggerCIFix(params) {
29
25
  const { workspaceId, prUrl, prNumber, failureDetails } = params;
30
26
  try {
31
- const workspace = await workspaceAccessor.findById(workspaceId);
32
- if (!workspace?.worktreePath) {
33
- logger.warn('Workspace not ready for CI fix', { workspaceId });
34
- return { status: 'skipped', reason: 'Workspace not ready (no worktree path)' };
35
- }
36
- const result = await prisma.$transaction(async (tx) => {
37
- const existingSession = await tx.claudeSession.findFirst({
38
- where: {
39
- workspaceId,
40
- workflow: CI_FIX_WORKFLOW,
41
- status: { in: [SessionStatus.RUNNING, SessionStatus.IDLE] },
42
- },
43
- orderBy: { createdAt: 'desc' },
44
- });
45
- if (existingSession) {
46
- const isWorking = sessionService.isSessionWorking(existingSession.id);
47
- if (isWorking) {
48
- logger.info('CI fixing session already active and working', {
49
- workspaceId,
50
- sessionId: existingSession.id,
51
- });
52
- return {
53
- action: 'already_fixing',
54
- sessionId: existingSession.id,
55
- };
56
- }
57
- if (existingSession.status === SessionStatus.RUNNING) {
58
- logger.info('CI fixing session exists and running, will send new prompt', {
59
- workspaceId,
60
- sessionId: existingSession.id,
61
- });
62
- return {
63
- action: 'send_message',
64
- sessionId: existingSession.id,
65
- };
66
- }
67
- logger.info('Restarting idle CI fixing session', {
68
- workspaceId,
69
- sessionId: existingSession.id,
70
- });
71
- return {
72
- action: 'restart',
73
- sessionId: existingSession.id,
74
- };
75
- }
76
- const allSessions = await tx.claudeSession.findMany({
77
- where: { workspaceId },
78
- select: { id: true },
79
- });
80
- const maxSessions = configService.getMaxSessionsPerWorkspace();
81
- if (allSessions.length >= maxSessions) {
82
- logger.warn('Cannot create CI fix session: workspace session limit reached', {
83
- workspaceId,
84
- currentSessions: allSessions.length,
85
- maxSessions,
86
- });
87
- return {
88
- action: 'limit_reached',
89
- };
90
- }
91
- const recentSession = await tx.claudeSession.findFirst({
92
- where: { workspaceId, workflow: { not: CI_FIX_WORKFLOW } },
93
- orderBy: { updatedAt: 'desc' },
94
- select: { model: true },
95
- });
96
- const model = recentSession?.model ?? 'sonnet';
97
- const newSession = await tx.claudeSession.create({
98
- data: {
99
- workspaceId,
100
- workflow: CI_FIX_WORKFLOW,
101
- name: 'CI Fixing',
102
- model,
103
- status: SessionStatus.IDLE,
104
- },
105
- });
106
- logger.info('Created new CI fixing session', {
27
+ const result = await fixerSessionService.acquireAndDispatch({
28
+ workspaceId,
29
+ workflow: CI_FIX_WORKFLOW,
30
+ sessionName: 'CI Fixing',
31
+ runningIdleAction: 'send_message',
32
+ buildPrompt: () => this.buildInitialPrompt(prUrl, prNumber, failureDetails),
33
+ });
34
+ if (result.status === 'started') {
35
+ logger.info('CI fixing session started', {
107
36
  workspaceId,
108
- sessionId: newSession.id,
109
- model,
37
+ sessionId: result.sessionId,
38
+ prNumber,
110
39
  });
111
- return {
112
- action: 'start',
113
- sessionId: newSession.id,
114
- };
115
- });
116
- if (result.action === 'limit_reached') {
117
- return { status: 'skipped', reason: 'Workspace session limit reached' };
40
+ return { status: 'started', sessionId: result.sessionId };
118
41
  }
119
- const initialPrompt = this.buildInitialPrompt(prUrl, prNumber, failureDetails);
120
- if (result.action === 'already_fixing') {
42
+ if (result.status === 'already_active') {
121
43
  return { status: 'already_fixing', sessionId: result.sessionId };
122
44
  }
123
- if (result.action === 'send_message') {
124
- const client = sessionService.getClient(result.sessionId);
125
- if (client) {
126
- client.sendMessage(initialPrompt).catch((error) => {
127
- logger.warn('Failed to send CI failure notification', {
128
- workspaceId,
129
- sessionId: result.sessionId,
130
- error,
131
- });
132
- });
133
- logger.info('Sent CI failure notification to existing session', {
134
- workspaceId,
135
- sessionId: result.sessionId,
136
- });
137
- }
138
- return { status: 'already_fixing', sessionId: result.sessionId };
45
+ if (result.status === 'skipped') {
46
+ return { status: 'skipped', reason: result.reason };
139
47
  }
140
- await sessionService.startClaudeSession(result.sessionId, {
141
- initialPrompt,
142
- });
143
- logger.info('CI fixing session started', {
144
- workspaceId,
145
- sessionId: result.sessionId,
146
- prNumber,
147
- });
148
- return { status: 'started', sessionId: result.sessionId };
48
+ return { status: 'error', error: result.error };
149
49
  }
150
50
  catch (error) {
151
51
  const errorMessage = error instanceof Error ? error.message : String(error);
@@ -161,10 +61,7 @@ class CIFixerService {
161
61
  return sessionService.isSessionWorking(session.id);
162
62
  }
163
63
  async getActiveCIFixSession(workspaceId) {
164
- const sessions = await claudeSessionAccessor.findByWorkspaceId(workspaceId);
165
- const ciFixSession = sessions.find((s) => s.workflow === CI_FIX_WORKFLOW &&
166
- (s.status === SessionStatus.RUNNING || s.status === SessionStatus.IDLE));
167
- return ciFixSession ? { id: ciFixSession.id, status: ciFixSession.status } : null;
64
+ return await fixerSessionService.getActiveSession(workspaceId, CI_FIX_WORKFLOW);
168
65
  }
169
66
  async notifyCIPassed(workspaceId) {
170
67
  const session = await this.getActiveCIFixSession(workspaceId);
@@ -1 +1 @@
1
- {"version":3,"file":"ci-fixer.service.js","sourceRoot":"","sources":["../../../../src/backend/services/ci-fixer.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ci-fixer.service.js","sourceRoot":"","sources":["../../../../src/backend/services/ci-fixer.service.ts"],"names":[],"mappings":"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"}