factory-factory 0.2.5 → 0.2.6

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 (329) hide show
  1. package/dist/client/assets/{_basePickBy-BXw54oMQ.js → _basePickBy-B1TXLukC.js} +1 -1
  2. package/dist/client/assets/{_baseUniq-_2-lN-JZ.js → _baseUniq-C997CyNN.js} +1 -1
  3. package/dist/client/assets/{arc-DaCKgXo4.js → arc-Dj9rabaY.js} +1 -1
  4. package/dist/client/assets/{architectureDiagram-VXUJARFQ-D5dlDvyJ.js → architectureDiagram-VXUJARFQ-CDb4dzGu.js} +1 -1
  5. package/dist/client/assets/{blockDiagram-VD42YOAC-CEAiD2S_.js → blockDiagram-VD42YOAC-C0GqgSqb.js} +1 -1
  6. package/dist/client/assets/{c4Diagram-YG6GDRKO-DTNRx2b5.js → c4Diagram-YG6GDRKO-DwI5UcIR.js} +1 -1
  7. package/dist/client/assets/channel-CUWT3YnL.js +1 -0
  8. package/dist/client/assets/{chunk-4BX2VUAB-yvp0WNZ0.js → chunk-4BX2VUAB-B-xUvS2Q.js} +1 -1
  9. package/dist/client/assets/{chunk-55IACEB6-Cse3ExNd.js → chunk-55IACEB6-DnfB7mO6.js} +1 -1
  10. package/dist/client/assets/{chunk-B4BG7PRW-Bl2GpPLn.js → chunk-B4BG7PRW-C3mlyOKh.js} +1 -1
  11. package/dist/client/assets/{chunk-DI55MBZ5-CV5Cqkss.js → chunk-DI55MBZ5-CWrY69vI.js} +1 -1
  12. package/dist/client/assets/{chunk-FMBD7UC4-CP3yjlO6.js → chunk-FMBD7UC4-DqIuy8cX.js} +1 -1
  13. package/dist/client/assets/{chunk-QN33PNHL-DUdJaEPB.js → chunk-QN33PNHL-DaQ7aatm.js} +1 -1
  14. package/dist/client/assets/{chunk-QZHKN3VN-DYTUnPIc.js → chunk-QZHKN3VN-DIAhn72l.js} +1 -1
  15. package/dist/client/assets/{chunk-TZMSLE5B-CtWiqR24.js → chunk-TZMSLE5B-Vv2yea82.js} +1 -1
  16. package/dist/client/assets/classDiagram-2ON5EDUG-DIs9Yb8N.js +1 -0
  17. package/dist/client/assets/classDiagram-v2-WZHVMYZB-DIs9Yb8N.js +1 -0
  18. package/dist/client/assets/clone-DWe4ixM1.js +1 -0
  19. package/dist/client/assets/{cose-bilkent-S5V4N54A-B67RdhOB.js → cose-bilkent-S5V4N54A-DCt0h-5b.js} +1 -1
  20. package/dist/client/assets/{dagre-6UL2VRFP-D9u_oxJL.js → dagre-6UL2VRFP-Dx9zq5ck.js} +1 -1
  21. package/dist/client/assets/{diagram-PSM6KHXK-DOWfPnpa.js → diagram-PSM6KHXK-DWDEKgzo.js} +1 -1
  22. package/dist/client/assets/{diagram-QEK2KX5R-CqJwZbAA.js → diagram-QEK2KX5R-DWNDqpN2.js} +1 -1
  23. package/dist/client/assets/{diagram-S2PKOQOG-D0ri9ztm.js → diagram-S2PKOQOG-DG0T0gs6.js} +1 -1
  24. package/dist/client/assets/{erDiagram-Q2GNP2WA-0cRKPUY7.js → erDiagram-Q2GNP2WA-CqDgOfYs.js} +1 -1
  25. package/dist/client/assets/{flowDiagram-NV44I4VS-Cj_5-ww1.js → flowDiagram-NV44I4VS-V_QvSvWm.js} +1 -1
  26. package/dist/client/assets/{ganttDiagram-JELNMOA3-Cwm2arni.js → ganttDiagram-JELNMOA3-BCPELgz0.js} +1 -1
  27. package/dist/client/assets/{gitGraphDiagram-NY62KEGX-DKyLuO26.js → gitGraphDiagram-NY62KEGX-D31RxlxC.js} +1 -1
  28. package/dist/client/assets/{graph-BhRkLhV1.js → graph-D1yJ-cNO.js} +1 -1
  29. package/dist/client/assets/{index-1HR_eYGL.js → index-CgaNRc7X.js} +210 -211
  30. package/dist/client/assets/index-EHCwHZbd.css +1 -0
  31. package/dist/client/assets/{infoDiagram-WHAUD3N6-DuzPbELj.js → infoDiagram-WHAUD3N6-BIE2gcL7.js} +1 -1
  32. package/dist/client/assets/{journeyDiagram-XKPGCS4Q-BfearpNr.js → journeyDiagram-XKPGCS4Q-B5q1A61b.js} +1 -1
  33. package/dist/client/assets/{kanban-definition-3W4ZIXB7-R5KMtAj4.js → kanban-definition-3W4ZIXB7-D7FRiZXq.js} +1 -1
  34. package/dist/client/assets/{layout-B-tL36G2.js → layout-X-mlIEi7.js} +1 -1
  35. package/dist/client/assets/{linear-CvIBiHN-.js → linear-CGpwoS11.js} +1 -1
  36. package/dist/client/assets/{mindmap-definition-VGOIOE7T-CHYN0wBz.js → mindmap-definition-VGOIOE7T-XMWWZCmt.js} +1 -1
  37. package/dist/client/assets/{pieDiagram-ADFJNKIX-LkA8WwD-.js → pieDiagram-ADFJNKIX-4wqJE3Xv.js} +1 -1
  38. package/dist/client/assets/{quadrantDiagram-AYHSOK5B-B5s8Qc9j.js → quadrantDiagram-AYHSOK5B-ApAId2lG.js} +1 -1
  39. package/dist/client/assets/{requirementDiagram-UZGBJVZJ-BMLpjBJA.js → requirementDiagram-UZGBJVZJ-CNkajZw2.js} +1 -1
  40. package/dist/client/assets/{sankeyDiagram-TZEHDZUN-BIj9RGlp.js → sankeyDiagram-TZEHDZUN-BFLGpYF1.js} +1 -1
  41. package/dist/client/assets/{sequenceDiagram-WL72ISMW-uGM-Jh_O.js → sequenceDiagram-WL72ISMW-DB-mQnOQ.js} +1 -1
  42. package/dist/client/assets/{stateDiagram-FKZM4ZOC-CQQhnUok.js → stateDiagram-FKZM4ZOC-7gdB28fK.js} +1 -1
  43. package/dist/client/assets/stateDiagram-v2-4FDKWEC3-6YMfUfib.js +1 -0
  44. package/dist/client/assets/{terminal-instance-DpK3PfW4.js → terminal-instance-BHOJvhaZ.js} +1 -1
  45. package/dist/client/assets/{timeline-definition-IT6M3QCI-BusXMYfI.js → timeline-definition-IT6M3QCI-Cc-mzevR.js} +1 -1
  46. package/dist/client/assets/{treemap-KMMF4GRG-XF3-w8dz.js → treemap-KMMF4GRG-BSCzOTjP.js} +1 -1
  47. package/dist/client/assets/{xychartDiagram-PRI3JC2R-DhKTXxb3.js → xychartDiagram-PRI3JC2R-DA09PDY1.js} +1 -1
  48. package/dist/client/index.html +2 -2
  49. package/dist/prisma/generated/internal/class.js +2 -2
  50. package/dist/prisma/generated/internal/class.js.map +1 -1
  51. package/dist/prisma/generated/internal/prismaNamespace.d.ts +1 -4
  52. package/dist/prisma/generated/internal/prismaNamespace.d.ts.map +1 -1
  53. package/dist/prisma/generated/internal/prismaNamespace.js +1 -4
  54. package/dist/prisma/generated/internal/prismaNamespace.js.map +1 -1
  55. package/dist/prisma/generated/internal/prismaNamespaceBrowser.d.ts +1 -4
  56. package/dist/prisma/generated/internal/prismaNamespaceBrowser.d.ts.map +1 -1
  57. package/dist/prisma/generated/internal/prismaNamespaceBrowser.js +1 -4
  58. package/dist/prisma/generated/internal/prismaNamespaceBrowser.js.map +1 -1
  59. package/dist/prisma/generated/models/ClaudeSession.d.ts +36 -1
  60. package/dist/prisma/generated/models/ClaudeSession.d.ts.map +1 -1
  61. package/dist/prisma/generated/models/UserSettings.d.ts +1 -107
  62. package/dist/prisma/generated/models/UserSettings.d.ts.map +1 -1
  63. package/dist/src/backend/app-context.d.ts +2 -6
  64. package/dist/src/backend/app-context.d.ts.map +1 -1
  65. package/dist/src/backend/app-context.js +2 -6
  66. package/dist/src/backend/app-context.js.map +1 -1
  67. package/dist/src/backend/claude/session.d.ts +6 -10
  68. package/dist/src/backend/claude/session.d.ts.map +1 -1
  69. package/dist/src/backend/claude/session.js +129 -32
  70. package/dist/src/backend/claude/session.js.map +1 -1
  71. package/dist/src/backend/claude/session.test.js +213 -20
  72. package/dist/src/backend/claude/session.test.js.map +1 -1
  73. package/dist/src/backend/resource_accessors/claude-session.accessor.d.ts +2 -0
  74. package/dist/src/backend/resource_accessors/claude-session.accessor.d.ts.map +1 -1
  75. package/dist/src/backend/resource_accessors/claude-session.accessor.js +1 -0
  76. package/dist/src/backend/resource_accessors/claude-session.accessor.js.map +1 -1
  77. package/dist/src/backend/resource_accessors/user-settings.accessor.d.ts +0 -4
  78. package/dist/src/backend/resource_accessors/user-settings.accessor.d.ts.map +1 -1
  79. package/dist/src/backend/resource_accessors/user-settings.accessor.js.map +1 -1
  80. package/dist/src/backend/routers/websocket/chat.handler.d.ts.map +1 -1
  81. package/dist/src/backend/routers/websocket/chat.handler.js +0 -2
  82. package/dist/src/backend/routers/websocket/chat.handler.js.map +1 -1
  83. package/dist/src/backend/routers/websocket/dev-logs.handler.d.ts.map +1 -1
  84. package/dist/src/backend/routers/websocket/dev-logs.handler.js +1 -2
  85. package/dist/src/backend/routers/websocket/dev-logs.handler.js.map +1 -1
  86. package/dist/src/backend/routers/websocket/terminal.handler.d.ts.map +1 -1
  87. package/dist/src/backend/routers/websocket/terminal.handler.js +3 -4
  88. package/dist/src/backend/routers/websocket/terminal.handler.js.map +1 -1
  89. package/dist/src/backend/services/chat-event-forwarder.service.d.ts +11 -2
  90. package/dist/src/backend/services/chat-event-forwarder.service.d.ts.map +1 -1
  91. package/dist/src/backend/services/chat-event-forwarder.service.js +254 -134
  92. package/dist/src/backend/services/chat-event-forwarder.service.js.map +1 -1
  93. package/dist/src/backend/services/chat-event-forwarder.service.test.d.ts +2 -0
  94. package/dist/src/backend/services/chat-event-forwarder.service.test.d.ts.map +1 -0
  95. package/dist/src/backend/services/chat-event-forwarder.service.test.js +133 -0
  96. package/dist/src/backend/services/chat-event-forwarder.service.test.js.map +1 -0
  97. package/dist/src/backend/services/chat-message-handlers/handlers/load-session.handler.d.ts.map +1 -1
  98. package/dist/src/backend/services/chat-message-handlers/handlers/load-session.handler.js +24 -99
  99. package/dist/src/backend/services/chat-message-handlers/handlers/load-session.handler.js.map +1 -1
  100. package/dist/src/backend/services/chat-message-handlers/handlers/permission-response.handler.js +4 -4
  101. package/dist/src/backend/services/chat-message-handlers/handlers/permission-response.handler.js.map +1 -1
  102. package/dist/src/backend/services/chat-message-handlers/handlers/question-response.handler.js +4 -4
  103. package/dist/src/backend/services/chat-message-handlers/handlers/question-response.handler.js.map +1 -1
  104. package/dist/src/backend/services/chat-message-handlers/handlers/queue-message.handler.d.ts.map +1 -1
  105. package/dist/src/backend/services/chat-message-handlers/handlers/queue-message.handler.js +26 -7
  106. package/dist/src/backend/services/chat-message-handlers/handlers/queue-message.handler.js.map +1 -1
  107. package/dist/src/backend/services/chat-message-handlers/handlers/remove-queued-message.handler.d.ts.map +1 -1
  108. package/dist/src/backend/services/chat-message-handlers/handlers/remove-queued-message.handler.js +7 -4
  109. package/dist/src/backend/services/chat-message-handlers/handlers/remove-queued-message.handler.js.map +1 -1
  110. package/dist/src/backend/services/chat-message-handlers/handlers/set-model.handler.d.ts.map +1 -1
  111. package/dist/src/backend/services/chat-message-handlers/handlers/set-model.handler.js +0 -1
  112. package/dist/src/backend/services/chat-message-handlers/handlers/set-model.handler.js.map +1 -1
  113. package/dist/src/backend/services/chat-message-handlers/handlers/set-thinking-budget.handler.d.ts.map +1 -1
  114. package/dist/src/backend/services/chat-message-handlers/handlers/set-thinking-budget.handler.js +0 -1
  115. package/dist/src/backend/services/chat-message-handlers/handlers/set-thinking-budget.handler.js.map +1 -1
  116. package/dist/src/backend/services/chat-message-handlers/handlers/start.handler.js +4 -4
  117. package/dist/src/backend/services/chat-message-handlers/handlers/start.handler.js.map +1 -1
  118. package/dist/src/backend/services/chat-message-handlers/handlers/stop.handler.js +3 -3
  119. package/dist/src/backend/services/chat-message-handlers/handlers/stop.handler.js.map +1 -1
  120. package/dist/src/backend/services/chat-message-handlers/interactive-response.d.ts +1 -2
  121. package/dist/src/backend/services/chat-message-handlers/interactive-response.d.ts.map +1 -1
  122. package/dist/src/backend/services/chat-message-handlers/interactive-response.js +31 -23
  123. package/dist/src/backend/services/chat-message-handlers/interactive-response.js.map +1 -1
  124. package/dist/src/backend/services/chat-message-handlers/interactive-response.test.d.ts +2 -0
  125. package/dist/src/backend/services/chat-message-handlers/interactive-response.test.d.ts.map +1 -0
  126. package/dist/src/backend/services/chat-message-handlers/interactive-response.test.js +83 -0
  127. package/dist/src/backend/services/chat-message-handlers/interactive-response.test.js.map +1 -0
  128. package/dist/src/backend/services/chat-message-handlers/registry.d.ts.map +1 -1
  129. package/dist/src/backend/services/chat-message-handlers/registry.js +0 -4
  130. package/dist/src/backend/services/chat-message-handlers/registry.js.map +1 -1
  131. package/dist/src/backend/services/chat-message-handlers/utils.d.ts +1 -2
  132. package/dist/src/backend/services/chat-message-handlers/utils.d.ts.map +1 -1
  133. package/dist/src/backend/services/chat-message-handlers/utils.js +1 -10
  134. package/dist/src/backend/services/chat-message-handlers/utils.js.map +1 -1
  135. package/dist/src/backend/services/chat-message-handlers.service.d.ts.map +1 -1
  136. package/dist/src/backend/services/chat-message-handlers.service.js +35 -13
  137. package/dist/src/backend/services/chat-message-handlers.service.js.map +1 -1
  138. package/dist/src/backend/services/data-backup.service.d.ts.map +1 -1
  139. package/dist/src/backend/services/data-backup.service.js +3 -19
  140. package/dist/src/backend/services/data-backup.service.js.map +1 -1
  141. package/dist/src/backend/services/data-backup.service.test.js +0 -18
  142. package/dist/src/backend/services/data-backup.service.test.js.map +1 -1
  143. package/dist/src/backend/services/fixer-session.service.d.ts.map +1 -1
  144. package/dist/src/backend/services/fixer-session.service.js +9 -0
  145. package/dist/src/backend/services/fixer-session.service.js.map +1 -1
  146. package/dist/src/backend/services/fixer-session.service.test.js +3 -0
  147. package/dist/src/backend/services/fixer-session.service.test.js.map +1 -1
  148. package/dist/src/backend/services/git-ops.service.d.ts.map +1 -1
  149. package/dist/src/backend/services/git-ops.service.js +1 -1
  150. package/dist/src/backend/services/git-ops.service.js.map +1 -1
  151. package/dist/src/backend/services/index.d.ts +1 -3
  152. package/dist/src/backend/services/index.d.ts.map +1 -1
  153. package/dist/src/backend/services/index.js +1 -3
  154. package/dist/src/backend/services/index.js.map +1 -1
  155. package/dist/src/backend/services/ratchet.service.d.ts +10 -1
  156. package/dist/src/backend/services/ratchet.service.d.ts.map +1 -1
  157. package/dist/src/backend/services/ratchet.service.js +241 -32
  158. package/dist/src/backend/services/ratchet.service.js.map +1 -1
  159. package/dist/src/backend/services/ratchet.service.test.js +148 -19
  160. package/dist/src/backend/services/ratchet.service.test.js.map +1 -1
  161. package/dist/src/backend/services/session-store.service.d.ts +73 -0
  162. package/dist/src/backend/services/session-store.service.d.ts.map +1 -0
  163. package/dist/src/backend/services/session-store.service.js +732 -0
  164. package/dist/src/backend/services/session-store.service.js.map +1 -0
  165. package/dist/src/backend/services/session-store.service.test.d.ts +2 -0
  166. package/dist/src/backend/services/session-store.service.test.d.ts.map +1 -0
  167. package/dist/src/backend/services/session-store.service.test.js +738 -0
  168. package/dist/src/backend/services/session-store.service.test.js.map +1 -0
  169. package/dist/src/backend/services/session.prompt-builder.d.ts +2 -0
  170. package/dist/src/backend/services/session.prompt-builder.d.ts.map +1 -1
  171. package/dist/src/backend/services/session.prompt-builder.js +3 -1
  172. package/dist/src/backend/services/session.prompt-builder.js.map +1 -1
  173. package/dist/src/backend/services/session.prompt-builder.test.js +66 -1
  174. package/dist/src/backend/services/session.prompt-builder.test.js.map +1 -1
  175. package/dist/src/backend/services/session.repository.d.ts +3 -2
  176. package/dist/src/backend/services/session.repository.d.ts.map +1 -1
  177. package/dist/src/backend/services/session.repository.js +14 -0
  178. package/dist/src/backend/services/session.repository.js.map +1 -1
  179. package/dist/src/backend/services/session.repository.test.d.ts +2 -0
  180. package/dist/src/backend/services/session.repository.test.d.ts.map +1 -0
  181. package/dist/src/backend/services/session.repository.test.js +60 -0
  182. package/dist/src/backend/services/session.repository.test.js.map +1 -0
  183. package/dist/src/backend/services/session.service.d.ts.map +1 -1
  184. package/dist/src/backend/services/session.service.js +6 -1
  185. package/dist/src/backend/services/session.service.js.map +1 -1
  186. package/dist/src/backend/services/session.service.test.js +3 -1
  187. package/dist/src/backend/services/session.service.test.js.map +1 -1
  188. package/dist/src/backend/services/workspace-activity.service.d.ts.map +1 -1
  189. package/dist/src/backend/services/workspace-activity.service.js +2 -1
  190. package/dist/src/backend/services/workspace-activity.service.js.map +1 -1
  191. package/dist/src/backend/services/workspace-activity.service.test.d.ts +2 -0
  192. package/dist/src/backend/services/workspace-activity.service.test.d.ts.map +1 -0
  193. package/dist/src/backend/services/workspace-activity.service.test.js +32 -0
  194. package/dist/src/backend/services/workspace-activity.service.test.js.map +1 -0
  195. package/dist/src/backend/services/workspace-creation.service.d.ts.map +1 -1
  196. package/dist/src/backend/services/workspace-creation.service.js +6 -0
  197. package/dist/src/backend/services/workspace-creation.service.js.map +1 -1
  198. package/dist/src/backend/services/workspace-creation.service.test.js +2 -8
  199. package/dist/src/backend/services/workspace-creation.service.test.js.map +1 -1
  200. package/dist/src/backend/services/workspace-query.service.d.ts +3 -0
  201. package/dist/src/backend/services/workspace-query.service.d.ts.map +1 -1
  202. package/dist/src/backend/services/workspace-query.service.js +24 -0
  203. package/dist/src/backend/services/workspace-query.service.js.map +1 -1
  204. package/dist/src/backend/services/worktree-lifecycle.service.js +2 -2
  205. package/dist/src/backend/services/worktree-lifecycle.service.js.map +1 -1
  206. package/dist/src/backend/trpc/admin.trpc.d.ts +9 -6
  207. package/dist/src/backend/trpc/admin.trpc.d.ts.map +1 -1
  208. package/dist/src/backend/trpc/index.d.ts +30 -18
  209. package/dist/src/backend/trpc/index.d.ts.map +1 -1
  210. package/dist/src/backend/trpc/project.trpc.d.ts +9 -0
  211. package/dist/src/backend/trpc/project.trpc.d.ts.map +1 -1
  212. package/dist/src/backend/trpc/project.trpc.js +12 -0
  213. package/dist/src/backend/trpc/project.trpc.js.map +1 -1
  214. package/dist/src/backend/trpc/project.trpc.test.d.ts +2 -0
  215. package/dist/src/backend/trpc/project.trpc.test.d.ts.map +1 -0
  216. package/dist/src/backend/trpc/project.trpc.test.js +73 -0
  217. package/dist/src/backend/trpc/project.trpc.test.js.map +1 -0
  218. package/dist/src/backend/trpc/session.trpc.d.ts +7 -0
  219. package/dist/src/backend/trpc/session.trpc.d.ts.map +1 -1
  220. package/dist/src/backend/trpc/session.trpc.js +12 -3
  221. package/dist/src/backend/trpc/session.trpc.js.map +1 -1
  222. package/dist/src/backend/trpc/user-settings.trpc.d.ts +0 -12
  223. package/dist/src/backend/trpc/user-settings.trpc.d.ts.map +1 -1
  224. package/dist/src/backend/trpc/user-settings.trpc.js +1 -13
  225. package/dist/src/backend/trpc/user-settings.trpc.js.map +1 -1
  226. package/dist/src/backend/trpc/workspace/init.trpc.d.ts +1 -0
  227. package/dist/src/backend/trpc/workspace/init.trpc.d.ts.map +1 -1
  228. package/dist/src/backend/trpc/workspace/workspace-helpers.d.ts +1 -0
  229. package/dist/src/backend/trpc/workspace/workspace-helpers.d.ts.map +1 -1
  230. package/dist/src/backend/trpc/workspace.trpc.d.ts +5 -0
  231. package/dist/src/backend/trpc/workspace.trpc.d.ts.map +1 -1
  232. package/dist/src/shared/claude/protocol.d.ts +198 -7
  233. package/dist/src/shared/claude/protocol.d.ts.map +1 -1
  234. package/dist/src/shared/claude/protocol.js +182 -0
  235. package/dist/src/shared/claude/protocol.js.map +1 -1
  236. package/dist/src/shared/pending-request-types.d.ts +1 -0
  237. package/dist/src/shared/pending-request-types.d.ts.map +1 -1
  238. package/dist/src/shared/pending-request-types.js +3 -0
  239. package/dist/src/shared/pending-request-types.js.map +1 -1
  240. package/dist/src/shared/schemas/export-data.schema.d.ts +14 -9
  241. package/dist/src/shared/schemas/export-data.schema.d.ts.map +1 -1
  242. package/dist/src/shared/schemas/export-data.schema.js +4 -3
  243. package/dist/src/shared/schemas/export-data.schema.js.map +1 -1
  244. package/dist/src/shared/websocket/chat-message.schema.d.ts +0 -10
  245. package/dist/src/shared/websocket/chat-message.schema.d.ts.map +1 -1
  246. package/dist/src/shared/websocket/chat-message.schema.js +0 -2
  247. package/dist/src/shared/websocket/chat-message.schema.js.map +1 -1
  248. package/dist/src/shared/websocket/index.d.ts +1 -1
  249. package/dist/src/shared/websocket/index.d.ts.map +1 -1
  250. package/dist/src/shared/websocket/index.js.map +1 -1
  251. package/dist/tsconfig.backend.tsbuildinfo +1 -1
  252. package/package.json +1 -1
  253. package/prisma/migrations/20260208000000_remove_unused_ratchet_settings/migration.sql +12 -0
  254. package/prisma/migrations/20260208153000_add_claude_project_path/migration.sql +2 -0
  255. package/prisma/schema.prisma +1 -4
  256. package/dist/client/assets/channel-BusoDFL5.js +0 -1
  257. package/dist/client/assets/classDiagram-2ON5EDUG-C3RMRasv.js +0 -1
  258. package/dist/client/assets/classDiagram-v2-WZHVMYZB-C3RMRasv.js +0 -1
  259. package/dist/client/assets/clone-D6B-nWvg.js +0 -1
  260. package/dist/client/assets/index-DHENAn70.css +0 -1
  261. package/dist/client/assets/stateDiagram-v2-4FDKWEC3-BUJPEM7D.js +0 -1
  262. package/dist/src/backend/services/chat-message-handlers/handlers/get-history.handler.d.ts +0 -4
  263. package/dist/src/backend/services/chat-message-handlers/handlers/get-history.handler.d.ts.map +0 -1
  264. package/dist/src/backend/services/chat-message-handlers/handlers/get-history.handler.js +0 -16
  265. package/dist/src/backend/services/chat-message-handlers/handlers/get-history.handler.js.map +0 -1
  266. package/dist/src/backend/services/chat-message-handlers/handlers/get-queue.handler.d.ts +0 -4
  267. package/dist/src/backend/services/chat-message-handlers/handlers/get-queue.handler.d.ts.map +0 -1
  268. package/dist/src/backend/services/chat-message-handlers/handlers/get-queue.handler.js +0 -17
  269. package/dist/src/backend/services/chat-message-handlers/handlers/get-queue.handler.js.map +0 -1
  270. package/dist/src/backend/services/chat-message-handlers/handlers/handlers.test.d.ts +0 -2
  271. package/dist/src/backend/services/chat-message-handlers/handlers/handlers.test.d.ts.map +0 -1
  272. package/dist/src/backend/services/chat-message-handlers/handlers/handlers.test.js +0 -628
  273. package/dist/src/backend/services/chat-message-handlers/handlers/handlers.test.js.map +0 -1
  274. package/dist/src/backend/services/chat-transport-adapter.service.d.ts +0 -12
  275. package/dist/src/backend/services/chat-transport-adapter.service.d.ts.map +0 -1
  276. package/dist/src/backend/services/chat-transport-adapter.service.js +0 -77
  277. package/dist/src/backend/services/chat-transport-adapter.service.js.map +0 -1
  278. package/dist/src/backend/services/chat-transport-adapter.service.test.d.ts +0 -2
  279. package/dist/src/backend/services/chat-transport-adapter.service.test.d.ts.map +0 -1
  280. package/dist/src/backend/services/chat-transport-adapter.service.test.js +0 -81
  281. package/dist/src/backend/services/chat-transport-adapter.service.test.js.map +0 -1
  282. package/dist/src/backend/services/event-compression.service.d.ts +0 -37
  283. package/dist/src/backend/services/event-compression.service.d.ts.map +0 -1
  284. package/dist/src/backend/services/event-compression.service.js +0 -235
  285. package/dist/src/backend/services/event-compression.service.js.map +0 -1
  286. package/dist/src/backend/services/event-compression.service.test.d.ts +0 -2
  287. package/dist/src/backend/services/event-compression.service.test.d.ts.map +0 -1
  288. package/dist/src/backend/services/event-compression.service.test.js +0 -336
  289. package/dist/src/backend/services/event-compression.service.test.js.map +0 -1
  290. package/dist/src/backend/services/message-event-store.d.ts +0 -12
  291. package/dist/src/backend/services/message-event-store.d.ts.map +0 -1
  292. package/dist/src/backend/services/message-event-store.js +0 -21
  293. package/dist/src/backend/services/message-event-store.js.map +0 -1
  294. package/dist/src/backend/services/message-event-store.test.d.ts +0 -2
  295. package/dist/src/backend/services/message-event-store.test.d.ts.map +0 -1
  296. package/dist/src/backend/services/message-event-store.test.js +0 -32
  297. package/dist/src/backend/services/message-event-store.test.js.map +0 -1
  298. package/dist/src/backend/services/message-queue.service.d.ts +0 -21
  299. package/dist/src/backend/services/message-queue.service.d.ts.map +0 -1
  300. package/dist/src/backend/services/message-queue.service.js +0 -105
  301. package/dist/src/backend/services/message-queue.service.js.map +0 -1
  302. package/dist/src/backend/services/message-queue.service.test.d.ts +0 -2
  303. package/dist/src/backend/services/message-queue.service.test.d.ts.map +0 -1
  304. package/dist/src/backend/services/message-queue.service.test.js +0 -278
  305. package/dist/src/backend/services/message-queue.service.test.js.map +0 -1
  306. package/dist/src/backend/services/message-state-machine.d.ts +0 -37
  307. package/dist/src/backend/services/message-state-machine.d.ts.map +0 -1
  308. package/dist/src/backend/services/message-state-machine.js +0 -268
  309. package/dist/src/backend/services/message-state-machine.js.map +0 -1
  310. package/dist/src/backend/services/message-state-machine.test.d.ts +0 -2
  311. package/dist/src/backend/services/message-state-machine.test.d.ts.map +0 -1
  312. package/dist/src/backend/services/message-state-machine.test.js +0 -67
  313. package/dist/src/backend/services/message-state-machine.test.js.map +0 -1
  314. package/dist/src/backend/services/message-state.service.d.ts +0 -77
  315. package/dist/src/backend/services/message-state.service.d.ts.map +0 -1
  316. package/dist/src/backend/services/message-state.service.js +0 -279
  317. package/dist/src/backend/services/message-state.service.js.map +0 -1
  318. package/dist/src/backend/services/message-state.service.test.d.ts +0 -2
  319. package/dist/src/backend/services/message-state.service.test.d.ts.map +0 -1
  320. package/dist/src/backend/services/message-state.service.test.js +0 -541
  321. package/dist/src/backend/services/message-state.service.test.js.map +0 -1
  322. package/dist/src/backend/services/session-runtime-store.service.d.ts +0 -38
  323. package/dist/src/backend/services/session-runtime-store.service.d.ts.map +0 -1
  324. package/dist/src/backend/services/session-runtime-store.service.js +0 -111
  325. package/dist/src/backend/services/session-runtime-store.service.js.map +0 -1
  326. package/dist/src/backend/services/session-runtime-store.service.test.d.ts +0 -2
  327. package/dist/src/backend/services/session-runtime-store.service.test.d.ts.map +0 -1
  328. package/dist/src/backend/services/session-runtime-store.service.test.js +0 -15
  329. package/dist/src/backend/services/session-runtime-store.service.test.js.map +0 -1
@@ -1 +1 @@
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
+ {"version":3,"file":"chat-event-forwarder.service.js","sourceRoot":"","sources":["../../../../src/backend/services/chat-event-forwarder.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=chat-event-forwarder.service.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-event-forwarder.service.test.d.ts","sourceRoot":"","sources":["../../../../src/backend/services/chat-event-forwarder.service.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,133 @@
1
+ import { EventEmitter } from 'node:events';
2
+ import { beforeEach, describe, expect, it, vi } from 'vitest';
3
+ import { chatEventForwarderService } from './chat-event-forwarder.service.js';
4
+ const mockAppendClaudeEvent = vi.fn();
5
+ const mockEmitDelta = vi.fn();
6
+ const mockSetPendingInteractiveRequest = vi.fn();
7
+ const mockClearPendingInteractiveRequest = vi.fn();
8
+ const mockClearPendingInteractiveRequestIfMatches = vi.fn();
9
+ const mockGetPendingInteractiveRequest = vi.fn();
10
+ const mockGetAllPendingRequests = vi.fn();
11
+ const mockMarkRunning = vi.fn();
12
+ const mockMarkIdle = vi.fn();
13
+ const mockMarkWorkspaceRunning = vi.fn();
14
+ const mockMarkWorkspaceIdle = vi.fn();
15
+ const mockNotifyToolStart = vi.fn();
16
+ const mockNotifyToolComplete = vi.fn();
17
+ const mockSetCachedCommands = vi.fn();
18
+ vi.mock('./session-store.service', () => ({
19
+ sessionStoreService: {
20
+ appendClaudeEvent: (...args) => mockAppendClaudeEvent(...args),
21
+ emitDelta: (...args) => mockEmitDelta(...args),
22
+ setPendingInteractiveRequest: (...args) => mockSetPendingInteractiveRequest(...args),
23
+ clearPendingInteractiveRequest: (...args) => mockClearPendingInteractiveRequest(...args),
24
+ clearPendingInteractiveRequestIfMatches: (...args) => mockClearPendingInteractiveRequestIfMatches(...args),
25
+ getPendingInteractiveRequest: (...args) => mockGetPendingInteractiveRequest(...args),
26
+ getAllPendingRequests: (...args) => mockGetAllPendingRequests(...args),
27
+ markRunning: (...args) => mockMarkRunning(...args),
28
+ markIdle: (...args) => mockMarkIdle(...args),
29
+ },
30
+ }));
31
+ vi.mock('./workspace-activity.service', () => ({
32
+ workspaceActivityService: {
33
+ on: vi.fn(),
34
+ markSessionRunning: (...args) => mockMarkWorkspaceRunning(...args),
35
+ markSessionIdle: (...args) => mockMarkWorkspaceIdle(...args),
36
+ },
37
+ }));
38
+ vi.mock('./slash-command-cache.service', () => ({
39
+ slashCommandCacheService: {
40
+ setCachedCommands: (...args) => mockSetCachedCommands(...args),
41
+ },
42
+ }));
43
+ vi.mock('../interceptors', () => ({
44
+ interceptorRegistry: {
45
+ notifyToolStart: (...args) => mockNotifyToolStart(...args),
46
+ notifyToolComplete: (...args) => mockNotifyToolComplete(...args),
47
+ },
48
+ }));
49
+ vi.mock('./session-file-logger.service', () => ({
50
+ sessionFileLogger: {
51
+ log: vi.fn(),
52
+ },
53
+ }));
54
+ vi.mock('./chat-connection.service', () => ({
55
+ chatConnectionService: {
56
+ values: vi.fn(() => []),
57
+ },
58
+ }));
59
+ vi.mock('./config.service', () => ({
60
+ configService: {
61
+ getDebugConfig: () => ({ chatWebSocket: false }),
62
+ },
63
+ }));
64
+ class MockClaudeClient extends EventEmitter {
65
+ working = false;
66
+ running = true;
67
+ getInitializeResponse() {
68
+ return null;
69
+ }
70
+ isWorking() {
71
+ return this.working;
72
+ }
73
+ isRunning() {
74
+ return this.running;
75
+ }
76
+ setWorking(working) {
77
+ this.working = working;
78
+ }
79
+ }
80
+ describe('ChatEventForwarderService', () => {
81
+ beforeEach(() => {
82
+ vi.clearAllMocks();
83
+ });
84
+ it('does not emit workspace idle when idle callback immediately re-dispatches work', async () => {
85
+ const client = new MockClaudeClient();
86
+ const onDispatchNextMessage = vi.fn(() => {
87
+ client.setWorking(true);
88
+ return Promise.resolve();
89
+ });
90
+ chatEventForwarderService.setupClientEvents('session-idle-race', client, { workspaceId: 'workspace-1', workingDir: '/tmp/project' }, onDispatchNextMessage);
91
+ client.emit('idle');
92
+ await new Promise((resolve) => setTimeout(resolve, 0));
93
+ expect(onDispatchNextMessage).toHaveBeenCalledTimes(1);
94
+ expect(mockMarkWorkspaceIdle).not.toHaveBeenCalled();
95
+ expect(mockMarkRunning).toHaveBeenCalledWith('session-idle-race');
96
+ });
97
+ it('forwards tool_use blocks from assistant message events during live streaming', () => {
98
+ mockAppendClaudeEvent.mockReturnValue(41);
99
+ const client = new MockClaudeClient();
100
+ chatEventForwarderService.setupClientEvents('session-tool-use-fallback', client, { workspaceId: 'workspace-1', workingDir: '/tmp/project' }, vi.fn(async () => {
101
+ }));
102
+ client.emit('message', {
103
+ type: 'assistant',
104
+ timestamp: '2026-02-08T00:00:00.000Z',
105
+ message: {
106
+ role: 'assistant',
107
+ content: [
108
+ { type: 'tool_use', id: 'tool-123', name: 'Read', input: { file_path: 'README.md' } },
109
+ ],
110
+ },
111
+ });
112
+ expect(mockAppendClaudeEvent).toHaveBeenCalledWith('session-tool-use-fallback', expect.objectContaining({
113
+ type: 'stream_event',
114
+ event: expect.objectContaining({
115
+ type: 'content_block_start',
116
+ content_block: expect.objectContaining({
117
+ type: 'tool_use',
118
+ id: 'tool-123',
119
+ }),
120
+ }),
121
+ }));
122
+ expect(mockEmitDelta).toHaveBeenCalledWith('session-tool-use-fallback', expect.objectContaining({
123
+ type: 'claude_message',
124
+ data: expect.objectContaining({
125
+ type: 'stream_event',
126
+ event: expect.objectContaining({
127
+ type: 'content_block_start',
128
+ }),
129
+ }),
130
+ }));
131
+ });
132
+ });
133
+ //# sourceMappingURL=chat-event-forwarder.service.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-event-forwarder.service.test.js","sourceRoot":"","sources":["../../../../src/backend/services/chat-event-forwarder.service.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"load-session.handler.d.ts","sourceRoot":"","sources":["../../../../../../src/backend/services/chat-message-handlers/handlers/load-session.handler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAe7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAInD,wBAAgB,wBAAwB,IAAI,kBAAkB,CAAC,kBAAkB,CAAC,CAuBjF"}
1
+ {"version":3,"file":"load-session.handler.d.ts","sourceRoot":"","sources":["../../../../../../src/backend/services/chat-message-handlers/handlers/load-session.handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAM7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAEnD,wBAAgB,wBAAwB,IAAI,kBAAkB,CAAC,kBAAkB,CAAC,CAwCjF"}
@@ -1,123 +1,48 @@
1
- import { SessionManager } from '../../../claude/index.js';
1
+ import { SessionManager } from '../../../claude/session.js';
2
2
  import { claudeSessionAccessor } from '../../../resource_accessors/claude-session.accessor.js';
3
- import { AskUserQuestionInputSchema, safeParseToolInput, } from '../../../schemas/tool-inputs.schema.js';
4
- import { chatConnectionService } from '../../chat-connection.service.js';
5
- import { chatEventForwarderService } from '../../chat-event-forwarder.service.js';
6
- import { eventCompressionService } from '../../event-compression.service.js';
7
- import { createLogger } from '../../logger.service.js';
8
- import { messageStateService } from '../../message-state.service.js';
9
3
  import { sessionService } from '../../session.service.js';
10
- import { sessionRuntimeStoreService } from '../../session-runtime-store.service.js';
4
+ import { sessionStoreService } from '../../session-store.service.js';
11
5
  import { slashCommandCacheService } from '../../slash-command-cache.service.js';
12
- const logger = createLogger('chat-message-handlers');
13
6
  export function createLoadSessionHandler() {
14
- return async ({ ws, sessionId, workingDir, message }) => {
7
+ return async ({ ws, sessionId, message }) => {
15
8
  const dbSession = await claudeSessionAccessor.findById(sessionId);
16
9
  if (!dbSession) {
17
10
  ws.send(JSON.stringify({ type: 'error', message: 'Session not found' }));
18
11
  return;
19
12
  }
20
- const existingClient = sessionService.getClient(sessionId);
21
- if (existingClient?.isRunning()) {
22
- replayEventsForRunningClient(ws, sessionId, existingClient, message.loadRequestId);
23
- }
24
- else {
25
- await loadHistoryFromJSONL(sessionId, workingDir, dbSession.claudeSessionId, message.loadRequestId);
13
+ const workspaceProjectPath = dbSession.workspace.worktreePath
14
+ ? SessionManager.getProjectPath(dbSession.workspace.worktreePath)
15
+ : null;
16
+ let claudeProjectPath = dbSession.claudeProjectPath ?? workspaceProjectPath;
17
+ if (dbSession.claudeSessionId &&
18
+ dbSession.claudeProjectPath &&
19
+ workspaceProjectPath &&
20
+ dbSession.claudeProjectPath !== workspaceProjectPath &&
21
+ !SessionManager.hasSessionFileFromProjectPath(dbSession.claudeSessionId, dbSession.claudeProjectPath) &&
22
+ SessionManager.hasSessionFileFromProjectPath(dbSession.claudeSessionId, workspaceProjectPath)) {
23
+ claudeProjectPath = workspaceProjectPath;
26
24
  }
25
+ const existingClient = sessionService.getClient(sessionId);
26
+ await sessionStoreService.subscribe({
27
+ sessionId,
28
+ claudeProjectPath,
29
+ claudeSessionId: dbSession.claudeSessionId,
30
+ isRunning: existingClient?.isRunning() ?? false,
31
+ isWorking: existingClient?.isWorking() ?? false,
32
+ loadRequestId: message.loadRequestId,
33
+ });
27
34
  await sendCachedSlashCommandsIfNeeded(sessionId);
28
35
  };
29
36
  }
30
- function replayEventsForRunningClient(ws, sessionId, client, loadRequestId) {
31
- const sessionRuntime = sessionRuntimeStoreService.syncFromClient(sessionId, {
32
- isRunning: client.isRunning(),
33
- isWorking: client.isWorking(),
34
- });
35
- const events = messageStateService.getStoredEvents(sessionId);
36
- const { compressed, stats } = eventCompressionService.compressWithStats(events);
37
- if (stats.originalCount > stats.compressedCount) {
38
- eventCompressionService.logCompressionStats(sessionId, stats);
39
- }
40
- const replayEvents = compressed.map((event) => ({ ...event }));
41
- replayEvents.unshift({
42
- type: 'session_runtime_snapshot',
43
- sessionRuntime,
44
- });
45
- const pendingRequest = chatEventForwarderService.getPendingRequest(sessionId);
46
- if (pendingRequest) {
47
- const interactiveEvent = createPendingInteractiveRequestEvent(pendingRequest);
48
- if (interactiveEvent) {
49
- replayEvents.push(interactiveEvent);
50
- }
51
- }
52
- ws.send(JSON.stringify({
53
- type: 'session_replay_batch',
54
- replayEvents,
55
- loadRequestId,
56
- }));
57
- }
58
- function createPendingInteractiveRequestEvent(pendingRequest) {
59
- if (pendingRequest.toolName === 'AskUserQuestion') {
60
- const parsed = safeParseToolInput(AskUserQuestionInputSchema, pendingRequest.input, 'AskUserQuestion', logger);
61
- if (!parsed.success || parsed.data.questions.length === 0) {
62
- logger.warn('[Chat WS] Cannot replay invalid AskUserQuestion request', {
63
- requestId: pendingRequest.requestId,
64
- validationSuccess: parsed.success,
65
- });
66
- return {
67
- type: 'error',
68
- message: 'Unable to restore question prompt - invalid format',
69
- };
70
- }
71
- return {
72
- type: 'user_question',
73
- requestId: pendingRequest.requestId,
74
- questions: parsed.data.questions,
75
- };
76
- }
77
- if (pendingRequest.toolName === 'ExitPlanMode') {
78
- return {
79
- type: 'permission_request',
80
- requestId: pendingRequest.requestId,
81
- toolName: pendingRequest.toolName,
82
- toolInput: pendingRequest.input,
83
- planContent: pendingRequest.planContent,
84
- };
85
- }
86
- return {
87
- type: 'interactive_request',
88
- requestId: pendingRequest.requestId,
89
- toolName: pendingRequest.toolName,
90
- toolUseId: pendingRequest.toolUseId,
91
- toolInput: pendingRequest.input,
92
- };
93
- }
94
- async function loadHistoryFromJSONL(sessionId, workingDir, claudeSessionId, loadRequestId) {
95
- if (claudeSessionId) {
96
- const history = await SessionManager.getHistory(claudeSessionId, workingDir);
97
- messageStateService.ensureHistoryLoaded(sessionId, history);
98
- }
99
- sessionRuntimeStoreService.markIdle(sessionId, 'stopped');
100
- messageStateService.sendSnapshot(sessionId, {
101
- loadRequestId,
102
- pendingInteractiveRequest: null,
103
- });
104
- sessionRuntimeStoreService.emitSnapshot(sessionId);
105
- }
106
37
  async function sendCachedSlashCommandsIfNeeded(sessionId) {
107
38
  const cached = await slashCommandCacheService.getCachedCommands();
108
39
  if (!cached || cached.length === 0) {
109
40
  return;
110
41
  }
111
- const storedEvents = messageStateService.getStoredEvents(sessionId);
112
- const hasSlashCommands = storedEvents.some((event) => event.type === 'slash_commands');
113
- if (hasSlashCommands) {
114
- return;
115
- }
116
42
  const slashCommandsMsg = {
117
43
  type: 'slash_commands',
118
44
  slashCommands: cached,
119
45
  };
120
- messageStateService.storeEvent(sessionId, slashCommandsMsg);
121
- chatConnectionService.forwardToSession(sessionId, slashCommandsMsg);
46
+ sessionStoreService.emitDelta(sessionId, slashCommandsMsg);
122
47
  }
123
48
  //# sourceMappingURL=load-session.handler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"load-session.handler.js","sourceRoot":"","sources":["../../../../../../src/backend/services/chat-message-handlers/handlers/load-session.handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"load-session.handler.js","sourceRoot":"","sources":["../../../../../../src/backend/services/chat-message-handlers/handlers/load-session.handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qDAAqD,CAAC;AAC5F,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAG7E,MAAM,UAAU,wBAAwB;IACtC,OAAO,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE;QAC1C,MAAM,SAAS,GAAG,MAAM,qBAAqB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAClE,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC;YACzE,OAAO;QACT,CAAC;QAED,MAAM,oBAAoB,GAAG,SAAS,CAAC,SAAS,CAAC,YAAY;YAC3D,CAAC,CAAC,cAAc,CAAC,cAAc,CAAC,SAAS,CAAC,SAAS,CAAC,YAAY,CAAC;YACjE,CAAC,CAAC,IAAI,CAAC;QACT,IAAI,iBAAiB,GAAG,SAAS,CAAC,iBAAiB,IAAI,oBAAoB,CAAC;QAC5E,IACE,SAAS,CAAC,eAAe;YACzB,SAAS,CAAC,iBAAiB;YAC3B,oBAAoB;YACpB,SAAS,CAAC,iBAAiB,KAAK,oBAAoB;YACpD,CAAC,cAAc,CAAC,6BAA6B,CAC3C,SAAS,CAAC,eAAe,EACzB,SAAS,CAAC,iBAAiB,CAC5B;YACD,cAAc,CAAC,6BAA6B,CAAC,SAAS,CAAC,eAAe,EAAE,oBAAoB,CAAC,EAC7F,CAAC;YAGD,iBAAiB,GAAG,oBAAoB,CAAC;QAC3C,CAAC;QAED,MAAM,cAAc,GAAG,cAAc,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAC3D,MAAM,mBAAmB,CAAC,SAAS,CAAC;YAClC,SAAS;YACT,iBAAiB;YACjB,eAAe,EAAE,SAAS,CAAC,eAAe;YAC1C,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,IAAI,KAAK;YAC/C,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,IAAI,KAAK;YAC/C,aAAa,EAAE,OAAO,CAAC,aAAa;SACrC,CAAC,CAAC;QAEH,MAAM,+BAA+B,CAAC,SAAS,CAAC,CAAC;IACnD,CAAC,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,+BAA+B,CAAC,SAAiB;IAC9D,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC,iBAAiB,EAAE,CAAC;IAClE,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnC,OAAO;IACT,CAAC;IAED,MAAM,gBAAgB,GAAG;QACvB,IAAI,EAAE,gBAAgB;QACtB,aAAa,EAAE,MAAM;KACb,CAAC;IACX,mBAAmB,CAAC,SAAS,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;AAC7D,CAAC"}
@@ -1,6 +1,6 @@
1
- import { chatEventForwarderService } from '../../chat-event-forwarder.service.js';
2
1
  import { createLogger } from '../../logger.service.js';
3
2
  import { sessionService } from '../../session.service.js';
3
+ import { sessionStoreService } from '../../session-store.service.js';
4
4
  import { DEBUG_CHAT_WS } from '../constants.js';
5
5
  const logger = createLogger('chat-message-handlers');
6
6
  export function createPermissionResponseHandler() {
@@ -8,7 +8,7 @@ export function createPermissionResponseHandler() {
8
8
  const { requestId, allow } = message;
9
9
  const client = sessionService.getClient(sessionId);
10
10
  if (!client) {
11
- chatEventForwarderService.clearPendingRequestIfMatches(sessionId, requestId);
11
+ sessionStoreService.clearPendingInteractiveRequestIfMatches(sessionId, requestId);
12
12
  ws.send(JSON.stringify({ type: 'error', message: 'No active client for session' }));
13
13
  return;
14
14
  }
@@ -19,13 +19,13 @@ export function createPermissionResponseHandler() {
19
19
  else {
20
20
  client.denyInteractiveRequest(requestId, 'User denied');
21
21
  }
22
- chatEventForwarderService.clearPendingRequestIfMatches(sessionId, requestId);
22
+ sessionStoreService.clearPendingInteractiveRequestIfMatches(sessionId, requestId);
23
23
  if (DEBUG_CHAT_WS) {
24
24
  logger.info('[Chat WS] Responded to permission request', { sessionId, requestId, allow });
25
25
  }
26
26
  }
27
27
  catch (error) {
28
- chatEventForwarderService.clearPendingRequestIfMatches(sessionId, requestId);
28
+ sessionStoreService.clearPendingInteractiveRequestIfMatches(sessionId, requestId);
29
29
  const errorMessage = error instanceof Error ? error.message : String(error);
30
30
  logger.error('[Chat WS] Failed to respond to permission request', {
31
31
  sessionId,
@@ -1 +1 @@
1
- {"version":3,"file":"permission-response.handler.js","sourceRoot":"","sources":["../../../../../../src/backend/services/chat-message-handlers/handlers/permission-response.handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG7C,MAAM,MAAM,GAAG,YAAY,CAAC,uBAAuB,CAAC,CAAC;AAErD,MAAM,UAAU,+BAA+B;IAC7C,OAAO,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE;QACpC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;QAErC,MAAM,MAAM,GAAG,cAAc,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACnD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,yBAAyB,CAAC,4BAA4B,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAC7E,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,8BAA8B,EAAE,CAAC,CAAC,CAAC;YACpF,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,CAAC,yBAAyB,CAAC,SAAS,CAAC,CAAC;YAC9C,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,sBAAsB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;YAC1D,CAAC;YACD,yBAAyB,CAAC,4BAA4B,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAC7E,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,2CAA2C,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;YAC5F,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,yBAAyB,CAAC,4BAA4B,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAC7E,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,MAAM,CAAC,KAAK,CAAC,mDAAmD,EAAE;gBAChE,SAAS;gBACT,SAAS;gBACT,KAAK,EAAE,YAAY;aACpB,CAAC,CAAC;YACH,EAAE,CAAC,IAAI,CACL,IAAI,CAAC,SAAS,CAAC;gBACb,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,oCAAoC,YAAY,EAAE;aAC5D,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"permission-response.handler.js","sourceRoot":"","sources":["../../../../../../src/backend/services/chat-message-handlers/handlers/permission-response.handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG7C,MAAM,MAAM,GAAG,YAAY,CAAC,uBAAuB,CAAC,CAAC;AAErD,MAAM,UAAU,+BAA+B;IAC7C,OAAO,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE;QACpC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;QAErC,MAAM,MAAM,GAAG,cAAc,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACnD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,mBAAmB,CAAC,uCAAuC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAClF,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,8BAA8B,EAAE,CAAC,CAAC,CAAC;YACpF,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,CAAC,yBAAyB,CAAC,SAAS,CAAC,CAAC;YAC9C,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,sBAAsB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;YAC1D,CAAC;YACD,mBAAmB,CAAC,uCAAuC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAClF,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,2CAA2C,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;YAC5F,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,mBAAmB,CAAC,uCAAuC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAClF,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,MAAM,CAAC,KAAK,CAAC,mDAAmD,EAAE;gBAChE,SAAS;gBACT,SAAS;gBACT,KAAK,EAAE,YAAY;aACpB,CAAC,CAAC;YACH,EAAE,CAAC,IAAI,CACL,IAAI,CAAC,SAAS,CAAC;gBACb,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,oCAAoC,YAAY,EAAE;aAC5D,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
@@ -1,6 +1,6 @@
1
- import { chatEventForwarderService } from '../../chat-event-forwarder.service.js';
2
1
  import { createLogger } from '../../logger.service.js';
3
2
  import { sessionService } from '../../session.service.js';
3
+ import { sessionStoreService } from '../../session-store.service.js';
4
4
  import { DEBUG_CHAT_WS } from '../constants.js';
5
5
  const logger = createLogger('chat-message-handlers');
6
6
  export function createQuestionResponseHandler() {
@@ -8,19 +8,19 @@ export function createQuestionResponseHandler() {
8
8
  const { requestId, answers } = message;
9
9
  const client = sessionService.getClient(sessionId);
10
10
  if (!client) {
11
- chatEventForwarderService.clearPendingRequestIfMatches(sessionId, requestId);
11
+ sessionStoreService.clearPendingInteractiveRequestIfMatches(sessionId, requestId);
12
12
  ws.send(JSON.stringify({ type: 'error', message: 'No active client for session' }));
13
13
  return;
14
14
  }
15
15
  try {
16
16
  client.answerQuestion(requestId, answers);
17
- chatEventForwarderService.clearPendingRequestIfMatches(sessionId, requestId);
17
+ sessionStoreService.clearPendingInteractiveRequestIfMatches(sessionId, requestId);
18
18
  if (DEBUG_CHAT_WS) {
19
19
  logger.info('[Chat WS] Answered question', { sessionId, requestId });
20
20
  }
21
21
  }
22
22
  catch (error) {
23
- chatEventForwarderService.clearPendingRequestIfMatches(sessionId, requestId);
23
+ sessionStoreService.clearPendingInteractiveRequestIfMatches(sessionId, requestId);
24
24
  const errorMessage = error instanceof Error ? error.message : String(error);
25
25
  logger.error('[Chat WS] Failed to answer question', {
26
26
  sessionId,
@@ -1 +1 @@
1
- {"version":3,"file":"question-response.handler.js","sourceRoot":"","sources":["../../../../../../src/backend/services/chat-message-handlers/handlers/question-response.handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG7C,MAAM,MAAM,GAAG,YAAY,CAAC,uBAAuB,CAAC,CAAC;AAErD,MAAM,UAAU,6BAA6B;IAC3C,OAAO,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE;QACpC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QAEvC,MAAM,MAAM,GAAG,cAAc,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACnD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,yBAAyB,CAAC,4BAA4B,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAC7E,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,8BAA8B,EAAE,CAAC,CAAC,CAAC;YACpF,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC1C,yBAAyB,CAAC,4BAA4B,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAC7E,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,yBAAyB,CAAC,4BAA4B,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAC7E,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,MAAM,CAAC,KAAK,CAAC,qCAAqC,EAAE;gBAClD,SAAS;gBACT,SAAS;gBACT,KAAK,EAAE,YAAY;aACpB,CAAC,CAAC;YACH,EAAE,CAAC,IAAI,CACL,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,8BAA8B,YAAY,EAAE,EAAE,CAAC,CACzF,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"question-response.handler.js","sourceRoot":"","sources":["../../../../../../src/backend/services/chat-message-handlers/handlers/question-response.handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG7C,MAAM,MAAM,GAAG,YAAY,CAAC,uBAAuB,CAAC,CAAC;AAErD,MAAM,UAAU,6BAA6B;IAC3C,OAAO,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE;QACpC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QAEvC,MAAM,MAAM,GAAG,cAAc,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACnD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,mBAAmB,CAAC,uCAAuC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAClF,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,8BAA8B,EAAE,CAAC,CAAC,CAAC;YACpF,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC1C,mBAAmB,CAAC,uCAAuC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAClF,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,mBAAmB,CAAC,uCAAuC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAClF,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,MAAM,CAAC,KAAK,CAAC,qCAAqC,EAAE;gBAClD,SAAS;gBACT,SAAS;gBACT,KAAK,EAAE,YAAY;aACpB,CAAC,CAAC;YACH,EAAE,CAAC,IAAI,CACL,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,8BAA8B,YAAY,EAAE,EAAE,CAAC,CACzF,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"queue-message.handler.d.ts","sourceRoot":"","sources":["../../../../../../src/backend/services/chat-message-handlers/handlers/queue-message.handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAK5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAC;AA2BhF,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,2BAA2B,GAChC,kBAAkB,CAAC,iBAAiB,CAAC,CAoCvC"}
1
+ {"version":3,"file":"queue-message.handler.d.ts","sourceRoot":"","sources":["../../../../../../src/backend/services/chat-message-handlers/handlers/queue-message.handler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAI5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAC;AA2BhF,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,2BAA2B,GAChC,kBAAkB,CAAC,iBAAiB,CAAC,CAuDvC"}
@@ -1,8 +1,8 @@
1
- import { messageQueueService } from '../../message-queue.service.js';
2
- import { messageStateService } from '../../message-state.service.js';
1
+ import { MessageState, resolveSelectedModel } from '../../../../shared/claude/index.js';
2
+ import { sessionStoreService } from '../../session-store.service.js';
3
3
  import { resolveAttachmentContentType } from '../attachment-utils.js';
4
4
  import { tryHandleAsInteractiveResponse } from '../interactive-response.js';
5
- import { buildQueuedMessage, notifyMessageAccepted } from '../utils.js';
5
+ import { buildQueuedMessage } from '../utils.js';
6
6
  function extractTextFromAttachments(attachments) {
7
7
  if (!attachments || attachments.length === 0) {
8
8
  return undefined;
@@ -29,16 +29,35 @@ export function createQueueMessageHandler(deps) {
29
29
  }
30
30
  const messageId = message.id;
31
31
  const responseText = text || extractTextFromAttachments(message.attachments);
32
- if (responseText && tryHandleAsInteractiveResponse(ws, sessionId, messageId, responseText)) {
32
+ if (responseText && tryHandleAsInteractiveResponse(sessionId, messageId, responseText)) {
33
33
  return;
34
34
  }
35
35
  const queuedMsg = buildQueuedMessage(messageId, message, text ?? '');
36
- const result = messageQueueService.enqueue(sessionId, queuedMsg);
36
+ const result = sessionStoreService.enqueue(sessionId, queuedMsg);
37
37
  if ('error' in result) {
38
- messageStateService.createRejectedMessage(sessionId, messageId, result.error, text);
38
+ sessionStoreService.emitDelta(sessionId, {
39
+ type: 'message_state_changed',
40
+ id: messageId,
41
+ newState: MessageState.REJECTED,
42
+ errorMessage: result.error,
43
+ });
39
44
  return;
40
45
  }
41
- notifyMessageAccepted(sessionId, queuedMsg);
46
+ sessionStoreService.emitDelta(sessionId, {
47
+ type: 'message_state_changed',
48
+ id: messageId,
49
+ newState: MessageState.ACCEPTED,
50
+ queuePosition: result.position,
51
+ userMessage: {
52
+ text: queuedMsg.text,
53
+ timestamp: queuedMsg.timestamp,
54
+ attachments: queuedMsg.attachments,
55
+ settings: {
56
+ ...queuedMsg.settings,
57
+ selectedModel: resolveSelectedModel(queuedMsg.settings.selectedModel),
58
+ },
59
+ },
60
+ });
42
61
  await deps.tryDispatchNextMessage(sessionId);
43
62
  };
44
63
  }
@@ -1 +1 @@
1
- {"version":3,"file":"queue-message.handler.js","sourceRoot":"","sources":["../../../../../../src/backend/services/chat-message-handlers/handlers/queue-message.handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,8BAA8B,EAAE,MAAM,yBAAyB,CAAC;AAEzE,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAOrE,SAAS,0BAA0B,CACjC,WAA6C;IAE7C,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7C,OAAO,SAAS,CAAC;IACnB,CAAC;IAGD,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,IAAI,4BAA4B,CAAC,UAAU,CAAC,KAAK,MAAM,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;YAC3E,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAGD,OAAO,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACnE,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,IAAiC;IAEjC,OAAO,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE;QAC1C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;QAClC,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAEnF,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC;YACrE,OAAO;QACT,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAChB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC;YAC1E,OAAO;QACT,CAAC;QAKD,MAAM,SAAS,GAAG,OAAO,CAAC,EAAE,CAAC;QAC7B,MAAM,YAAY,GAAG,IAAI,IAAI,0BAA0B,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC7E,IAAI,YAAY,IAAI,8BAA8B,CAAC,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC,EAAE,CAAC;YAC3F,OAAO;QACT,CAAC;QAED,MAAM,SAAS,GAAG,kBAAkB,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;QACrE,MAAM,MAAM,GAAG,mBAAmB,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAEjE,IAAI,OAAO,IAAI,MAAM,EAAE,CAAC;YAEtB,mBAAmB,CAAC,qBAAqB,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YACpF,OAAO;QACT,CAAC;QAED,qBAAqB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAC5C,MAAM,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAC/C,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"queue-message.handler.js","sourceRoot":"","sources":["../../../../../../src/backend/services/chat-message-handlers/handlers/queue-message.handler.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"remove-queued-message.handler.d.ts","sourceRoot":"","sources":["../../../../../../src/backend/services/chat-message-handlers/handlers/remove-queued-message.handler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAKnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAInD,wBAAgB,gCAAgC,IAAI,kBAAkB,CAAC,wBAAwB,CAAC,CAe/F"}
1
+ {"version":3,"file":"remove-queued-message.handler.d.ts","sourceRoot":"","sources":["../../../../../../src/backend/services/chat-message-handlers/handlers/remove-queued-message.handler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAInE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAInD,wBAAgB,gCAAgC,IAAI,kBAAkB,CAAC,wBAAwB,CAAC,CAkB/F"}
@@ -1,15 +1,18 @@
1
1
  import { MessageState } from '../../../../shared/claude/index.js';
2
2
  import { createLogger } from '../../logger.service.js';
3
- import { messageQueueService } from '../../message-queue.service.js';
4
- import { messageStateService } from '../../message-state.service.js';
3
+ import { sessionStoreService } from '../../session-store.service.js';
5
4
  import { DEBUG_CHAT_WS } from '../constants.js';
6
5
  const logger = createLogger('chat-message-handlers');
7
6
  export function createRemoveQueuedMessageHandler() {
8
7
  return ({ ws, sessionId, message }) => {
9
8
  const { messageId } = message;
10
- const removed = messageQueueService.remove(sessionId, messageId);
9
+ const removed = sessionStoreService.removeQueuedMessage(sessionId, messageId);
11
10
  if (removed) {
12
- messageStateService.updateState(sessionId, messageId, MessageState.CANCELLED);
11
+ sessionStoreService.emitDelta(sessionId, {
12
+ type: 'message_state_changed',
13
+ id: messageId,
14
+ newState: MessageState.CANCELLED,
15
+ });
13
16
  if (DEBUG_CHAT_WS) {
14
17
  logger.info('[Chat WS] Queued message cancelled', { sessionId, messageId });
15
18
  }