@trigger.dev/core 4.4.6 → 4.5.0-rc.0

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 (345) hide show
  1. package/dist/commonjs/v3/apiClient/errors.d.ts +5 -0
  2. package/dist/commonjs/v3/apiClient/errors.js +12 -0
  3. package/dist/commonjs/v3/apiClient/errors.js.map +1 -1
  4. package/dist/commonjs/v3/apiClient/index.d.ts +208 -1
  5. package/dist/commonjs/v3/apiClient/index.js +204 -0
  6. package/dist/commonjs/v3/apiClient/index.js.map +1 -1
  7. package/dist/commonjs/v3/apiClient/runStream.d.ts +44 -0
  8. package/dist/commonjs/v3/apiClient/runStream.js +156 -22
  9. package/dist/commonjs/v3/apiClient/runStream.js.map +1 -1
  10. package/dist/commonjs/v3/apiClient/runStream.test.d.ts +1 -0
  11. package/dist/commonjs/v3/apiClient/runStream.test.js +511 -0
  12. package/dist/commonjs/v3/apiClient/runStream.test.js.map +1 -0
  13. package/dist/commonjs/v3/apiClient/types.d.ts +2 -0
  14. package/dist/commonjs/v3/auth/environment.d.ts +62 -0
  15. package/dist/commonjs/v3/auth/environment.js +20 -0
  16. package/dist/commonjs/v3/auth/environment.js.map +1 -0
  17. package/dist/commonjs/v3/errors.d.ts +7 -0
  18. package/dist/commonjs/v3/errors.js +22 -2
  19. package/dist/commonjs/v3/errors.js.map +1 -1
  20. package/dist/commonjs/v3/index.d.ts +2 -1
  21. package/dist/commonjs/v3/index.js +1 -0
  22. package/dist/commonjs/v3/index.js.map +1 -1
  23. package/dist/commonjs/v3/inputStreams/index.d.ts +3 -0
  24. package/dist/commonjs/v3/inputStreams/index.js +9 -0
  25. package/dist/commonjs/v3/inputStreams/index.js.map +1 -1
  26. package/dist/commonjs/v3/inputStreams/manager.d.ts +14 -0
  27. package/dist/commonjs/v3/inputStreams/manager.js +116 -4
  28. package/dist/commonjs/v3/inputStreams/manager.js.map +1 -1
  29. package/dist/commonjs/v3/inputStreams/noopManager.d.ts +3 -0
  30. package/dist/commonjs/v3/inputStreams/noopManager.js +3 -0
  31. package/dist/commonjs/v3/inputStreams/noopManager.js.map +1 -1
  32. package/dist/commonjs/v3/inputStreams/types.d.ts +19 -0
  33. package/dist/commonjs/v3/locals/manager.js.map +1 -1
  34. package/dist/commonjs/v3/locals/types.d.ts +18 -7
  35. package/dist/commonjs/v3/realtime-streams-api.d.ts +3 -0
  36. package/dist/commonjs/v3/realtime-streams-api.js +8 -1
  37. package/dist/commonjs/v3/realtime-streams-api.js.map +1 -1
  38. package/dist/commonjs/v3/realtimeStreams/index.d.ts +3 -0
  39. package/dist/commonjs/v3/realtimeStreams/index.js +11 -1
  40. package/dist/commonjs/v3/realtimeStreams/index.js.map +1 -1
  41. package/dist/commonjs/v3/realtimeStreams/manager.d.ts +11 -0
  42. package/dist/commonjs/v3/realtimeStreams/manager.js +58 -2
  43. package/dist/commonjs/v3/realtimeStreams/manager.js.map +1 -1
  44. package/dist/commonjs/v3/realtimeStreams/manager.test.d.ts +1 -0
  45. package/dist/commonjs/v3/realtimeStreams/manager.test.js +92 -0
  46. package/dist/commonjs/v3/realtimeStreams/manager.test.js.map +1 -0
  47. package/dist/commonjs/v3/realtimeStreams/noopManager.js +1 -1
  48. package/dist/commonjs/v3/realtimeStreams/noopManager.js.map +1 -1
  49. package/dist/commonjs/v3/realtimeStreams/sessionStreamInstance.d.ts +41 -0
  50. package/dist/commonjs/v3/realtimeStreams/sessionStreamInstance.js +77 -0
  51. package/dist/commonjs/v3/realtimeStreams/sessionStreamInstance.js.map +1 -0
  52. package/dist/commonjs/v3/realtimeStreams/sessionStreamOneshot.d.ts +45 -0
  53. package/dist/commonjs/v3/realtimeStreams/sessionStreamOneshot.js +83 -0
  54. package/dist/commonjs/v3/realtimeStreams/sessionStreamOneshot.js.map +1 -0
  55. package/dist/commonjs/v3/realtimeStreams/streamInstance.d.ts +14 -2
  56. package/dist/commonjs/v3/realtimeStreams/streamInstance.js +5 -2
  57. package/dist/commonjs/v3/realtimeStreams/streamInstance.js.map +1 -1
  58. package/dist/commonjs/v3/realtimeStreams/streamsWriterV1.d.ts +2 -2
  59. package/dist/commonjs/v3/realtimeStreams/streamsWriterV1.js +2 -1
  60. package/dist/commonjs/v3/realtimeStreams/streamsWriterV1.js.map +1 -1
  61. package/dist/commonjs/v3/realtimeStreams/streamsWriterV2.d.ts +23 -2
  62. package/dist/commonjs/v3/realtimeStreams/streamsWriterV2.js +57 -4
  63. package/dist/commonjs/v3/realtimeStreams/streamsWriterV2.js.map +1 -1
  64. package/dist/commonjs/v3/realtimeStreams/streamsWriterV2.test.d.ts +1 -0
  65. package/dist/commonjs/v3/realtimeStreams/streamsWriterV2.test.js +68 -0
  66. package/dist/commonjs/v3/realtimeStreams/streamsWriterV2.test.js.map +1 -0
  67. package/dist/commonjs/v3/realtimeStreams/types.d.ts +42 -3
  68. package/dist/commonjs/v3/resource-catalog/catalog.d.ts +4 -1
  69. package/dist/commonjs/v3/resource-catalog/index.d.ts +4 -1
  70. package/dist/commonjs/v3/resource-catalog/index.js +9 -0
  71. package/dist/commonjs/v3/resource-catalog/index.js.map +1 -1
  72. package/dist/commonjs/v3/resource-catalog/noopResourceCatalog.d.ts +4 -1
  73. package/dist/commonjs/v3/resource-catalog/noopResourceCatalog.js +9 -0
  74. package/dist/commonjs/v3/resource-catalog/noopResourceCatalog.js.map +1 -1
  75. package/dist/commonjs/v3/resource-catalog/standardResourceCatalog.d.ts +6 -1
  76. package/dist/commonjs/v3/resource-catalog/standardResourceCatalog.js +52 -4
  77. package/dist/commonjs/v3/resource-catalog/standardResourceCatalog.js.map +1 -1
  78. package/dist/commonjs/v3/runEngineWorker/supervisor/http.d.ts +2 -0
  79. package/dist/commonjs/v3/runEngineWorker/supervisor/schemas.d.ts +14 -0
  80. package/dist/commonjs/v3/runEngineWorker/workload/http.d.ts +1 -0
  81. package/dist/commonjs/v3/runEngineWorker/workload/schemas.d.ts +7 -0
  82. package/dist/commonjs/v3/schemas/api.d.ts +333 -0
  83. package/dist/commonjs/v3/schemas/api.js +82 -9
  84. package/dist/commonjs/v3/schemas/api.js.map +1 -1
  85. package/dist/commonjs/v3/schemas/build.d.ts +240 -0
  86. package/dist/commonjs/v3/schemas/build.js +3 -0
  87. package/dist/commonjs/v3/schemas/build.js.map +1 -1
  88. package/dist/commonjs/v3/schemas/checkpoints.d.ts +7 -0
  89. package/dist/commonjs/v3/schemas/idempotencyKey.test.d.ts +1 -0
  90. package/dist/commonjs/v3/schemas/idempotencyKey.test.js +143 -0
  91. package/dist/commonjs/v3/schemas/idempotencyKey.test.js.map +1 -0
  92. package/dist/commonjs/v3/schemas/messages.d.ts +160 -0
  93. package/dist/commonjs/v3/schemas/resources.d.ts +40 -0
  94. package/dist/commonjs/v3/schemas/resources.js +5 -1
  95. package/dist/commonjs/v3/schemas/resources.js.map +1 -1
  96. package/dist/commonjs/v3/schemas/runEngine.d.ts +12 -0
  97. package/dist/commonjs/v3/schemas/runEngine.js +3 -1
  98. package/dist/commonjs/v3/schemas/runEngine.js.map +1 -1
  99. package/dist/commonjs/v3/schemas/schemas.d.ts +59 -0
  100. package/dist/commonjs/v3/schemas/schemas.js +21 -1
  101. package/dist/commonjs/v3/schemas/schemas.js.map +1 -1
  102. package/dist/commonjs/v3/semanticInternalAttributes.d.ts +1 -0
  103. package/dist/commonjs/v3/semanticInternalAttributes.js +1 -0
  104. package/dist/commonjs/v3/semanticInternalAttributes.js.map +1 -1
  105. package/dist/commonjs/v3/session-streams-api.d.ts +5 -0
  106. package/dist/commonjs/v3/session-streams-api.js +25 -0
  107. package/dist/commonjs/v3/session-streams-api.js.map +1 -0
  108. package/dist/commonjs/v3/sessionStreams/chatSnapshot.d.ts +53 -0
  109. package/dist/commonjs/v3/sessionStreams/chatSnapshot.js +43 -0
  110. package/dist/commonjs/v3/sessionStreams/chatSnapshot.js.map +1 -0
  111. package/dist/commonjs/v3/sessionStreams/index.d.ts +24 -0
  112. package/dist/commonjs/v3/sessionStreams/index.js +64 -0
  113. package/dist/commonjs/v3/sessionStreams/index.js.map +1 -0
  114. package/dist/commonjs/v3/sessionStreams/manager.d.ts +54 -0
  115. package/dist/commonjs/v3/sessionStreams/manager.js +511 -0
  116. package/dist/commonjs/v3/sessionStreams/manager.js.map +1 -0
  117. package/dist/commonjs/v3/sessionStreams/manager.test.d.ts +1 -0
  118. package/dist/commonjs/v3/sessionStreams/manager.test.js +123 -0
  119. package/dist/commonjs/v3/sessionStreams/manager.test.js.map +1 -0
  120. package/dist/commonjs/v3/sessionStreams/noopManager.d.ts +20 -0
  121. package/dist/commonjs/v3/sessionStreams/noopManager.js +35 -0
  122. package/dist/commonjs/v3/sessionStreams/noopManager.js.map +1 -0
  123. package/dist/commonjs/v3/sessionStreams/types.d.ts +65 -0
  124. package/dist/commonjs/v3/sessionStreams/types.js +7 -0
  125. package/dist/commonjs/v3/sessionStreams/types.js.map +1 -0
  126. package/dist/commonjs/v3/sessionStreams/wireProtocol.d.ts +65 -0
  127. package/dist/commonjs/v3/sessionStreams/wireProtocol.js +72 -0
  128. package/dist/commonjs/v3/sessionStreams/wireProtocol.js.map +1 -0
  129. package/dist/commonjs/v3/taskContext/index.d.ts +4 -0
  130. package/dist/commonjs/v3/taskContext/index.js +18 -0
  131. package/dist/commonjs/v3/taskContext/index.js.map +1 -1
  132. package/dist/commonjs/v3/taskContext/index.test.d.ts +1 -0
  133. package/dist/commonjs/v3/taskContext/index.test.js +73 -0
  134. package/dist/commonjs/v3/taskContext/index.test.js.map +1 -0
  135. package/dist/commonjs/v3/taskContext/otelProcessors.js +11 -0
  136. package/dist/commonjs/v3/taskContext/otelProcessors.js.map +1 -1
  137. package/dist/commonjs/v3/test/index.d.ts +5 -0
  138. package/dist/commonjs/v3/test/index.js +14 -0
  139. package/dist/commonjs/v3/test/index.js.map +1 -0
  140. package/dist/commonjs/v3/test/mock-task-context.d.ts +123 -0
  141. package/dist/commonjs/v3/test/mock-task-context.js +193 -0
  142. package/dist/commonjs/v3/test/mock-task-context.js.map +1 -0
  143. package/dist/commonjs/v3/test/test-input-stream-manager.d.ts +46 -0
  144. package/dist/commonjs/v3/test/test-input-stream-manager.js +192 -0
  145. package/dist/commonjs/v3/test/test-input-stream-manager.js.map +1 -0
  146. package/dist/commonjs/v3/test/test-realtime-streams-manager.d.ts +40 -0
  147. package/dist/commonjs/v3/test/test-realtime-streams-manager.js +140 -0
  148. package/dist/commonjs/v3/test/test-realtime-streams-manager.js.map +1 -0
  149. package/dist/commonjs/v3/test/test-run-metadata-manager.d.ts +31 -0
  150. package/dist/commonjs/v3/test/test-run-metadata-manager.js +86 -0
  151. package/dist/commonjs/v3/test/test-run-metadata-manager.js.map +1 -0
  152. package/dist/commonjs/v3/test/test-session-stream-manager.d.ts +60 -0
  153. package/dist/commonjs/v3/test/test-session-stream-manager.js +247 -0
  154. package/dist/commonjs/v3/test/test-session-stream-manager.js.map +1 -0
  155. package/dist/commonjs/v3/types/tasks.d.ts +35 -0
  156. package/dist/commonjs/v3/utils/gitBranch.d.ts +2 -0
  157. package/dist/commonjs/v3/utils/gitBranch.js +46 -0
  158. package/dist/commonjs/v3/utils/gitBranch.js.map +1 -0
  159. package/dist/commonjs/v3/utils/globals.d.ts +2 -0
  160. package/dist/commonjs/v3/utils/globals.js.map +1 -1
  161. package/dist/commonjs/v3/utils/reconnectBackoff.d.ts +20 -0
  162. package/dist/commonjs/v3/utils/reconnectBackoff.js +29 -0
  163. package/dist/commonjs/v3/utils/reconnectBackoff.js.map +1 -0
  164. package/dist/commonjs/v3/utils/reconnectBackoff.test.d.ts +1 -0
  165. package/dist/commonjs/v3/utils/reconnectBackoff.test.js +76 -0
  166. package/dist/commonjs/v3/utils/reconnectBackoff.test.js.map +1 -0
  167. package/dist/commonjs/v3/workers/index.d.ts +1 -0
  168. package/dist/commonjs/v3/workers/index.js +3 -1
  169. package/dist/commonjs/v3/workers/index.js.map +1 -1
  170. package/dist/commonjs/v3/workers/taskExecutor.js +1 -0
  171. package/dist/commonjs/v3/workers/taskExecutor.js.map +1 -1
  172. package/dist/commonjs/version.js +1 -1
  173. package/dist/esm/v3/apiClient/errors.d.ts +5 -0
  174. package/dist/esm/v3/apiClient/errors.js +11 -0
  175. package/dist/esm/v3/apiClient/errors.js.map +1 -1
  176. package/dist/esm/v3/apiClient/index.d.ts +208 -1
  177. package/dist/esm/v3/apiClient/index.js +205 -1
  178. package/dist/esm/v3/apiClient/index.js.map +1 -1
  179. package/dist/esm/v3/apiClient/runStream.d.ts +44 -0
  180. package/dist/esm/v3/apiClient/runStream.js +157 -23
  181. package/dist/esm/v3/apiClient/runStream.js.map +1 -1
  182. package/dist/esm/v3/apiClient/runStream.test.d.ts +1 -0
  183. package/dist/esm/v3/apiClient/runStream.test.js +509 -0
  184. package/dist/esm/v3/apiClient/runStream.test.js.map +1 -0
  185. package/dist/esm/v3/apiClient/types.d.ts +2 -0
  186. package/dist/esm/v3/auth/environment.d.ts +62 -0
  187. package/dist/esm/v3/auth/environment.js +19 -0
  188. package/dist/esm/v3/auth/environment.js.map +1 -0
  189. package/dist/esm/v3/errors.d.ts +7 -0
  190. package/dist/esm/v3/errors.js +19 -1
  191. package/dist/esm/v3/errors.js.map +1 -1
  192. package/dist/esm/v3/index.d.ts +2 -1
  193. package/dist/esm/v3/index.js +1 -0
  194. package/dist/esm/v3/index.js.map +1 -1
  195. package/dist/esm/v3/inputStreams/index.d.ts +3 -0
  196. package/dist/esm/v3/inputStreams/index.js +9 -0
  197. package/dist/esm/v3/inputStreams/index.js.map +1 -1
  198. package/dist/esm/v3/inputStreams/manager.d.ts +14 -0
  199. package/dist/esm/v3/inputStreams/manager.js +116 -4
  200. package/dist/esm/v3/inputStreams/manager.js.map +1 -1
  201. package/dist/esm/v3/inputStreams/noopManager.d.ts +3 -0
  202. package/dist/esm/v3/inputStreams/noopManager.js +3 -0
  203. package/dist/esm/v3/inputStreams/noopManager.js.map +1 -1
  204. package/dist/esm/v3/inputStreams/types.d.ts +19 -0
  205. package/dist/esm/v3/locals/manager.js.map +1 -1
  206. package/dist/esm/v3/locals/types.d.ts +18 -7
  207. package/dist/esm/v3/realtime-streams-api.d.ts +3 -0
  208. package/dist/esm/v3/realtime-streams-api.js +2 -0
  209. package/dist/esm/v3/realtime-streams-api.js.map +1 -1
  210. package/dist/esm/v3/realtimeStreams/index.d.ts +3 -0
  211. package/dist/esm/v3/realtimeStreams/index.js +5 -0
  212. package/dist/esm/v3/realtimeStreams/index.js.map +1 -1
  213. package/dist/esm/v3/realtimeStreams/manager.d.ts +11 -0
  214. package/dist/esm/v3/realtimeStreams/manager.js +58 -2
  215. package/dist/esm/v3/realtimeStreams/manager.js.map +1 -1
  216. package/dist/esm/v3/realtimeStreams/manager.test.d.ts +1 -0
  217. package/dist/esm/v3/realtimeStreams/manager.test.js +90 -0
  218. package/dist/esm/v3/realtimeStreams/manager.test.js.map +1 -0
  219. package/dist/esm/v3/realtimeStreams/noopManager.js +1 -1
  220. package/dist/esm/v3/realtimeStreams/noopManager.js.map +1 -1
  221. package/dist/esm/v3/realtimeStreams/sessionStreamInstance.d.ts +41 -0
  222. package/dist/esm/v3/realtimeStreams/sessionStreamInstance.js +73 -0
  223. package/dist/esm/v3/realtimeStreams/sessionStreamInstance.js.map +1 -0
  224. package/dist/esm/v3/realtimeStreams/sessionStreamOneshot.d.ts +45 -0
  225. package/dist/esm/v3/realtimeStreams/sessionStreamOneshot.js +77 -0
  226. package/dist/esm/v3/realtimeStreams/sessionStreamOneshot.js.map +1 -0
  227. package/dist/esm/v3/realtimeStreams/streamInstance.d.ts +14 -2
  228. package/dist/esm/v3/realtimeStreams/streamInstance.js +5 -2
  229. package/dist/esm/v3/realtimeStreams/streamInstance.js.map +1 -1
  230. package/dist/esm/v3/realtimeStreams/streamsWriterV1.d.ts +2 -2
  231. package/dist/esm/v3/realtimeStreams/streamsWriterV1.js +2 -1
  232. package/dist/esm/v3/realtimeStreams/streamsWriterV1.js.map +1 -1
  233. package/dist/esm/v3/realtimeStreams/streamsWriterV2.d.ts +23 -2
  234. package/dist/esm/v3/realtimeStreams/streamsWriterV2.js +56 -4
  235. package/dist/esm/v3/realtimeStreams/streamsWriterV2.js.map +1 -1
  236. package/dist/esm/v3/realtimeStreams/streamsWriterV2.test.d.ts +1 -0
  237. package/dist/esm/v3/realtimeStreams/streamsWriterV2.test.js +66 -0
  238. package/dist/esm/v3/realtimeStreams/streamsWriterV2.test.js.map +1 -0
  239. package/dist/esm/v3/realtimeStreams/types.d.ts +42 -3
  240. package/dist/esm/v3/resource-catalog/catalog.d.ts +4 -1
  241. package/dist/esm/v3/resource-catalog/index.d.ts +4 -1
  242. package/dist/esm/v3/resource-catalog/index.js +9 -0
  243. package/dist/esm/v3/resource-catalog/index.js.map +1 -1
  244. package/dist/esm/v3/resource-catalog/noopResourceCatalog.d.ts +4 -1
  245. package/dist/esm/v3/resource-catalog/noopResourceCatalog.js +9 -0
  246. package/dist/esm/v3/resource-catalog/noopResourceCatalog.js.map +1 -1
  247. package/dist/esm/v3/resource-catalog/standardResourceCatalog.d.ts +6 -1
  248. package/dist/esm/v3/resource-catalog/standardResourceCatalog.js +52 -4
  249. package/dist/esm/v3/resource-catalog/standardResourceCatalog.js.map +1 -1
  250. package/dist/esm/v3/runEngineWorker/supervisor/http.d.ts +2 -0
  251. package/dist/esm/v3/runEngineWorker/supervisor/schemas.d.ts +14 -0
  252. package/dist/esm/v3/runEngineWorker/workload/http.d.ts +1 -0
  253. package/dist/esm/v3/runEngineWorker/workload/schemas.d.ts +7 -0
  254. package/dist/esm/v3/schemas/api.d.ts +333 -0
  255. package/dist/esm/v3/schemas/api.js +80 -7
  256. package/dist/esm/v3/schemas/api.js.map +1 -1
  257. package/dist/esm/v3/schemas/build.d.ts +240 -0
  258. package/dist/esm/v3/schemas/build.js +4 -1
  259. package/dist/esm/v3/schemas/build.js.map +1 -1
  260. package/dist/esm/v3/schemas/checkpoints.d.ts +7 -0
  261. package/dist/esm/v3/schemas/idempotencyKey.test.d.ts +1 -0
  262. package/dist/esm/v3/schemas/idempotencyKey.test.js +141 -0
  263. package/dist/esm/v3/schemas/idempotencyKey.test.js.map +1 -0
  264. package/dist/esm/v3/schemas/messages.d.ts +160 -0
  265. package/dist/esm/v3/schemas/resources.d.ts +40 -0
  266. package/dist/esm/v3/schemas/resources.js +4 -0
  267. package/dist/esm/v3/schemas/resources.js.map +1 -1
  268. package/dist/esm/v3/schemas/runEngine.d.ts +12 -0
  269. package/dist/esm/v3/schemas/runEngine.js +2 -0
  270. package/dist/esm/v3/schemas/runEngine.js.map +1 -1
  271. package/dist/esm/v3/schemas/schemas.d.ts +59 -0
  272. package/dist/esm/v3/schemas/schemas.js +20 -0
  273. package/dist/esm/v3/schemas/schemas.js.map +1 -1
  274. package/dist/esm/v3/semanticInternalAttributes.d.ts +1 -0
  275. package/dist/esm/v3/semanticInternalAttributes.js +1 -0
  276. package/dist/esm/v3/semanticInternalAttributes.js.map +1 -1
  277. package/dist/esm/v3/session-streams-api.d.ts +5 -0
  278. package/dist/esm/v3/session-streams-api.js +8 -0
  279. package/dist/esm/v3/session-streams-api.js.map +1 -0
  280. package/dist/esm/v3/sessionStreams/chatSnapshot.d.ts +53 -0
  281. package/dist/esm/v3/sessionStreams/chatSnapshot.js +39 -0
  282. package/dist/esm/v3/sessionStreams/chatSnapshot.js.map +1 -0
  283. package/dist/esm/v3/sessionStreams/index.d.ts +24 -0
  284. package/dist/esm/v3/sessionStreams/index.js +60 -0
  285. package/dist/esm/v3/sessionStreams/index.js.map +1 -0
  286. package/dist/esm/v3/sessionStreams/manager.d.ts +54 -0
  287. package/dist/esm/v3/sessionStreams/manager.js +507 -0
  288. package/dist/esm/v3/sessionStreams/manager.js.map +1 -0
  289. package/dist/esm/v3/sessionStreams/manager.test.d.ts +1 -0
  290. package/dist/esm/v3/sessionStreams/manager.test.js +121 -0
  291. package/dist/esm/v3/sessionStreams/manager.test.js.map +1 -0
  292. package/dist/esm/v3/sessionStreams/noopManager.d.ts +20 -0
  293. package/dist/esm/v3/sessionStreams/noopManager.js +31 -0
  294. package/dist/esm/v3/sessionStreams/noopManager.js.map +1 -0
  295. package/dist/esm/v3/sessionStreams/types.d.ts +65 -0
  296. package/dist/esm/v3/sessionStreams/types.js +8 -0
  297. package/dist/esm/v3/sessionStreams/types.js.map +1 -0
  298. package/dist/esm/v3/sessionStreams/wireProtocol.d.ts +65 -0
  299. package/dist/esm/v3/sessionStreams/wireProtocol.js +66 -0
  300. package/dist/esm/v3/sessionStreams/wireProtocol.js.map +1 -0
  301. package/dist/esm/v3/taskContext/index.d.ts +4 -0
  302. package/dist/esm/v3/taskContext/index.js +18 -0
  303. package/dist/esm/v3/taskContext/index.js.map +1 -1
  304. package/dist/esm/v3/taskContext/index.test.d.ts +1 -0
  305. package/dist/esm/v3/taskContext/index.test.js +71 -0
  306. package/dist/esm/v3/taskContext/index.test.js.map +1 -0
  307. package/dist/esm/v3/taskContext/otelProcessors.js +11 -0
  308. package/dist/esm/v3/taskContext/otelProcessors.js.map +1 -1
  309. package/dist/esm/v3/test/index.d.ts +5 -0
  310. package/dist/esm/v3/test/index.js +6 -0
  311. package/dist/esm/v3/test/index.js.map +1 -0
  312. package/dist/esm/v3/test/mock-task-context.d.ts +123 -0
  313. package/dist/esm/v3/test/mock-task-context.js +190 -0
  314. package/dist/esm/v3/test/mock-task-context.js.map +1 -0
  315. package/dist/esm/v3/test/test-input-stream-manager.d.ts +46 -0
  316. package/dist/esm/v3/test/test-input-stream-manager.js +188 -0
  317. package/dist/esm/v3/test/test-input-stream-manager.js.map +1 -0
  318. package/dist/esm/v3/test/test-realtime-streams-manager.d.ts +40 -0
  319. package/dist/esm/v3/test/test-realtime-streams-manager.js +136 -0
  320. package/dist/esm/v3/test/test-realtime-streams-manager.js.map +1 -0
  321. package/dist/esm/v3/test/test-run-metadata-manager.d.ts +31 -0
  322. package/dist/esm/v3/test/test-run-metadata-manager.js +82 -0
  323. package/dist/esm/v3/test/test-run-metadata-manager.js.map +1 -0
  324. package/dist/esm/v3/test/test-session-stream-manager.d.ts +60 -0
  325. package/dist/esm/v3/test/test-session-stream-manager.js +243 -0
  326. package/dist/esm/v3/test/test-session-stream-manager.js.map +1 -0
  327. package/dist/esm/v3/types/tasks.d.ts +35 -0
  328. package/dist/esm/v3/utils/gitBranch.d.ts +2 -0
  329. package/dist/esm/v3/utils/gitBranch.js +42 -0
  330. package/dist/esm/v3/utils/gitBranch.js.map +1 -0
  331. package/dist/esm/v3/utils/globals.d.ts +2 -0
  332. package/dist/esm/v3/utils/globals.js.map +1 -1
  333. package/dist/esm/v3/utils/reconnectBackoff.d.ts +20 -0
  334. package/dist/esm/v3/utils/reconnectBackoff.js +25 -0
  335. package/dist/esm/v3/utils/reconnectBackoff.js.map +1 -0
  336. package/dist/esm/v3/utils/reconnectBackoff.test.d.ts +1 -0
  337. package/dist/esm/v3/utils/reconnectBackoff.test.js +74 -0
  338. package/dist/esm/v3/utils/reconnectBackoff.test.js.map +1 -0
  339. package/dist/esm/v3/workers/index.d.ts +1 -0
  340. package/dist/esm/v3/workers/index.js +1 -0
  341. package/dist/esm/v3/workers/index.js.map +1 -1
  342. package/dist/esm/v3/workers/taskExecutor.js +2 -1
  343. package/dist/esm/v3/workers/taskExecutor.js.map +1 -1
  344. package/dist/esm/version.js +1 -1
  345. package/package.json +46 -1
@@ -0,0 +1,54 @@
1
+ import { ApiClient } from "../apiClient/index.js";
2
+ import { InputStreamOncePromise } from "../inputStreams/types.js";
3
+ import { InputStreamOnceOptions } from "../realtimeStreams/types.js";
4
+ import { SessionChannelIO, SessionStreamManager } from "./types.js";
5
+ type SessionStreamHandler = (data: unknown) => void | Promise<void>;
6
+ /**
7
+ * Session-scoped parallel to {@link StandardInputStreamManager}. Keeps the
8
+ * same buffer / once-waiter / tail lifecycle, but keyed on
9
+ * `(sessionId, io)` and subscribing via
10
+ * {@link ApiClient.subscribeToSessionStream} instead of the run input
11
+ * stream SSE.
12
+ */
13
+ export declare class StandardSessionStreamManager implements SessionStreamManager {
14
+ #private;
15
+ private apiClient;
16
+ private baseUrl;
17
+ private debug;
18
+ private handlers;
19
+ private onceWaiters;
20
+ private buffer;
21
+ private bufferSeqNums;
22
+ private tails;
23
+ private minTimestamps;
24
+ private explicitlyDisconnected;
25
+ private seqNums;
26
+ private lastDispatchedSeqNums;
27
+ private reconnectAttempts;
28
+ constructor(apiClient: ApiClient, baseUrl: string, debug?: boolean);
29
+ on(sessionId: string, io: SessionChannelIO, handler: SessionStreamHandler): {
30
+ off: () => void;
31
+ };
32
+ once(sessionId: string, io: SessionChannelIO, options?: InputStreamOnceOptions): InputStreamOncePromise<unknown>;
33
+ peek(sessionId: string, io: SessionChannelIO): unknown | undefined;
34
+ lastSeqNum(sessionId: string, io: SessionChannelIO): number | undefined;
35
+ setLastSeqNum(sessionId: string, io: SessionChannelIO, seqNum: number): void;
36
+ lastDispatchedSeqNum(sessionId: string, io: SessionChannelIO): number | undefined;
37
+ setLastDispatchedSeqNum(sessionId: string, io: SessionChannelIO, seqNum: number): void;
38
+ setMinTimestamp(sessionId: string, io: SessionChannelIO, minTimestamp: number | undefined): void;
39
+ shiftBuffer(sessionId: string, io: SessionChannelIO): boolean;
40
+ disconnectStream(sessionId: string, io: SessionChannelIO): void;
41
+ clearHandlers(): void;
42
+ /**
43
+ * Tear down all active tails. Does NOT clear handlers or `onceWaiters`,
44
+ * so any registered listener will trigger an auto-reconnect (with
45
+ * backoff) the moment it sees no live tail — by design, so a transient
46
+ * network blip recovers without the caller re-subscribing. Use
47
+ * `reset()` if you want a full clean state with no resurrection, or
48
+ * `disconnectStream(sessionId, io)` for a single channel that should
49
+ * stay down until a fresh `on()` / `once()` attaches.
50
+ */
51
+ disconnect(): void;
52
+ reset(): void;
53
+ }
54
+ export {};
@@ -0,0 +1,511 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StandardSessionStreamManager = void 0;
4
+ const types_js_1 = require("../inputStreams/types.js");
5
+ const reconnectBackoff_js_1 = require("../utils/reconnectBackoff.js");
6
+ const wireProtocol_js_1 = require("./wireProtocol.js");
7
+ function keyFor(sessionId, io) {
8
+ return `${sessionId}:${io}`;
9
+ }
10
+ /**
11
+ * Session-scoped parallel to {@link StandardInputStreamManager}. Keeps the
12
+ * same buffer / once-waiter / tail lifecycle, but keyed on
13
+ * `(sessionId, io)` and subscribing via
14
+ * {@link ApiClient.subscribeToSessionStream} instead of the run input
15
+ * stream SSE.
16
+ */
17
+ class StandardSessionStreamManager {
18
+ apiClient;
19
+ baseUrl;
20
+ debug;
21
+ handlers = new Map();
22
+ onceWaiters = new Map();
23
+ buffer = new Map();
24
+ // Parallel to `buffer`: the SSE seq_num of each buffered record. Same
25
+ // length and order as `buffer[key]`. Used so that when `once()` shifts
26
+ // a buffered record into a waiter, the cursor (`lastDispatchedSeqNums`)
27
+ // can advance to that record's seq. Kept as a separate map so the
28
+ // existing `peek()` shape (returns `unknown`) stays unchanged.
29
+ //
30
+ // Entries are `number | undefined` so the array stays length-locked
31
+ // with `buffer` even if a record arrives without a parseable seq —
32
+ // shifting `undefined` is just a no-op for the cursor advance, but
33
+ // the slot still gets consumed. Drifting lengths would map seq_nums
34
+ // to the wrong records on subsequent shifts.
35
+ bufferSeqNums = new Map();
36
+ tails = new Map();
37
+ // Per-stream lower-bound timestamp filter. When set, records whose
38
+ // SSE timestamp is <= the bound are dropped before dispatch — used by
39
+ // chat.agent on OOM-retry boot to skip session.in records belonging
40
+ // to turns that already completed on the prior attempt. The filter
41
+ // is consulted in `runTail`'s `onPart` so the buffer never sees the
42
+ // dropped records.
43
+ minTimestamps = new Map();
44
+ // Keys that were explicitly torn down by `disconnectStream`. The tail's
45
+ // `.finally` reconnect path checks this so a long-lived persistent handler
46
+ // (e.g. `chat.agent`'s run-level `stopInput.on(...)`) doesn't silently
47
+ // resurrect the tail mid-`session.in.wait()` and re-deliver the record
48
+ // that's already being delivered out-of-band via the waitpoint.
49
+ explicitlyDisconnected = new Set();
50
+ seqNums = new Map();
51
+ // Highest seq_num that has been *consumed* (delivered to a once()
52
+ // waiter or shifted off the buffer into a once() caller) on a channel.
53
+ // Distinct from `seqNums`, which advances whenever any record is
54
+ // received from SSE — even ones still sitting in the local buffer.
55
+ // The committed-consume cursor is what gets persisted on the
56
+ // turn-complete control record's `session-in-event-id` header so the
57
+ // next worker boot can resume `.in` from this point without
58
+ // re-delivering already-handled user messages.
59
+ lastDispatchedSeqNums = new Map();
60
+ // Reconnect attempt counter per key. Drives the exponential backoff
61
+ // applied by `#ensureTailConnected`'s `.finally` so a persistent
62
+ // backend failure (auth rejection, 5xx, DNS, etc.) doesn't reconnect
63
+ // in a tight loop. Reset to 0 by `#dispatch` whenever a real record
64
+ // flows through — any successful traffic is taken as a healthy
65
+ // connection.
66
+ reconnectAttempts = new Map();
67
+ constructor(apiClient, baseUrl, debug = false) {
68
+ this.apiClient = apiClient;
69
+ this.baseUrl = baseUrl;
70
+ this.debug = debug;
71
+ }
72
+ on(sessionId, io, handler) {
73
+ const key = keyFor(sessionId, io);
74
+ let handlerSet = this.handlers.get(key);
75
+ if (!handlerSet) {
76
+ handlerSet = new Set();
77
+ this.handlers.set(key, handlerSet);
78
+ }
79
+ handlerSet.add(handler);
80
+ // Explicit re-attach clears the "explicitly disconnected" suppression
81
+ // so the tail can subscribe again now that callers want delivery back.
82
+ this.explicitlyDisconnected.delete(key);
83
+ this.#ensureTailConnected(sessionId, io);
84
+ const buffered = this.buffer.get(key);
85
+ if (buffered && buffered.length > 0) {
86
+ for (const data of buffered) {
87
+ this.#invokeHandler(handler, data);
88
+ }
89
+ // Advance the committed-consume cursor to the highest seq drained
90
+ // into the new handler. `on()`-drain removes the records from the
91
+ // buffer, so they're no longer available to a future `once()` —
92
+ // from the manager's perspective they've been consumed. Without
93
+ // this, a worker that uses `messagesInput.on()` for user-message
94
+ // delivery (pendingMessages mode) would persist a `.in` cursor
95
+ // that lags behind the records the handler already processed, and
96
+ // the next boot would re-deliver them.
97
+ const seqList = this.bufferSeqNums.get(key);
98
+ if (seqList) {
99
+ for (const s of seqList) {
100
+ if (s !== undefined)
101
+ this.#advanceLastDispatched(key, s);
102
+ }
103
+ }
104
+ this.buffer.delete(key);
105
+ // Keep `bufferSeqNums` in lock-step with `buffer` — without this,
106
+ // the parallel array desyncs and the next `#dispatch` that buffers
107
+ // a record would shift a stale seqNum into `lastDispatchedSeqNum`.
108
+ this.bufferSeqNums.delete(key);
109
+ }
110
+ return {
111
+ off: () => {
112
+ handlerSet?.delete(handler);
113
+ if (handlerSet?.size === 0) {
114
+ this.handlers.delete(key);
115
+ }
116
+ },
117
+ };
118
+ }
119
+ once(sessionId, io, options) {
120
+ const key = keyFor(sessionId, io);
121
+ this.explicitlyDisconnected.delete(key);
122
+ this.#ensureTailConnected(sessionId, io);
123
+ const buffered = this.buffer.get(key);
124
+ if (buffered && buffered.length > 0) {
125
+ const data = buffered.shift();
126
+ const seqList = this.bufferSeqNums.get(key);
127
+ const shiftedSeqNum = seqList?.shift();
128
+ if (buffered.length === 0) {
129
+ this.buffer.delete(key);
130
+ this.bufferSeqNums.delete(key);
131
+ }
132
+ if (shiftedSeqNum !== undefined) {
133
+ this.#advanceLastDispatched(key, shiftedSeqNum);
134
+ }
135
+ return new types_js_1.InputStreamOncePromise((resolve) => {
136
+ resolve({ ok: true, output: data });
137
+ });
138
+ }
139
+ return new types_js_1.InputStreamOncePromise((resolve, reject) => {
140
+ const waiter = { resolve, reject };
141
+ if (options?.signal) {
142
+ if (options.signal.aborted) {
143
+ reject(new Error("Aborted"));
144
+ return;
145
+ }
146
+ const abortHandler = () => {
147
+ if (waiter.timeoutHandle)
148
+ clearTimeout(waiter.timeoutHandle);
149
+ this.#removeOnceWaiter(key, waiter);
150
+ reject(new Error("Aborted"));
151
+ };
152
+ waiter.signal = options.signal;
153
+ waiter.abortHandler = abortHandler;
154
+ options.signal.addEventListener("abort", abortHandler, { once: true });
155
+ }
156
+ if (options?.timeoutMs) {
157
+ waiter.timeoutHandle = setTimeout(() => {
158
+ this.#removeOnceWaiter(key, waiter);
159
+ resolve({
160
+ ok: false,
161
+ error: new types_js_1.InputStreamTimeoutError(key, options.timeoutMs),
162
+ });
163
+ }, options.timeoutMs);
164
+ }
165
+ let waiters = this.onceWaiters.get(key);
166
+ if (!waiters) {
167
+ waiters = [];
168
+ this.onceWaiters.set(key, waiters);
169
+ }
170
+ waiters.push(waiter);
171
+ });
172
+ }
173
+ peek(sessionId, io) {
174
+ const buffered = this.buffer.get(keyFor(sessionId, io));
175
+ if (buffered && buffered.length > 0)
176
+ return buffered[0];
177
+ return undefined;
178
+ }
179
+ lastSeqNum(sessionId, io) {
180
+ return this.seqNums.get(keyFor(sessionId, io));
181
+ }
182
+ setLastSeqNum(sessionId, io, seqNum) {
183
+ const key = keyFor(sessionId, io);
184
+ const current = this.seqNums.get(key);
185
+ if (current === undefined || seqNum > current) {
186
+ this.seqNums.set(key, seqNum);
187
+ }
188
+ }
189
+ lastDispatchedSeqNum(sessionId, io) {
190
+ return this.lastDispatchedSeqNums.get(keyFor(sessionId, io));
191
+ }
192
+ setLastDispatchedSeqNum(sessionId, io, seqNum) {
193
+ this.#advanceLastDispatched(keyFor(sessionId, io), seqNum);
194
+ }
195
+ #advanceLastDispatched(key, seqNum) {
196
+ const current = this.lastDispatchedSeqNums.get(key);
197
+ if (current === undefined || seqNum > current) {
198
+ this.lastDispatchedSeqNums.set(key, seqNum);
199
+ }
200
+ }
201
+ setMinTimestamp(sessionId, io, minTimestamp) {
202
+ const key = keyFor(sessionId, io);
203
+ if (minTimestamp === undefined) {
204
+ this.minTimestamps.delete(key);
205
+ }
206
+ else {
207
+ this.minTimestamps.set(key, minTimestamp);
208
+ }
209
+ }
210
+ shiftBuffer(sessionId, io) {
211
+ const key = keyFor(sessionId, io);
212
+ const buffered = this.buffer.get(key);
213
+ if (buffered && buffered.length > 0) {
214
+ buffered.shift();
215
+ const seqList = this.bufferSeqNums.get(key);
216
+ const shiftedSeqNum = seqList?.shift();
217
+ if (buffered.length === 0) {
218
+ this.buffer.delete(key);
219
+ this.bufferSeqNums.delete(key);
220
+ }
221
+ if (shiftedSeqNum !== undefined) {
222
+ this.#advanceLastDispatched(key, shiftedSeqNum);
223
+ }
224
+ return true;
225
+ }
226
+ return false;
227
+ }
228
+ disconnectStream(sessionId, io) {
229
+ const key = keyFor(sessionId, io);
230
+ const tail = this.tails.get(key);
231
+ const bufferedSize = this.buffer.get(key)?.length ?? 0;
232
+ // Mark as explicitly disconnected BEFORE we abort, so the tail's
233
+ // `.finally` reconnect path sees the flag when it runs (which can be
234
+ // synchronous in the AbortError catch). Cleared on the next explicit
235
+ // `on()`/`once()`.
236
+ this.explicitlyDisconnected.add(key);
237
+ if (tail) {
238
+ tail.abortController.abort();
239
+ this.tails.delete(key);
240
+ }
241
+ this.buffer.delete(key);
242
+ this.bufferSeqNums.delete(key);
243
+ // Reset the backoff counter so a future re-attach starts fresh —
244
+ // an explicit disconnect is a deliberate teardown, not evidence of
245
+ // a broken backend.
246
+ this.reconnectAttempts.delete(key);
247
+ }
248
+ clearHandlers() {
249
+ this.handlers.clear();
250
+ for (const [key, tail] of this.tails) {
251
+ const hasWaiters = this.onceWaiters.has(key) && this.onceWaiters.get(key).length > 0;
252
+ if (!hasWaiters) {
253
+ tail.abortController.abort();
254
+ this.tails.delete(key);
255
+ }
256
+ }
257
+ }
258
+ /**
259
+ * Tear down all active tails. Does NOT clear handlers or `onceWaiters`,
260
+ * so any registered listener will trigger an auto-reconnect (with
261
+ * backoff) the moment it sees no live tail — by design, so a transient
262
+ * network blip recovers without the caller re-subscribing. Use
263
+ * `reset()` if you want a full clean state with no resurrection, or
264
+ * `disconnectStream(sessionId, io)` for a single channel that should
265
+ * stay down until a fresh `on()` / `once()` attaches.
266
+ */
267
+ disconnect() {
268
+ for (const [, tail] of this.tails) {
269
+ tail.abortController.abort();
270
+ }
271
+ this.tails.clear();
272
+ }
273
+ reset() {
274
+ this.disconnect();
275
+ this.seqNums.clear();
276
+ this.lastDispatchedSeqNums.clear();
277
+ this.minTimestamps.clear();
278
+ this.handlers.clear();
279
+ this.reconnectAttempts.clear();
280
+ for (const [, waiters] of this.onceWaiters) {
281
+ for (const waiter of waiters) {
282
+ if (waiter.timeoutHandle)
283
+ clearTimeout(waiter.timeoutHandle);
284
+ if (waiter.signal && waiter.abortHandler) {
285
+ waiter.signal.removeEventListener("abort", waiter.abortHandler);
286
+ }
287
+ waiter.reject(new Error("Session stream manager reset"));
288
+ }
289
+ }
290
+ this.onceWaiters.clear();
291
+ this.buffer.clear();
292
+ this.bufferSeqNums.clear();
293
+ }
294
+ #ensureTailConnected(sessionId, io) {
295
+ const key = keyFor(sessionId, io);
296
+ if (this.tails.has(key))
297
+ return;
298
+ const abortController = new AbortController();
299
+ const promise = this.#runTail(sessionId, io, abortController.signal)
300
+ .catch((error) => {
301
+ if (this.debug) {
302
+ console.error(`[SessionStreamManager] Tail error for "${key}":`, error);
303
+ }
304
+ })
305
+ .finally(() => {
306
+ this.tails.delete(key);
307
+ // If the tail was torn down explicitly via `disconnectStream`,
308
+ // honor that — the caller (typically `session.in.wait()`) is
309
+ // suspending the run and expects no records to be buffered or
310
+ // delivered until a fresh `on()` / `once()` re-attaches. Without
311
+ // this guard a run-level persistent handler (e.g. `chat.agent`'s
312
+ // `stopInput.on(...)`) would auto-reconnect during the suspend
313
+ // window, the resurrected tail would receive the same record the
314
+ // waitpoint just delivered, and that record would land in the
315
+ // buffer where the next turn's `messagesInput.on(...)` drains it
316
+ // and runs a duplicate turn.
317
+ if (this.explicitlyDisconnected.has(key)) {
318
+ return;
319
+ }
320
+ const hasHandlers = this.handlers.has(key) && this.handlers.get(key).size > 0;
321
+ const hasWaiters = this.onceWaiters.has(key) && this.onceWaiters.get(key).length > 0;
322
+ if (hasHandlers || hasWaiters) {
323
+ // Exponential backoff with jitter. 1s base, doubling each
324
+ // attempt, capped at 30s. Without this, a persistent backend
325
+ // failure (auth rejected, 5xx, DNS) reconnects in a tight loop
326
+ // because `#runTail`'s error path only logs. `#dispatch` resets
327
+ // the counter on every successful record, so transient blips
328
+ // don't accumulate.
329
+ const attempt = this.reconnectAttempts.get(key) ?? 0;
330
+ this.reconnectAttempts.set(key, attempt + 1);
331
+ const delayMs = (0, reconnectBackoff_js_1.computeReconnectDelayMs)(attempt);
332
+ setTimeout(() => {
333
+ // Guards: a fresh `on()` during the wait may already have
334
+ // re-attached the tail; explicit disconnect or absence of
335
+ // handlers/waiters means we should stay quiet.
336
+ if (this.tails.has(key))
337
+ return;
338
+ if (this.explicitlyDisconnected.has(key))
339
+ return;
340
+ const stillHasHandlers = this.handlers.has(key) && this.handlers.get(key).size > 0;
341
+ const stillHasWaiters = this.onceWaiters.has(key) && this.onceWaiters.get(key).length > 0;
342
+ if (!stillHasHandlers && !stillHasWaiters)
343
+ return;
344
+ this.#ensureTailConnected(sessionId, io);
345
+ }, delayMs);
346
+ }
347
+ });
348
+ this.tails.set(key, { abortController, promise });
349
+ }
350
+ async #runTail(sessionId, io, signal) {
351
+ const key = keyFor(sessionId, io);
352
+ try {
353
+ const lastSeq = this.seqNums.get(key);
354
+ // Dispatch is driven from `onPart` (not the for-await loop) so each
355
+ // record reaches dispatch with its full SSE metadata in scope —
356
+ // specifically the timestamp, which we need for the per-stream
357
+ // min-timestamp filter. The for-await loop below just drains the
358
+ // pipeThrough output to keep the source flowing.
359
+ const stream = await this.apiClient.subscribeToSessionStream(sessionId, io, {
360
+ signal,
361
+ baseUrl: this.baseUrl,
362
+ timeoutInSeconds: 600,
363
+ lastEventId: lastSeq !== undefined ? String(lastSeq) : undefined,
364
+ onPart: (part) => {
365
+ if (signal.aborted)
366
+ return;
367
+ const seqNum = parseInt(part.id, 10);
368
+ if (Number.isFinite(seqNum)) {
369
+ this.seqNums.set(key, seqNum);
370
+ }
371
+ // Trigger control records (turn-complete, upgrade-required)
372
+ // are dispatched out-of-band via `onControl` — they're not
373
+ // consumer-facing data. Skip the data dispatch path.
374
+ if ((0, wireProtocol_js_1.controlSubtype)(part.headers)) {
375
+ return;
376
+ }
377
+ // Min-timestamp filter: drop records older than (or at) the
378
+ // bound. Used to skip already-processed records on OOM-retry
379
+ // boot.
380
+ const minTs = this.minTimestamps.get(key);
381
+ if (minTs !== undefined && part.timestamp <= minTs) {
382
+ return;
383
+ }
384
+ let data = part.chunk;
385
+ if (typeof data === "string") {
386
+ try {
387
+ data = JSON.parse(data);
388
+ }
389
+ catch {
390
+ // keep as string
391
+ }
392
+ }
393
+ this.#dispatch(key, data, Number.isFinite(seqNum) ? seqNum : undefined);
394
+ },
395
+ onComplete: () => {
396
+ if (this.debug) {
397
+ console.log(`[SessionStreamManager] Tail completed for "${key}"`);
398
+ }
399
+ },
400
+ onError: (error) => {
401
+ if (this.debug) {
402
+ console.error(`[SessionStreamManager] Tail error for "${key}":`, error);
403
+ }
404
+ },
405
+ });
406
+ // Drain to keep the pipeThrough flowing. Records were already
407
+ // dispatched in `onPart`, so the body here is a no-op.
408
+ for await (const _record of stream) {
409
+ if (signal.aborted)
410
+ break;
411
+ }
412
+ }
413
+ catch (error) {
414
+ if (error instanceof Error && error.name === "AbortError")
415
+ return;
416
+ throw error;
417
+ }
418
+ }
419
+ #dispatch(key, data, seqNum) {
420
+ // Any record flowing through = healthy connection; reset the backoff
421
+ // counter so the next disconnect starts fresh.
422
+ this.reconnectAttempts.delete(key);
423
+ const waiters = this.onceWaiters.get(key);
424
+ if (waiters && waiters.length > 0) {
425
+ const waiter = waiters.shift();
426
+ if (waiters.length === 0)
427
+ this.onceWaiters.delete(key);
428
+ if (waiter.timeoutHandle)
429
+ clearTimeout(waiter.timeoutHandle);
430
+ if (waiter.signal && waiter.abortHandler) {
431
+ waiter.signal.removeEventListener("abort", waiter.abortHandler);
432
+ }
433
+ // Record was consumed directly by a waiter — advance the
434
+ // committed-consume cursor immediately. Buffered-then-shifted
435
+ // records advance the cursor in `once()` / `shiftBuffer()`.
436
+ if (seqNum !== undefined) {
437
+ this.#advanceLastDispatched(key, seqNum);
438
+ }
439
+ waiter.resolve({ ok: true, output: data });
440
+ this.#invokeHandlers(key, data);
441
+ return;
442
+ }
443
+ // Persistent handlers (e.g. `stopInput.on(...)`) get a copy of the chunk,
444
+ // but they don't "consume" it — handlers usually filter by `kind` and
445
+ // ignore chunks they don't care about. Buffer the chunk regardless so a
446
+ // subsequent `once()` (e.g. `messagesInput.waitWithIdleTimeout` in
447
+ // chat.agent's preload) can still pick up the same chunk that arrived
448
+ // before its waiter was registered.
449
+ this.#invokeHandlers(key, data);
450
+ let buffered = this.buffer.get(key);
451
+ if (!buffered) {
452
+ buffered = [];
453
+ this.buffer.set(key, buffered);
454
+ }
455
+ buffered.push(data);
456
+ let bufferedSeqs = this.bufferSeqNums.get(key);
457
+ if (!bufferedSeqs) {
458
+ bufferedSeqs = [];
459
+ this.bufferSeqNums.set(key, bufferedSeqs);
460
+ }
461
+ // Always push, even when `seqNum` is undefined (e.g. NaN from a
462
+ // malformed `part.id`). Skipping the push here would drift the two
463
+ // arrays apart and misattribute seq_nums to records on the next
464
+ // shift.
465
+ bufferedSeqs.push(seqNum);
466
+ }
467
+ #invokeHandlers(key, data) {
468
+ const handlers = this.handlers.get(key);
469
+ if (!handlers)
470
+ return;
471
+ for (const handler of handlers) {
472
+ this.#invokeHandler(handler, data);
473
+ }
474
+ }
475
+ #invokeHandler(handler, data) {
476
+ try {
477
+ const result = handler(data);
478
+ if (result && typeof result === "object" && "catch" in result) {
479
+ result.catch((error) => {
480
+ if (this.debug) {
481
+ console.error("[SessionStreamManager] Handler error:", error);
482
+ }
483
+ });
484
+ }
485
+ }
486
+ catch (error) {
487
+ if (this.debug) {
488
+ console.error("[SessionStreamManager] Handler error:", error);
489
+ }
490
+ }
491
+ }
492
+ #removeOnceWaiter(key, waiter) {
493
+ // Centralized cleanup — both timeout and explicit abort paths funnel
494
+ // through here, so detach the abort listener once instead of at every
495
+ // callsite. The dispatch path doesn't go through this method (the
496
+ // waiter is shifted off inline), so it detaches the listener there.
497
+ if (waiter.signal && waiter.abortHandler) {
498
+ waiter.signal.removeEventListener("abort", waiter.abortHandler);
499
+ }
500
+ const waiters = this.onceWaiters.get(key);
501
+ if (!waiters)
502
+ return;
503
+ const index = waiters.indexOf(waiter);
504
+ if (index !== -1)
505
+ waiters.splice(index, 1);
506
+ if (waiters.length === 0)
507
+ this.onceWaiters.delete(key);
508
+ }
509
+ }
510
+ exports.StandardSessionStreamManager = StandardSessionStreamManager;
511
+ //# sourceMappingURL=manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../../src/v3/sessionStreams/manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};