@trigger.dev/core 4.5.13 → 4.5.15

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 (288) hide show
  1. package/dist/commonjs/v3/apiClient/index.d.ts +26 -6
  2. package/dist/commonjs/v3/apiClient/index.js +56 -8
  3. package/dist/commonjs/v3/apiClient/index.js.map +1 -1
  4. package/dist/commonjs/v3/apiClient/refreshAccessToken.d.ts +9 -0
  5. package/dist/commonjs/v3/apiClient/refreshAccessToken.js +22 -0
  6. package/dist/commonjs/v3/apiClient/refreshAccessToken.js.map +1 -0
  7. package/dist/commonjs/v3/apiClient/runStream.d.ts +37 -0
  8. package/dist/commonjs/v3/apiClient/runStream.js +58 -8
  9. package/dist/commonjs/v3/apiClient/runStream.js.map +1 -1
  10. package/dist/commonjs/v3/apiClientManager/index.js +3 -2
  11. package/dist/commonjs/v3/apiClientManager/index.js.map +1 -1
  12. package/dist/commonjs/v3/apiClientManager/types.d.ts +6 -0
  13. package/dist/commonjs/v3/index.d.ts +1 -0
  14. package/dist/commonjs/v3/index.js +1 -0
  15. package/dist/commonjs/v3/index.js.map +1 -1
  16. package/dist/commonjs/v3/realtimeStreams/sessionStreamOneshot.d.ts +2 -2
  17. package/dist/commonjs/v3/realtimeStreams/sessionStreamOneshot.js +6 -6
  18. package/dist/commonjs/v3/realtimeStreams/sessionStreamOneshot.js.map +1 -1
  19. package/dist/commonjs/v3/realtimeStreams/types.d.ts +10 -0
  20. package/dist/commonjs/v3/schemas/api.js +1 -1
  21. package/dist/commonjs/v3/schemas/api.js.map +1 -1
  22. package/dist/commonjs/v3/session-streams-api.d.ts +1 -0
  23. package/dist/commonjs/v3/session-streams-api.js +1 -0
  24. package/dist/commonjs/v3/session-streams-api.js.map +1 -1
  25. package/dist/commonjs/v3/sessionStreams/channels.d.ts +25 -0
  26. package/dist/commonjs/v3/sessionStreams/channels.js +3 -0
  27. package/dist/commonjs/v3/sessionStreams/channels.js.map +1 -0
  28. package/dist/commonjs/v3/sessionStreams/index.d.ts +16 -16
  29. package/dist/commonjs/v3/sessionStreams/index.js +32 -32
  30. package/dist/commonjs/v3/sessionStreams/index.js.map +1 -1
  31. package/dist/commonjs/v3/sessionStreams/manager.d.ts +16 -16
  32. package/dist/commonjs/v3/sessionStreams/manager.js +48 -47
  33. package/dist/commonjs/v3/sessionStreams/manager.js.map +1 -1
  34. package/dist/commonjs/v3/sessionStreams/types.d.ts +16 -16
  35. package/dist/commonjs/version.js +1 -1
  36. package/dist/esm/v3/apiClient/index.d.ts +26 -6
  37. package/dist/esm/v3/apiClient/index.js +56 -9
  38. package/dist/esm/v3/apiClient/index.js.map +1 -1
  39. package/dist/esm/v3/apiClient/refreshAccessToken.d.ts +9 -0
  40. package/dist/esm/v3/apiClient/refreshAccessToken.js +19 -0
  41. package/dist/esm/v3/apiClient/refreshAccessToken.js.map +1 -0
  42. package/dist/esm/v3/apiClient/runStream.d.ts +37 -0
  43. package/dist/esm/v3/apiClient/runStream.js +57 -7
  44. package/dist/esm/v3/apiClient/runStream.js.map +1 -1
  45. package/dist/esm/v3/apiClientManager/index.js +3 -2
  46. package/dist/esm/v3/apiClientManager/index.js.map +1 -1
  47. package/dist/esm/v3/apiClientManager/types.d.ts +6 -0
  48. package/dist/esm/v3/index.d.ts +1 -0
  49. package/dist/esm/v3/index.js +1 -0
  50. package/dist/esm/v3/index.js.map +1 -1
  51. package/dist/esm/v3/realtimeStreams/sessionStreamOneshot.d.ts +2 -2
  52. package/dist/esm/v3/realtimeStreams/sessionStreamOneshot.js +6 -6
  53. package/dist/esm/v3/realtimeStreams/sessionStreamOneshot.js.map +1 -1
  54. package/dist/esm/v3/realtimeStreams/types.d.ts +10 -0
  55. package/dist/esm/v3/runEngineWorker/workload/schemas.d.ts +54 -54
  56. package/dist/esm/v3/schemas/api.js +1 -1
  57. package/dist/esm/v3/schemas/api.js.map +1 -1
  58. package/dist/esm/v3/session-streams-api.d.ts +1 -0
  59. package/dist/esm/v3/session-streams-api.js +1 -0
  60. package/dist/esm/v3/session-streams-api.js.map +1 -1
  61. package/dist/esm/v3/sessionStreams/channels.d.ts +25 -0
  62. package/dist/esm/v3/sessionStreams/channels.js +2 -0
  63. package/dist/esm/v3/sessionStreams/channels.js.map +1 -0
  64. package/dist/esm/v3/sessionStreams/index.d.ts +16 -16
  65. package/dist/esm/v3/sessionStreams/index.js +32 -32
  66. package/dist/esm/v3/sessionStreams/index.js.map +1 -1
  67. package/dist/esm/v3/sessionStreams/manager.d.ts +16 -16
  68. package/dist/esm/v3/sessionStreams/manager.js +48 -47
  69. package/dist/esm/v3/sessionStreams/manager.js.map +1 -1
  70. package/dist/esm/v3/sessionStreams/types.d.ts +16 -16
  71. package/dist/esm/version.js +1 -1
  72. package/package.json +4 -1
  73. package/dist/commonjs/v3/apiClient/bulkActions.test.d.ts +0 -1
  74. package/dist/commonjs/v3/apiClient/bulkActions.test.js +0 -151
  75. package/dist/commonjs/v3/apiClient/bulkActions.test.js.map +0 -1
  76. package/dist/commonjs/v3/apiClient/runStream.test.d.ts +0 -1
  77. package/dist/commonjs/v3/apiClient/runStream.test.js +0 -546
  78. package/dist/commonjs/v3/apiClient/runStream.test.js.map +0 -1
  79. package/dist/commonjs/v3/apiClient/streamBatchItems.test.d.ts +0 -1
  80. package/dist/commonjs/v3/apiClient/streamBatchItems.test.js +0 -408
  81. package/dist/commonjs/v3/apiClient/streamBatchItems.test.js.map +0 -1
  82. package/dist/commonjs/v3/apiKeys.test.d.ts +0 -1
  83. package/dist/commonjs/v3/apiKeys.test.js +0 -19
  84. package/dist/commonjs/v3/apiKeys.test.js.map +0 -1
  85. package/dist/commonjs/v3/apps/exec.test.d.ts +0 -1
  86. package/dist/commonjs/v3/apps/exec.test.js +0 -23
  87. package/dist/commonjs/v3/apps/exec.test.js.map +0 -1
  88. package/dist/commonjs/v3/build/flags.test.d.ts +0 -1
  89. package/dist/commonjs/v3/build/flags.test.js +0 -50
  90. package/dist/commonjs/v3/build/flags.test.js.map +0 -1
  91. package/dist/commonjs/v3/build/runtime.test.d.ts +0 -1
  92. package/dist/commonjs/v3/build/runtime.test.js +0 -44
  93. package/dist/commonjs/v3/build/runtime.test.js.map +0 -1
  94. package/dist/commonjs/v3/errors.test.d.ts +0 -1
  95. package/dist/commonjs/v3/errors.test.js +0 -36
  96. package/dist/commonjs/v3/errors.test.js.map +0 -1
  97. package/dist/commonjs/v3/externalDeploymentId.test.d.ts +0 -1
  98. package/dist/commonjs/v3/externalDeploymentId.test.js +0 -173
  99. package/dist/commonjs/v3/externalDeploymentId.test.js.map +0 -1
  100. package/dist/commonjs/v3/idempotency-key-catalog/inMemoryIdempotencyKeyCatalog.test.d.ts +0 -1
  101. package/dist/commonjs/v3/idempotency-key-catalog/inMemoryIdempotencyKeyCatalog.test.js +0 -44
  102. package/dist/commonjs/v3/idempotency-key-catalog/inMemoryIdempotencyKeyCatalog.test.js.map +0 -1
  103. package/dist/commonjs/v3/idempotencyKeys.test.d.ts +0 -1
  104. package/dist/commonjs/v3/idempotencyKeys.test.js +0 -192
  105. package/dist/commonjs/v3/idempotencyKeys.test.js.map +0 -1
  106. package/dist/commonjs/v3/isomorphic/friendlyId.test.d.ts +0 -1
  107. package/dist/commonjs/v3/isomorphic/friendlyId.test.js +0 -497
  108. package/dist/commonjs/v3/isomorphic/friendlyId.test.js.map +0 -1
  109. package/dist/commonjs/v3/isomorphic/runOpsResidency.test.d.ts +0 -1
  110. package/dist/commonjs/v3/isomorphic/runOpsResidency.test.js +0 -141
  111. package/dist/commonjs/v3/isomorphic/runOpsResidency.test.js.map +0 -1
  112. package/dist/commonjs/v3/isomorphic/waitpointMint.test.d.ts +0 -1
  113. package/dist/commonjs/v3/isomorphic/waitpointMint.test.js +0 -97
  114. package/dist/commonjs/v3/isomorphic/waitpointMint.test.js.map +0 -1
  115. package/dist/commonjs/v3/machines/max-old-space.test.d.ts +0 -1
  116. package/dist/commonjs/v3/machines/max-old-space.test.js +0 -44
  117. package/dist/commonjs/v3/machines/max-old-space.test.js.map +0 -1
  118. package/dist/commonjs/v3/otel/tracingSDK.test.d.ts +0 -1
  119. package/dist/commonjs/v3/otel/tracingSDK.test.js +0 -174
  120. package/dist/commonjs/v3/otel/tracingSDK.test.js.map +0 -1
  121. package/dist/commonjs/v3/otel/tracingSDKShutdown.test.d.ts +0 -1
  122. package/dist/commonjs/v3/otel/tracingSDKShutdown.test.js +0 -18
  123. package/dist/commonjs/v3/otel/tracingSDKShutdown.test.js.map +0 -1
  124. package/dist/commonjs/v3/realtimeStreams/manager.test.d.ts +0 -1
  125. package/dist/commonjs/v3/realtimeStreams/manager.test.js +0 -89
  126. package/dist/commonjs/v3/realtimeStreams/manager.test.js.map +0 -1
  127. package/dist/commonjs/v3/realtimeStreams/streamsWriterV2.test.d.ts +0 -1
  128. package/dist/commonjs/v3/realtimeStreams/streamsWriterV2.test.js +0 -68
  129. package/dist/commonjs/v3/realtimeStreams/streamsWriterV2.test.js.map +0 -1
  130. package/dist/commonjs/v3/runEngineWorker/supervisor/consumerPool.test.d.ts +0 -1
  131. package/dist/commonjs/v3/runEngineWorker/supervisor/consumerPool.test.js +0 -674
  132. package/dist/commonjs/v3/runEngineWorker/supervisor/consumerPool.test.js.map +0 -1
  133. package/dist/commonjs/v3/runEngineWorker/supervisor/queueConsumer.test.d.ts +0 -1
  134. package/dist/commonjs/v3/runEngineWorker/supervisor/queueConsumer.test.js +0 -77
  135. package/dist/commonjs/v3/runEngineWorker/supervisor/queueConsumer.test.js.map +0 -1
  136. package/dist/commonjs/v3/runEngineWorker/supervisor/queueMetricsProcessor.test.d.ts +0 -1
  137. package/dist/commonjs/v3/runEngineWorker/supervisor/queueMetricsProcessor.test.js +0 -293
  138. package/dist/commonjs/v3/runEngineWorker/supervisor/queueMetricsProcessor.test.js.map +0 -1
  139. package/dist/commonjs/v3/runEngineWorker/supervisor/scalingStrategies.test.d.ts +0 -1
  140. package/dist/commonjs/v3/runEngineWorker/supervisor/scalingStrategies.test.js +0 -235
  141. package/dist/commonjs/v3/runEngineWorker/supervisor/scalingStrategies.test.js.map +0 -1
  142. package/dist/commonjs/v3/schemas/api-type.test.d.ts +0 -1
  143. package/dist/commonjs/v3/schemas/api-type.test.js +0 -358
  144. package/dist/commonjs/v3/schemas/api-type.test.js.map +0 -1
  145. package/dist/commonjs/v3/schemas/batchItemNDJSON.test.d.ts +0 -1
  146. package/dist/commonjs/v3/schemas/batchItemNDJSON.test.js +0 -79
  147. package/dist/commonjs/v3/schemas/batchItemNDJSON.test.js.map +0 -1
  148. package/dist/commonjs/v3/schemas/idempotencyKey.test.d.ts +0 -1
  149. package/dist/commonjs/v3/schemas/idempotencyKey.test.js +0 -157
  150. package/dist/commonjs/v3/schemas/idempotencyKey.test.js.map +0 -1
  151. package/dist/commonjs/v3/schemas/scheduleWindow.test.d.ts +0 -1
  152. package/dist/commonjs/v3/schemas/scheduleWindow.test.js +0 -52
  153. package/dist/commonjs/v3/schemas/scheduleWindow.test.js.map +0 -1
  154. package/dist/commonjs/v3/schemas/triggerExternalDeploymentId.test.d.ts +0 -1
  155. package/dist/commonjs/v3/schemas/triggerExternalDeploymentId.test.js +0 -104
  156. package/dist/commonjs/v3/schemas/triggerExternalDeploymentId.test.js.map +0 -1
  157. package/dist/commonjs/v3/serverOnly/shutdownManager.test.d.ts +0 -1
  158. package/dist/commonjs/v3/serverOnly/shutdownManager.test.js +0 -139
  159. package/dist/commonjs/v3/serverOnly/shutdownManager.test.js.map +0 -1
  160. package/dist/commonjs/v3/sessionStreams/manager.test.d.ts +0 -1
  161. package/dist/commonjs/v3/sessionStreams/manager.test.js +0 -375
  162. package/dist/commonjs/v3/sessionStreams/manager.test.js.map +0 -1
  163. package/dist/commonjs/v3/sessionStreams/router.test.d.ts +0 -1
  164. package/dist/commonjs/v3/sessionStreams/router.test.js +0 -463
  165. package/dist/commonjs/v3/sessionStreams/router.test.js.map +0 -1
  166. package/dist/commonjs/v3/taskContext/index.test.d.ts +0 -1
  167. package/dist/commonjs/v3/taskContext/index.test.js +0 -73
  168. package/dist/commonjs/v3/taskContext/index.test.js.map +0 -1
  169. package/dist/commonjs/v3/taskContext/otelProcessors.test.d.ts +0 -1
  170. package/dist/commonjs/v3/taskContext/otelProcessors.test.js +0 -109
  171. package/dist/commonjs/v3/taskContext/otelProcessors.test.js.map +0 -1
  172. package/dist/commonjs/v3/telnetLogServer.test.d.ts +0 -1
  173. package/dist/commonjs/v3/telnetLogServer.test.js +0 -144
  174. package/dist/commonjs/v3/telnetLogServer.test.js.map +0 -1
  175. package/dist/commonjs/v3/utils/reconnectBackoff.test.d.ts +0 -1
  176. package/dist/commonjs/v3/utils/reconnectBackoff.test.js +0 -76
  177. package/dist/commonjs/v3/utils/reconnectBackoff.test.js.map +0 -1
  178. package/dist/commonjs/v3/workloadDeploymentToken.test.d.ts +0 -1
  179. package/dist/commonjs/v3/workloadDeploymentToken.test.js +0 -110
  180. package/dist/commonjs/v3/workloadDeploymentToken.test.js.map +0 -1
  181. package/dist/esm/v3/apiClient/bulkActions.test.d.ts +0 -1
  182. package/dist/esm/v3/apiClient/bulkActions.test.js +0 -149
  183. package/dist/esm/v3/apiClient/bulkActions.test.js.map +0 -1
  184. package/dist/esm/v3/apiClient/runStream.test.d.ts +0 -1
  185. package/dist/esm/v3/apiClient/runStream.test.js +0 -544
  186. package/dist/esm/v3/apiClient/runStream.test.js.map +0 -1
  187. package/dist/esm/v3/apiClient/streamBatchItems.test.d.ts +0 -1
  188. package/dist/esm/v3/apiClient/streamBatchItems.test.js +0 -406
  189. package/dist/esm/v3/apiClient/streamBatchItems.test.js.map +0 -1
  190. package/dist/esm/v3/apiKeys.test.d.ts +0 -1
  191. package/dist/esm/v3/apiKeys.test.js +0 -17
  192. package/dist/esm/v3/apiKeys.test.js.map +0 -1
  193. package/dist/esm/v3/apps/exec.test.d.ts +0 -1
  194. package/dist/esm/v3/apps/exec.test.js +0 -21
  195. package/dist/esm/v3/apps/exec.test.js.map +0 -1
  196. package/dist/esm/v3/build/flags.test.d.ts +0 -1
  197. package/dist/esm/v3/build/flags.test.js +0 -48
  198. package/dist/esm/v3/build/flags.test.js.map +0 -1
  199. package/dist/esm/v3/build/runtime.test.d.ts +0 -1
  200. package/dist/esm/v3/build/runtime.test.js +0 -42
  201. package/dist/esm/v3/build/runtime.test.js.map +0 -1
  202. package/dist/esm/v3/errors.test.d.ts +0 -1
  203. package/dist/esm/v3/errors.test.js +0 -34
  204. package/dist/esm/v3/errors.test.js.map +0 -1
  205. package/dist/esm/v3/externalDeploymentId.test.d.ts +0 -1
  206. package/dist/esm/v3/externalDeploymentId.test.js +0 -171
  207. package/dist/esm/v3/externalDeploymentId.test.js.map +0 -1
  208. package/dist/esm/v3/idempotency-key-catalog/inMemoryIdempotencyKeyCatalog.test.d.ts +0 -1
  209. package/dist/esm/v3/idempotency-key-catalog/inMemoryIdempotencyKeyCatalog.test.js +0 -42
  210. package/dist/esm/v3/idempotency-key-catalog/inMemoryIdempotencyKeyCatalog.test.js.map +0 -1
  211. package/dist/esm/v3/idempotencyKeys.test.d.ts +0 -1
  212. package/dist/esm/v3/idempotencyKeys.test.js +0 -190
  213. package/dist/esm/v3/idempotencyKeys.test.js.map +0 -1
  214. package/dist/esm/v3/isomorphic/friendlyId.test.d.ts +0 -1
  215. package/dist/esm/v3/isomorphic/friendlyId.test.js +0 -495
  216. package/dist/esm/v3/isomorphic/friendlyId.test.js.map +0 -1
  217. package/dist/esm/v3/isomorphic/runOpsResidency.test.d.ts +0 -1
  218. package/dist/esm/v3/isomorphic/runOpsResidency.test.js +0 -139
  219. package/dist/esm/v3/isomorphic/runOpsResidency.test.js.map +0 -1
  220. package/dist/esm/v3/isomorphic/waitpointMint.test.d.ts +0 -1
  221. package/dist/esm/v3/isomorphic/waitpointMint.test.js +0 -95
  222. package/dist/esm/v3/isomorphic/waitpointMint.test.js.map +0 -1
  223. package/dist/esm/v3/machines/max-old-space.test.d.ts +0 -1
  224. package/dist/esm/v3/machines/max-old-space.test.js +0 -42
  225. package/dist/esm/v3/machines/max-old-space.test.js.map +0 -1
  226. package/dist/esm/v3/otel/tracingSDK.test.d.ts +0 -1
  227. package/dist/esm/v3/otel/tracingSDK.test.js +0 -172
  228. package/dist/esm/v3/otel/tracingSDK.test.js.map +0 -1
  229. package/dist/esm/v3/otel/tracingSDKShutdown.test.d.ts +0 -1
  230. package/dist/esm/v3/otel/tracingSDKShutdown.test.js +0 -16
  231. package/dist/esm/v3/otel/tracingSDKShutdown.test.js.map +0 -1
  232. package/dist/esm/v3/realtimeStreams/manager.test.d.ts +0 -1
  233. package/dist/esm/v3/realtimeStreams/manager.test.js +0 -87
  234. package/dist/esm/v3/realtimeStreams/manager.test.js.map +0 -1
  235. package/dist/esm/v3/realtimeStreams/streamsWriterV2.test.d.ts +0 -1
  236. package/dist/esm/v3/realtimeStreams/streamsWriterV2.test.js +0 -66
  237. package/dist/esm/v3/realtimeStreams/streamsWriterV2.test.js.map +0 -1
  238. package/dist/esm/v3/runEngineWorker/supervisor/consumerPool.test.d.ts +0 -1
  239. package/dist/esm/v3/runEngineWorker/supervisor/consumerPool.test.js +0 -672
  240. package/dist/esm/v3/runEngineWorker/supervisor/consumerPool.test.js.map +0 -1
  241. package/dist/esm/v3/runEngineWorker/supervisor/queueConsumer.test.d.ts +0 -1
  242. package/dist/esm/v3/runEngineWorker/supervisor/queueConsumer.test.js +0 -75
  243. package/dist/esm/v3/runEngineWorker/supervisor/queueConsumer.test.js.map +0 -1
  244. package/dist/esm/v3/runEngineWorker/supervisor/queueMetricsProcessor.test.d.ts +0 -1
  245. package/dist/esm/v3/runEngineWorker/supervisor/queueMetricsProcessor.test.js +0 -291
  246. package/dist/esm/v3/runEngineWorker/supervisor/queueMetricsProcessor.test.js.map +0 -1
  247. package/dist/esm/v3/runEngineWorker/supervisor/scalingStrategies.test.d.ts +0 -1
  248. package/dist/esm/v3/runEngineWorker/supervisor/scalingStrategies.test.js +0 -233
  249. package/dist/esm/v3/runEngineWorker/supervisor/scalingStrategies.test.js.map +0 -1
  250. package/dist/esm/v3/schemas/api-type.test.d.ts +0 -1
  251. package/dist/esm/v3/schemas/api-type.test.js +0 -356
  252. package/dist/esm/v3/schemas/api-type.test.js.map +0 -1
  253. package/dist/esm/v3/schemas/batchItemNDJSON.test.d.ts +0 -1
  254. package/dist/esm/v3/schemas/batchItemNDJSON.test.js +0 -77
  255. package/dist/esm/v3/schemas/batchItemNDJSON.test.js.map +0 -1
  256. package/dist/esm/v3/schemas/idempotencyKey.test.d.ts +0 -1
  257. package/dist/esm/v3/schemas/idempotencyKey.test.js +0 -155
  258. package/dist/esm/v3/schemas/idempotencyKey.test.js.map +0 -1
  259. package/dist/esm/v3/schemas/scheduleWindow.test.d.ts +0 -1
  260. package/dist/esm/v3/schemas/scheduleWindow.test.js +0 -50
  261. package/dist/esm/v3/schemas/scheduleWindow.test.js.map +0 -1
  262. package/dist/esm/v3/schemas/triggerExternalDeploymentId.test.d.ts +0 -1
  263. package/dist/esm/v3/schemas/triggerExternalDeploymentId.test.js +0 -102
  264. package/dist/esm/v3/schemas/triggerExternalDeploymentId.test.js.map +0 -1
  265. package/dist/esm/v3/serverOnly/shutdownManager.test.d.ts +0 -1
  266. package/dist/esm/v3/serverOnly/shutdownManager.test.js +0 -137
  267. package/dist/esm/v3/serverOnly/shutdownManager.test.js.map +0 -1
  268. package/dist/esm/v3/sessionStreams/manager.test.d.ts +0 -1
  269. package/dist/esm/v3/sessionStreams/manager.test.js +0 -373
  270. package/dist/esm/v3/sessionStreams/manager.test.js.map +0 -1
  271. package/dist/esm/v3/sessionStreams/router.test.d.ts +0 -1
  272. package/dist/esm/v3/sessionStreams/router.test.js +0 -461
  273. package/dist/esm/v3/sessionStreams/router.test.js.map +0 -1
  274. package/dist/esm/v3/taskContext/index.test.d.ts +0 -1
  275. package/dist/esm/v3/taskContext/index.test.js +0 -71
  276. package/dist/esm/v3/taskContext/index.test.js.map +0 -1
  277. package/dist/esm/v3/taskContext/otelProcessors.test.d.ts +0 -1
  278. package/dist/esm/v3/taskContext/otelProcessors.test.js +0 -107
  279. package/dist/esm/v3/taskContext/otelProcessors.test.js.map +0 -1
  280. package/dist/esm/v3/telnetLogServer.test.d.ts +0 -1
  281. package/dist/esm/v3/telnetLogServer.test.js +0 -139
  282. package/dist/esm/v3/telnetLogServer.test.js.map +0 -1
  283. package/dist/esm/v3/utils/reconnectBackoff.test.d.ts +0 -1
  284. package/dist/esm/v3/utils/reconnectBackoff.test.js +0 -74
  285. package/dist/esm/v3/utils/reconnectBackoff.test.js.map +0 -1
  286. package/dist/esm/v3/workloadDeploymentToken.test.d.ts +0 -1
  287. package/dist/esm/v3/workloadDeploymentToken.test.js +0 -108
  288. package/dist/esm/v3/workloadDeploymentToken.test.js.map +0 -1
@@ -1,107 +0,0 @@
1
- import { OtelCollectorContainer, } from "@internal/testcontainers";
2
- import { ExportResultCode } from "@opentelemetry/core";
3
- import { OTLPMetricExporter } from "@opentelemetry/exporter-metrics-otlp-http";
4
- import { AggregationTemporality, DataPointType, InstrumentType, } from "@opentelemetry/sdk-metrics";
5
- import { afterAll, beforeAll, describe, expect, it } from "vitest";
6
- import { BufferingMetricExporter } from "./otelProcessors.js";
7
- class RecordingMetricExporter {
8
- exported = [];
9
- export(metrics, resultCallback) {
10
- this.exported.push(metrics);
11
- resultCallback({ code: ExportResultCode.SUCCESS });
12
- }
13
- async forceFlush() { }
14
- async shutdown() { }
15
- }
16
- function gauge(name, values) {
17
- return {
18
- descriptor: {
19
- name,
20
- description: "",
21
- unit: "1",
22
- type: InstrumentType.OBSERVABLE_GAUGE,
23
- valueType: 1,
24
- },
25
- aggregationTemporality: AggregationTemporality.CUMULATIVE,
26
- dataPointType: DataPointType.GAUGE,
27
- dataPoints: values.map((value) => ({
28
- attributes: { "process.cpu.state": "user" },
29
- startTime: [1786481102, 584000000],
30
- endTime: [1786481102, 698000000],
31
- value,
32
- })),
33
- };
34
- }
35
- function resourceMetrics(metrics) {
36
- return {
37
- resource: { attributes: {} },
38
- scopeMetrics: [{ scope: { name: "@opentelemetry/host-metrics" }, metrics }],
39
- };
40
- }
41
- async function exportThrough(exporter, metrics) {
42
- exporter.export(metrics, () => { });
43
- await exporter.forceFlush();
44
- }
45
- function histogram(name, sums) {
46
- return {
47
- descriptor: {
48
- name,
49
- description: "",
50
- unit: "ms",
51
- type: InstrumentType.HISTOGRAM,
52
- valueType: 1,
53
- },
54
- aggregationTemporality: AggregationTemporality.DELTA,
55
- dataPointType: DataPointType.HISTOGRAM,
56
- dataPoints: sums.map((sum) => ({
57
- attributes: { "task.status": "completed" },
58
- startTime: [1786481102, 584000000],
59
- endTime: [1786481102, 698000000],
60
- value: {
61
- min: 0,
62
- max: 1,
63
- sum,
64
- count: 1,
65
- buckets: { boundaries: [0, 1], counts: [0, 1, 0] },
66
- },
67
- })),
68
- };
69
- }
70
- describe("BufferingMetricExporter", () => {
71
- it("forwards only the finite data points of a metric", async () => {
72
- const inner = new RecordingMetricExporter();
73
- const exporter = new BufferingMetricExporter(inner, 30_000);
74
- await exportThrough(exporter, resourceMetrics([gauge("process.cpu.utilization", [NaN, 0.25])]));
75
- const forwarded = inner.exported[0].scopeMetrics[0].metrics[0];
76
- expect(forwarded.dataPoints.map((dp) => dp.value)).toEqual([0.25]);
77
- });
78
- it("drops infinite data points as well as NaN", async () => {
79
- const inner = new RecordingMetricExporter();
80
- const exporter = new BufferingMetricExporter(inner, 30_000);
81
- await exportThrough(exporter, resourceMetrics([gauge("process.cpu.utilization", [Infinity, -Infinity, 0.5])]));
82
- const forwarded = inner.exported[0].scopeMetrics[0].metrics[0];
83
- expect(forwarded.dataPoints.map((dp) => dp.value)).toEqual([0.5]);
84
- });
85
- it("forwards only the histogram data points with a finite sum", async () => {
86
- const inner = new RecordingMetricExporter();
87
- const exporter = new BufferingMetricExporter(inner, 30_000);
88
- await exportThrough(exporter, resourceMetrics([histogram("task.duration", [NaN, 5])]));
89
- const forwarded = inner.exported[0].scopeMetrics[0].metrics[0];
90
- expect(forwarded.dataPoints.map((dp) => dp.value.sum)).toEqual([5]);
91
- });
92
- describe("against a real otel collector", () => {
93
- let collector;
94
- beforeAll(async () => {
95
- collector = await new OtelCollectorContainer().start();
96
- }, 180_000);
97
- afterAll(async () => {
98
- await collector?.stop();
99
- });
100
- it("exports a batch containing a NaN gauge value without being rejected", async () => {
101
- const exporter = new BufferingMetricExporter(new OTLPMetricExporter({ url: `${collector.getOtlpHttpUrl()}/v1/metrics` }), 30_000);
102
- exporter.export(resourceMetrics([gauge("process.cpu.utilization", [NaN, 0.25])]), () => { });
103
- await expect(exporter.forceFlush()).resolves.toBeUndefined();
104
- });
105
- });
106
- });
107
- //# sourceMappingURL=otelProcessors.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"otelProcessors.test.js","sourceRoot":"","sources":["../../../../src/v3/taskContext/otelProcessors.test.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,139 +0,0 @@
1
- import net from "node:net";
2
- import { afterEach, describe, expect, test } from "vitest";
3
- import { formatConsoleLine, formatLogLine, stripAnsi, TelnetLogServer } from "./telnetLogServer.js";
4
- const servers = [];
5
- afterEach(() => {
6
- while (servers.length) {
7
- servers.pop()?.close();
8
- }
9
- });
10
- /** Grab a port the OS just told us is free, then hand it to a TelnetLogServer. */
11
- async function startServerOnFreePort(name = "test") {
12
- const probe = net.createServer();
13
- const port = await listening(probe, 0);
14
- await new Promise((resolve) => probe.close(() => resolve()));
15
- // A banner lets clients deterministically wait until the server has registered them
16
- // (it's written in the connection handler), removing the connect/register race.
17
- const server = new TelnetLogServer({ port, name, banner: "ready" });
18
- servers.push(server);
19
- server.start();
20
- await delay(30);
21
- return { server, port };
22
- }
23
- /** Connects and resolves only once the first bytes (the banner) arrive — server-side socket is registered by then. */
24
- function connectAndCollect(port) {
25
- return new Promise((resolve, reject) => {
26
- let buffer = "";
27
- const socket = net.connect(port, "127.0.0.1");
28
- socket.setEncoding("utf8");
29
- socket.on("data", (chunk) => {
30
- const first = buffer === "";
31
- buffer += chunk;
32
- if (first) {
33
- resolve({ socket, lines: () => buffer });
34
- }
35
- });
36
- socket.on("error", reject);
37
- });
38
- }
39
- function listening(server, port, host = "127.0.0.1") {
40
- return new Promise((resolve) => {
41
- server.listen(port, host, () => {
42
- const address = server.address();
43
- resolve(typeof address === "object" && address ? address.port : port);
44
- });
45
- });
46
- }
47
- describe("stripAnsi", () => {
48
- test("removes color escape codes", () => {
49
- const colored = "2026-06-11 ERROR boom";
50
- expect(stripAnsi(colored)).toBe("2026-06-11 ERROR boom");
51
- });
52
- });
53
- describe("formatLogLine", () => {
54
- test("formats a core Logger-shaped object (level/name)", () => {
55
- const line = formatLogLine({
56
- timestamp: new Date("2026-06-11T12:00:00.000Z"),
57
- name: "webapp",
58
- level: "info",
59
- message: "queue drained",
60
- count: 3,
61
- });
62
- expect(line).toBe("2026-06-11T12:00:00.000Z INFO [webapp] queue drained {count=3}");
63
- });
64
- test("formats a SimpleStructuredLogger-shaped object ($level/$name)", () => {
65
- const line = formatLogLine({
66
- timestamp: new Date("2026-06-11T12:00:00.000Z"),
67
- $name: "supervisor",
68
- $level: "warn",
69
- message: "retrying",
70
- attempt: 2,
71
- });
72
- expect(line).toBe("2026-06-11T12:00:00.000Z WARN [supervisor] retrying {attempt=2}");
73
- });
74
- test("omits empty name and extras", () => {
75
- const line = formatLogLine({
76
- timestamp: "2026-06-11T12:00:00.000Z",
77
- level: "log",
78
- message: "hello",
79
- });
80
- expect(line).toBe("2026-06-11T12:00:00.000Z LOG hello");
81
- });
82
- });
83
- describe("formatConsoleLine", () => {
84
- test("pretty-formats a JSON structured-log line", () => {
85
- const raw = JSON.stringify({
86
- timestamp: "2026-06-11T12:00:00.000Z",
87
- name: "sso-plugin",
88
- level: "info",
89
- message: "sso.webhook.connection.activated: connection marked active",
90
- connId: "conn_123",
91
- });
92
- expect(formatConsoleLine(raw)).toBe("2026-06-11T12:00:00.000Z INFO [sso-plugin] sso.webhook.connection.activated: connection marked active {connId=conn_123}");
93
- });
94
- test("passes non-JSON console output through unchanged", () => {
95
- expect(formatConsoleLine("GET /healthcheck 200 1.2 ms")).toBe("GET /healthcheck 200 1.2 ms");
96
- });
97
- test("passes JSON that isn't a structured log through unchanged", () => {
98
- const raw = JSON.stringify({ foo: "bar" });
99
- expect(formatConsoleLine(raw)).toBe(raw);
100
- });
101
- });
102
- describe("TelnetLogServer", () => {
103
- test("broadcasts a line to a connected client", async () => {
104
- const { server, port } = await startServerOnFreePort();
105
- const client = await connectAndCollect(port);
106
- server.broadcast("first line");
107
- await delay(50);
108
- expect(client.lines()).toContain("first line\r\n");
109
- client.socket.destroy();
110
- });
111
- test("close() ends connected sockets", async () => {
112
- const { server, port } = await startServerOnFreePort();
113
- const client = await connectAndCollect(port);
114
- server.broadcast("alive");
115
- await delay(30);
116
- expect(client.lines()).toContain("alive\r\n");
117
- let closed = false;
118
- client.socket.on("close", () => {
119
- closed = true;
120
- });
121
- server.close();
122
- await delay(30);
123
- expect(closed).toBe(true);
124
- });
125
- test("EADDRINUSE does not throw", async () => {
126
- const blocker = net.createServer();
127
- const port = await listening(blocker, 0);
128
- const server = new TelnetLogServer({ port, name: "test" });
129
- servers.push(server);
130
- // Must not throw even though the port is taken.
131
- expect(() => server.start()).not.toThrow();
132
- await delay(30);
133
- blocker.close();
134
- });
135
- });
136
- function delay(ms) {
137
- return new Promise((resolve) => setTimeout(resolve, ms));
138
- }
139
- //# sourceMappingURL=telnetLogServer.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"telnetLogServer.test.js","sourceRoot":"","sources":["../../../src/v3/telnetLogServer.test.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,74 +0,0 @@
1
- import { afterEach, describe, expect, it, vi } from "vitest";
2
- import { RECONNECT_BACKOFF_MAX_MS, computeReconnectDelayMs } from "./reconnectBackoff.js";
3
- afterEach(() => {
4
- vi.restoreAllMocks();
5
- });
6
- describe("computeReconnectDelayMs", () => {
7
- // Hold Math.random steady so we can assert on the deterministic base. The
8
- // jitter is added separately in the "jitter" test below.
9
- function withFixedRandom(value, fn) {
10
- const spy = vi.spyOn(Math, "random").mockReturnValue(value);
11
- try {
12
- fn();
13
- }
14
- finally {
15
- spy.mockRestore();
16
- }
17
- }
18
- it("base case — attempt 0 lands in [1000, 2000)", () => {
19
- withFixedRandom(0, () => {
20
- expect(computeReconnectDelayMs(0)).toBe(1000);
21
- });
22
- withFixedRandom(0.999, () => {
23
- expect(computeReconnectDelayMs(0)).toBeGreaterThanOrEqual(1000);
24
- expect(computeReconnectDelayMs(0)).toBeLessThan(2000);
25
- });
26
- });
27
- it("doubles per attempt up to the 30s cap", () => {
28
- withFixedRandom(0, () => {
29
- // 1s, 2s, 4s, 8s, 16s, then capped at 30s
30
- expect(computeReconnectDelayMs(0)).toBe(1_000);
31
- expect(computeReconnectDelayMs(1)).toBe(2_000);
32
- expect(computeReconnectDelayMs(2)).toBe(4_000);
33
- expect(computeReconnectDelayMs(3)).toBe(8_000);
34
- expect(computeReconnectDelayMs(4)).toBe(16_000);
35
- // 32s would exceed the cap — should clamp to 30s.
36
- expect(computeReconnectDelayMs(5)).toBe(RECONNECT_BACKOFF_MAX_MS);
37
- // High attempt counts stay capped — protects against integer
38
- // overflow on 2 ** N for large N.
39
- expect(computeReconnectDelayMs(50)).toBe(RECONNECT_BACKOFF_MAX_MS);
40
- expect(computeReconnectDelayMs(1_000)).toBe(RECONNECT_BACKOFF_MAX_MS);
41
- });
42
- });
43
- it("never exceeds RECONNECT_BACKOFF_MAX_MS + 1000ms (cap + jitter ceiling)", () => {
44
- withFixedRandom(0.999, () => {
45
- for (let attempt = 0; attempt < 100; attempt++) {
46
- expect(computeReconnectDelayMs(attempt)).toBeLessThan(RECONNECT_BACKOFF_MAX_MS + 1000);
47
- }
48
- });
49
- });
50
- it("adds 0–1000ms of jitter on top of the base", () => {
51
- // Compare same attempt with random=0 vs random=0.5 — the difference is
52
- // exactly the jitter.
53
- withFixedRandom(0, () => {
54
- expect(computeReconnectDelayMs(2)).toBe(4_000);
55
- });
56
- withFixedRandom(0.5, () => {
57
- expect(computeReconnectDelayMs(2)).toBe(4_500);
58
- });
59
- withFixedRandom(0.999, () => {
60
- const v = computeReconnectDelayMs(2);
61
- expect(v).toBeGreaterThan(4_000);
62
- expect(v).toBeLessThan(5_000);
63
- });
64
- });
65
- it("clamps negative / non-integer attempts to 0 (no NaN, no negative delay)", () => {
66
- withFixedRandom(0, () => {
67
- expect(computeReconnectDelayMs(-1)).toBe(1_000);
68
- expect(computeReconnectDelayMs(-100)).toBe(1_000);
69
- expect(computeReconnectDelayMs(0.7)).toBe(1_000); // floored to 0
70
- expect(computeReconnectDelayMs(2.9)).toBe(4_000); // floored to 2
71
- });
72
- });
73
- });
74
- //# sourceMappingURL=reconnectBackoff.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"reconnectBackoff.test.js","sourceRoot":"","sources":["../../../../src/v3/utils/reconnectBackoff.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE7D,OAAO,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAE1F,SAAS,CAAC,GAAG,EAAE;IACb,EAAE,CAAC,eAAe,EAAE,CAAC;AACvB,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACvC,0EAA0E;IAC1E,yDAAyD;IACzD,SAAS,eAAe,CAAC,KAAa,EAAE,EAAc;QACpD,MAAM,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAC5D,IAAI,CAAC;YACH,EAAE,EAAE,CAAC;QACP,CAAC;gBAAS,CAAC;YACT,GAAG,CAAC,WAAW,EAAE,CAAC;QACpB,CAAC;IACH,CAAC;IAED,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,eAAe,CAAC,CAAC,EAAE,GAAG,EAAE;YACtB,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;QACH,eAAe,CAAC,KAAK,EAAE,GAAG,EAAE;YAC1B,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;YAChE,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,eAAe,CAAC,CAAC,EAAE,GAAG,EAAE;YACtB,0CAA0C;YAC1C,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC/C,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC/C,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC/C,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC/C,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAChD,kDAAkD;YAClD,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YAClE,6DAA6D;YAC7D,kCAAkC;YAClC,MAAM,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YACnE,MAAM,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QACxE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wEAAwE,EAAE,GAAG,EAAE;QAChF,eAAe,CAAC,KAAK,EAAE,GAAG,EAAE;YAC1B,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC;gBAC/C,MAAM,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,wBAAwB,GAAG,IAAI,CAAC,CAAC;YACzF,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,uEAAuE;QACvE,sBAAsB;QACtB,eAAe,CAAC,CAAC,EAAE,GAAG,EAAE;YACtB,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QACH,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE;YACxB,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QACH,eAAe,CAAC,KAAK,EAAE,GAAG,EAAE;YAC1B,MAAM,CAAC,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC;YACrC,MAAM,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;YACjC,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yEAAyE,EAAE,GAAG,EAAE;QACjF,eAAe,CAAC,CAAC,EAAE,GAAG,EAAE;YACtB,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAChD,MAAM,CAAC,uBAAuB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClD,MAAM,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe;YACjE,MAAM,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe;QACnE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,108 +0,0 @@
1
- import { describe, expect, it } from "vitest";
2
- import { generateJWT } from "./jwt.js";
3
- import { classifyDeploymentIdHeader, looksLikeWorkloadDeploymentToken, mintWorkloadDeploymentToken, verifyWorkloadDeploymentToken, WORKLOAD_DEPLOYMENT_TOKEN_VERSION, } from "./workloadDeploymentToken.js";
4
- const SECRET = "test-workload-token-secret";
5
- const EXP = Math.floor(Date.UTC(2032, 0, 1) / 1000);
6
- const claims = {
7
- deployment: "deployment_abc123",
8
- deployment_version: "20260709.1",
9
- environment_id: "env_1",
10
- environment_type: "PRODUCTION",
11
- org_id: "org_1",
12
- project_id: "proj_1",
13
- };
14
- describe("workloadDeploymentToken", () => {
15
- it("mints a token that verifies and round-trips every claim", async () => {
16
- const token = await mintWorkloadDeploymentToken(claims, SECRET, EXP);
17
- const result = await verifyWorkloadDeploymentToken(token, SECRET);
18
- expect(result.ok).toBe(true);
19
- if (!result.ok)
20
- return;
21
- expect(result.claims.ver).toBe(WORKLOAD_DEPLOYMENT_TOKEN_VERSION);
22
- expect(result.claims.deployment).toBe(claims.deployment);
23
- expect(result.claims.deployment_version).toBe(claims.deployment_version);
24
- expect(result.claims.environment_id).toBe(claims.environment_id);
25
- expect(result.claims.environment_type).toBe(claims.environment_type);
26
- expect(result.claims.org_id).toBe(claims.org_id);
27
- expect(result.claims.project_id).toBe(claims.project_id);
28
- });
29
- it("sets the caller-supplied absolute exp", async () => {
30
- const token = await mintWorkloadDeploymentToken(claims, SECRET, EXP);
31
- const result = await verifyWorkloadDeploymentToken(token, SECRET);
32
- expect(result.ok).toBe(true);
33
- if (!result.ok)
34
- return;
35
- expect(result.claims.exp).toBe(EXP);
36
- });
37
- it("mints byte-identical tokens for identical claims (deterministic, no iat)", async () => {
38
- const a = await mintWorkloadDeploymentToken(claims, SECRET, EXP);
39
- const b = await mintWorkloadDeploymentToken(claims, SECRET, EXP);
40
- expect(a).toBe(b);
41
- const result = await verifyWorkloadDeploymentToken(a, SECRET);
42
- expect(result.ok).toBe(true);
43
- if (!result.ok)
44
- return;
45
- expect(result.claims.iat).toBeUndefined();
46
- });
47
- it("rejects a token signed with a different secret", async () => {
48
- const token = await mintWorkloadDeploymentToken(claims, SECRET, EXP);
49
- const result = await verifyWorkloadDeploymentToken(token, "wrong-secret");
50
- expect(result.ok).toBe(false);
51
- if (result.ok)
52
- return;
53
- expect(result.reason).toBe("invalid_signature");
54
- });
55
- it("rejects a tampered token", async () => {
56
- const token = await mintWorkloadDeploymentToken(claims, SECRET, EXP);
57
- const [header, payload, signature] = token.split(".");
58
- const tampered = `${header}.${payload}x.${signature}`;
59
- const result = await verifyWorkloadDeploymentToken(tampered, SECRET);
60
- expect(result.ok).toBe(false);
61
- });
62
- it("rejects a valid JWT that is missing required claims", async () => {
63
- // Signed with the right secret, but not a workload deployment token.
64
- const token = await generateJWT({
65
- secretKey: SECRET,
66
- payload: { foo: "bar" },
67
- expirationTime: "1825d",
68
- });
69
- const result = await verifyWorkloadDeploymentToken(token, SECRET);
70
- expect(result.ok).toBe(false);
71
- if (result.ok)
72
- return;
73
- expect(result.reason).toBe("malformed_claims");
74
- });
75
- describe("looksLikeWorkloadDeploymentToken", () => {
76
- it("is true for a minted token", async () => {
77
- const token = await mintWorkloadDeploymentToken(claims, SECRET, EXP);
78
- expect(looksLikeWorkloadDeploymentToken(token)).toBe(true);
79
- });
80
- it("is false for a legacy bare friendlyId", () => {
81
- expect(looksLikeWorkloadDeploymentToken("deployment_abc123")).toBe(false);
82
- });
83
- it("is false for empty and malformed values", () => {
84
- expect(looksLikeWorkloadDeploymentToken("")).toBe(false);
85
- expect(looksLikeWorkloadDeploymentToken("a.b")).toBe(false);
86
- expect(looksLikeWorkloadDeploymentToken("a..c")).toBe(false);
87
- });
88
- });
89
- describe("classifyDeploymentIdHeader", () => {
90
- it("classifies a minted token as jwt_valid and returns claims", async () => {
91
- const token = await mintWorkloadDeploymentToken(claims, SECRET, EXP);
92
- const result = await classifyDeploymentIdHeader(token, SECRET);
93
- expect(result.outcome).toBe("jwt_valid");
94
- expect(result.claims?.deployment).toBe(claims.deployment);
95
- });
96
- it("classifies a JWT with a bad signature as jwt_invalid", async () => {
97
- const token = await mintWorkloadDeploymentToken(claims, SECRET, EXP);
98
- const result = await classifyDeploymentIdHeader(token, "wrong-secret");
99
- expect(result.outcome).toBe("jwt_invalid");
100
- expect(result.claims).toBeUndefined();
101
- });
102
- it("classifies a bare friendlyId as legacy_bare", async () => {
103
- const result = await classifyDeploymentIdHeader("deployment_abc123", SECRET);
104
- expect(result.outcome).toBe("legacy_bare");
105
- });
106
- });
107
- });
108
- //# sourceMappingURL=workloadDeploymentToken.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"workloadDeploymentToken.test.js","sourceRoot":"","sources":["../../../src/v3/workloadDeploymentToken.test.ts"],"names":[],"mappings":"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"}