factory-factory 0.3.16 → 0.3.18

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 (211) hide show
  1. package/README.md +2 -1
  2. package/dist/client/assets/{arc-CAOrfHBL.js → arc-Bxdinun-.js} +1 -1
  3. package/dist/client/assets/{architectureDiagram-3BPJPVTR-CzxGCKeM.js → architectureDiagram-3BPJPVTR-D75ngTH0.js} +1 -1
  4. package/dist/client/assets/{blockDiagram-GPEHLZMM-B4k0dvv-.js → blockDiagram-GPEHLZMM-b0hRXjTo.js} +1 -1
  5. package/dist/client/assets/{c4Diagram-AAUBKEIU-ByaECY1u.js → c4Diagram-AAUBKEIU-BP3yHaZ4.js} +1 -1
  6. package/dist/client/assets/channel-B100hIJ8.js +1 -0
  7. package/dist/client/assets/{chunk-2J33WTMH-Crxo1uMY.js → chunk-2J33WTMH-BSnzH03J.js} +1 -1
  8. package/dist/client/assets/{chunk-4BX2VUAB-CggFLwAA.js → chunk-4BX2VUAB-D1getS3X.js} +1 -1
  9. package/dist/client/assets/{chunk-55IACEB6-BSoTWFAF.js → chunk-55IACEB6-Dr2CwskK.js} +1 -1
  10. package/dist/client/assets/{chunk-727SXJPM-DcQoeGkQ.js → chunk-727SXJPM-C7_YUe-M.js} +1 -1
  11. package/dist/client/assets/{chunk-AQP2D5EJ-Ci5tNJvg.js → chunk-AQP2D5EJ-Cs7q0NsF.js} +1 -1
  12. package/dist/client/assets/{chunk-FMBD7UC4-CjYtwTh4.js → chunk-FMBD7UC4-KFtquRvq.js} +1 -1
  13. package/dist/client/assets/{chunk-ND2GUHAM-Dla8Gmku.js → chunk-ND2GUHAM-BuZ0_q1n.js} +1 -1
  14. package/dist/client/assets/{chunk-QZHKN3VN-CiblfzNN.js → chunk-QZHKN3VN-CXq3kkUn.js} +1 -1
  15. package/dist/client/assets/classDiagram-4FO5ZUOK-DK3mo2gW.js +1 -0
  16. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-DK3mo2gW.js +1 -0
  17. package/dist/client/assets/{cose-bilkent-S5V4N54A-DWuzgvAN.js → cose-bilkent-S5V4N54A-B2PPRokq.js} +1 -1
  18. package/dist/client/assets/{dagre-BM42HDAG-hvdcGfHc.js → dagre-BM42HDAG-Bdgt43P0.js} +1 -1
  19. package/dist/client/assets/{diagram-2AECGRRQ-DVZDsgVY.js → diagram-2AECGRRQ-l7renH-H.js} +1 -1
  20. package/dist/client/assets/{diagram-5GNKFQAL-BLXKSUUu.js → diagram-5GNKFQAL-I7lNTczj.js} +1 -1
  21. package/dist/client/assets/{diagram-KO2AKTUF-1nNBdWqs.js → diagram-KO2AKTUF-C8kPNrsA.js} +1 -1
  22. package/dist/client/assets/{diagram-LMA3HP47-CTw-M4zU.js → diagram-LMA3HP47-pvteu9cM.js} +1 -1
  23. package/dist/client/assets/{diagram-OG6HWLK6-D9J0vyno.js → diagram-OG6HWLK6-DpN6QlJ3.js} +1 -1
  24. package/dist/client/assets/{erDiagram-TEJ5UH35-DYXcLeDs.js → erDiagram-TEJ5UH35-Dcelk-6E.js} +1 -1
  25. package/dist/client/assets/{flowDiagram-I6XJVG4X-CXFyFXcd.js → flowDiagram-I6XJVG4X-PluLGOsL.js} +1 -1
  26. package/dist/client/assets/{ganttDiagram-6RSMTGT7-CPGMIRhg.js → ganttDiagram-6RSMTGT7-B052JdQf.js} +1 -1
  27. package/dist/client/assets/{gitGraphDiagram-PVQCEYII-BCIDHp-Q.js → gitGraphDiagram-PVQCEYII-CCFDSwzA.js} +1 -1
  28. package/dist/client/assets/{index-gIy0Sz_B.js → index-DHNmCWEQ.js} +144 -144
  29. package/dist/client/assets/index-p_tQjQfx.css +1 -0
  30. package/dist/client/assets/{infoDiagram-5YYISTIA-ThNaUmLI.js → infoDiagram-5YYISTIA-D8U6SFWo.js} +1 -1
  31. package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-nD7e1KKT.js → ishikawaDiagram-YF4QCWOH-CgB-TF4r.js} +1 -1
  32. package/dist/client/assets/{journeyDiagram-JHISSGLW-DKfK1tIp.js → journeyDiagram-JHISSGLW-CAGmqjlT.js} +1 -1
  33. package/dist/client/assets/{kanban-definition-UN3LZRKU-C61PkF-T.js → kanban-definition-UN3LZRKU-BDuo7F2D.js} +1 -1
  34. package/dist/client/assets/{linear-yYp6Wht8.js → linear-Dz4kMSHb.js} +1 -1
  35. package/dist/client/assets/{mindmap-definition-RKZ34NQL-DI6Bl654.js → mindmap-definition-RKZ34NQL-Db2Ukjm6.js} +1 -1
  36. package/dist/client/assets/{mobile-baseline-DRrQYbFX.js → mobile-baseline-BuwX04Ww.js} +1 -1
  37. package/dist/client/assets/{pieDiagram-4H26LBE5-CNV-VY3H.js → pieDiagram-4H26LBE5-D2-5sOl5.js} +1 -1
  38. package/dist/client/assets/{quadrantDiagram-W4KKPZXB-CDBpCVHO.js → quadrantDiagram-W4KKPZXB-CJlGrwhK.js} +1 -1
  39. package/dist/client/assets/{requirementDiagram-4Y6WPE33-D_rxDIc5.js → requirementDiagram-4Y6WPE33-D4h5kgWL.js} +1 -1
  40. package/dist/client/assets/{sankeyDiagram-5OEKKPKP-DeyadfL0.js → sankeyDiagram-5OEKKPKP-dWom-dYP.js} +1 -1
  41. package/dist/client/assets/{sequenceDiagram-3UESZ5HK-36_kZ6la.js → sequenceDiagram-3UESZ5HK-C5_GmsPA.js} +1 -1
  42. package/dist/client/assets/{stateDiagram-AJRCARHV-4ayM-mAT.js → stateDiagram-AJRCARHV-CUjApIoO.js} +1 -1
  43. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-DxhGA2OY.js +1 -0
  44. package/dist/client/assets/{terminal-instance-CMp5bO62.js → terminal-instance-BBnsG1mL.js} +1 -1
  45. package/dist/client/assets/{timeline-definition-PNZ67QCA-D0pQgePo.js → timeline-definition-PNZ67QCA-BF3tbgdG.js} +1 -1
  46. package/dist/client/assets/{vennDiagram-CIIHVFJN-CnoMcpwq.js → vennDiagram-CIIHVFJN-Q4ZHYJTv.js} +1 -1
  47. package/dist/client/assets/{wardley-L42UT6IY-DOtSWmwv.js → wardley-L42UT6IY-X4BiwCUd.js} +1 -1
  48. package/dist/client/assets/{wardleyDiagram-YWT4CUSO-Z3hYGa2_.js → wardleyDiagram-YWT4CUSO-CjJKT6Dj.js} +1 -1
  49. package/dist/client/assets/{xychartDiagram-2RQKCTM6-CBvgTdkn.js → xychartDiagram-2RQKCTM6-Dl6wiodH.js} +1 -1
  50. package/dist/client/index.html +2 -2
  51. package/dist/prisma/generated/internal/class.js +4 -4
  52. package/dist/prisma/generated/internal/class.js.map +1 -1
  53. package/dist/prisma/generated/internal/prismaNamespace.d.ts +2 -0
  54. package/dist/prisma/generated/internal/prismaNamespace.d.ts.map +1 -1
  55. package/dist/prisma/generated/internal/prismaNamespace.js +2 -0
  56. package/dist/prisma/generated/internal/prismaNamespace.js.map +1 -1
  57. package/dist/prisma/generated/internal/prismaNamespaceBrowser.d.ts +2 -0
  58. package/dist/prisma/generated/internal/prismaNamespaceBrowser.d.ts.map +1 -1
  59. package/dist/prisma/generated/internal/prismaNamespaceBrowser.js +2 -0
  60. package/dist/prisma/generated/internal/prismaNamespaceBrowser.js.map +1 -1
  61. package/dist/prisma/generated/models/PeriodicTask.d.ts +87 -1
  62. package/dist/prisma/generated/models/PeriodicTask.d.ts.map +1 -1
  63. package/dist/src/backend/interceptors/pr-detection.interceptor.d.ts.map +1 -1
  64. package/dist/src/backend/interceptors/pr-detection.interceptor.js +47 -1
  65. package/dist/src/backend/interceptors/pr-detection.interceptor.js.map +1 -1
  66. package/dist/src/backend/interceptors/pr-detection.interceptor.test.js +82 -0
  67. package/dist/src/backend/interceptors/pr-detection.interceptor.test.js.map +1 -1
  68. package/dist/src/backend/orchestration/data-backup.service.d.ts.map +1 -1
  69. package/dist/src/backend/orchestration/data-backup.service.js +3 -1
  70. package/dist/src/backend/orchestration/data-backup.service.js.map +1 -1
  71. package/dist/src/backend/orchestration/domain-bridges.orchestrator.d.ts.map +1 -1
  72. package/dist/src/backend/orchestration/domain-bridges.orchestrator.js +3 -1
  73. package/dist/src/backend/orchestration/domain-bridges.orchestrator.js.map +1 -1
  74. package/dist/src/backend/orchestration/workspace-init-github-username-cache.d.ts +10 -0
  75. package/dist/src/backend/orchestration/workspace-init-github-username-cache.d.ts.map +1 -0
  76. package/dist/src/backend/orchestration/workspace-init-github-username-cache.js +27 -0
  77. package/dist/src/backend/orchestration/workspace-init-github-username-cache.js.map +1 -0
  78. package/dist/src/backend/orchestration/workspace-init.orchestrator.d.ts.map +1 -1
  79. package/dist/src/backend/orchestration/workspace-init.orchestrator.js +11 -27
  80. package/dist/src/backend/orchestration/workspace-init.orchestrator.js.map +1 -1
  81. package/dist/src/backend/server.d.ts.map +1 -1
  82. package/dist/src/backend/server.js +39 -12
  83. package/dist/src/backend/server.js.map +1 -1
  84. package/dist/src/backend/services/auto-iteration/service/auto-iteration.service.d.ts.map +1 -1
  85. package/dist/src/backend/services/auto-iteration/service/auto-iteration.service.js +1 -69
  86. package/dist/src/backend/services/auto-iteration/service/auto-iteration.service.js.map +1 -1
  87. package/dist/src/backend/services/auto-iteration/service/auto-iteration.types.d.ts +2 -50
  88. package/dist/src/backend/services/auto-iteration/service/auto-iteration.types.d.ts.map +1 -1
  89. package/dist/src/backend/services/auto-iteration/service/logbook.service.d.ts.map +1 -1
  90. package/dist/src/backend/services/auto-iteration/service/logbook.service.js +6 -9
  91. package/dist/src/backend/services/auto-iteration/service/logbook.service.js.map +1 -1
  92. package/dist/src/backend/services/auto-iteration/service/logbook.service.test.d.ts +2 -0
  93. package/dist/src/backend/services/auto-iteration/service/logbook.service.test.d.ts.map +1 -0
  94. package/dist/src/backend/services/auto-iteration/service/logbook.service.test.js +63 -0
  95. package/dist/src/backend/services/auto-iteration/service/logbook.service.test.js.map +1 -0
  96. package/dist/src/backend/services/auto-iteration/service/response-parsing.d.ts +4 -0
  97. package/dist/src/backend/services/auto-iteration/service/response-parsing.d.ts.map +1 -0
  98. package/dist/src/backend/services/auto-iteration/service/response-parsing.js +91 -0
  99. package/dist/src/backend/services/auto-iteration/service/response-parsing.js.map +1 -0
  100. package/dist/src/backend/services/auto-iteration/service/response-parsing.test.d.ts +2 -0
  101. package/dist/src/backend/services/auto-iteration/service/response-parsing.test.d.ts.map +1 -0
  102. package/dist/src/backend/services/auto-iteration/service/response-parsing.test.js +66 -0
  103. package/dist/src/backend/services/auto-iteration/service/response-parsing.test.js.map +1 -0
  104. package/dist/src/backend/services/crypto.service.d.ts.map +1 -1
  105. package/dist/src/backend/services/crypto.service.js +28 -11
  106. package/dist/src/backend/services/crypto.service.js.map +1 -1
  107. package/dist/src/backend/services/crypto.service.test.js +7 -8
  108. package/dist/src/backend/services/crypto.service.test.js.map +1 -1
  109. package/dist/src/backend/services/factory-config.service.d.ts.map +1 -1
  110. package/dist/src/backend/services/factory-config.service.js +4 -7
  111. package/dist/src/backend/services/factory-config.service.js.map +1 -1
  112. package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.d.ts +6 -2
  113. package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.d.ts.map +1 -1
  114. package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.js +74 -7
  115. package/dist/src/backend/services/periodic-task/resources/periodic-task.accessor.js.map +1 -1
  116. package/dist/src/backend/services/periodic-task/service/periodic-task.service.d.ts.map +1 -1
  117. package/dist/src/backend/services/periodic-task/service/periodic-task.service.js +3 -3
  118. package/dist/src/backend/services/periodic-task/service/periodic-task.service.js.map +1 -1
  119. package/dist/src/backend/services/run-script/service/run-script-output-buffer.d.ts +16 -0
  120. package/dist/src/backend/services/run-script/service/run-script-output-buffer.d.ts.map +1 -0
  121. package/dist/src/backend/services/run-script/service/run-script-output-buffer.js +62 -0
  122. package/dist/src/backend/services/run-script/service/run-script-output-buffer.js.map +1 -0
  123. package/dist/src/backend/services/run-script/service/run-script-output-buffer.test.d.ts +2 -0
  124. package/dist/src/backend/services/run-script/service/run-script-output-buffer.test.d.ts.map +1 -0
  125. package/dist/src/backend/services/run-script/service/run-script-output-buffer.test.js +25 -0
  126. package/dist/src/backend/services/run-script/service/run-script-output-buffer.test.js.map +1 -0
  127. package/dist/src/backend/services/run-script/service/run-script.service.d.ts +2 -4
  128. package/dist/src/backend/services/run-script/service/run-script.service.d.ts.map +1 -1
  129. package/dist/src/backend/services/run-script/service/run-script.service.js +16 -71
  130. package/dist/src/backend/services/run-script/service/run-script.service.js.map +1 -1
  131. package/dist/src/backend/services/run-script/service/run-script.service.test.js +38 -24
  132. package/dist/src/backend/services/run-script/service/run-script.service.test.js.map +1 -1
  133. package/dist/src/backend/services/session/service/acp/acp-runtime-manager.d.ts.map +1 -1
  134. package/dist/src/backend/services/session/service/acp/acp-runtime-manager.js +6 -205
  135. package/dist/src/backend/services/session/service/acp/acp-runtime-manager.js.map +1 -1
  136. package/dist/src/backend/services/session/service/acp/acp-session-config-options.d.ts +9 -0
  137. package/dist/src/backend/services/session/service/acp/acp-session-config-options.d.ts.map +1 -0
  138. package/dist/src/backend/services/session/service/acp/acp-session-config-options.js +162 -0
  139. package/dist/src/backend/services/session/service/acp/acp-session-config-options.js.map +1 -0
  140. package/dist/src/backend/services/session/service/acp/acp-stream-normalizer.d.ts +3 -0
  141. package/dist/src/backend/services/session/service/acp/acp-stream-normalizer.d.ts.map +1 -0
  142. package/dist/src/backend/services/session/service/acp/acp-stream-normalizer.js +81 -0
  143. package/dist/src/backend/services/session/service/acp/acp-stream-normalizer.js.map +1 -0
  144. package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.d.ts.map +1 -1
  145. package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.js +2 -12
  146. package/dist/src/backend/services/session/service/chat/chat-message-handlers.service.js.map +1 -1
  147. package/dist/src/backend/services/session/service/lifecycle/session.error-message.d.ts.map +1 -1
  148. package/dist/src/backend/services/session/service/lifecycle/session.error-message.js +43 -4
  149. package/dist/src/backend/services/session/service/lifecycle/session.error-message.js.map +1 -1
  150. package/dist/src/backend/services/session/service/lifecycle/session.error-message.test.js +11 -5
  151. package/dist/src/backend/services/session/service/lifecycle/session.error-message.test.js.map +1 -1
  152. package/dist/src/backend/services/session/service/lifecycle/session.service.d.ts +1 -0
  153. package/dist/src/backend/services/session/service/lifecycle/session.service.d.ts.map +1 -1
  154. package/dist/src/backend/services/session/service/lifecycle/session.service.js +27 -6
  155. package/dist/src/backend/services/session/service/lifecycle/session.service.js.map +1 -1
  156. package/dist/src/backend/services/session/service/lifecycle/session.service.test.js +61 -5
  157. package/dist/src/backend/services/session/service/lifecycle/session.service.test.js.map +1 -1
  158. package/dist/src/backend/services/workspace/service/lifecycle/creation.service.d.ts.map +1 -1
  159. package/dist/src/backend/services/workspace/service/lifecycle/creation.service.js +13 -2
  160. package/dist/src/backend/services/workspace/service/lifecycle/creation.service.js.map +1 -1
  161. package/dist/src/backend/services/workspace/service/lifecycle/creation.service.test.js +37 -0
  162. package/dist/src/backend/services/workspace/service/lifecycle/creation.service.test.js.map +1 -1
  163. package/dist/src/backend/trpc/admin.router.test.js +1 -0
  164. package/dist/src/backend/trpc/admin.router.test.js.map +1 -1
  165. package/dist/src/backend/trpc/admin.trpc.d.ts +16 -2
  166. package/dist/src/backend/trpc/admin.trpc.d.ts.map +1 -1
  167. package/dist/src/backend/trpc/admin.trpc.js +3 -3
  168. package/dist/src/backend/trpc/admin.trpc.js.map +1 -1
  169. package/dist/src/backend/trpc/auto-iteration.trpc.d.ts +34 -6
  170. package/dist/src/backend/trpc/auto-iteration.trpc.d.ts.map +1 -1
  171. package/dist/src/backend/trpc/auto-iteration.trpc.js +32 -26
  172. package/dist/src/backend/trpc/auto-iteration.trpc.js.map +1 -1
  173. package/dist/src/backend/trpc/auto-iteration.trpc.test.d.ts +2 -0
  174. package/dist/src/backend/trpc/auto-iteration.trpc.test.d.ts.map +1 -0
  175. package/dist/src/backend/trpc/auto-iteration.trpc.test.js +118 -0
  176. package/dist/src/backend/trpc/auto-iteration.trpc.test.js.map +1 -0
  177. package/dist/src/backend/trpc/index.d.ts +65 -8
  178. package/dist/src/backend/trpc/index.d.ts.map +1 -1
  179. package/dist/src/backend/trpc/periodic-task.trpc.d.ts +14 -0
  180. package/dist/src/backend/trpc/periodic-task.trpc.d.ts.map +1 -1
  181. package/dist/src/backend/trpc/periodic-task.trpc.js +22 -0
  182. package/dist/src/backend/trpc/periodic-task.trpc.js.map +1 -1
  183. package/dist/src/backend/trpc/workspace/files.trpc.d.ts.map +1 -1
  184. package/dist/src/backend/trpc/workspace/files.trpc.js +14 -6
  185. package/dist/src/backend/trpc/workspace/files.trpc.js.map +1 -1
  186. package/dist/src/backend/trpc/workspace.router.test.js +25 -0
  187. package/dist/src/backend/trpc/workspace.router.test.js.map +1 -1
  188. package/dist/src/backend/trpc/workspace.trpc.d.ts +1 -0
  189. package/dist/src/backend/trpc/workspace.trpc.d.ts.map +1 -1
  190. package/dist/src/backend/trpc/workspace.trpc.js +2 -9
  191. package/dist/src/backend/trpc/workspace.trpc.js.map +1 -1
  192. package/dist/src/shared/proxy-utils.d.ts.map +1 -1
  193. package/dist/src/shared/proxy-utils.js +6 -3
  194. package/dist/src/shared/proxy-utils.js.map +1 -1
  195. package/dist/src/shared/schemas/auto-iteration.schema.d.ts +106 -0
  196. package/dist/src/shared/schemas/auto-iteration.schema.d.ts.map +1 -0
  197. package/dist/src/shared/schemas/auto-iteration.schema.js +60 -0
  198. package/dist/src/shared/schemas/auto-iteration.schema.js.map +1 -0
  199. package/dist/src/shared/schemas/export-data.schema.d.ts +16 -2
  200. package/dist/src/shared/schemas/export-data.schema.d.ts.map +1 -1
  201. package/dist/src/shared/schemas/export-data.schema.js +2 -1
  202. package/dist/src/shared/schemas/export-data.schema.js.map +1 -1
  203. package/dist/tsconfig.backend.tsbuildinfo +1 -1
  204. package/package.json +3 -3
  205. package/prisma/migrations/20260519122959_add_periodic_task_scheduled_time/migration.sql +3 -0
  206. package/prisma/schema.prisma +5 -3
  207. package/dist/client/assets/channel-D2ho7Eza.js +0 -1
  208. package/dist/client/assets/classDiagram-4FO5ZUOK-ZExoOExU.js +0 -1
  209. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-ZExoOExU.js +0 -1
  210. package/dist/client/assets/index-IJ_NNlgJ.css +0 -1
  211. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-ChnnLckY.js +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"periodic-task.service.js","sourceRoot":"","sources":["../../../../../../src/backend/services/periodic-task/service/periodic-task.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"periodic-task.service.js","sourceRoot":"","sources":["../../../../../../src/backend/services/periodic-task/service/periodic-task.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ export declare class RunScriptOutputBuffer {
2
+ private readonly maxBufferSize;
3
+ private readonly buffers;
4
+ private readonly listeners;
5
+ constructor(maxBufferSize: number);
6
+ set(workspaceId: string, output: string): void;
7
+ append(workspaceId: string, output: string): void;
8
+ get(workspaceId: string): string;
9
+ clearBuffer(workspaceId: string): void;
10
+ clearListeners(workspaceId: string): void;
11
+ subscribe(workspaceId: string, listener: (data: string) => void): () => void;
12
+ evict(workspaceId: string): void;
13
+ clear(): void;
14
+ private truncate;
15
+ }
16
+ //# sourceMappingURL=run-script-output-buffer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-script-output-buffer.d.ts","sourceRoot":"","sources":["../../../../../../src/backend/services/run-script/service/run-script-output-buffer.ts"],"names":[],"mappings":"AAAA,qBAAa,qBAAqB;IAIpB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAH1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA6B;IACrD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkD;gBAE/C,aAAa,EAAE,MAAM;IAElD,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAI9C,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAYjD,GAAG,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAIhC,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAItC,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAIzC,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI;IAmB5E,KAAK,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAKhC,KAAK,IAAI,IAAI;IAKb,OAAO,CAAC,QAAQ;CAMjB"}
@@ -0,0 +1,62 @@
1
+ export class RunScriptOutputBuffer {
2
+ maxBufferSize;
3
+ buffers = new Map();
4
+ listeners = new Map();
5
+ constructor(maxBufferSize) {
6
+ this.maxBufferSize = maxBufferSize;
7
+ }
8
+ set(workspaceId, output) {
9
+ this.buffers.set(workspaceId, this.truncate(output));
10
+ }
11
+ append(workspaceId, output) {
12
+ const currentBuffer = this.buffers.get(workspaceId) ?? '';
13
+ this.buffers.set(workspaceId, this.truncate(currentBuffer + output));
14
+ const listeners = this.listeners.get(workspaceId);
15
+ if (listeners) {
16
+ for (const listener of listeners) {
17
+ listener(output);
18
+ }
19
+ }
20
+ }
21
+ get(workspaceId) {
22
+ return this.buffers.get(workspaceId) ?? '';
23
+ }
24
+ clearBuffer(workspaceId) {
25
+ this.buffers.delete(workspaceId);
26
+ }
27
+ clearListeners(workspaceId) {
28
+ this.listeners.delete(workspaceId);
29
+ }
30
+ subscribe(workspaceId, listener) {
31
+ let listeners = this.listeners.get(workspaceId);
32
+ if (!listeners) {
33
+ listeners = new Set();
34
+ this.listeners.set(workspaceId, listeners);
35
+ }
36
+ listeners.add(listener);
37
+ return () => {
38
+ const currentListeners = this.listeners.get(workspaceId);
39
+ if (currentListeners) {
40
+ currentListeners.delete(listener);
41
+ if (currentListeners.size === 0) {
42
+ this.listeners.delete(workspaceId);
43
+ }
44
+ }
45
+ };
46
+ }
47
+ evict(workspaceId) {
48
+ this.buffers.delete(workspaceId);
49
+ this.listeners.delete(workspaceId);
50
+ }
51
+ clear() {
52
+ this.buffers.clear();
53
+ this.listeners.clear();
54
+ }
55
+ truncate(output) {
56
+ if (output.length <= this.maxBufferSize) {
57
+ return output;
58
+ }
59
+ return output.slice(-this.maxBufferSize);
60
+ }
61
+ }
62
+ //# sourceMappingURL=run-script-output-buffer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-script-output-buffer.js","sourceRoot":"","sources":["../../../../../../src/backend/services/run-script/service/run-script-output-buffer.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,qBAAqB;IAIH;IAHZ,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;IACpC,SAAS,GAAG,IAAI,GAAG,EAAuC,CAAC;IAE5E,YAA6B,aAAqB;QAArB,kBAAa,GAAb,aAAa,CAAQ;IAAG,CAAC;IAEtD,GAAG,CAAC,WAAmB,EAAE,MAAc;QACrC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,CAAC,WAAmB,EAAE,MAAc;QACxC,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QAC1D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC;QAErE,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAClD,IAAI,SAAS,EAAE,CAAC;YACd,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACjC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IAED,GAAG,CAAC,WAAmB;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;IAC7C,CAAC;IAED,WAAW,CAAC,WAAmB;QAC7B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACnC,CAAC;IAED,cAAc,CAAC,WAAmB;QAChC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACrC,CAAC;IAED,SAAS,CAAC,WAAmB,EAAE,QAAgC;QAC7D,IAAI,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAChD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;YACtB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAC7C,CAAC;QACD,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAExB,OAAO,GAAG,EAAE;YACV,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YACzD,IAAI,gBAAgB,EAAE,CAAC;gBACrB,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAClC,IAAI,gBAAgB,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;oBAChC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBACrC,CAAC;YACH,CAAC;QACH,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,WAAmB;QACvB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACjC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACrC,CAAC;IAED,KAAK;QACH,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACrB,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;IACzB,CAAC;IAEO,QAAQ,CAAC,MAAc;QAC7B,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACxC,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC3C,CAAC;CACF"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=run-script-output-buffer.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-script-output-buffer.test.d.ts","sourceRoot":"","sources":["../../../../../../src/backend/services/run-script/service/run-script-output-buffer.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,25 @@
1
+ import { describe, expect, it, vi } from 'vitest';
2
+ import { RunScriptOutputBuffer } from './run-script-output-buffer.js';
3
+ describe('RunScriptOutputBuffer', () => {
4
+ it('clears a workspace buffer without dropping listeners', () => {
5
+ const buffer = new RunScriptOutputBuffer(1024);
6
+ const listener = vi.fn();
7
+ buffer.set('ws-1', 'old logs');
8
+ buffer.subscribe('ws-1', listener);
9
+ buffer.clearBuffer('ws-1');
10
+ buffer.append('ws-1', 'new logs');
11
+ expect(buffer.get('ws-1')).toBe('new logs');
12
+ expect(listener).toHaveBeenCalledWith('new logs');
13
+ });
14
+ it('evicts a workspace buffer and its listeners', () => {
15
+ const buffer = new RunScriptOutputBuffer(1024);
16
+ const listener = vi.fn();
17
+ buffer.set('ws-1', 'old logs');
18
+ buffer.subscribe('ws-1', listener);
19
+ buffer.evict('ws-1');
20
+ buffer.append('ws-1', 'new logs');
21
+ expect(buffer.get('ws-1')).toBe('new logs');
22
+ expect(listener).not.toHaveBeenCalled();
23
+ });
24
+ });
25
+ //# sourceMappingURL=run-script-output-buffer.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-script-output-buffer.test.js","sourceRoot":"","sources":["../../../../../../src/backend/services/run-script/service/run-script-output-buffer.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;QAC9D,MAAM,MAAM,GAAG,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC/C,MAAM,QAAQ,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC/B,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAEnC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAC3B,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAElC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC5C,MAAM,CAAC,QAAQ,CAAC,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,MAAM,MAAM,GAAG,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC/C,MAAM,QAAQ,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC/B,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAEnC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACrB,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAElC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC5C,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IAC1C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -2,10 +2,8 @@ import type { RunScriptStatus } from '../../../../shared/core/index.js';
2
2
  export declare class RunScriptService {
3
3
  private readonly runningProcesses;
4
4
  private readonly postRunProcesses;
5
- private readonly outputBuffers;
6
- private readonly outputListeners;
7
- private readonly postRunOutputBuffers;
8
- private readonly postRunOutputListeners;
5
+ private readonly runOutput;
6
+ private readonly postRunOutput;
9
7
  private isShuttingDown;
10
8
  private shutdownHandlersRegistered;
11
9
  startRunScript(workspaceId: string): Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"run-script.service.d.ts","sourceRoot":"","sources":["../../../../../../src/backend/services/run-script/service/run-script.service.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAsBrD,qBAAa,gBAAgB;IAE3B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmC;IAGpE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmC;IAGpE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA6B;IAG3D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkD;IAGlF,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAA6B;IAGlE,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAkD;IAGzF,OAAO,CAAC,cAAc,CAAS;IAG/B,OAAO,CAAC,0BAA0B,CAAS;IAOrC,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;QACjD,OAAO,EAAE,OAAO,CAAC;QACjB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAwFF,OAAO,CAAC,0BAA0B;IAelC,OAAO,CAAC,uBAAuB;YA+CjB,iBAAiB;IAqE/B,OAAO,CAAC,YAAY;IAkBpB,OAAO,CAAC,mBAAmB;YAkBb,mBAAmB;YAqCnB,4BAA4B;YA0B5B,qBAAqB;YAqCrB,gBAAgB;IA6BxB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;QAChD,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;YAuFY,uBAAuB;YAwBvB,oBAAoB;YAwBpB,yBAAyB;YAgBzB,gBAAgB;YA0DhB,kBAAkB;YA8DlB,kBAAkB;YAiClB,eAAe;YAsCf,kBAAkB;IA8D1B,kBAAkB,CAAC,WAAW,EAAE,MAAM;;;;;;;;;;;IA+B5C,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAQ5C,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAWhD,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI;IAuBpF,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAQnD,wBAAwB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI;IAsBrF,OAAO;IAkCb,WAAW;IAyCX,wBAAwB,IAAI,IAAI;CAoCjC;AAED,wBAAgB,sBAAsB,CACpC,OAAO,GAAE;IAAE,wBAAwB,CAAC,EAAE,OAAO,CAAA;CAAO,GACnD,gBAAgB,CAMlB"}
1
+ {"version":3,"file":"run-script.service.d.ts","sourceRoot":"","sources":["../../../../../../src/backend/services/run-script/service/run-script.service.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAuBrD,qBAAa,gBAAgB;IAE3B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmC;IAGpE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmC;IAEpE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAqD;IAC/E,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAqD;IAGnF,OAAO,CAAC,cAAc,CAAS;IAG/B,OAAO,CAAC,0BAA0B,CAAS;IAOrC,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;QACjD,OAAO,EAAE,OAAO,CAAC;QACjB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAwFF,OAAO,CAAC,0BAA0B;IAelC,OAAO,CAAC,uBAAuB;YA+CjB,iBAAiB;IAqE/B,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,mBAAmB;YAIb,mBAAmB;YAqCnB,4BAA4B;YA0B5B,qBAAqB;YAqCrB,gBAAgB;IA6BxB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;QAChD,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;YAuFY,uBAAuB;YAwBvB,oBAAoB;YAwBpB,yBAAyB;YAgBzB,gBAAgB;YA0DhB,kBAAkB;YA8DlB,kBAAkB;YAiClB,eAAe;YAsCf,kBAAkB;IA8D1B,kBAAkB,CAAC,WAAW,EAAE,MAAM;;;;;;;;;;;IA+B5C,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAQ5C,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAShD,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI;IAOpF,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAQnD,wBAAwB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI;IAOrF,OAAO;IAkCb,WAAW;IAuCX,wBAAwB,IAAI,IAAI;CAoCjC;AAED,wBAAgB,sBAAsB,CACpC,OAAO,GAAE;IAAE,wBAAwB,CAAC,EAAE,OAAO,CAAA;CAAO,GACnD,gBAAgB,CAMlB"}
@@ -7,6 +7,7 @@ import { PortAllocationService } from '../../../../backend/services/port-allocat
7
7
  import { runScriptConfigPersistenceService, } from '../../../../backend/services/run-script-config-persistence.service.js';
8
8
  import { runScriptProxyService } from '../../../../backend/services/run-script-proxy.service.js';
9
9
  import { workspaceAccessor } from '../../../../backend/services/workspace/index.js';
10
+ import { RunScriptOutputBuffer } from './run-script-output-buffer.js';
10
11
  import { runScriptStateMachine } from './run-script-state-machine.service.js';
11
12
  const logger = createLogger('run-script-service');
12
13
  const MAX_OUTPUT_BUFFER_SIZE = 500 * 1024;
@@ -19,10 +20,8 @@ function shouldRejectStopWithoutProcess(status, childProcess, pid) {
19
20
  export class RunScriptService {
20
21
  runningProcesses = new Map();
21
22
  postRunProcesses = new Map();
22
- outputBuffers = new Map();
23
- outputListeners = new Map();
24
- postRunOutputBuffers = new Map();
25
- postRunOutputListeners = new Map();
23
+ runOutput = new RunScriptOutputBuffer(MAX_OUTPUT_BUFFER_SIZE);
24
+ postRunOutput = new RunScriptOutputBuffer(MAX_OUTPUT_BUFFER_SIZE);
26
25
  isShuttingDown = false;
27
26
  shutdownHandlersRegistered = false;
28
27
  async startRunScript(workspaceId) {
@@ -74,8 +73,8 @@ export class RunScriptService {
74
73
  }
75
74
  this.runningProcesses.set(workspaceId, childProcess);
76
75
  const startMessage = `\x1b[36m[Factory Factory]\x1b[0m Starting ${command}\n\n`;
77
- this.outputBuffers.set(workspaceId, startMessage);
78
- this.postRunOutputBuffers.delete(workspaceId);
76
+ this.runOutput.set(workspaceId, startMessage);
77
+ this.postRunOutput.clearBuffer(workspaceId);
79
78
  this.registerProcessHandlers(workspaceId, childProcess, pid);
80
79
  return await this.transitionToRunning(workspaceId, childProcess, pid, port, commands.runScriptPostRunCommand, workspace.worktreePath);
81
80
  }
@@ -137,7 +136,7 @@ export class RunScriptService {
137
136
  return;
138
137
  }
139
138
  this.runningProcesses.delete(workspaceId);
140
- this.outputListeners.delete(workspaceId);
139
+ this.runOutput.clearListeners(workspaceId);
141
140
  await this.killPostRunProcess(workspaceId);
142
141
  await runScriptProxyService.stopTunnel(workspaceId);
143
142
  try {
@@ -176,32 +175,10 @@ export class RunScriptService {
176
175
  }
177
176
  }
178
177
  appendOutput(workspaceId, output) {
179
- const currentBuffer = this.outputBuffers.get(workspaceId) ?? '';
180
- let newBuffer = currentBuffer + output;
181
- if (newBuffer.length > MAX_OUTPUT_BUFFER_SIZE) {
182
- newBuffer = newBuffer.slice(-MAX_OUTPUT_BUFFER_SIZE);
183
- }
184
- this.outputBuffers.set(workspaceId, newBuffer);
185
- const listeners = this.outputListeners.get(workspaceId);
186
- if (listeners) {
187
- for (const listener of listeners) {
188
- listener(output);
189
- }
190
- }
178
+ this.runOutput.append(workspaceId, output);
191
179
  }
192
180
  appendPostRunOutput(workspaceId, output) {
193
- const currentBuffer = this.postRunOutputBuffers.get(workspaceId) ?? '';
194
- let newBuffer = currentBuffer + output;
195
- if (newBuffer.length > MAX_OUTPUT_BUFFER_SIZE) {
196
- newBuffer = newBuffer.slice(-MAX_OUTPUT_BUFFER_SIZE);
197
- }
198
- this.postRunOutputBuffers.set(workspaceId, newBuffer);
199
- const listeners = this.postRunOutputListeners.get(workspaceId);
200
- if (listeners) {
201
- for (const listener of listeners) {
202
- listener(output);
203
- }
204
- }
181
+ this.postRunOutput.append(workspaceId, output);
205
182
  }
206
183
  async transitionToRunning(workspaceId, childProcess, pid, port, runScriptPostRunCommand = null, worktreePath = null) {
207
184
  try {
@@ -622,50 +599,20 @@ export class RunScriptService {
622
599
  };
623
600
  }
624
601
  getOutputBuffer(workspaceId) {
625
- return this.outputBuffers.get(workspaceId) ?? '';
602
+ return this.runOutput.get(workspaceId);
626
603
  }
627
604
  evictWorkspaceBuffers(workspaceId) {
628
- this.outputBuffers.delete(workspaceId);
629
- this.outputListeners.delete(workspaceId);
630
- this.postRunOutputBuffers.delete(workspaceId);
631
- this.postRunOutputListeners.delete(workspaceId);
605
+ this.runOutput.evict(workspaceId);
606
+ this.postRunOutput.evict(workspaceId);
632
607
  }
633
608
  subscribeToOutput(workspaceId, listener) {
634
- let listeners = this.outputListeners.get(workspaceId);
635
- if (!listeners) {
636
- listeners = new Set();
637
- this.outputListeners.set(workspaceId, listeners);
638
- }
639
- listeners.add(listener);
640
- return () => {
641
- const listeners = this.outputListeners.get(workspaceId);
642
- if (listeners) {
643
- listeners.delete(listener);
644
- if (listeners.size === 0) {
645
- this.outputListeners.delete(workspaceId);
646
- }
647
- }
648
- };
609
+ return this.runOutput.subscribe(workspaceId, listener);
649
610
  }
650
611
  getPostRunOutputBuffer(workspaceId) {
651
- return this.postRunOutputBuffers.get(workspaceId) ?? '';
612
+ return this.postRunOutput.get(workspaceId);
652
613
  }
653
614
  subscribeToPostRunOutput(workspaceId, listener) {
654
- let listeners = this.postRunOutputListeners.get(workspaceId);
655
- if (!listeners) {
656
- listeners = new Set();
657
- this.postRunOutputListeners.set(workspaceId, listeners);
658
- }
659
- listeners.add(listener);
660
- return () => {
661
- const listeners = this.postRunOutputListeners.get(workspaceId);
662
- if (listeners) {
663
- listeners.delete(listener);
664
- if (listeners.size === 0) {
665
- this.postRunOutputListeners.delete(workspaceId);
666
- }
667
- }
668
- };
615
+ return this.postRunOutput.subscribe(workspaceId, listener);
669
616
  }
670
617
  async cleanup() {
671
618
  logger.info('Cleaning up all running scripts', {
@@ -717,10 +664,8 @@ export class RunScriptService {
717
664
  }
718
665
  this.postRunProcesses.clear();
719
666
  runScriptProxyService.cleanupSync();
720
- this.outputBuffers.clear();
721
- this.outputListeners.clear();
722
- this.postRunOutputBuffers.clear();
723
- this.postRunOutputListeners.clear();
667
+ this.runOutput.clear();
668
+ this.postRunOutput.clear();
724
669
  }
725
670
  registerShutdownHandlers() {
726
671
  if (this.shutdownHandlersRegistered) {
@@ -1 +1 @@
1
- {"version":3,"file":"run-script.service.js","sourceRoot":"","sources":["../../../../../../src/backend/services/run-script/service/run-script.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,QAAQ,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAEL,iCAAiC,GAClC,MAAM,0DAA0D,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AACpF,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAE3E,MAAM,MAAM,GAAG,YAAY,CAAC,oBAAoB,CAAC,CAAC;AAGlD,MAAM,sBAAsB,GAAG,GAAG,GAAG,IAAI,CAAC;AAE1C,SAAS,8BAA8B,CACrC,MAAuB,EACvB,YAAsC,EACtC,GAAkB;IAElB,IAAI,YAAY,IAAI,GAAG,EAAE,CAAC;QACxB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,MAAM,KAAK,UAAU,CAAC;AAC/B,CAAC;AAKD,MAAM,OAAO,gBAAgB;IAEV,gBAAgB,GAAG,IAAI,GAAG,EAAwB,CAAC;IAGnD,gBAAgB,GAAG,IAAI,GAAG,EAAwB,CAAC;IAGnD,aAAa,GAAG,IAAI,GAAG,EAAkB,CAAC;IAG1C,eAAe,GAAG,IAAI,GAAG,EAAuC,CAAC;IAGjE,oBAAoB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAGjD,sBAAsB,GAAG,IAAI,GAAG,EAAuC,CAAC;IAGjF,cAAc,GAAG,KAAK,CAAC;IAGvB,0BAA0B,GAAG,KAAK,CAAC;IAO3C,KAAK,CAAC,cAAc,CAAC,WAAmB;QAOtC,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;YAChE,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;YACzC,CAAC;YAED,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;gBAC5B,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;YACxD,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,SAAS,CAAC,CAAC;YAElE,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC;gBAC/B,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;YACjE,CAAC;YAID,MAAM,OAAO,GAAG,MAAM,qBAAqB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAC/D,IAAI,CAAC,OAAO,EAAE,CAAC;gBAEb,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;gBAC5D,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,+BAA+B;oBACtC,GAAG,EAAE,KAAK,EAAE,YAAY,IAAI,SAAS;oBACrC,IAAI,EAAE,KAAK,EAAE,aAAa,IAAI,SAAS;iBACxC,CAAC;YACJ,CAAC;YAED,IAAI,OAAO,GAAG,QAAQ,CAAC,gBAAgB,CAAC;YACxC,IAAI,IAAwB,CAAC;YAG7B,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC/B,IAAI,GAAG,MAAM,qBAAqB,CAAC,YAAY,EAAE,CAAC;gBAClD,OAAO,GAAG,oBAAoB,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;gBAC7D,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE;oBAC3C,WAAW;oBACX,IAAI;iBACL,CAAC,CAAC;YACL,CAAC;YAGD,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE;gBACjC,WAAW;gBACX,OAAO;gBACP,GAAG,EAAE,SAAS,CAAC,YAAY;aAC5B,CAAC,CAAC;YAEH,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE;gBAClD,GAAG,EAAE,SAAS,CAAC,YAAY;gBAC3B,QAAQ,EAAE,KAAK;gBACf,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;aAClC,CAAC,CAAC;YAEH,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC;YAC7B,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;YACxD,CAAC;YAGD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;YAGrD,MAAM,YAAY,GAAG,6CAA6C,OAAO,MAAM,CAAC;YAChF,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;YAClD,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAG9C,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC;YAI7D,OAAO,MAAM,IAAI,CAAC,mBAAmB,CACnC,WAAW,EACX,YAAY,EACZ,GAAG,EACH,IAAI,EACJ,QAAQ,CAAC,uBAAuB,EAChC,SAAS,CAAC,YAAY,CACvB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAEO,0BAA0B,CAAC,SAMlC;QACC,OAAO,iCAAiC,CAAC,8BAA8B,CAAC;YACtE,SAAS;YAGT,wBAAwB,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE;SACxD,CAAC,CAAC;IACL,CAAC;IAEO,uBAAuB,CAC7B,WAAmB,EACnB,YAA0B,EAC1B,GAAW;QAGX,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;YACvC,KAAK,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,YAAY,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACxF,MAAM,CAAC,KAAK,CAAC,kCAAkC,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE;oBAC/D,WAAW;oBACX,GAAG;oBACH,IAAI;oBACJ,MAAM;iBACP,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAGH,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,EAAE;YACpC,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAClD,CAAC,CAAC;QAEF,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAC9C,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACzC,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;QAC7E,CAAC,CAAC,CAAC;QAEH,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAC9C,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACzC,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;QAC7E,CAAC,CAAC,CAAC;QAGH,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YACvC,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;YACpE,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC1C,IAAI,CAAC;gBACH,MAAM,qBAAqB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YACtD,CAAC;YAAC,OAAO,UAAU,EAAE,CAAC;gBACpB,MAAM,CAAC,IAAI,CAAC,6EAA6E,EAAE;oBACzF,WAAW;oBACX,KAAK,EAAE,UAAU;iBAClB,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC7B,WAAmB,EACnB,YAA0B,EAC1B,GAAW,EACX,IAAmB,EACnB,MAAqB;QAErB,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QAErE,MAAM,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC9D,IAAI,cAAc,IAAI,cAAc,KAAK,YAAY,EAAE,CAAC;YACtD,MAAM,CAAC,IAAI,CAAC,wDAAwD,EAAE;gBACpE,WAAW;gBACX,UAAU,EAAE,GAAG;gBACf,SAAS,EAAE,cAAc,CAAC,GAAG;aAC9B,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC1C,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACzC,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;QAC3C,MAAM,qBAAqB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAMpD,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;YACzD,MAAM,MAAM,GAAG,EAAE,EAAE,eAAe,CAAC;YAEnC,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;gBAC1B,IAAI,CAAC;oBACH,MAAM,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;gBAC5D,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,CAAC,IAAI,CACT,8EAA8E,EAC9E;wBACE,WAAW;wBACX,KAAK;qBACN,CACF,CAAC;gBACJ,CAAC;gBACD,OAAO;YACT,CAAC;YAED,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACvE,MAAM,CAAC,KAAK,CAAC,2BAA2B,MAAM,kCAAkC,EAAE;oBAChF,WAAW;iBACZ,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAGD,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACf,MAAM,qBAAqB,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;YACzD,CAAC;iBAAM,CAAC;gBACN,MAAM,qBAAqB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAEf,MAAM,CAAC,IAAI,CAAC,oEAAoE,EAAE;gBAChF,WAAW;gBACX,KAAK;aACN,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAEO,YAAY,CAAC,WAAmB,EAAE,MAAc;QACtD,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QAChE,IAAI,SAAS,GAAG,aAAa,GAAG,MAAM,CAAC;QAEvC,IAAI,SAAS,CAAC,MAAM,GAAG,sBAAsB,EAAE,CAAC;YAC9C,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,sBAAsB,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAE/C,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACxD,IAAI,SAAS,EAAE,CAAC;YACd,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACjC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IAEO,mBAAmB,CAAC,WAAmB,EAAE,MAAc;QAC7D,MAAM,aAAa,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QACvE,IAAI,SAAS,GAAG,aAAa,GAAG,MAAM,CAAC;QAEvC,IAAI,SAAS,CAAC,MAAM,GAAG,sBAAsB,EAAE,CAAC;YAC9C,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,sBAAsB,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAEtD,MAAM,SAAS,GAAG,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC/D,IAAI,SAAS,EAAE,CAAC;YACd,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACjC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAC/B,WAAmB,EACnB,YAA0B,EAC1B,GAAW,EACX,IAAwB,EACxB,0BAAyC,IAAI,EAC7C,eAA8B,IAAI;QAMlC,IAAI,CAAC;YACH,MAAM,qBAAqB,CAAC,WAAW,CAAC,WAAW,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;YACpE,IAAI,QAAQ,GAAkB,IAAI,CAAC;YACnC,IAAI,IAAI,EAAE,CAAC;gBACT,QAAQ,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC,WAAW,EAAE,YAAY,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;YAC3F,CAAC;YAGD,IAAI,uBAAuB,IAAI,YAAY,EAAE,CAAC;gBAC5C,KAAK,IAAI,CAAC,kBAAkB,CAC1B,WAAW,EACX,uBAAuB,EACvB,YAAY,EACZ,IAAI,CACL,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;oBAChB,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;gBACxE,CAAC,CAAC,CAAC;YACL,CAAC;YAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,IAAI,SAAS,EAAE,CAAC;QACvE,CAAC;QAAC,OAAO,gBAAgB,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,YAAY,EAAE,GAAG,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAC;QAC5F,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,4BAA4B,CACxC,WAAmB,EACnB,YAA0B,EAC1B,GAAW,EACX,IAAY;QAEZ,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,YAAY,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAC7E,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,aAAa,GACjB,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,YAAY,IAAI,YAAY,CAAC,QAAQ,KAAK,IAAI,CAAC;QAC5F,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,iEAAiE,EAAE;YAC7E,WAAW;YACX,GAAG;YACH,IAAI;SACL,CAAC,CAAC;QACH,MAAM,qBAAqB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QACpD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,KAAK,CAAC,qBAAqB,CACjC,WAAmB,EACnB,YAA0B,EAC1B,GAAW,EACX,IAAwB,EACxB,gBAAyB;QAGzB,MAAM,EAAE,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACzD,MAAM,aAAa,GAAG,EAAE,EAAE,eAAe,CAAC;QAC1C,IAAI,aAAa,KAAK,WAAW,IAAI,aAAa,KAAK,QAAQ,EAAE,CAAC;YAChE,MAAM,CAAC,IAAI,CAAC,8EAA8E,EAAE;gBAC1F,WAAW;gBACX,GAAG;gBACH,aAAa;aACd,CAAC,CAAC;YACH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;QACtC,CAAC;QAGD,IAAI,aAAa,KAAK,MAAM,IAAI,aAAa,KAAK,UAAU,EAAE,CAAC;YAC7D,MAAM,CAAC,IAAI,CAAC,0EAA0E,EAAE;gBACtF,WAAW;gBACX,GAAG;gBACH,aAAa;aACd,CAAC,CAAC;YACH,IAAI,CAAC;gBACH,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC/B,CAAC;YAAC,MAAM,CAAC;YAET,CAAC;YACD,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC1C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,8CAA8C,EAAE,CAAC;QACnF,CAAC;QACD,MAAM,gBAAgB,CAAC;IACzB,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAC5B,WAAmB,EACnB,KAAY;QAEZ,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;QAInE,IAAI,KAAK,CAAC,IAAI,KAAK,4BAA4B,EAAE,CAAC;YAChD,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;gBAChE,IAAI,SAAS,EAAE,eAAe,KAAK,UAAU,EAAE,CAAC;oBAC9C,MAAM,qBAAqB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC;YAAC,OAAO,UAAU,EAAE,CAAC;gBACpB,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE,OAAO,CAAC,UAAU,CAAC,EAAE;oBACxE,WAAW;iBACZ,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;IAClD,CAAC;IAOD,KAAK,CAAC,aAAa,CAAC,WAAmB;QAIrC,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;YAChE,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;YACzC,CAAC;YAED,MAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAC5D,MAAM,GAAG,GAAG,SAAS,CAAC,YAAY,CAAC;YACnC,MAAM,MAAM,GAAG,SAAS,CAAC,eAAe,CAAC;YAGzC,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;gBACtB,MAAM,qBAAqB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;gBACpD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC3B,CAAC;YAID,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;gBAC1B,IAAI,YAAY,IAAI,GAAG,EAAE,CAAC;oBACxB,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC;oBAC3D,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;oBAC3C,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC;gBAChE,CAAC;gBACD,MAAM,IAAI,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC;gBAClD,MAAM,qBAAqB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;gBACpD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC3B,CAAC;YAGD,IAAI,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAClD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;gBAC7E,MAAM,qBAAqB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;gBACpD,OAAO,MAAM,CAAC;YAChB,CAAC;YAID,IAAI,8BAA8B,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,CAAC,EAAE,CAAC;gBAC9D,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,0BAA0B,EAAE,CAAC;YAC/D,CAAC;YAGD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;YAC3D,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,qBAAqB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;gBACpD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC3B,CAAC;YAED,IAAI,uBAAuB,GAAG,SAAS,CAAC,uBAAuB,CAAC;YAChE,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,SAAS,CAAC,CAAC;gBAClE,uBAAuB,GAAG,QAAQ,CAAC,uBAAuB,CAAC;YAC7D,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,0EAA0E,EAAE;oBACtF,WAAW;oBACX,KAAK;iBACN,CAAC,CAAC;YACL,CAAC;YAGD,IAAI,uBAAuB,IAAI,SAAS,CAAC,YAAY,EAAE,CAAC;gBACtD,MAAM,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE;oBACvC,uBAAuB;oBACvB,YAAY,EAAE,SAAS,CAAC,YAAY;oBACpC,aAAa,EAAE,SAAS,CAAC,aAAa;iBACvC,CAAC,CAAC;YACL,CAAC;YAGD,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC;YAC3D,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;YAC3C,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC;YAG9D,MAAM,IAAI,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC;YAClD,MAAM,qBAAqB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YAEpD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC3B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;YACvC,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,eAAe,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YAC5E,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,CAAC,OAAO,EAAE,CAAC;QAC5D,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,uBAAuB,CACnC,WAAmB,EACnB,YAAsC;QAEtC,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,CAAC,IAAI,CAAC,4CAA4C,EAAE;gBACxD,WAAW;gBACX,GAAG,EAAE,YAAY,CAAC,GAAG;aACtB,CAAC,CAAC;YACH,IAAI,CAAC;gBACH,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC/B,CAAC;YAAC,MAAM,CAAC;YAET,CAAC;YACD,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,CAAC;YACH,MAAM,qBAAqB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACjD,CAAC;QAAC,MAAM,CAAC;QAET,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,WAAmB;QACpD,IAAI,CAAC;YACH,MAAM,qBAAqB,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;YACvD,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAEf,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;YAC5D,MAAM,WAAW,GAAG,KAAK,EAAE,eAAe,CAAC;YAC3C,IACE,WAAW,KAAK,WAAW;gBAC3B,WAAW,KAAK,QAAQ;gBACxB,WAAW,KAAK,MAAM;gBACtB,WAAW,KAAK,UAAU,EAC1B,CAAC;gBACD,MAAM,CAAC,KAAK,CAAC,4DAA4D,EAAE;oBACzE,WAAW;oBACX,WAAW;iBACZ,CAAC,CAAC;gBACH,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,yBAAyB,CAAC,WAAmB;QACzD,IAAI,CAAC;YACH,MAAM,qBAAqB,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;QAC5D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAEf,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;YAC5D,IAAI,KAAK,EAAE,eAAe,KAAK,MAAM,EAAE,CAAC;gBACtC,MAAM,CAAC,KAAK,CAAC,wDAAwD,EAAE;oBACrE,WAAW;iBACZ,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAC5B,WAAmB,EACnB,SAIC;QAED,MAAM,CAAC,IAAI,CAAC,wCAAwC,EAAE;YACpD,WAAW;YACX,cAAc,EAAE,SAAS,CAAC,uBAAuB;SAClD,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,cAAc,GAAG,SAAS,CAAC,aAAa;gBAC5C,CAAC,CAAC,oBAAoB,CAAC,cAAc,CACjC,SAAS,CAAC,uBAAuB,EACjC,SAAS,CAAC,aAAa,CACxB;gBACH,CAAC,CAAC,SAAS,CAAC,uBAAuB,CAAC;YAEtC,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC,EAAE;gBAC3D,GAAG,EAAE,SAAS,CAAC,YAAY;gBAC3B,QAAQ,EAAE,KAAK;gBACf,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;aAClC,CAAC,CAAC;YAEH,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC3C,MAAM,CAAC,IAAI,CAAC,oCAAoC,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;YAC5E,CAAC,CAAC,CAAC;YACH,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC3C,MAAM,CAAC,IAAI,CAAC,oCAAoC,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;YAC5E,CAAC,CAAC,CAAC;YAEH,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;gBAClC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;oBAC9B,MAAM,CAAC,IAAI,CAAC,6CAA6C,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;oBAC5E,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBAC/B,OAAO,EAAE,CAAC;gBACZ,CAAC,EAAE,IAAI,CAAC,CAAC;gBAET,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;oBACjC,YAAY,CAAC,OAAO,CAAC,CAAC;oBACtB,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;oBACzE,OAAO,EAAE,CAAC;gBACZ,CAAC,CAAC,CAAC;gBAEH,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;oBACnC,YAAY,CAAC,OAAO,CAAC,CAAC;oBACtB,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;oBAC7D,OAAO,EAAE,CAAC;gBACZ,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC9B,WAAmB,EACnB,uBAA+B,EAC/B,YAAoB,EACpB,IAAwB;QAExB,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QAExB,IAAI,OAAO,GAAG,uBAAuB,CAAC;QACtC,IAAI,IAAI,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvC,OAAO,GAAG,oBAAoB,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC/D,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC;QAEjE,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE;YACpD,GAAG,EAAE,YAAY;YACjB,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;SAClC,CAAC,CAAC;QAEH,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC,iCAAiC,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YAChE,OAAO;QACT,CAAC;QAED,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QAEvD,MAAM,mBAAmB,GAAG,sDAAsD,OAAO,IAAI,CAAC;QAC9F,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;QACpD,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;QAE3D,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,EAAE;YACpC,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QACzD,CAAC,CAAC;QAEF,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAChD,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YAC3C,MAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;QAEH,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAChD,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YAC3C,MAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;QAEH,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;YACzC,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE;gBACnC,WAAW;gBACX,GAAG,EAAE,cAAc,CAAC,GAAG;gBACvB,IAAI;gBACJ,MAAM;aACP,CAAC,CAAC;YACH,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACnC,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;YAC5D,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,WAAmB;QAClD,MAAM,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC9D,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GAAG,cAAc,CAAC,GAAG,CAAC;QACtC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC1C,OAAO;QACT,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;QAE1E,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YAClC,QAAQ,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;gBACtC,IAAI,GAAG,EAAE,CAAC;oBACR,MAAM,SAAS,GAAI,GAA6B,CAAC,IAAI,CAAC;oBACtD,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;oBAC5B,IAAI,SAAS,KAAK,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;wBAClE,MAAM,CAAC,IAAI,CAAC,qCAAqC,EAAE;4BACjD,WAAW;4BACX,GAAG,EAAE,UAAU;4BACf,KAAK,EAAE,OAAO;yBACf,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBACD,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,eAAe,CAC3B,WAAmB,EACnB,YAAsC,EACtC,GAAkB;QAElB,MAAM,SAAS,GAAG,YAAY,EAAE,GAAG,IAAI,GAAG,CAAC;QAC3C,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC;QAC5D,MAAM,CAAC,IAAI,CAAC,2BAA2B,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC;QAElF,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YAClC,QAAQ,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;gBACrC,IAAI,GAAG,EAAE,CAAC;oBACR,MAAM,SAAS,GAAI,GAA6B,CAAC,IAAI,CAAC;oBACtD,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;oBAC5B,IAAI,SAAS,KAAK,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;wBACjE,MAAM,CAAC,KAAK,CAAC,oDAAoD,EAAE;4BACjE,WAAW;4BACX,GAAG,EAAE,SAAS;4BACd,KAAK,EAAE,OAAO;yBACf,CAAC,CAAC;oBACL,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,IAAI,CAAC,wCAAwC,EAAE;4BACpD,WAAW;4BACX,GAAG,EAAE,SAAS;4BACd,KAAK,EAAE,OAAO;yBACf,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBACD,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC9B,WAAmB,EACnB,YAAsC,EACtC,GAAkB;QAElB,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO;QACT,CAAC;QAED,IAAI,YAAY,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;YACnC,OAAO;QACT,CAAC;QAED,IAAI,OAAO,YAAY,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,YAAY,CAAC,GAAG,KAAK,UAAU,EAAE,CAAC;YACtF,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,YAAY,CAAC,GAAG,IAAI,GAAG,IAAI,SAAS,CAAC;QACrD,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YAClC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC9B,OAAO,EAAE,CAAC;gBACV,MAAM,CAAC,IAAI,CAAC,0DAA0D,EAAE;oBACtE,WAAW;oBACX,GAAG,EAAE,OAAO;iBACb,CAAC,CAAC;gBACH,OAAO,EAAE,CAAC;YACZ,CAAC,EAAE,MAAM,CAAC,CAAC;YAEX,MAAM,OAAO,GAAG,GAAG,EAAE;gBACnB,YAAY,CAAC,OAAO,CAAC,CAAC;gBACtB,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBACjC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACrC,CAAC,CAAC;YAEF,MAAM,MAAM,GAAG,GAAG,EAAE;gBAClB,OAAO,EAAE,CAAC;gBACV,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC;YAEF,MAAM,OAAO,GAAG,CAAC,KAAY,EAAE,EAAE;gBAC/B,OAAO,EAAE,CAAC;gBACV,MAAM,CAAC,IAAI,CAAC,yDAAyD,EAAE;oBACrE,WAAW;oBACX,GAAG,EAAE,OAAO;oBACZ,KAAK;iBACN,CAAC,CAAC;gBACH,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC;YAEF,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAClC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAEpC,IAAI,YAAY,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;gBACnC,OAAO,EAAE,CAAC;gBACV,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAKD,KAAK,CAAC,kBAAkB,CAAC,WAAmB;QAC1C,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAChE,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACzC,CAAC;QAGD,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QAGtE,MAAM,cAAc,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACrE,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACzC,CAAC;QAED,OAAO;YACL,MAAM;YACN,GAAG,EAAE,cAAc,CAAC,YAAY;YAChC,IAAI,EAAE,cAAc,CAAC,aAAa;YAClC,QAAQ,EAAE,qBAAqB,CAAC,YAAY,CAAC,WAAW,CAAC;YACzD,SAAS,EAAE,cAAc,CAAC,kBAAkB;YAC5C,YAAY,EAAE,CAAC,CAAC,cAAc,CAAC,gBAAgB;YAC/C,gBAAgB,EAAE,cAAc,CAAC,gBAAgB;YACjD,uBAAuB,EAAE,cAAc,CAAC,uBAAuB;YAC/D,uBAAuB,EAAE,cAAc,CAAC,uBAAuB;SAChE,CAAC;IACJ,CAAC;IAKD,eAAe,CAAC,WAAmB;QACjC,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;IACnD,CAAC;IAMD,qBAAqB,CAAC,WAAmB;QACvC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACvC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACzC,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC9C,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC;IAMD,iBAAiB,CAAC,WAAmB,EAAE,QAAgC;QACrE,IAAI,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACtD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;YACtB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QACnD,CAAC;QACD,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAGxB,OAAO,GAAG,EAAE;YACV,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YACxD,IAAI,SAAS,EAAE,CAAC;gBACd,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC3B,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;oBACzB,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBAC3C,CAAC;YACH,CAAC;QACH,CAAC,CAAC;IACJ,CAAC;IAKD,sBAAsB,CAAC,WAAmB;QACxC,OAAO,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;IAC1D,CAAC;IAMD,wBAAwB,CAAC,WAAmB,EAAE,QAAgC;QAC5E,IAAI,SAAS,GAAG,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC7D,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;YACtB,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAC1D,CAAC;QACD,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAExB,OAAO,GAAG,EAAE;YACV,MAAM,SAAS,GAAG,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAC/D,IAAI,SAAS,EAAE,CAAC;gBACd,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC3B,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;oBACzB,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBAClD,CAAC;YACH,CAAC;QACH,CAAC,CAAC;IACJ,CAAC;IAKD,KAAK,CAAC,OAAO;QACX,MAAM,CAAC,IAAI,CAAC,iCAAiC,EAAE;YAC7C,KAAK,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI;SAClC,CAAC,CAAC;QAIH,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9D,MAAM,OAAO,CAAC,GAAG,CACf,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;YACrC,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;YACxC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CAAC,0CAA0C,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE;oBACvE,WAAW;iBACZ,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC,CACH,CAAC;QAEF,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAC9B,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAC9B,MAAM,qBAAqB,CAAC,OAAO,EAAE,CAAC;IACxC,CAAC;IAWD,WAAW;QACT,MAAM,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;QAClE,KAAK,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,EAAE,CAAC;YAC1E,IAAI,CAAC;gBACH,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;oBACzB,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC/B,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC,iCAAiC,EAAE;oBAC7C,WAAW;oBACX,GAAG,EAAE,YAAY,CAAC,GAAG;iBACtB,CAAC,CAAC;YACL,CAAC;YAAC,MAAM,CAAC;YAET,CAAC;QACH,CAAC;QACD,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAC9B,KAAK,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,EAAE,CAAC;YAC5E,IAAI,CAAC;gBACH,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;oBAC3B,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACjC,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC,qCAAqC,EAAE;oBACjD,WAAW;oBACX,GAAG,EAAE,cAAc,CAAC,GAAG;iBACxB,CAAC,CAAC;YACL,CAAC;YAAC,MAAM,CAAC;YAET,CAAC;QACH,CAAC;QACD,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAC9B,qBAAqB,CAAC,WAAW,EAAE,CAAC;QACpC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC3B,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,CAAC;QAClC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,CAAC;IACtC,CAAC;IAMD,wBAAwB;QACtB,IAAI,IAAI,CAAC,0BAA0B,EAAE,CAAC;YACpC,OAAO;QACT,CAAC;QACD,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC;QAKvC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;YAC9B,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBACxB,OAAO;YACT,CAAC;YACD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;YACxD,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QACvB,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE;YAC/B,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBACxB,OAAO;YACT,CAAC;YACD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,MAAM,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;YACzD,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QACvB,CAAC,CAAC,CAAC;QAKH,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;YACtB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;gBACzB,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAED,MAAM,UAAU,sBAAsB,CACpC,UAAkD,EAAE;IAEpD,MAAM,OAAO,GAAG,IAAI,gBAAgB,EAAE,CAAC;IACvC,IAAI,OAAO,CAAC,wBAAwB,EAAE,CAAC;QACrC,OAAO,CAAC,wBAAwB,EAAE,CAAC;IACrC,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"run-script.service.js","sourceRoot":"","sources":["../../../../../../src/backend/services/run-script/service/run-script.service.ts"],"names":[],"mappings":"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"}
@@ -116,12 +116,14 @@ describe('RunScriptService.handleProcessExit', () => {
116
116
  it('ignores stale process exits when a newer process is tracked', async () => {
117
117
  const service = new RunScriptService();
118
118
  const activeProcess = { pid: 22_222 };
119
+ const listener = vi.fn();
119
120
  service.runningProcesses.set('ws-1', activeProcess);
120
- service.outputListeners.set('ws-1', new Set([(data) => data]));
121
+ service.subscribeToOutput('ws-1', listener);
121
122
  const staleProcess = { pid: 11_111 };
122
123
  await service.handleProcessExit('ws-1', staleProcess, 11_111, 0, null);
124
+ service.appendOutput('ws-1', 'still subscribed');
123
125
  expect(service.runningProcesses.get('ws-1')).toBe(activeProcess);
124
- expect(service.outputListeners.has('ws-1')).toBe(true);
126
+ expect(listener).toHaveBeenCalledWith('still subscribed');
125
127
  expect(mockMarkCompleted).not.toHaveBeenCalled();
126
128
  expect(mockMarkFailed).not.toHaveBeenCalled();
127
129
  expect(mockStopTunnel).not.toHaveBeenCalled();
@@ -716,14 +718,18 @@ describe('RunScriptService.subscribeToOutput', () => {
716
718
  appendOutput('ws-1', 'after');
717
719
  expect(listener).toHaveBeenCalledTimes(1);
718
720
  });
719
- it('cleans up listener set when last listener unsubscribes', () => {
721
+ it('allows resubscribe after the last listener unsubscribes', () => {
720
722
  const service = new RunScriptService();
721
- const outputListeners = service
722
- .outputListeners;
723
- const unsub = service.subscribeToOutput('ws-1', vi.fn());
724
- expect(outputListeners.has('ws-1')).toBe(true);
723
+ const appendOutput = service.appendOutput.bind(service);
724
+ const firstListener = vi.fn();
725
+ const secondListener = vi.fn();
726
+ const unsub = service.subscribeToOutput('ws-1', firstListener);
727
+ appendOutput('ws-1', 'first');
725
728
  unsub();
726
- expect(outputListeners.has('ws-1')).toBe(false);
729
+ service.subscribeToOutput('ws-1', secondListener);
730
+ appendOutput('ws-1', 'second');
731
+ expect(firstListener).toHaveBeenCalledTimes(1);
732
+ expect(secondListener).toHaveBeenCalledWith('second');
727
733
  });
728
734
  });
729
735
  describe('RunScriptService.cleanupSync', () => {
@@ -831,23 +837,31 @@ describe('RunScriptService.getRunScriptStatus', () => {
831
837
  describe('RunScriptService.evictWorkspaceBuffers', () => {
832
838
  it('evicts output and listener buffers for an archived workspace only', () => {
833
839
  const service = new RunScriptService();
834
- service.outputBuffers.set('ws-1', 'main logs');
835
- service.postRunOutputBuffers.set('ws-1', 'postRun logs');
836
- service.outputListeners.set('ws-1', new Set([vi.fn()]));
837
- service.postRunOutputListeners.set('ws-1', new Set([vi.fn()]));
838
- service.outputBuffers.set('ws-2', 'keep');
839
- service.postRunOutputBuffers.set('ws-2', 'keep');
840
- service.outputListeners.set('ws-2', new Set([vi.fn()]));
841
- service.postRunOutputListeners.set('ws-2', new Set([vi.fn()]));
840
+ const workspaceOneOutputListener = vi.fn();
841
+ const workspaceOnePostRunListener = vi.fn();
842
+ const workspaceTwoOutputListener = vi.fn();
843
+ const workspaceTwoPostRunListener = vi.fn();
844
+ service.subscribeToOutput('ws-1', workspaceOneOutputListener);
845
+ service.subscribeToPostRunOutput('ws-1', workspaceOnePostRunListener);
846
+ service.subscribeToOutput('ws-2', workspaceTwoOutputListener);
847
+ service.subscribeToPostRunOutput('ws-2', workspaceTwoPostRunListener);
848
+ service.appendOutput('ws-1', 'main logs');
849
+ service.appendPostRunOutput('ws-1', 'postRun logs');
850
+ service.appendOutput('ws-2', 'keep');
851
+ service.appendPostRunOutput('ws-2', 'postRun keep');
842
852
  service.evictWorkspaceBuffers('ws-1');
843
- expect(service.outputBuffers.has('ws-1')).toBe(false);
844
- expect(service.postRunOutputBuffers.has('ws-1')).toBe(false);
845
- expect(service.outputListeners.has('ws-1')).toBe(false);
846
- expect(service.postRunOutputListeners.has('ws-1')).toBe(false);
847
- expect(service.outputBuffers.has('ws-2')).toBe(true);
848
- expect(service.postRunOutputBuffers.has('ws-2')).toBe(true);
849
- expect(service.outputListeners.has('ws-2')).toBe(true);
850
- expect(service.postRunOutputListeners.has('ws-2')).toBe(true);
853
+ expect(service.getOutputBuffer('ws-1')).toBe('');
854
+ expect(service.getPostRunOutputBuffer('ws-1')).toBe('');
855
+ expect(service.getOutputBuffer('ws-2')).toBe('keep');
856
+ expect(service.getPostRunOutputBuffer('ws-2')).toBe('postRun keep');
857
+ service.appendOutput('ws-1', 'after eviction');
858
+ service.appendPostRunOutput('ws-1', 'postRun after eviction');
859
+ service.appendOutput('ws-2', ' still subscribed');
860
+ service.appendPostRunOutput('ws-2', ' still subscribed');
861
+ expect(workspaceOneOutputListener).toHaveBeenCalledTimes(1);
862
+ expect(workspaceOnePostRunListener).toHaveBeenCalledTimes(1);
863
+ expect(workspaceTwoOutputListener).toHaveBeenLastCalledWith(' still subscribed');
864
+ expect(workspaceTwoPostRunListener).toHaveBeenLastCalledWith(' still subscribed');
851
865
  });
852
866
  });
853
867
  describe('RunScriptService.postRun output helpers', () => {