@trigger.dev/core 4.5.16 → 4.6.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.
- package/dist/commonjs/schemas/eventFilter.d.ts +27 -105
- package/dist/commonjs/schemas/eventFilter.js +38 -38
- package/dist/commonjs/schemas/eventFilter.js.map +1 -1
- package/dist/commonjs/schemas/json.d.ts +3 -3
- package/dist/commonjs/schemas/json.js +20 -12
- package/dist/commonjs/schemas/json.js.map +1 -1
- package/dist/commonjs/v3/apiClient/core.d.ts +14 -14
- package/dist/commonjs/v3/apiClient/core.js +39 -18
- package/dist/commonjs/v3/apiClient/core.js.map +1 -1
- package/dist/commonjs/v3/apiClient/encodeTaskIdForPath.d.ts +6 -0
- package/dist/commonjs/v3/apiClient/encodeTaskIdForPath.js +20 -0
- package/dist/commonjs/v3/apiClient/encodeTaskIdForPath.js.map +1 -0
- package/dist/commonjs/v3/apiClient/index.d.ts +82 -184
- package/dist/commonjs/v3/apiClient/index.js +27 -8
- package/dist/commonjs/v3/apiClient/index.js.map +1 -1
- package/dist/commonjs/v3/apiClient/stream.d.ts +4 -4
- package/dist/commonjs/v3/apiClient/stream.js.map +1 -1
- package/dist/commonjs/v3/errors.d.ts +5 -4
- package/dist/commonjs/v3/errors.js.map +1 -1
- package/dist/commonjs/v3/index.d.ts +1 -1
- package/dist/commonjs/v3/index.js.map +1 -1
- package/dist/commonjs/v3/realtimeStreams/sessionStreamInstance.js +3 -0
- package/dist/commonjs/v3/realtimeStreams/sessionStreamInstance.js.map +1 -1
- package/dist/commonjs/v3/realtimeStreams/streamsWriterV1.js +3 -0
- package/dist/commonjs/v3/realtimeStreams/streamsWriterV1.js.map +1 -1
- package/dist/commonjs/v3/realtimeStreams/streamsWriterV2.js +4 -0
- package/dist/commonjs/v3/realtimeStreams/streamsWriterV2.js.map +1 -1
- package/dist/commonjs/v3/runEngineWorker/supervisor/http.d.ts +25 -114
- package/dist/commonjs/v3/runEngineWorker/supervisor/http.js +5 -12
- package/dist/commonjs/v3/runEngineWorker/supervisor/http.js.map +1 -1
- package/dist/commonjs/v3/runEngineWorker/supervisor/schemas.d.ts +594 -4187
- package/dist/commonjs/v3/runEngineWorker/supervisor/schemas.js +84 -67
- package/dist/commonjs/v3/runEngineWorker/supervisor/schemas.js.map +1 -1
- package/dist/commonjs/v3/runEngineWorker/supervisor/types.d.ts +2 -0
- package/dist/commonjs/v3/runEngineWorker/workload/http.d.ts +15 -110
- package/dist/commonjs/v3/runEngineWorker/workload/http.js +8 -16
- package/dist/commonjs/v3/runEngineWorker/workload/http.js.map +1 -1
- package/dist/commonjs/v3/runEngineWorker/workload/schemas.d.ts +465 -3624
- package/dist/commonjs/v3/runEngineWorker/workload/schemas.js +10 -9
- package/dist/commonjs/v3/runEngineWorker/workload/schemas.js.map +1 -1
- package/dist/commonjs/v3/schemas/api.d.ts +1869 -12681
- package/dist/commonjs/v3/schemas/api.js +1023 -943
- package/dist/commonjs/v3/schemas/api.js.map +1 -1
- package/dist/commonjs/v3/schemas/build.d.ts +645 -9115
- package/dist/commonjs/v3/schemas/build.js +71 -71
- package/dist/commonjs/v3/schemas/build.js.map +1 -1
- package/dist/commonjs/v3/schemas/checkpoints.d.ts +121 -461
- package/dist/commonjs/v3/schemas/checkpoints.js +11 -11
- package/dist/commonjs/v3/schemas/checkpoints.js.map +1 -1
- package/dist/commonjs/v3/schemas/common.d.ts +1018 -6499
- package/dist/commonjs/v3/schemas/common.js +225 -218
- package/dist/commonjs/v3/schemas/common.js.map +1 -1
- package/dist/commonjs/v3/schemas/config.d.ts +3 -9
- package/dist/commonjs/v3/schemas/config.js +4 -4
- package/dist/commonjs/v3/schemas/config.js.map +1 -1
- package/dist/commonjs/v3/schemas/errors.d.ts +42 -173
- package/dist/commonjs/v3/schemas/errors.js +44 -44
- package/dist/commonjs/v3/schemas/errors.js.map +1 -1
- package/dist/commonjs/v3/schemas/eventFilter.d.ts +23 -91
- package/dist/commonjs/v3/schemas/eventFilter.js +35 -35
- package/dist/commonjs/v3/schemas/eventFilter.js.map +1 -1
- package/dist/commonjs/v3/schemas/fetch.d.ts +119 -415
- package/dist/commonjs/v3/schemas/fetch.js +17 -14
- package/dist/commonjs/v3/schemas/fetch.js.map +1 -1
- package/dist/commonjs/v3/schemas/messages.d.ts +603 -7438
- package/dist/commonjs/v3/schemas/messages.js +50 -50
- package/dist/commonjs/v3/schemas/messages.js.map +1 -1
- package/dist/commonjs/v3/schemas/openTelemetry.d.ts +50 -401
- package/dist/commonjs/v3/schemas/openTelemetry.js +32 -32
- package/dist/commonjs/v3/schemas/openTelemetry.js.map +1 -1
- package/dist/commonjs/v3/schemas/query.d.ts +51 -273
- package/dist/commonjs/v3/schemas/query.js +41 -40
- package/dist/commonjs/v3/schemas/query.js.map +1 -1
- package/dist/commonjs/v3/schemas/queues.d.ts +29 -100
- package/dist/commonjs/v3/schemas/queues.js +22 -22
- package/dist/commonjs/v3/schemas/queues.js.map +1 -1
- package/dist/commonjs/v3/schemas/reports.d.ts +150 -692
- package/dist/commonjs/v3/schemas/reports.js +55 -55
- package/dist/commonjs/v3/schemas/reports.js.map +1 -1
- package/dist/commonjs/v3/schemas/resources.d.ts +533 -5985
- package/dist/commonjs/v3/schemas/resources.js +49 -49
- package/dist/commonjs/v3/schemas/resources.js.map +1 -1
- package/dist/commonjs/v3/schemas/runEngine.d.ts +467 -1822
- package/dist/commonjs/v3/schemas/runEngine.js +113 -109
- package/dist/commonjs/v3/schemas/runEngine.js.map +1 -1
- package/dist/commonjs/v3/schemas/scheduleWindow.d.ts +2 -2
- package/dist/commonjs/v3/schemas/scheduleWindow.js +3 -3
- package/dist/commonjs/v3/schemas/scheduleWindow.js.map +1 -1
- package/dist/commonjs/v3/schemas/schemas.d.ts +788 -7456
- package/dist/commonjs/v3/schemas/schemas.js +133 -132
- package/dist/commonjs/v3/schemas/schemas.js.map +1 -1
- package/dist/commonjs/v3/schemas/snapshotRoute.d.ts +33 -0
- package/dist/commonjs/v3/schemas/snapshotRoute.js +33 -0
- package/dist/commonjs/v3/schemas/snapshotRoute.js.map +1 -0
- package/dist/commonjs/v3/schemas/style.d.ts +24 -86
- package/dist/commonjs/v3/schemas/style.js +12 -12
- package/dist/commonjs/v3/schemas/style.js.map +1 -1
- package/dist/commonjs/v3/schemas/tokens.d.ts +5 -31
- package/dist/commonjs/v3/schemas/tokens.js +10 -10
- package/dist/commonjs/v3/schemas/tokens.js.map +1 -1
- package/dist/commonjs/v3/schemas/warmStart.d.ts +2 -8
- package/dist/commonjs/v3/schemas/warmStart.js +4 -4
- package/dist/commonjs/v3/schemas/warmStart.js.map +1 -1
- package/dist/commonjs/v3/schemas/webhookApi.d.ts +75 -249
- package/dist/commonjs/v3/schemas/webhookApi.js +41 -41
- package/dist/commonjs/v3/schemas/webhookApi.js.map +1 -1
- package/dist/commonjs/v3/schemas/webhookConfig.d.ts +473 -3309
- package/dist/commonjs/v3/schemas/webhookConfig.js +79 -78
- package/dist/commonjs/v3/schemas/webhookConfig.js.map +1 -1
- package/dist/commonjs/v3/schemas/webhookFilter.d.ts +16 -4
- package/dist/commonjs/v3/schemas/webhookFilter.js +16 -16
- package/dist/commonjs/v3/schemas/webhookFilter.js.map +1 -1
- package/dist/commonjs/v3/schemas/webhooks.d.ts +247 -2055
- package/dist/commonjs/v3/schemas/webhooks.js +116 -115
- package/dist/commonjs/v3/schemas/webhooks.js.map +1 -1
- package/dist/commonjs/v3/serverOnly/httpServer.d.ts +19 -8
- package/dist/commonjs/v3/serverOnly/httpServer.js +6 -3
- package/dist/commonjs/v3/serverOnly/httpServer.js.map +1 -1
- package/dist/commonjs/v3/sessionStreams/chatSnapshot.d.ts +163 -16
- package/dist/commonjs/v3/sessionStreams/chatSnapshot.js +332 -8
- package/dist/commonjs/v3/sessionStreams/chatSnapshot.js.map +1 -1
- package/dist/commonjs/v3/sessionStreams/router.d.ts +39 -1
- package/dist/commonjs/v3/sessionStreams/router.js +62 -0
- package/dist/commonjs/v3/sessionStreams/router.js.map +1 -1
- package/dist/commonjs/v3/sessionStreams/wireProtocol.d.ts +15 -0
- package/dist/commonjs/v3/sessionStreams/wireProtocol.js +16 -1
- package/dist/commonjs/v3/sessionStreams/wireProtocol.js.map +1 -1
- package/dist/commonjs/v3/test/test-session-stream-manager.js +5 -1
- package/dist/commonjs/v3/test/test-session-stream-manager.js.map +1 -1
- package/dist/commonjs/v3/types/schemas.d.ts +21 -1
- package/dist/commonjs/v3/types/schemas.js +2 -1
- package/dist/commonjs/v3/types/schemas.js.map +1 -1
- package/dist/commonjs/v3/types/tools.d.ts +16 -5
- package/dist/commonjs/v3/types/tools.js +2 -2
- package/dist/commonjs/v3/types/tools.js.map +1 -1
- package/dist/commonjs/v3/utils/ioSerialization.js +3 -3
- package/dist/commonjs/v3/utils/ioSerialization.js.map +1 -1
- package/dist/commonjs/v3/utils/zod.d.ts +8 -0
- package/dist/commonjs/v3/utils/zod.js +8 -0
- package/dist/commonjs/v3/utils/zod.js.map +1 -0
- package/dist/commonjs/v3/workloadDeploymentToken.d.ts +2 -21
- package/dist/commonjs/v3/workloadDeploymentToken.js +10 -10
- package/dist/commonjs/v3/workloadDeploymentToken.js.map +1 -1
- package/dist/commonjs/v3/zodIpc.d.ts +6 -6
- package/dist/commonjs/v3/zodIpc.js +20 -18
- package/dist/commonjs/v3/zodIpc.js.map +1 -1
- package/dist/commonjs/v3/zodMessageHandler.d.ts +14 -21
- package/dist/commonjs/v3/zodMessageHandler.js +20 -7
- package/dist/commonjs/v3/zodMessageHandler.js.map +1 -1
- package/dist/commonjs/v3/zodSocket.d.ts +11 -11
- package/dist/commonjs/v3/zodSocket.js +9 -8
- package/dist/commonjs/v3/zodSocket.js.map +1 -1
- package/dist/commonjs/version.js +1 -1
- package/dist/esm/schemas/eventFilter.d.ts +27 -105
- package/dist/esm/schemas/eventFilter.js +2 -2
- package/dist/esm/schemas/eventFilter.js.map +1 -1
- package/dist/esm/schemas/json.d.ts +3 -3
- package/dist/esm/schemas/json.js +11 -3
- package/dist/esm/schemas/json.js.map +1 -1
- package/dist/esm/v3/apiClient/core.d.ts +14 -14
- package/dist/esm/v3/apiClient/core.js +38 -17
- package/dist/esm/v3/apiClient/core.js.map +1 -1
- package/dist/esm/v3/apiClient/encodeTaskIdForPath.d.ts +6 -0
- package/dist/esm/v3/apiClient/encodeTaskIdForPath.js +17 -0
- package/dist/esm/v3/apiClient/encodeTaskIdForPath.js.map +1 -0
- package/dist/esm/v3/apiClient/index.d.ts +82 -184
- package/dist/esm/v3/apiClient/index.js +22 -4
- package/dist/esm/v3/apiClient/index.js.map +1 -1
- package/dist/esm/v3/apiClient/stream.d.ts +4 -4
- package/dist/esm/v3/apiClient/stream.js.map +1 -1
- package/dist/esm/v3/errors.d.ts +5 -4
- package/dist/esm/v3/errors.js.map +1 -1
- package/dist/esm/v3/index.d.ts +1 -1
- package/dist/esm/v3/index.js.map +1 -1
- package/dist/esm/v3/realtimeStreams/sessionStreamInstance.js +3 -0
- package/dist/esm/v3/realtimeStreams/sessionStreamInstance.js.map +1 -1
- package/dist/esm/v3/realtimeStreams/streamsWriterV1.js +3 -0
- package/dist/esm/v3/realtimeStreams/streamsWriterV1.js.map +1 -1
- package/dist/esm/v3/realtimeStreams/streamsWriterV2.js +4 -0
- package/dist/esm/v3/realtimeStreams/streamsWriterV2.js.map +1 -1
- package/dist/esm/v3/runEngineWorker/supervisor/http.d.ts +25 -114
- package/dist/esm/v3/runEngineWorker/supervisor/http.js +4 -11
- package/dist/esm/v3/runEngineWorker/supervisor/http.js.map +1 -1
- package/dist/esm/v3/runEngineWorker/supervisor/schemas.d.ts +594 -4187
- package/dist/esm/v3/runEngineWorker/supervisor/schemas.js +22 -5
- package/dist/esm/v3/runEngineWorker/supervisor/schemas.js.map +1 -1
- package/dist/esm/v3/runEngineWorker/supervisor/types.d.ts +2 -0
- package/dist/esm/v3/runEngineWorker/workload/http.d.ts +15 -110
- package/dist/esm/v3/runEngineWorker/workload/http.js +8 -16
- package/dist/esm/v3/runEngineWorker/workload/http.js.map +1 -1
- package/dist/esm/v3/runEngineWorker/workload/schemas.d.ts +465 -3624
- package/dist/esm/v3/runEngineWorker/workload/schemas.js +5 -4
- package/dist/esm/v3/runEngineWorker/workload/schemas.js.map +1 -1
- package/dist/esm/v3/schemas/api.d.ts +1869 -12681
- package/dist/esm/v3/schemas/api.js +115 -35
- package/dist/esm/v3/schemas/api.js.map +1 -1
- package/dist/esm/v3/schemas/build.d.ts +645 -9115
- package/dist/esm/v3/schemas/build.js +10 -10
- package/dist/esm/v3/schemas/build.js.map +1 -1
- package/dist/esm/v3/schemas/checkpoints.d.ts +121 -461
- package/dist/esm/v3/schemas/checkpoints.js +1 -1
- package/dist/esm/v3/schemas/checkpoints.js.map +1 -1
- package/dist/esm/v3/schemas/common.d.ts +1018 -6499
- package/dist/esm/v3/schemas/common.js +17 -10
- package/dist/esm/v3/schemas/common.js.map +1 -1
- package/dist/esm/v3/schemas/config.d.ts +3 -9
- package/dist/esm/v3/schemas/config.js +1 -1
- package/dist/esm/v3/schemas/config.js.map +1 -1
- package/dist/esm/v3/schemas/errors.d.ts +42 -173
- package/dist/esm/v3/schemas/errors.js +1 -1
- package/dist/esm/v3/schemas/errors.js.map +1 -1
- package/dist/esm/v3/schemas/eventFilter.d.ts +23 -91
- package/dist/esm/v3/schemas/eventFilter.js +2 -2
- package/dist/esm/v3/schemas/eventFilter.js.map +1 -1
- package/dist/esm/v3/schemas/fetch.d.ts +119 -415
- package/dist/esm/v3/schemas/fetch.js +6 -3
- package/dist/esm/v3/schemas/fetch.js.map +1 -1
- package/dist/esm/v3/schemas/messages.d.ts +603 -7438
- package/dist/esm/v3/schemas/messages.js +3 -3
- package/dist/esm/v3/schemas/messages.js.map +1 -1
- package/dist/esm/v3/schemas/openTelemetry.d.ts +50 -401
- package/dist/esm/v3/schemas/openTelemetry.js +2 -2
- package/dist/esm/v3/schemas/openTelemetry.js.map +1 -1
- package/dist/esm/v3/schemas/query.d.ts +51 -273
- package/dist/esm/v3/schemas/query.js +4 -3
- package/dist/esm/v3/schemas/query.js.map +1 -1
- package/dist/esm/v3/schemas/queues.d.ts +29 -100
- package/dist/esm/v3/schemas/queues.js +1 -1
- package/dist/esm/v3/schemas/queues.js.map +1 -1
- package/dist/esm/v3/schemas/reports.d.ts +150 -692
- package/dist/esm/v3/schemas/reports.js +5 -5
- package/dist/esm/v3/schemas/reports.js.map +1 -1
- package/dist/esm/v3/schemas/resources.d.ts +533 -5985
- package/dist/esm/v3/schemas/resources.js +3 -3
- package/dist/esm/v3/schemas/resources.js.map +1 -1
- package/dist/esm/v3/schemas/runEngine.d.ts +467 -1822
- package/dist/esm/v3/schemas/runEngine.js +11 -3
- package/dist/esm/v3/schemas/runEngine.js.map +1 -1
- package/dist/esm/v3/schemas/scheduleWindow.d.ts +2 -2
- package/dist/esm/v3/schemas/scheduleWindow.js +1 -1
- package/dist/esm/v3/schemas/scheduleWindow.js.map +1 -1
- package/dist/esm/v3/schemas/schemas.d.ts +788 -7456
- package/dist/esm/v3/schemas/schemas.js +11 -10
- package/dist/esm/v3/schemas/schemas.js.map +1 -1
- package/dist/esm/v3/schemas/snapshotRoute.d.ts +33 -0
- package/dist/esm/v3/schemas/snapshotRoute.js +30 -0
- package/dist/esm/v3/schemas/snapshotRoute.js.map +1 -0
- package/dist/esm/v3/schemas/style.d.ts +24 -86
- package/dist/esm/v3/schemas/style.js +1 -1
- package/dist/esm/v3/schemas/style.js.map +1 -1
- package/dist/esm/v3/schemas/tokens.d.ts +5 -31
- package/dist/esm/v3/schemas/tokens.js +1 -1
- package/dist/esm/v3/schemas/tokens.js.map +1 -1
- package/dist/esm/v3/schemas/warmStart.d.ts +2 -8
- package/dist/esm/v3/schemas/warmStart.js +1 -1
- package/dist/esm/v3/schemas/warmStart.js.map +1 -1
- package/dist/esm/v3/schemas/webhookApi.d.ts +75 -249
- package/dist/esm/v3/schemas/webhookApi.js +2 -2
- package/dist/esm/v3/schemas/webhookApi.js.map +1 -1
- package/dist/esm/v3/schemas/webhookConfig.d.ts +473 -3309
- package/dist/esm/v3/schemas/webhookConfig.js +10 -9
- package/dist/esm/v3/schemas/webhookConfig.js.map +1 -1
- package/dist/esm/v3/schemas/webhookFilter.d.ts +16 -4
- package/dist/esm/v3/schemas/webhookFilter.js +1 -1
- package/dist/esm/v3/schemas/webhookFilter.js.map +1 -1
- package/dist/esm/v3/schemas/webhooks.d.ts +247 -2055
- package/dist/esm/v3/schemas/webhooks.js +3 -2
- package/dist/esm/v3/schemas/webhooks.js.map +1 -1
- package/dist/esm/v3/serverOnly/httpServer.d.ts +19 -8
- package/dist/esm/v3/serverOnly/httpServer.js +5 -2
- package/dist/esm/v3/serverOnly/httpServer.js.map +1 -1
- package/dist/esm/v3/sessionStreams/chatSnapshot.d.ts +163 -16
- package/dist/esm/v3/sessionStreams/chatSnapshot.js +318 -2
- package/dist/esm/v3/sessionStreams/chatSnapshot.js.map +1 -1
- package/dist/esm/v3/sessionStreams/router.d.ts +39 -1
- package/dist/esm/v3/sessionStreams/router.js +62 -0
- package/dist/esm/v3/sessionStreams/router.js.map +1 -1
- package/dist/esm/v3/sessionStreams/wireProtocol.d.ts +15 -0
- package/dist/esm/v3/sessionStreams/wireProtocol.js +15 -0
- package/dist/esm/v3/sessionStreams/wireProtocol.js.map +1 -1
- package/dist/esm/v3/test/test-session-stream-manager.js +5 -1
- package/dist/esm/v3/test/test-session-stream-manager.js.map +1 -1
- package/dist/esm/v3/types/schemas.d.ts +21 -1
- package/dist/esm/v3/types/schemas.js +2 -1
- package/dist/esm/v3/types/schemas.js.map +1 -1
- package/dist/esm/v3/types/tools.d.ts +16 -5
- package/dist/esm/v3/types/tools.js +2 -2
- package/dist/esm/v3/types/tools.js.map +1 -1
- package/dist/esm/v3/utils/ioSerialization.js +1 -1
- package/dist/esm/v3/utils/ioSerialization.js.map +1 -1
- package/dist/esm/v3/utils/zod.d.ts +8 -0
- package/dist/esm/v3/utils/zod.js +5 -0
- package/dist/esm/v3/utils/zod.js.map +1 -0
- package/dist/esm/v3/workloadDeploymentToken.d.ts +2 -21
- package/dist/esm/v3/workloadDeploymentToken.js +1 -1
- package/dist/esm/v3/workloadDeploymentToken.js.map +1 -1
- package/dist/esm/v3/zodIpc.d.ts +6 -6
- package/dist/esm/v3/zodIpc.js +5 -3
- package/dist/esm/v3/zodIpc.js.map +1 -1
- package/dist/esm/v3/zodMessageHandler.d.ts +14 -21
- package/dist/esm/v3/zodMessageHandler.js +16 -3
- package/dist/esm/v3/zodMessageHandler.js.map +1 -1
- package/dist/esm/v3/zodSocket.d.ts +11 -11
- package/dist/esm/v3/zodSocket.js +3 -2
- package/dist/esm/v3/zodSocket.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/package.json +7 -3
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
1
|
+
import { z } from "zod/v4";
|
|
2
|
+
import { discriminatedUnion } from "../utils/zod.js";
|
|
2
3
|
import { RunStatus } from "./api.js";
|
|
3
4
|
import { RuntimeEnvironmentTypeSchema, TaskRunError } from "./common.js";
|
|
4
5
|
/** Represents a failed run alert webhook payload */
|
|
@@ -237,7 +238,7 @@ const commonProperties = {
|
|
|
237
238
|
webhookVersion: z.string(),
|
|
238
239
|
};
|
|
239
240
|
/** Represents all possible webhook types */
|
|
240
|
-
export const Webhook =
|
|
241
|
+
export const Webhook = discriminatedUnion("type", [
|
|
241
242
|
/** Run failed alert webhook */
|
|
242
243
|
z.object({
|
|
243
244
|
...commonProperties,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhooks.js","sourceRoot":"","sources":["../../../../src/v3/schemas/webhooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"webhooks.js","sourceRoot":"","sources":["../../../../src/v3/schemas/webhooks.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
import { createServer, type IncomingMessage, type ServerResponse } from "node:http";
|
|
2
|
-
import { z } from "zod";
|
|
2
|
+
import { z } from "zod/v4";
|
|
3
3
|
import { HttpReply } from "../apps/http.js";
|
|
4
4
|
import type { Registry } from "prom-client";
|
|
5
|
-
type
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
import type { AnyZodSchema, inferZodSchemaOutput } from "../types/schemas.js";
|
|
6
|
+
type RouteHandler<TParams extends AnyZodSchema = z.ZodUnknown, TQuery extends AnyZodSchema = z.ZodUnknown, TBody extends AnyZodSchema = z.ZodUnknown> = (ctx: {
|
|
7
|
+
params: inferZodSchemaOutput<TParams>;
|
|
8
|
+
queryParams: inferZodSchemaOutput<TQuery>;
|
|
9
|
+
body: inferZodSchemaOutput<TBody>;
|
|
9
10
|
req: IncomingMessage;
|
|
10
11
|
res: ServerResponse;
|
|
11
12
|
reply: HttpReply;
|
|
12
13
|
}) => Promise<any>;
|
|
13
|
-
interface RouteDefinition<TParams extends
|
|
14
|
+
interface RouteDefinition<TParams extends AnyZodSchema = z.ZodUnknown, TQuery extends AnyZodSchema = z.ZodUnknown, TBody extends AnyZodSchema = z.ZodUnknown> {
|
|
14
15
|
paramsSchema?: TParams;
|
|
15
16
|
querySchema?: TQuery;
|
|
16
17
|
bodySchema?: TBody;
|
|
@@ -20,7 +21,17 @@ interface RouteDefinition<TParams extends z.ZodFirstPartySchemaTypes = z.ZodUnkn
|
|
|
20
21
|
skipBodyParsing?: boolean;
|
|
21
22
|
handler: RouteHandler<TParams, TQuery, TBody>;
|
|
22
23
|
}
|
|
23
|
-
declare const HttpMethod: z.ZodEnum<
|
|
24
|
+
declare const HttpMethod: z.ZodEnum<{
|
|
25
|
+
CONNECT: "CONNECT";
|
|
26
|
+
DELETE: "DELETE";
|
|
27
|
+
GET: "GET";
|
|
28
|
+
HEAD: "HEAD";
|
|
29
|
+
OPTIONS: "OPTIONS";
|
|
30
|
+
PATCH: "PATCH";
|
|
31
|
+
POST: "POST";
|
|
32
|
+
PUT: "PUT";
|
|
33
|
+
TRACE: "TRACE";
|
|
34
|
+
}>;
|
|
24
35
|
type HttpMethod = z.infer<typeof HttpMethod>;
|
|
25
36
|
type HttpServerOptions = {
|
|
26
37
|
port: number;
|
|
@@ -40,7 +51,7 @@ export declare class HttpServer {
|
|
|
40
51
|
private routes;
|
|
41
52
|
readonly server: ReturnType<typeof createServer>;
|
|
42
53
|
constructor(options: HttpServerOptions);
|
|
43
|
-
route<TParams extends
|
|
54
|
+
route<TParams extends AnyZodSchema = z.ZodUnknown, TQuery extends AnyZodSchema = z.ZodUnknown, TBody extends AnyZodSchema = z.ZodUnknown>(path: `/${string}`, method: HttpMethod, definition: RouteDefinition<TParams, TQuery, TBody>): this;
|
|
44
55
|
start(): Promise<void>;
|
|
45
56
|
stop(): Promise<void>;
|
|
46
57
|
private collectMetrics;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createServer } from "node:http";
|
|
2
|
-
import { z } from "zod";
|
|
2
|
+
import { z } from "zod/v4";
|
|
3
3
|
import { SimpleStructuredLogger } from "../utils/structuredLogger.js";
|
|
4
4
|
import { HttpReply, getJsonBody } from "../apps/http.js";
|
|
5
5
|
import { Histogram, Counter } from "prom-client";
|
|
@@ -186,7 +186,10 @@ export class HttpServer {
|
|
|
186
186
|
if (!parsed.success) {
|
|
187
187
|
return { success: false, error: parsed.error.message };
|
|
188
188
|
}
|
|
189
|
-
return {
|
|
189
|
+
return {
|
|
190
|
+
success: true,
|
|
191
|
+
data: parsed.data,
|
|
192
|
+
};
|
|
190
193
|
}
|
|
191
194
|
parseQueryParams(url) {
|
|
192
195
|
const { searchParams } = new URL(url, "http://localhost");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpServer.js","sourceRoot":"","sources":["../../../../src/v3/serverOnly/httpServer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAA6C,MAAM,WAAW,CAAC;AACpF,OAAO,EAAE,CAAC,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"httpServer.js","sourceRoot":"","sources":["../../../../src/v3/serverOnly/httpServer.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,9 +16,9 @@
|
|
|
16
16
|
* The `version` field is a forward-compat lever: readers that don't
|
|
17
17
|
* recognise a version silently fall back to no-snapshot behaviour.
|
|
18
18
|
*/
|
|
19
|
-
import { z } from "zod";
|
|
19
|
+
import { z } from "zod/v4";
|
|
20
20
|
import type { UIMessage } from "ai";
|
|
21
|
-
export type ChatSnapshotV1<TUIMessage
|
|
21
|
+
export type ChatSnapshotV1<TUIMessage = unknown> = {
|
|
22
22
|
version: 1;
|
|
23
23
|
savedAt: number;
|
|
24
24
|
messages: TUIMessage[];
|
|
@@ -40,25 +40,172 @@ export type ChatSnapshotV1<TUIMessage extends UIMessage = UIMessage> = {
|
|
|
40
40
|
*/
|
|
41
41
|
export declare const ChatSnapshotV1Schema: z.ZodObject<{
|
|
42
42
|
version: z.ZodLiteral<1>;
|
|
43
|
-
savedAt: z.ZodNumber
|
|
44
|
-
messages: z.ZodArray<z.ZodUnknown
|
|
43
|
+
savedAt: z.ZodOptional<z.ZodNumber>;
|
|
44
|
+
messages: z.ZodArray<z.ZodUnknown>;
|
|
45
45
|
lastOutEventId: z.ZodOptional<z.ZodString>;
|
|
46
46
|
lastInEventId: z.ZodOptional<z.ZodString>;
|
|
47
|
-
},
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
47
|
+
}, z.core.$strip>;
|
|
48
|
+
/**
|
|
49
|
+
* One transcript entry in a version 2 snapshot. `id` duplicates
|
|
50
|
+
* `message.id` so a reader can address entries without inspecting the
|
|
51
|
+
* message body; `final` is false for a partial assistant message captured
|
|
52
|
+
* by an errored or stopped turn.
|
|
53
|
+
*/
|
|
54
|
+
export type TranscriptSnapshotEntry<TUIMessage extends UIMessage = UIMessage> = {
|
|
55
|
+
id: string;
|
|
56
|
+
final: boolean;
|
|
57
|
+
message: TUIMessage;
|
|
58
|
+
};
|
|
59
|
+
/**
|
|
60
|
+
* Version 2 of the persisted transcript blob. Entries are ordered by array
|
|
61
|
+
* position. `state` is an opaque record the runtime uses for compaction and
|
|
62
|
+
* other cross-run bookkeeping; `null` when nothing has been recorded.
|
|
63
|
+
*
|
|
64
|
+
* Readers must accept version 1 as well; writers only emit version 2. Use
|
|
65
|
+
* {@link parseTranscriptSnapshot} to read either.
|
|
66
|
+
*/
|
|
67
|
+
export type TranscriptSnapshotV2<TUIMessage extends UIMessage = UIMessage> = {
|
|
68
|
+
version: 2;
|
|
55
69
|
savedAt: number;
|
|
56
|
-
messages:
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
70
|
+
messages: TranscriptSnapshotEntry<TUIMessage>[];
|
|
71
|
+
state: unknown | null;
|
|
72
|
+
lastOutEventId?: string;
|
|
73
|
+
lastInEventId?: string;
|
|
74
|
+
};
|
|
75
|
+
export declare const TranscriptSnapshotV2Schema: z.ZodObject<{
|
|
76
|
+
version: z.ZodLiteral<2>;
|
|
77
|
+
savedAt: z.ZodOptional<z.ZodNumber>;
|
|
78
|
+
messages: z.ZodArray<z.ZodObject<{
|
|
79
|
+
id: z.ZodString;
|
|
80
|
+
final: z.ZodBoolean;
|
|
81
|
+
message: z.ZodUnknown;
|
|
82
|
+
}, z.core.$strip>>;
|
|
83
|
+
state: z.ZodNullable<z.ZodUnknown>;
|
|
84
|
+
lastOutEventId: z.ZodOptional<z.ZodString>;
|
|
85
|
+
lastInEventId: z.ZodOptional<z.ZodString>;
|
|
86
|
+
}, z.core.$strip>;
|
|
87
|
+
/**
|
|
88
|
+
* Parse a fetched snapshot blob of any known version into the version 2
|
|
89
|
+
* shape. A version 1 blob is upgraded in memory: every message becomes a
|
|
90
|
+
* `final: true` entry keyed by its `id` and `state` is `null`. In both
|
|
91
|
+
* versions, entries without a non-empty string `id` or a non-null object
|
|
92
|
+
* `message` are dropped; a version 2 entry whose `message.id` disagrees with
|
|
93
|
+
* the envelope `id` is dropped too, since a reader keys by one and renders by
|
|
94
|
+
* the other. A caller never sees an entry it would crash on or mis-order.
|
|
95
|
+
* A missing `savedAt` defaults to `0` rather than rejecting the whole blob:
|
|
96
|
+
* the field only orders snapshot history before live chunks, and dropping a
|
|
97
|
+
* whole conversation over an absent timestamp is the wrong failure mode.
|
|
98
|
+
* Returns `undefined` for an unknown version or a body that is not a
|
|
99
|
+
* snapshot; callers treat that as "no snapshot".
|
|
100
|
+
*/
|
|
101
|
+
export declare function parseTranscriptSnapshot<TUIMessage extends UIMessage = UIMessage>(input: unknown): TranscriptSnapshotV2<TUIMessage> | undefined;
|
|
102
|
+
/**
|
|
103
|
+
* Select one page of transcript entries, newest last. `before` keeps only the
|
|
104
|
+
* entries ordered before that id, and yields an empty page when the transcript
|
|
105
|
+
* no longer holds that id; `limit` keeps the last that many. A
|
|
106
|
+
* non-positive `limit` is treated as no limit (every entry, no cursor), so a
|
|
107
|
+
* caller cannot mistake an empty page for the end of the transcript. The
|
|
108
|
+
* returned `nextCursor` is the id to pass as `before` for the previous page,
|
|
109
|
+
* absent when there is no earlier page.
|
|
110
|
+
*/
|
|
111
|
+
export declare function pageTranscriptEntries<TUIMessage extends UIMessage = UIMessage>(all: TranscriptSnapshotEntry<TUIMessage>[], opts: {
|
|
112
|
+
limit?: number;
|
|
113
|
+
before?: string;
|
|
114
|
+
} | undefined): {
|
|
115
|
+
entries: TranscriptSnapshotEntry<TUIMessage>[];
|
|
116
|
+
nextCursor: string | undefined;
|
|
117
|
+
};
|
|
60
118
|
/**
|
|
61
119
|
* S3 key suffix for a session's snapshot blob. The webapp's presigned
|
|
62
120
|
* URL routes prefix this with `packets/{projectRef}/{envSlug}/`.
|
|
63
121
|
*/
|
|
64
122
|
export declare function chatSnapshotKeySuffix(sessionId: string): string;
|
|
123
|
+
/**
|
|
124
|
+
* Byte length of the fixed trailer that ends a version 2 blob:
|
|
125
|
+
* `#tt2:` + 16 zero-padded digits + `\n`. Fixed width so a reader can fetch
|
|
126
|
+
* exactly this many bytes from the end of the object and learn where the
|
|
127
|
+
* footer starts without a second guess.
|
|
128
|
+
*/
|
|
129
|
+
export declare const TRANSCRIPT_TRAILER_BYTES = 22;
|
|
130
|
+
/**
|
|
131
|
+
* Media type a version 2 blob is stored under. Object stores return this on a
|
|
132
|
+
* ranged read, so a reader learns the format from the response it already made
|
|
133
|
+
* instead of inferring it from the bytes.
|
|
134
|
+
*/
|
|
135
|
+
export declare const TRANSCRIPT_BLOB_CONTENT_TYPE = "application/vnd.trigger.transcript+ndjson";
|
|
136
|
+
/**
|
|
137
|
+
* Entry index at the end of a version 2 blob. Carries the stream cursors too,
|
|
138
|
+
* so serving a transcript page never has to fetch the header — which is where
|
|
139
|
+
* the private runtime state lives. `offsets` holds `ids.length + 1`
|
|
140
|
+
* byte offsets: entry `i` occupies `[offsets[i], offsets[i + 1] - 1)`, and the
|
|
141
|
+
* final sentinel is where the footer line itself begins. Carrying the sentinel
|
|
142
|
+
* means a reader can bound every entry, including the last, without knowing the
|
|
143
|
+
* object's total size.
|
|
144
|
+
*/
|
|
145
|
+
export type TranscriptFooter = {
|
|
146
|
+
ids: string[];
|
|
147
|
+
offsets: number[];
|
|
148
|
+
savedAt?: number;
|
|
149
|
+
lastOutEventId?: string;
|
|
150
|
+
lastInEventId?: string;
|
|
151
|
+
};
|
|
152
|
+
/**
|
|
153
|
+
* Serialize a snapshot to the version 2 blob format: a header line carrying
|
|
154
|
+
* the cursors and the private runtime `state`, one JSON entry per line, an
|
|
155
|
+
* entry-index footer line, and the fixed trailer.
|
|
156
|
+
*
|
|
157
|
+
* The header holds `state`, so a reader that fetches only the end of the
|
|
158
|
+
* object to serve a transcript page cannot receive the model lane even by
|
|
159
|
+
* accident.
|
|
160
|
+
*/
|
|
161
|
+
export declare function serializeTranscriptSnapshot<TUIMessage extends UIMessage>(snapshot: TranscriptSnapshotV2<TUIMessage>): string;
|
|
162
|
+
/**
|
|
163
|
+
* Read the fixed trailer from the last {@link TRANSCRIPT_TRAILER_BYTES} bytes
|
|
164
|
+
* of a version 2 blob. Returns the footer line's byte length, or `undefined`
|
|
165
|
+
* when the bytes are not a trailer (a version 1 blob, or a truncated write).
|
|
166
|
+
*/
|
|
167
|
+
export declare function readTranscriptTrailer(trailer: string): {
|
|
168
|
+
footerLength: number;
|
|
169
|
+
} | undefined;
|
|
170
|
+
/** Parse a version 2 footer line into its entry index. */
|
|
171
|
+
export declare function parseTranscriptFooter(line: string): TranscriptFooter | undefined;
|
|
172
|
+
/**
|
|
173
|
+
* Byte window covering one page of entries within a single object, computed
|
|
174
|
+
* from its footer alone. Mirrors {@link pageTranscriptEntries}: newest last,
|
|
175
|
+
* `before` excludes that id and everything after it, `limit` keeps the last
|
|
176
|
+
* that many.
|
|
177
|
+
*
|
|
178
|
+
* `undefined` means the page is empty: the transcript is empty, `before` names
|
|
179
|
+
* its first entry, or `before` names an entry the transcript no longer holds
|
|
180
|
+
* (history trimmed since the caller last read it). Returning the newest entries
|
|
181
|
+
* for a cursor that cannot be found would present recent messages as older ones.
|
|
182
|
+
*/
|
|
183
|
+
export type TranscriptPagePlan = {
|
|
184
|
+
start: number;
|
|
185
|
+
end: number;
|
|
186
|
+
ids: string[];
|
|
187
|
+
/** Set when the transcript still holds entries before the page. */
|
|
188
|
+
nextCursor: string | undefined;
|
|
189
|
+
/** Position of the page's first entry in the whole transcript. */
|
|
190
|
+
startIndex: number;
|
|
191
|
+
/** Entries in the whole transcript, so a caller can order pages against each other. */
|
|
192
|
+
totalEntries: number;
|
|
193
|
+
};
|
|
194
|
+
export declare function planTranscriptPage(footer: TranscriptFooter, opts: {
|
|
195
|
+
limit?: number;
|
|
196
|
+
before?: string;
|
|
197
|
+
} | undefined): TranscriptPagePlan | undefined;
|
|
198
|
+
/**
|
|
199
|
+
* Parse a run of whole entry lines, e.g. the byte window
|
|
200
|
+
* {@link planTranscriptPage} selected. Malformed lines are dropped, matching
|
|
201
|
+
* {@link parseTranscriptSnapshot}: a caller never sees an entry it would crash
|
|
202
|
+
* on or mis-order.
|
|
203
|
+
*/
|
|
204
|
+
export declare function parseTranscriptEntryLines<TUIMessage extends UIMessage = UIMessage>(text: string): TranscriptSnapshotEntry<TUIMessage>[];
|
|
205
|
+
/**
|
|
206
|
+
* Parse a whole fetched blob of any known format. Version 2 is the line-based
|
|
207
|
+
* format {@link serializeTranscriptSnapshot} writes; anything else is handed to
|
|
208
|
+
* {@link parseTranscriptSnapshot}, which still reads the version 1 blobs
|
|
209
|
+
* written by released SDKs.
|
|
210
|
+
*/
|
|
211
|
+
export declare function parseTranscriptBlob<TUIMessage extends UIMessage = UIMessage>(text: string): TranscriptSnapshotV2<TUIMessage> | undefined;
|