@trigger.dev/core 3.0.0-beta.34 → 3.0.0-beta.36

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 (53) hide show
  1. package/dist/catalog-XTlJQaMn.d.mts +202 -0
  2. package/dist/catalog-dRKTgwQ7.d.ts +202 -0
  3. package/dist/{manager-WNMVbgHf.d.mts → manager-JkbddlcO.d.mts} +43 -42
  4. package/dist/{manager-WNMVbgHf.d.ts → manager-JkbddlcO.d.ts} +43 -42
  5. package/dist/{messages-vq7Bk4Ap.d.mts → messages-6_-q72KG.d.mts} +5970 -2067
  6. package/dist/{messages-vq7Bk4Ap.d.ts → messages-6_-q72KG.d.ts} +5970 -2067
  7. package/dist/{catalog-tX1P4jZQ.d.ts → schemas-r4ZP9S-F.d.mts} +22 -201
  8. package/dist/{catalog-Y8FyPWvh.d.mts → schemas-r4ZP9S-F.d.ts} +22 -201
  9. package/dist/v3/dev/index.d.mts +2 -2
  10. package/dist/v3/dev/index.d.ts +2 -2
  11. package/dist/v3/dev/index.js +4 -4
  12. package/dist/v3/dev/index.js.map +1 -1
  13. package/dist/v3/dev/index.mjs +4 -4
  14. package/dist/v3/dev/index.mjs.map +1 -1
  15. package/dist/v3/index.d.mts +584 -152
  16. package/dist/v3/index.d.ts +584 -152
  17. package/dist/v3/index.js +962 -350
  18. package/dist/v3/index.js.map +1 -1
  19. package/dist/v3/index.mjs +953 -350
  20. package/dist/v3/index.mjs.map +1 -1
  21. package/dist/v3/otel/index.js +1 -1
  22. package/dist/v3/otel/index.js.map +1 -1
  23. package/dist/v3/otel/index.mjs +1 -1
  24. package/dist/v3/otel/index.mjs.map +1 -1
  25. package/dist/v3/prod/index.d.mts +3 -3
  26. package/dist/v3/prod/index.d.ts +3 -3
  27. package/dist/v3/prod/index.js +90 -15
  28. package/dist/v3/prod/index.js.map +1 -1
  29. package/dist/v3/prod/index.mjs +90 -15
  30. package/dist/v3/prod/index.mjs.map +1 -1
  31. package/dist/v3/workers/index.d.mts +6 -5
  32. package/dist/v3/workers/index.d.ts +6 -5
  33. package/dist/v3/workers/index.js +476 -53
  34. package/dist/v3/workers/index.js.map +1 -1
  35. package/dist/v3/workers/index.mjs +477 -54
  36. package/dist/v3/workers/index.mjs.map +1 -1
  37. package/dist/v3/zodMessageHandler.d.mts +1 -1
  38. package/dist/v3/zodMessageHandler.d.ts +1 -1
  39. package/dist/v3/zodNamespace.js +16 -6
  40. package/dist/v3/zodNamespace.js.map +1 -1
  41. package/dist/v3/zodNamespace.mjs +17 -7
  42. package/dist/v3/zodNamespace.mjs.map +1 -1
  43. package/dist/v3/zodSocket.js +16 -6
  44. package/dist/v3/zodSocket.js.map +1 -1
  45. package/dist/v3/zodSocket.mjs +17 -7
  46. package/dist/v3/zodSocket.mjs.map +1 -1
  47. package/dist/v3/zodfetch.d.mts +262 -0
  48. package/dist/v3/zodfetch.d.ts +262 -0
  49. package/dist/v3/zodfetch.js +744 -0
  50. package/dist/v3/zodfetch.js.map +1 -0
  51. package/dist/v3/zodfetch.mjs +716 -0
  52. package/dist/v3/zodfetch.mjs.map +1 -0
  53. package/package.json +9 -1
package/dist/v3/index.mjs CHANGED
@@ -2,7 +2,7 @@ import { propagation, context, trace, SpanStatusCode } from '@opentelemetry/api'
2
2
  import { z } from 'zod';
3
3
  import { fromZodError } from 'zod-validation-error';
4
4
  import { FormDataEncoder } from 'form-data-encoder';
5
- import { Readable } from 'stream';
5
+ import { Readable } from 'node:stream';
6
6
  import { PreciseDate } from '@google-cloud/precise-date';
7
7
  import { logs } from '@opentelemetry/api-logs';
8
8
  import humanizeDuration from 'humanize-duration';
@@ -29,7 +29,7 @@ var __privateMethod = (obj, member, method) => {
29
29
  };
30
30
 
31
31
  // package.json
32
- var version = "3.0.0-beta.34";
32
+ var version = "3.0.0-beta.36";
33
33
  var dependencies = {
34
34
  "@google-cloud/precise-date": "^4.0.0",
35
35
  "@opentelemetry/api": "^1.8.0",
@@ -52,144 +52,6 @@ var dependencies = {
52
52
  "zod-error": "1.5.0",
53
53
  "zod-validation-error": "^1.5.0"
54
54
  };
55
-
56
- // src/v3/apiErrors.ts
57
- var _APIError = class _APIError extends Error {
58
- constructor(status, error, message, headers) {
59
- super(`${_APIError.makeMessage(status, error, message)}`);
60
- this.status = status;
61
- this.headers = headers;
62
- const data = error;
63
- this.error = data;
64
- this.code = data?.["code"];
65
- this.param = data?.["param"];
66
- this.type = data?.["type"];
67
- }
68
- static makeMessage(status, error, message) {
69
- const msg = error?.message ? typeof error.message === "string" ? error.message : JSON.stringify(error.message) : error ? JSON.stringify(error) : message;
70
- if (status && msg) {
71
- return `${status} ${msg}`;
72
- }
73
- if (status) {
74
- return `${status} status code (no body)`;
75
- }
76
- if (msg) {
77
- return msg;
78
- }
79
- return "(no status code or body)";
80
- }
81
- static generate(status, errorResponse, message, headers) {
82
- if (!status) {
83
- return new APIConnectionError({
84
- cause: castToError(errorResponse)
85
- });
86
- }
87
- const error = errorResponse?.["error"];
88
- if (status === 400) {
89
- return new BadRequestError(status, error, message, headers);
90
- }
91
- if (status === 401) {
92
- return new AuthenticationError(status, error, message, headers);
93
- }
94
- if (status === 403) {
95
- return new PermissionDeniedError(status, error, message, headers);
96
- }
97
- if (status === 404) {
98
- return new NotFoundError(status, error, message, headers);
99
- }
100
- if (status === 409) {
101
- return new ConflictError(status, error, message, headers);
102
- }
103
- if (status === 422) {
104
- return new UnprocessableEntityError(status, error, message, headers);
105
- }
106
- if (status === 429) {
107
- return new RateLimitError(status, error, message, headers);
108
- }
109
- if (status >= 500) {
110
- return new InternalServerError(status, error, message, headers);
111
- }
112
- return new _APIError(status, error, message, headers);
113
- }
114
- };
115
- __name(_APIError, "APIError");
116
- var APIError = _APIError;
117
- var _APIConnectionError = class _APIConnectionError extends APIError {
118
- constructor({ message, cause }) {
119
- super(void 0, void 0, message || "Connection error.", void 0);
120
- __publicField(this, "status");
121
- if (cause)
122
- this.cause = cause;
123
- }
124
- };
125
- __name(_APIConnectionError, "APIConnectionError");
126
- var APIConnectionError = _APIConnectionError;
127
- var _BadRequestError = class _BadRequestError extends APIError {
128
- constructor() {
129
- super(...arguments);
130
- __publicField(this, "status", 400);
131
- }
132
- };
133
- __name(_BadRequestError, "BadRequestError");
134
- var BadRequestError = _BadRequestError;
135
- var _AuthenticationError = class _AuthenticationError extends APIError {
136
- constructor() {
137
- super(...arguments);
138
- __publicField(this, "status", 401);
139
- }
140
- };
141
- __name(_AuthenticationError, "AuthenticationError");
142
- var AuthenticationError = _AuthenticationError;
143
- var _PermissionDeniedError = class _PermissionDeniedError extends APIError {
144
- constructor() {
145
- super(...arguments);
146
- __publicField(this, "status", 403);
147
- }
148
- };
149
- __name(_PermissionDeniedError, "PermissionDeniedError");
150
- var PermissionDeniedError = _PermissionDeniedError;
151
- var _NotFoundError = class _NotFoundError extends APIError {
152
- constructor() {
153
- super(...arguments);
154
- __publicField(this, "status", 404);
155
- }
156
- };
157
- __name(_NotFoundError, "NotFoundError");
158
- var NotFoundError = _NotFoundError;
159
- var _ConflictError = class _ConflictError extends APIError {
160
- constructor() {
161
- super(...arguments);
162
- __publicField(this, "status", 409);
163
- }
164
- };
165
- __name(_ConflictError, "ConflictError");
166
- var ConflictError = _ConflictError;
167
- var _UnprocessableEntityError = class _UnprocessableEntityError extends APIError {
168
- constructor() {
169
- super(...arguments);
170
- __publicField(this, "status", 422);
171
- }
172
- };
173
- __name(_UnprocessableEntityError, "UnprocessableEntityError");
174
- var UnprocessableEntityError = _UnprocessableEntityError;
175
- var _RateLimitError = class _RateLimitError extends APIError {
176
- constructor() {
177
- super(...arguments);
178
- __publicField(this, "status", 429);
179
- }
180
- };
181
- __name(_RateLimitError, "RateLimitError");
182
- var RateLimitError = _RateLimitError;
183
- var _InternalServerError = class _InternalServerError extends APIError {
184
- };
185
- __name(_InternalServerError, "InternalServerError");
186
- var InternalServerError = _InternalServerError;
187
- function castToError(err) {
188
- if (err instanceof Error)
189
- return err;
190
- return new Error(err);
191
- }
192
- __name(castToError, "castToError");
193
55
  var CreateAuthorizationCodeResponseSchema = z.object({
194
56
  url: z.string().url(),
195
57
  authorizationCode: z.string()
@@ -225,6 +87,7 @@ var TaskRunErrorCodes = {
225
87
  TASK_EXECUTION_FAILED: "TASK_EXECUTION_FAILED",
226
88
  TASK_EXECUTION_ABORTED: "TASK_EXECUTION_ABORTED",
227
89
  TASK_PROCESS_EXITED_WITH_NON_ZERO_CODE: "TASK_PROCESS_EXITED_WITH_NON_ZERO_CODE",
90
+ TASK_PROCESS_SIGKILL_TIMEOUT: "TASK_PROCESS_SIGKILL_TIMEOUT",
228
91
  TASK_RUN_CANCELLED: "TASK_RUN_CANCELLED",
229
92
  TASK_OUTPUT_ERROR: "TASK_OUTPUT_ERROR",
230
93
  HANDLE_ERROR_ERROR: "HANDLE_ERROR_ERROR",
@@ -240,10 +103,12 @@ var TaskRunInternalError = z.object({
240
103
  "TASK_EXECUTION_FAILED",
241
104
  "TASK_EXECUTION_ABORTED",
242
105
  "TASK_PROCESS_EXITED_WITH_NON_ZERO_CODE",
106
+ "TASK_PROCESS_SIGKILL_TIMEOUT",
243
107
  "TASK_RUN_CANCELLED",
244
108
  "TASK_OUTPUT_ERROR",
245
109
  "HANDLE_ERROR_ERROR",
246
- "GRACEFUL_EXIT_TIMEOUT"
110
+ "GRACEFUL_EXIT_TIMEOUT",
111
+ "TASK_RUN_HEARTBEAT_TIMEOUT"
247
112
  ]),
248
113
  message: z.string().optional()
249
114
  });
@@ -505,7 +370,16 @@ var TaskFileMetadata = z.object({
505
370
  filePath: z.string(),
506
371
  exportName: z.string()
507
372
  });
508
- var TaskMetadataWithFilePath = TaskMetadata.merge(TaskFileMetadata);
373
+ var TaskMetadataWithFilePath = z.object({
374
+ id: z.string(),
375
+ packageVersion: z.string(),
376
+ queue: QueueOptions.optional(),
377
+ retry: RetryOptions.optional(),
378
+ machine: Machine.partial().optional(),
379
+ triggerSource: z.string().optional(),
380
+ filePath: z.string(),
381
+ exportName: z.string()
382
+ });
509
383
  var PostStartCauses = z.enum([
510
384
  "index",
511
385
  "create",
@@ -546,6 +420,13 @@ var WaitReason = z.enum([
546
420
  "WAIT_FOR_TASK",
547
421
  "WAIT_FOR_BATCH"
548
422
  ]);
423
+ var TaskRunExecutionLazyAttemptPayload = z.object({
424
+ runId: z.string(),
425
+ messageId: z.string(),
426
+ isTest: z.boolean(),
427
+ traceContext: z.record(z.unknown()),
428
+ environment: z.record(z.string()).optional()
429
+ });
549
430
 
550
431
  // src/v3/schemas/resources.ts
551
432
  var TaskResource = z.object({
@@ -567,6 +448,152 @@ var ImageDetailsMetadata = z.object({
567
448
  contentHash: z.string(),
568
449
  imageTag: z.string()
569
450
  });
451
+ function parseError(error) {
452
+ if (error instanceof Error) {
453
+ return {
454
+ type: "BUILT_IN_ERROR",
455
+ name: error.name,
456
+ message: error.message,
457
+ stackTrace: error.stack ?? ""
458
+ };
459
+ }
460
+ if (typeof error === "string") {
461
+ return {
462
+ type: "STRING_ERROR",
463
+ raw: error
464
+ };
465
+ }
466
+ try {
467
+ return {
468
+ type: "CUSTOM_ERROR",
469
+ raw: JSON.stringify(error)
470
+ };
471
+ } catch (e) {
472
+ return {
473
+ type: "CUSTOM_ERROR",
474
+ raw: String(error)
475
+ };
476
+ }
477
+ }
478
+ __name(parseError, "parseError");
479
+ function createErrorTaskError(error) {
480
+ switch (error.type) {
481
+ case "BUILT_IN_ERROR": {
482
+ const e = new Error(error.message);
483
+ e.name = error.name;
484
+ e.stack = error.stackTrace;
485
+ return e;
486
+ }
487
+ case "STRING_ERROR": {
488
+ return error.raw;
489
+ }
490
+ case "CUSTOM_ERROR": {
491
+ return JSON.parse(error.raw);
492
+ }
493
+ case "INTERNAL_ERROR": {
494
+ return new Error(`trigger.dev internal error (${error.code})`);
495
+ }
496
+ }
497
+ }
498
+ __name(createErrorTaskError, "createErrorTaskError");
499
+ var SerializedError = z.object({
500
+ message: z.string(),
501
+ name: z.string().optional(),
502
+ stackTrace: z.string().optional()
503
+ });
504
+ function createJsonErrorObject(error) {
505
+ switch (error.type) {
506
+ case "BUILT_IN_ERROR": {
507
+ return {
508
+ name: error.name,
509
+ message: error.message,
510
+ stackTrace: error.stackTrace
511
+ };
512
+ }
513
+ case "STRING_ERROR": {
514
+ return {
515
+ message: error.raw
516
+ };
517
+ }
518
+ case "CUSTOM_ERROR": {
519
+ return {
520
+ message: error.raw
521
+ };
522
+ }
523
+ case "INTERNAL_ERROR": {
524
+ return {
525
+ message: `trigger.dev internal error (${error.code})`
526
+ };
527
+ }
528
+ }
529
+ }
530
+ __name(createJsonErrorObject, "createJsonErrorObject");
531
+ function correctErrorStackTrace(stackTrace, projectDir, options) {
532
+ const [errorLine, ...traceLines] = stackTrace.split("\n");
533
+ return [
534
+ options?.removeFirstLine ? void 0 : errorLine,
535
+ ...traceLines.map((line) => correctStackTraceLine(line, projectDir, options?.isDev))
536
+ ].filter(Boolean).join("\n");
537
+ }
538
+ __name(correctErrorStackTrace, "correctErrorStackTrace");
539
+ var LINES_TO_IGNORE = [
540
+ /ConsoleInterceptor/,
541
+ /TriggerTracer/,
542
+ /TaskExecutor/,
543
+ /EXECUTE_TASK_RUN/,
544
+ /@trigger.dev\/core/,
545
+ /packages\/core\/src\/v3/,
546
+ /safeJsonProcess/,
547
+ /__entryPoint.ts/,
548
+ /ZodIpc/,
549
+ /startActiveSpan/,
550
+ /processTicksAndRejections/
551
+ ];
552
+ function correctStackTraceLine(line, projectDir, isDev) {
553
+ if (LINES_TO_IGNORE.some((regex) => regex.test(line))) {
554
+ return;
555
+ }
556
+ if (isDev && projectDir && !line.includes(projectDir)) {
557
+ return;
558
+ }
559
+ return line.trim();
560
+ }
561
+ __name(correctStackTraceLine, "correctStackTraceLine");
562
+ function groupTaskMetadataIssuesByTask(tasks, issues) {
563
+ return issues.reduce((acc, issue) => {
564
+ if (issue.path.length === 0) {
565
+ return acc;
566
+ }
567
+ const taskIndex = issue.path[1];
568
+ if (typeof taskIndex !== "number") {
569
+ return acc;
570
+ }
571
+ const task = tasks[taskIndex];
572
+ if (!task) {
573
+ return acc;
574
+ }
575
+ const restOfPath = issue.path.slice(2);
576
+ const taskId = task.id;
577
+ const taskName = task.exportName;
578
+ const filePath = task.filePath;
579
+ const key = taskIndex;
580
+ const existing = acc[key] ?? {
581
+ id: taskId,
582
+ exportName: taskName,
583
+ filePath,
584
+ issues: []
585
+ };
586
+ existing.issues.push({
587
+ message: issue.message,
588
+ path: restOfPath.length === 0 ? void 0 : restOfPath.join(".")
589
+ });
590
+ return {
591
+ ...acc,
592
+ [key]: existing
593
+ };
594
+ }, {});
595
+ }
596
+ __name(groupTaskMetadataIssuesByTask, "groupTaskMetadataIssuesByTask");
570
597
 
571
598
  // src/v3/schemas/api.ts
572
599
  var WhoAmIResponseSchema = z.object({
@@ -595,7 +622,8 @@ var GetProjectEnvResponse = z.object({
595
622
  });
596
623
  var CreateBackgroundWorkerRequestBody = z.object({
597
624
  localOnly: z.boolean(),
598
- metadata: BackgroundWorkerMetadata
625
+ metadata: BackgroundWorkerMetadata,
626
+ supportsLazyAttempts: z.boolean().optional()
599
627
  });
600
628
  var CreateBackgroundWorkerResponse = z.object({
601
629
  id: z.string(),
@@ -708,7 +736,7 @@ var ReplayRunResponse = z.object({
708
736
  id: z.string()
709
737
  });
710
738
  var CanceledRunResponse = z.object({
711
- message: z.string()
739
+ id: z.string()
712
740
  });
713
741
  var ScheduledTaskPayload = z.object({
714
742
  /** The schedule id associated with this run (you can have many schedules for the same task).
@@ -758,17 +786,18 @@ var CreateScheduleOptions = z.object({
758
786
  externalId: z.string().optional()
759
787
  });
760
788
  var UpdateScheduleOptions = CreateScheduleOptions;
789
+ var ScheduleGenerator = z.object({
790
+ type: z.literal("CRON"),
791
+ expression: z.string(),
792
+ description: z.string()
793
+ });
761
794
  var ScheduleObject = z.object({
762
795
  id: z.string(),
763
796
  task: z.string(),
764
797
  active: z.boolean(),
765
798
  deduplicationKey: z.string().nullish(),
766
799
  externalId: z.string().nullish(),
767
- generator: z.object({
768
- type: z.literal("CRON"),
769
- expression: z.string(),
770
- description: z.string()
771
- }),
800
+ generator: ScheduleGenerator,
772
801
  nextRun: z.coerce.date().nullish(),
773
802
  environments: z.array(z.object({
774
803
  id: z.string(),
@@ -792,12 +821,28 @@ var ListScheduleOptions = z.object({
792
821
  perPage: z.number().optional()
793
822
  });
794
823
  var RunStatus = z.enum([
795
- "PENDING",
824
+ /// Task hasn't been deployed yet but is waiting to be executed
825
+ "WAITING_FOR_DEPLOY",
826
+ /// Task is waiting to be executed by a worker
827
+ "QUEUED",
828
+ /// Task is currently being executed by a worker
796
829
  "EXECUTING",
797
- "PAUSED",
830
+ /// Task has failed and is waiting to be retried
831
+ "REATTEMPTING",
832
+ /// Task has been paused by the system, and will be resumed by the system
833
+ "FROZEN",
834
+ /// Task has been completed successfully
798
835
  "COMPLETED",
836
+ /// Task has been canceled by the user
837
+ "CANCELED",
838
+ /// Task has been completed with errors
799
839
  "FAILED",
800
- "CANCELED"
840
+ /// Task has crashed and won't be retried, most likely the worker ran out of resources, e.g. memory or storage
841
+ "CRASHED",
842
+ /// Task was interrupted during execution, mostly this happens in development environments
843
+ "INTERRUPTED",
844
+ /// Task has failed to complete, due to an error in the system
845
+ "SYSTEM_FAILURE"
801
846
  ]);
802
847
  var AttemptStatus = z.enum([
803
848
  "PENDING",
@@ -807,23 +852,61 @@ var AttemptStatus = z.enum([
807
852
  "FAILED",
808
853
  "CANCELED"
809
854
  ]);
810
- var RetrieveRunResponse = z.object({
855
+ var RunEnvironmentDetails = z.object({
856
+ id: z.string(),
857
+ name: z.string(),
858
+ user: z.string().optional()
859
+ });
860
+ var RunScheduleDetails = z.object({
861
+ id: z.string(),
862
+ externalId: z.string().optional(),
863
+ deduplicationKey: z.string().optional(),
864
+ generator: ScheduleGenerator
865
+ });
866
+ var CommonRunFields = {
811
867
  id: z.string(),
812
868
  status: RunStatus,
813
869
  taskIdentifier: z.string(),
814
870
  idempotencyKey: z.string().optional(),
815
871
  version: z.string().optional(),
872
+ isQueued: z.boolean(),
873
+ isExecuting: z.boolean(),
874
+ isCompleted: z.boolean(),
875
+ isSuccess: z.boolean(),
876
+ isFailed: z.boolean(),
877
+ isCancelled: z.boolean(),
878
+ isTest: z.boolean(),
816
879
  createdAt: z.coerce.date(),
817
880
  updatedAt: z.coerce.date(),
881
+ startedAt: z.coerce.date().optional(),
882
+ finishedAt: z.coerce.date().optional()
883
+ };
884
+ var RetrieveRunResponse = z.object({
885
+ ...CommonRunFields,
886
+ payload: z.any().optional(),
887
+ output: z.any().optional(),
888
+ schedule: RunScheduleDetails.optional(),
818
889
  attempts: z.array(z.object({
819
890
  id: z.string(),
820
891
  status: AttemptStatus,
821
892
  createdAt: z.coerce.date(),
822
893
  updatedAt: z.coerce.date(),
823
894
  startedAt: z.coerce.date().optional(),
824
- completedAt: z.coerce.date().optional()
895
+ completedAt: z.coerce.date().optional(),
896
+ error: SerializedError.optional()
825
897
  }).optional())
826
898
  });
899
+ var ListRunResponseItem = z.object({
900
+ ...CommonRunFields,
901
+ env: RunEnvironmentDetails
902
+ });
903
+ var ListRunResponse = z.object({
904
+ data: z.array(ListRunResponseItem),
905
+ pagination: z.object({
906
+ next: z.string().optional(),
907
+ previous: z.string().optional()
908
+ })
909
+ });
827
910
  var CreateEnvironmentVariableRequestBody = z.object({
828
911
  name: z.string(),
829
912
  value: z.string()
@@ -862,12 +945,16 @@ var BackgroundWorkerServerMessages = z.discriminatedUnion("type", [
862
945
  version: z.string(),
863
946
  machine: Machine,
864
947
  // identifiers
865
- id: z.string(),
948
+ id: z.string().optional(),
866
949
  envId: z.string(),
867
950
  envType: EnvironmentType,
868
951
  orgId: z.string(),
869
952
  projectId: z.string(),
870
953
  runId: z.string()
954
+ }),
955
+ z.object({
956
+ type: z.literal("EXECUTE_RUN_LAZY_ATTEMPT"),
957
+ payload: TaskRunExecutionLazyAttemptPayload
871
958
  })
872
959
  ]);
873
960
  var serverWebsocketMessages = {
@@ -888,10 +975,20 @@ var BackgroundWorkerClientMessages = z.discriminatedUnion("type", [
888
975
  completion: TaskRunExecutionResult,
889
976
  execution: TaskRunExecution
890
977
  }),
978
+ z.object({
979
+ version: z.literal("v1").default("v1"),
980
+ type: z.literal("TASK_RUN_FAILED_TO_RUN"),
981
+ completion: TaskRunFailedExecutionResult
982
+ }),
891
983
  z.object({
892
984
  version: z.literal("v1").default("v1"),
893
985
  type: z.literal("TASK_HEARTBEAT"),
894
986
  id: z.string()
987
+ }),
988
+ z.object({
989
+ version: z.literal("v1").default("v1"),
990
+ type: z.literal("TASK_RUN_HEARTBEAT"),
991
+ id: z.string()
895
992
  })
896
993
  ]);
897
994
  var BackgroundWorkerProperties = z.object({
@@ -902,7 +999,8 @@ var BackgroundWorkerProperties = z.object({
902
999
  var clientWebsocketMessages = {
903
1000
  READY_FOR_TASKS: z.object({
904
1001
  version: z.literal("v1").default("v1"),
905
- backgroundWorkerId: z.string()
1002
+ backgroundWorkerId: z.string(),
1003
+ inProgressRuns: z.string().array().optional()
906
1004
  }),
907
1005
  BACKGROUND_WORKER_DEPRECATED: z.object({
908
1006
  version: z.literal("v1").default("v1"),
@@ -921,11 +1019,17 @@ var workerToChildMessages = {
921
1019
  traceContext: z.record(z.unknown()),
922
1020
  metadata: BackgroundWorkerProperties
923
1021
  }),
924
- TASK_RUN_COMPLETED_NOTIFICATION: z.object({
925
- version: z.literal("v1").default("v1"),
926
- completion: TaskRunExecutionResult,
927
- execution: TaskRunExecution
928
- }),
1022
+ TASK_RUN_COMPLETED_NOTIFICATION: z.discriminatedUnion("version", [
1023
+ z.object({
1024
+ version: z.literal("v1"),
1025
+ completion: TaskRunExecutionResult,
1026
+ execution: TaskRunExecution
1027
+ }),
1028
+ z.object({
1029
+ version: z.literal("v2"),
1030
+ completion: TaskRunExecutionResult
1031
+ })
1032
+ ]),
929
1033
  CLEANUP: z.object({
930
1034
  version: z.literal("v1").default("v1"),
931
1035
  flush: z.boolean().default(false),
@@ -966,6 +1070,10 @@ var childToWorkerMessages = {
966
1070
  version: z.literal("v1").default("v1"),
967
1071
  id: z.string()
968
1072
  }),
1073
+ TASK_RUN_HEARTBEAT: z.object({
1074
+ version: z.literal("v1").default("v1"),
1075
+ id: z.string()
1076
+ }),
969
1077
  READY_TO_DISPOSE: z.undefined(),
970
1078
  WAIT_FOR_DURATION: z.object({
971
1079
  version: z.literal("v1").default("v1"),
@@ -999,7 +1107,13 @@ var ProdChildToWorkerMessages = {
999
1107
  TASKS_FAILED_TO_PARSE: {
1000
1108
  message: TaskMetadataFailedToParseData
1001
1109
  },
1002
- TASK_HEARTBEAT: {
1110
+ TASK_HEARTBEAT: {
1111
+ message: z.object({
1112
+ version: z.literal("v1").default("v1"),
1113
+ id: z.string()
1114
+ })
1115
+ },
1116
+ TASK_RUN_HEARTBEAT: {
1003
1117
  message: z.object({
1004
1118
  version: z.literal("v1").default("v1"),
1005
1119
  id: z.string()
@@ -1069,11 +1183,17 @@ var ProdWorkerToChildMessages = {
1069
1183
  })
1070
1184
  },
1071
1185
  TASK_RUN_COMPLETED_NOTIFICATION: {
1072
- message: z.object({
1073
- version: z.literal("v1").default("v1"),
1074
- completion: TaskRunExecutionResult,
1075
- execution: TaskRunExecution
1076
- })
1186
+ message: z.discriminatedUnion("version", [
1187
+ z.object({
1188
+ version: z.literal("v1"),
1189
+ completion: TaskRunExecutionResult,
1190
+ execution: TaskRunExecution
1191
+ }),
1192
+ z.object({
1193
+ version: z.literal("v2"),
1194
+ completion: TaskRunExecutionResult
1195
+ })
1196
+ ])
1077
1197
  },
1078
1198
  CLEANUP: {
1079
1199
  message: z.object({
@@ -1201,6 +1321,17 @@ var PlatformToProviderMessages = {
1201
1321
  })
1202
1322
  }
1203
1323
  };
1324
+ var CreateWorkerMessage = z.object({
1325
+ projectRef: z.string(),
1326
+ envId: z.string(),
1327
+ deploymentId: z.string(),
1328
+ metadata: z.object({
1329
+ cliPackageVersion: z.string().optional(),
1330
+ contentHash: z.string(),
1331
+ packageVersion: z.string(),
1332
+ tasks: TaskResource.array()
1333
+ })
1334
+ });
1204
1335
  var CoordinatorToPlatformMessages = {
1205
1336
  LOG: {
1206
1337
  message: z.object({
@@ -1210,18 +1341,15 @@ var CoordinatorToPlatformMessages = {
1210
1341
  })
1211
1342
  },
1212
1343
  CREATE_WORKER: {
1213
- message: z.object({
1214
- version: z.literal("v1").default("v1"),
1215
- projectRef: z.string(),
1216
- envId: z.string(),
1217
- deploymentId: z.string(),
1218
- metadata: z.object({
1219
- cliPackageVersion: z.string().optional(),
1220
- contentHash: z.string(),
1221
- packageVersion: z.string(),
1222
- tasks: TaskResource.array()
1344
+ message: z.discriminatedUnion("version", [
1345
+ CreateWorkerMessage.extend({
1346
+ version: z.literal("v1")
1347
+ }),
1348
+ CreateWorkerMessage.extend({
1349
+ version: z.literal("v2"),
1350
+ supportsLazyAttempts: z.boolean()
1223
1351
  })
1224
- }),
1352
+ ]),
1225
1353
  callback: z.discriminatedUnion("success", [
1226
1354
  z.object({
1227
1355
  success: z.literal(false)
@@ -1231,6 +1359,23 @@ var CoordinatorToPlatformMessages = {
1231
1359
  })
1232
1360
  ])
1233
1361
  },
1362
+ CREATE_TASK_RUN_ATTEMPT: {
1363
+ message: z.object({
1364
+ version: z.literal("v1").default("v1"),
1365
+ runId: z.string(),
1366
+ envId: z.string()
1367
+ }),
1368
+ callback: z.discriminatedUnion("success", [
1369
+ z.object({
1370
+ success: z.literal(false),
1371
+ reason: z.string().optional()
1372
+ }),
1373
+ z.object({
1374
+ success: z.literal(true),
1375
+ executionPayload: ProdTaskRunExecutionPayload
1376
+ })
1377
+ ])
1378
+ },
1234
1379
  READY_FOR_EXECUTION: {
1235
1380
  message: z.object({
1236
1381
  version: z.literal("v1").default("v1"),
@@ -1247,6 +1392,24 @@ var CoordinatorToPlatformMessages = {
1247
1392
  })
1248
1393
  ])
1249
1394
  },
1395
+ READY_FOR_LAZY_ATTEMPT: {
1396
+ message: z.object({
1397
+ version: z.literal("v1").default("v1"),
1398
+ runId: z.string(),
1399
+ envId: z.string(),
1400
+ totalCompletions: z.number()
1401
+ }),
1402
+ callback: z.discriminatedUnion("success", [
1403
+ z.object({
1404
+ success: z.literal(false),
1405
+ reason: z.string().optional()
1406
+ }),
1407
+ z.object({
1408
+ success: z.literal(true),
1409
+ lazyPayload: TaskRunExecutionLazyAttemptPayload
1410
+ })
1411
+ ])
1412
+ },
1250
1413
  READY_FOR_RESUME: {
1251
1414
  message: z.object({
1252
1415
  version: z.literal("v1").default("v1"),
@@ -1265,12 +1428,24 @@ var CoordinatorToPlatformMessages = {
1265
1428
  }).optional()
1266
1429
  })
1267
1430
  },
1431
+ TASK_RUN_FAILED_TO_RUN: {
1432
+ message: z.object({
1433
+ version: z.literal("v1").default("v1"),
1434
+ completion: TaskRunFailedExecutionResult
1435
+ })
1436
+ },
1268
1437
  TASK_HEARTBEAT: {
1269
1438
  message: z.object({
1270
1439
  version: z.literal("v1").default("v1"),
1271
1440
  attemptFriendlyId: z.string()
1272
1441
  })
1273
1442
  },
1443
+ TASK_RUN_HEARTBEAT: {
1444
+ message: z.object({
1445
+ version: z.literal("v1").default("v1"),
1446
+ runId: z.string()
1447
+ })
1448
+ },
1274
1449
  CHECKPOINT_CREATED: {
1275
1450
  message: z.object({
1276
1451
  version: z.literal("v1").default("v1"),
@@ -1309,6 +1484,17 @@ var CoordinatorToPlatformMessages = {
1309
1484
  stack: z.string().optional()
1310
1485
  })
1311
1486
  })
1487
+ },
1488
+ RUN_CRASHED: {
1489
+ message: z.object({
1490
+ version: z.literal("v1").default("v1"),
1491
+ runId: z.string(),
1492
+ error: z.object({
1493
+ name: z.string(),
1494
+ message: z.string(),
1495
+ stack: z.string().optional()
1496
+ })
1497
+ })
1312
1498
  }
1313
1499
  };
1314
1500
  var PlatformToCoordinatorMessages = {
@@ -1336,6 +1522,13 @@ var PlatformToCoordinatorMessages = {
1336
1522
  attemptFriendlyId: z.string()
1337
1523
  })
1338
1524
  },
1525
+ REQUEST_RUN_CANCELLATION: {
1526
+ message: z.object({
1527
+ version: z.literal("v1").default("v1"),
1528
+ runId: z.string(),
1529
+ delayInMs: z.number().optional()
1530
+ })
1531
+ },
1339
1532
  READY_FOR_RETRY: {
1340
1533
  message: z.object({
1341
1534
  version: z.literal("v1").default("v1"),
@@ -1379,6 +1572,12 @@ var SharedQueueToClientMessages = {
1379
1572
  })
1380
1573
  }
1381
1574
  };
1575
+ var IndexTasksMessage = z.object({
1576
+ version: z.literal("v1"),
1577
+ deploymentId: z.string(),
1578
+ tasks: TaskResource.array(),
1579
+ packageVersion: z.string()
1580
+ });
1382
1581
  var ProdWorkerToCoordinatorMessages = {
1383
1582
  LOG: {
1384
1583
  message: z.object({
@@ -1388,12 +1587,15 @@ var ProdWorkerToCoordinatorMessages = {
1388
1587
  callback: z.void()
1389
1588
  },
1390
1589
  INDEX_TASKS: {
1391
- message: z.object({
1392
- version: z.literal("v1").default("v1"),
1393
- deploymentId: z.string(),
1394
- tasks: TaskResource.array(),
1395
- packageVersion: z.string()
1396
- }),
1590
+ message: z.discriminatedUnion("version", [
1591
+ IndexTasksMessage.extend({
1592
+ version: z.literal("v1")
1593
+ }),
1594
+ IndexTasksMessage.extend({
1595
+ version: z.literal("v2"),
1596
+ supportsLazyAttempts: z.boolean()
1597
+ })
1598
+ ]),
1397
1599
  callback: z.discriminatedUnion("success", [
1398
1600
  z.object({
1399
1601
  success: z.literal(false)
@@ -1410,6 +1612,13 @@ var ProdWorkerToCoordinatorMessages = {
1410
1612
  totalCompletions: z.number()
1411
1613
  })
1412
1614
  },
1615
+ READY_FOR_LAZY_ATTEMPT: {
1616
+ message: z.object({
1617
+ version: z.literal("v1").default("v1"),
1618
+ runId: z.string(),
1619
+ totalCompletions: z.number()
1620
+ })
1621
+ },
1413
1622
  READY_FOR_RESUME: {
1414
1623
  message: z.object({
1415
1624
  version: z.literal("v1").default("v1"),
@@ -1446,6 +1655,12 @@ var ProdWorkerToCoordinatorMessages = {
1446
1655
  attemptFriendlyId: z.string()
1447
1656
  })
1448
1657
  },
1658
+ TASK_RUN_HEARTBEAT: {
1659
+ message: z.object({
1660
+ version: z.literal("v1").default("v1"),
1661
+ runId: z.string()
1662
+ })
1663
+ },
1449
1664
  TASK_RUN_COMPLETED: {
1450
1665
  message: z.object({
1451
1666
  version: z.literal("v1").default("v1"),
@@ -1457,6 +1672,12 @@ var ProdWorkerToCoordinatorMessages = {
1457
1672
  shouldExit: z.boolean()
1458
1673
  })
1459
1674
  },
1675
+ TASK_RUN_FAILED_TO_RUN: {
1676
+ message: z.object({
1677
+ version: z.literal("v1").default("v1"),
1678
+ completion: TaskRunFailedExecutionResult
1679
+ })
1680
+ },
1460
1681
  WAIT_FOR_DURATION: {
1461
1682
  message: z.object({
1462
1683
  version: z.literal("v1").default("v1"),
@@ -1501,6 +1722,32 @@ var ProdWorkerToCoordinatorMessages = {
1501
1722
  stack: z.string().optional()
1502
1723
  })
1503
1724
  })
1725
+ },
1726
+ CREATE_TASK_RUN_ATTEMPT: {
1727
+ message: z.object({
1728
+ version: z.literal("v1").default("v1"),
1729
+ runId: z.string()
1730
+ }),
1731
+ callback: z.discriminatedUnion("success", [
1732
+ z.object({
1733
+ success: z.literal(false),
1734
+ reason: z.string().optional()
1735
+ }),
1736
+ z.object({
1737
+ success: z.literal(true),
1738
+ executionPayload: ProdTaskRunExecutionPayload
1739
+ })
1740
+ ])
1741
+ },
1742
+ UNRECOVERABLE_ERROR: {
1743
+ message: z.object({
1744
+ version: z.literal("v1").default("v1"),
1745
+ error: z.object({
1746
+ name: z.string(),
1747
+ message: z.string(),
1748
+ stack: z.string().optional()
1749
+ })
1750
+ })
1504
1751
  }
1505
1752
  };
1506
1753
  var CoordinatorToProdWorkerMessages = {
@@ -1524,6 +1771,12 @@ var CoordinatorToProdWorkerMessages = {
1524
1771
  executionPayload: ProdTaskRunExecutionPayload
1525
1772
  })
1526
1773
  },
1774
+ EXECUTE_TASK_RUN_LAZY_ATTEMPT: {
1775
+ message: z.object({
1776
+ version: z.literal("v1").default("v1"),
1777
+ lazyPayload: TaskRunExecutionLazyAttemptPayload
1778
+ })
1779
+ },
1527
1780
  REQUEST_ATTEMPT_CANCELLATION: {
1528
1781
  message: z.object({
1529
1782
  version: z.literal("v1").default("v1"),
@@ -1531,9 +1784,15 @@ var CoordinatorToProdWorkerMessages = {
1531
1784
  })
1532
1785
  },
1533
1786
  REQUEST_EXIT: {
1534
- message: z.object({
1535
- version: z.literal("v1").default("v1")
1536
- })
1787
+ message: z.discriminatedUnion("version", [
1788
+ z.object({
1789
+ version: z.literal("v1")
1790
+ }),
1791
+ z.object({
1792
+ version: z.literal("v2"),
1793
+ delayInMs: z.number().optional()
1794
+ })
1795
+ ])
1537
1796
  },
1538
1797
  READY_FOR_RETRY: {
1539
1798
  message: z.object({
@@ -1898,15 +2157,153 @@ var _TaskContextAPI = class _TaskContextAPI {
1898
2157
  return registerGlobal(API_NAME, taskContext2);
1899
2158
  }
1900
2159
  };
1901
- _getTaskContext = new WeakSet();
1902
- getTaskContext_fn = /* @__PURE__ */ __name(function() {
1903
- return getGlobal(API_NAME);
1904
- }, "#getTaskContext");
1905
- __name(_TaskContextAPI, "TaskContextAPI");
1906
- var TaskContextAPI = _TaskContextAPI;
1907
-
1908
- // src/v3/task-context-api.ts
1909
- var taskContext = TaskContextAPI.getInstance();
2160
+ _getTaskContext = new WeakSet();
2161
+ getTaskContext_fn = /* @__PURE__ */ __name(function() {
2162
+ return getGlobal(API_NAME);
2163
+ }, "#getTaskContext");
2164
+ __name(_TaskContextAPI, "TaskContextAPI");
2165
+ var TaskContextAPI = _TaskContextAPI;
2166
+
2167
+ // src/v3/task-context-api.ts
2168
+ var taskContext = TaskContextAPI.getInstance();
2169
+
2170
+ // src/v3/apiClient/errors.ts
2171
+ var _ApiError = class _ApiError extends Error {
2172
+ constructor(status, error, message, headers) {
2173
+ super(`${_ApiError.makeMessage(status, error, message)}`);
2174
+ this.status = status;
2175
+ this.headers = headers;
2176
+ const data = error;
2177
+ this.error = data;
2178
+ this.code = data?.["code"];
2179
+ this.param = data?.["param"];
2180
+ this.type = data?.["type"];
2181
+ }
2182
+ static makeMessage(status, error, message) {
2183
+ const msg = error?.message ? typeof error.message === "string" ? error.message : JSON.stringify(error.message) : error ? JSON.stringify(error) : message;
2184
+ if (status && msg) {
2185
+ return `${status} ${msg}`;
2186
+ }
2187
+ if (status) {
2188
+ return `${status} status code (no body)`;
2189
+ }
2190
+ if (msg) {
2191
+ return msg;
2192
+ }
2193
+ return "(no status code or body)";
2194
+ }
2195
+ static generate(status, errorResponse, message, headers) {
2196
+ if (!status) {
2197
+ return new ApiConnectionError({
2198
+ cause: castToError(errorResponse)
2199
+ });
2200
+ }
2201
+ const error = errorResponse?.["error"];
2202
+ if (status === 400) {
2203
+ return new BadRequestError(status, error, message, headers);
2204
+ }
2205
+ if (status === 401) {
2206
+ return new AuthenticationError(status, error, message, headers);
2207
+ }
2208
+ if (status === 403) {
2209
+ return new PermissionDeniedError(status, error, message, headers);
2210
+ }
2211
+ if (status === 404) {
2212
+ return new NotFoundError(status, error, message, headers);
2213
+ }
2214
+ if (status === 409) {
2215
+ return new ConflictError(status, error, message, headers);
2216
+ }
2217
+ if (status === 422) {
2218
+ return new UnprocessableEntityError(status, error, message, headers);
2219
+ }
2220
+ if (status === 429) {
2221
+ return new RateLimitError(status, error, message, headers);
2222
+ }
2223
+ if (status >= 500) {
2224
+ return new InternalServerError(status, error, message, headers);
2225
+ }
2226
+ return new _ApiError(status, error, message, headers);
2227
+ }
2228
+ };
2229
+ __name(_ApiError, "ApiError");
2230
+ var ApiError = _ApiError;
2231
+ var _ApiConnectionError = class _ApiConnectionError extends ApiError {
2232
+ constructor({ message, cause }) {
2233
+ super(void 0, void 0, message || "Connection error.", void 0);
2234
+ __publicField(this, "status");
2235
+ if (cause)
2236
+ this.cause = cause;
2237
+ }
2238
+ };
2239
+ __name(_ApiConnectionError, "ApiConnectionError");
2240
+ var ApiConnectionError = _ApiConnectionError;
2241
+ var _BadRequestError = class _BadRequestError extends ApiError {
2242
+ constructor() {
2243
+ super(...arguments);
2244
+ __publicField(this, "status", 400);
2245
+ }
2246
+ };
2247
+ __name(_BadRequestError, "BadRequestError");
2248
+ var BadRequestError = _BadRequestError;
2249
+ var _AuthenticationError = class _AuthenticationError extends ApiError {
2250
+ constructor() {
2251
+ super(...arguments);
2252
+ __publicField(this, "status", 401);
2253
+ }
2254
+ };
2255
+ __name(_AuthenticationError, "AuthenticationError");
2256
+ var AuthenticationError = _AuthenticationError;
2257
+ var _PermissionDeniedError = class _PermissionDeniedError extends ApiError {
2258
+ constructor() {
2259
+ super(...arguments);
2260
+ __publicField(this, "status", 403);
2261
+ }
2262
+ };
2263
+ __name(_PermissionDeniedError, "PermissionDeniedError");
2264
+ var PermissionDeniedError = _PermissionDeniedError;
2265
+ var _NotFoundError = class _NotFoundError extends ApiError {
2266
+ constructor() {
2267
+ super(...arguments);
2268
+ __publicField(this, "status", 404);
2269
+ }
2270
+ };
2271
+ __name(_NotFoundError, "NotFoundError");
2272
+ var NotFoundError = _NotFoundError;
2273
+ var _ConflictError = class _ConflictError extends ApiError {
2274
+ constructor() {
2275
+ super(...arguments);
2276
+ __publicField(this, "status", 409);
2277
+ }
2278
+ };
2279
+ __name(_ConflictError, "ConflictError");
2280
+ var ConflictError = _ConflictError;
2281
+ var _UnprocessableEntityError = class _UnprocessableEntityError extends ApiError {
2282
+ constructor() {
2283
+ super(...arguments);
2284
+ __publicField(this, "status", 422);
2285
+ }
2286
+ };
2287
+ __name(_UnprocessableEntityError, "UnprocessableEntityError");
2288
+ var UnprocessableEntityError = _UnprocessableEntityError;
2289
+ var _RateLimitError = class _RateLimitError extends ApiError {
2290
+ constructor() {
2291
+ super(...arguments);
2292
+ __publicField(this, "status", 429);
2293
+ }
2294
+ };
2295
+ __name(_RateLimitError, "RateLimitError");
2296
+ var RateLimitError = _RateLimitError;
2297
+ var _InternalServerError = class _InternalServerError extends ApiError {
2298
+ };
2299
+ __name(_InternalServerError, "InternalServerError");
2300
+ var InternalServerError = _InternalServerError;
2301
+ function castToError(err) {
2302
+ if (err instanceof Error)
2303
+ return err;
2304
+ return new Error(err);
2305
+ }
2306
+ __name(castToError, "castToError");
1910
2307
 
1911
2308
  // src/retry.ts
1912
2309
  function calculateResetAt(resets, format, now = /* @__PURE__ */ new Date()) {
@@ -2014,6 +2411,108 @@ function calculateResetAt2(resets, format, now = Date.now()) {
2014
2411
  return resetAt?.getTime();
2015
2412
  }
2016
2413
  __name(calculateResetAt2, "calculateResetAt");
2414
+
2415
+ // src/v3/apiClient/pagination.ts
2416
+ var _CursorPage = class _CursorPage {
2417
+ constructor(data, pagination, pageFetcher) {
2418
+ this.pageFetcher = pageFetcher;
2419
+ this.data = data;
2420
+ this.pagination = pagination;
2421
+ }
2422
+ getPaginatedItems() {
2423
+ return this.data ?? [];
2424
+ }
2425
+ hasNextPage() {
2426
+ return !!this.pagination.next;
2427
+ }
2428
+ hasPreviousPage() {
2429
+ return !!this.pagination.previous;
2430
+ }
2431
+ getNextPage() {
2432
+ if (!this.pagination.next) {
2433
+ throw new Error("No next page available");
2434
+ }
2435
+ return this.pageFetcher({
2436
+ after: this.pagination.next
2437
+ });
2438
+ }
2439
+ getPreviousPage() {
2440
+ if (!this.pagination.previous) {
2441
+ throw new Error("No previous page available");
2442
+ }
2443
+ return this.pageFetcher({
2444
+ before: this.pagination.previous
2445
+ });
2446
+ }
2447
+ async *iterPages() {
2448
+ let page = this;
2449
+ yield page;
2450
+ while (page.hasNextPage()) {
2451
+ page = await page.getNextPage();
2452
+ yield page;
2453
+ }
2454
+ }
2455
+ async *[Symbol.asyncIterator]() {
2456
+ for await (const page of this.iterPages()) {
2457
+ for (const item of page.getPaginatedItems()) {
2458
+ yield item;
2459
+ }
2460
+ }
2461
+ }
2462
+ };
2463
+ __name(_CursorPage, "CursorPage");
2464
+ var CursorPage = _CursorPage;
2465
+ var _OffsetLimitPage = class _OffsetLimitPage {
2466
+ constructor(data, pagination, pageFetcher) {
2467
+ this.pageFetcher = pageFetcher;
2468
+ this.data = data;
2469
+ this.pagination = pagination;
2470
+ }
2471
+ getPaginatedItems() {
2472
+ return this.data ?? [];
2473
+ }
2474
+ hasNextPage() {
2475
+ return this.pagination.currentPage < this.pagination.totalPages;
2476
+ }
2477
+ hasPreviousPage() {
2478
+ return this.pagination.currentPage > 1;
2479
+ }
2480
+ getNextPage() {
2481
+ if (!this.hasNextPage()) {
2482
+ throw new Error("No next page available");
2483
+ }
2484
+ return this.pageFetcher({
2485
+ page: this.pagination.currentPage + 1
2486
+ });
2487
+ }
2488
+ getPreviousPage() {
2489
+ if (!this.hasPreviousPage()) {
2490
+ throw new Error("No previous page available");
2491
+ }
2492
+ return this.pageFetcher({
2493
+ page: this.pagination.currentPage - 1
2494
+ });
2495
+ }
2496
+ async *iterPages() {
2497
+ let page = this;
2498
+ yield page;
2499
+ while (page.hasNextPage()) {
2500
+ page = await page.getNextPage();
2501
+ yield page;
2502
+ }
2503
+ }
2504
+ async *[Symbol.asyncIterator]() {
2505
+ for await (const page of this.iterPages()) {
2506
+ for (const item of page.getPaginatedItems()) {
2507
+ yield item;
2508
+ }
2509
+ }
2510
+ }
2511
+ };
2512
+ __name(_OffsetLimitPage, "OffsetLimitPage");
2513
+ var OffsetLimitPage = _OffsetLimitPage;
2514
+
2515
+ // src/v3/apiClient/core.ts
2017
2516
  var defaultRetryOptions2 = {
2018
2517
  maxAttempts: 3,
2019
2518
  factor: 2,
@@ -2021,11 +2520,62 @@ var defaultRetryOptions2 = {
2021
2520
  maxTimeoutInMs: 6e4,
2022
2521
  randomize: false
2023
2522
  };
2024
- async function zodfetch(schema, url, requestInit, options) {
2025
- return await _doZodFetch(schema, url, requestInit, options);
2523
+ function zodfetch(schema, url, requestInit, options) {
2524
+ return new ApiPromise(_doZodFetch(schema, url, requestInit, options));
2026
2525
  }
2027
2526
  __name(zodfetch, "zodfetch");
2028
- async function zodupload(schema, url, body, requestInit, options) {
2527
+ function zodfetchCursorPage(schema, url, params, requestInit, options) {
2528
+ const query = new URLSearchParams(params.query);
2529
+ if (params.limit) {
2530
+ query.set("page[size]", String(params.limit));
2531
+ }
2532
+ if (params.after) {
2533
+ query.set("page[after]", params.after);
2534
+ }
2535
+ if (params.before) {
2536
+ query.set("page[before]", params.before);
2537
+ }
2538
+ const cursorPageSchema = z.object({
2539
+ data: z.array(schema),
2540
+ pagination: z.object({
2541
+ next: z.string().optional(),
2542
+ previous: z.string().optional()
2543
+ })
2544
+ });
2545
+ const $url = new URL(url);
2546
+ $url.search = query.toString();
2547
+ const fetchResult = _doZodFetch(cursorPageSchema, $url.href, requestInit, options);
2548
+ return new CursorPagePromise(fetchResult, schema, url, params, requestInit, options);
2549
+ }
2550
+ __name(zodfetchCursorPage, "zodfetchCursorPage");
2551
+ function zodfetchOffsetLimitPage(schema, url, params, requestInit, options) {
2552
+ const query = new URLSearchParams(params.query);
2553
+ if (params.limit) {
2554
+ query.set("perPage", String(params.limit));
2555
+ }
2556
+ if (params.page) {
2557
+ query.set("page", String(params.page));
2558
+ }
2559
+ const offsetLimitPageSchema = z.object({
2560
+ data: z.array(schema),
2561
+ pagination: z.object({
2562
+ currentPage: z.coerce.number(),
2563
+ totalPages: z.coerce.number(),
2564
+ count: z.coerce.number()
2565
+ })
2566
+ });
2567
+ const $url = new URL(url);
2568
+ $url.search = query.toString();
2569
+ const fetchResult = _doZodFetch(offsetLimitPageSchema, $url.href, requestInit, options);
2570
+ return new OffsetLimitPagePromise(fetchResult, schema, url, params, requestInit, options);
2571
+ }
2572
+ __name(zodfetchOffsetLimitPage, "zodfetchOffsetLimitPage");
2573
+ function zodupload(schema, url, body, requestInit, options) {
2574
+ const finalRequestInit = createMultipartFormRequestInit(body, requestInit);
2575
+ return new ApiPromise(_doZodFetch(schema, url, finalRequestInit, options));
2576
+ }
2577
+ __name(zodupload, "zodupload");
2578
+ async function createMultipartFormRequestInit(body, requestInit) {
2029
2579
  const form = await createForm(body);
2030
2580
  const encoder = new FormDataEncoder(form);
2031
2581
  const finalHeaders = {};
@@ -2043,9 +2593,9 @@ async function zodupload(schema, url, body, requestInit, options) {
2043
2593
  // @ts-expect-error
2044
2594
  duplex: "half"
2045
2595
  };
2046
- return await _doZodFetch(schema, url, finalRequestInit, options);
2596
+ return finalRequestInit;
2047
2597
  }
2048
- __name(zodupload, "zodupload");
2598
+ __name(createMultipartFormRequestInit, "createMultipartFormRequestInit");
2049
2599
  var createForm = /* @__PURE__ */ __name(async (body) => {
2050
2600
  const form = new FormData();
2051
2601
  await Promise.all(Object.entries(body || {}).map(([key, value]) => addFormValue(form, key, value)));
@@ -2053,7 +2603,8 @@ var createForm = /* @__PURE__ */ __name(async (body) => {
2053
2603
  }, "createForm");
2054
2604
  async function _doZodFetch(schema, url, requestInit, options, attempt = 1) {
2055
2605
  try {
2056
- const response = await fetch(url, requestInitWithCache(requestInit));
2606
+ const $requestInit = await requestInit;
2607
+ const response = await fetch(url, requestInitWithCache($requestInit));
2057
2608
  const responseHeaders = createResponseHeaders(response.headers);
2058
2609
  if (!response.ok) {
2059
2610
  const retryResult = shouldRetry(response, attempt, options?.retry);
@@ -2064,17 +2615,20 @@ async function _doZodFetch(schema, url, requestInit, options, attempt = 1) {
2064
2615
  const errText = await response.text().catch((e) => castToError2(e).message);
2065
2616
  const errJSON = safeJsonParse(errText);
2066
2617
  const errMessage = errJSON ? void 0 : errText;
2067
- throw APIError.generate(response.status, errJSON, errMessage, responseHeaders);
2618
+ throw ApiError.generate(response.status, errJSON, errMessage, responseHeaders);
2068
2619
  }
2069
2620
  }
2070
2621
  const jsonBody = await response.json();
2071
2622
  const parsedResult = schema.safeParse(jsonBody);
2072
2623
  if (parsedResult.success) {
2073
- return parsedResult.data;
2624
+ return {
2625
+ data: parsedResult.data,
2626
+ response
2627
+ };
2074
2628
  }
2075
2629
  throw fromZodError(parsedResult.error);
2076
2630
  } catch (error) {
2077
- if (error instanceof APIError) {
2631
+ if (error instanceof ApiError) {
2078
2632
  throw error;
2079
2633
  }
2080
2634
  if (options?.retry) {
@@ -2088,7 +2642,7 @@ async function _doZodFetch(schema, url, requestInit, options, attempt = 1) {
2088
2642
  return await _doZodFetch(schema, url, requestInit, options, attempt + 1);
2089
2643
  }
2090
2644
  }
2091
- throw new APIConnectionError({
2645
+ throw new ApiConnectionError({
2092
2646
  cause: castToError2(error)
2093
2647
  });
2094
2648
  }
@@ -2261,6 +2815,128 @@ var isUploadable = /* @__PURE__ */ __name((value) => {
2261
2815
  return isFileLike(value) || isResponseLike(value) || isFsReadStream(value);
2262
2816
  }, "isUploadable");
2263
2817
  var isRecordLike = /* @__PURE__ */ __name((value) => value != null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).length > 0 && Object.keys(value).every((key) => typeof key === "string" && typeof value[key] === "string"), "isRecordLike");
2818
+ var _ApiPromise = class _ApiPromise extends Promise {
2819
+ constructor(responsePromise) {
2820
+ super((resolve) => {
2821
+ resolve(null);
2822
+ });
2823
+ this.responsePromise = responsePromise;
2824
+ }
2825
+ /**
2826
+ * Gets the raw `Response` instance instead of parsing the response
2827
+ * data.
2828
+ *
2829
+ * If you want to parse the response body but still get the `Response`
2830
+ * instance, you can use {@link withResponse()}.
2831
+ */
2832
+ asResponse() {
2833
+ return this.responsePromise.then((p) => p.response);
2834
+ }
2835
+ /**
2836
+ * Gets the parsed response data and the raw `Response` instance.
2837
+ *
2838
+ * If you just want to get the raw `Response` instance without parsing it,
2839
+ * you can use {@link asResponse()}.
2840
+ */
2841
+ async withResponse() {
2842
+ const [data, response] = await Promise.all([
2843
+ this.parse(),
2844
+ this.asResponse()
2845
+ ]);
2846
+ return {
2847
+ data,
2848
+ response
2849
+ };
2850
+ }
2851
+ parse() {
2852
+ return this.responsePromise.then((result) => result.data);
2853
+ }
2854
+ then(onfulfilled, onrejected) {
2855
+ return this.parse().then(onfulfilled, onrejected);
2856
+ }
2857
+ catch(onrejected) {
2858
+ return this.parse().catch(onrejected);
2859
+ }
2860
+ finally(onfinally) {
2861
+ return this.parse().finally(onfinally);
2862
+ }
2863
+ };
2864
+ __name(_ApiPromise, "ApiPromise");
2865
+ var ApiPromise = _ApiPromise;
2866
+ var _fetchPage, fetchPage_fn;
2867
+ var _CursorPagePromise = class _CursorPagePromise extends ApiPromise {
2868
+ constructor(result, schema, url, params, requestInit, options) {
2869
+ super(result.then((result2) => ({
2870
+ data: new CursorPage(result2.data.data, result2.data.pagination, __privateMethod(this, _fetchPage, fetchPage_fn).bind(this)),
2871
+ response: result2.response
2872
+ })));
2873
+ __privateAdd(this, _fetchPage);
2874
+ this.schema = schema;
2875
+ this.url = url;
2876
+ this.params = params;
2877
+ this.requestInit = requestInit;
2878
+ this.options = options;
2879
+ }
2880
+ /**
2881
+ * Allow auto-paginating iteration on an unawaited list call, eg:
2882
+ *
2883
+ * for await (const item of client.items.list()) {
2884
+ * console.log(item)
2885
+ * }
2886
+ */
2887
+ async *[Symbol.asyncIterator]() {
2888
+ const page = await this;
2889
+ for await (const item of page) {
2890
+ yield item;
2891
+ }
2892
+ }
2893
+ };
2894
+ _fetchPage = new WeakSet();
2895
+ fetchPage_fn = /* @__PURE__ */ __name(function(params) {
2896
+ return zodfetchCursorPage(this.schema, this.url, {
2897
+ ...this.params,
2898
+ ...params
2899
+ }, this.requestInit, this.options);
2900
+ }, "#fetchPage");
2901
+ __name(_CursorPagePromise, "CursorPagePromise");
2902
+ var CursorPagePromise = _CursorPagePromise;
2903
+ var _fetchPage2, fetchPage_fn2;
2904
+ var _OffsetLimitPagePromise = class _OffsetLimitPagePromise extends ApiPromise {
2905
+ constructor(result, schema, url, params, requestInit, options) {
2906
+ super(result.then((result2) => ({
2907
+ data: new OffsetLimitPage(result2.data.data, result2.data.pagination, __privateMethod(this, _fetchPage2, fetchPage_fn2).bind(this)),
2908
+ response: result2.response
2909
+ })));
2910
+ __privateAdd(this, _fetchPage2);
2911
+ this.schema = schema;
2912
+ this.url = url;
2913
+ this.params = params;
2914
+ this.requestInit = requestInit;
2915
+ this.options = options;
2916
+ }
2917
+ /**
2918
+ * Allow auto-paginating iteration on an unawaited list call, eg:
2919
+ *
2920
+ * for await (const item of client.items.list()) {
2921
+ * console.log(item)
2922
+ * }
2923
+ */
2924
+ async *[Symbol.asyncIterator]() {
2925
+ const page = await this;
2926
+ for await (const item of page) {
2927
+ yield item;
2928
+ }
2929
+ }
2930
+ };
2931
+ _fetchPage2 = new WeakSet();
2932
+ fetchPage_fn2 = /* @__PURE__ */ __name(function(params1) {
2933
+ return zodfetchOffsetLimitPage(this.schema, this.url, {
2934
+ ...this.params,
2935
+ ...params1
2936
+ }, this.requestInit, this.options);
2937
+ }, "#fetchPage");
2938
+ __name(_OffsetLimitPagePromise, "OffsetLimitPagePromise");
2939
+ var OffsetLimitPagePromise = _OffsetLimitPagePromise;
2264
2940
 
2265
2941
  // src/v3/apiClient/index.ts
2266
2942
  var zodFetchOptions = {
@@ -2286,7 +2962,7 @@ var _ApiClient = class _ApiClient {
2286
2962
  headers: __privateMethod(this, _getHeaders, getHeaders_fn).call(this, false)
2287
2963
  }, zodFetchOptions);
2288
2964
  } catch (error) {
2289
- if (error instanceof APIError) {
2965
+ if (error instanceof ApiError) {
2290
2966
  if (error.status === 404) {
2291
2967
  return void 0;
2292
2968
  }
@@ -2301,14 +2977,16 @@ var _ApiClient = class _ApiClient {
2301
2977
  }, zodFetchOptions);
2302
2978
  }
2303
2979
  triggerTask(taskId, body, options) {
2304
- return zodfetch(TriggerTaskResponse, `${this.baseUrl}/api/v1/tasks/${taskId}/trigger`, {
2980
+ const encodedTaskId = encodeURIComponent(taskId);
2981
+ return zodfetch(TriggerTaskResponse, `${this.baseUrl}/api/v1/tasks/${encodedTaskId}/trigger`, {
2305
2982
  method: "POST",
2306
2983
  headers: __privateMethod(this, _getHeaders, getHeaders_fn).call(this, options?.spanParentAsLink ?? false),
2307
2984
  body: JSON.stringify(body)
2308
2985
  }, zodFetchOptions);
2309
2986
  }
2310
2987
  batchTriggerTask(taskId, body, options) {
2311
- return zodfetch(BatchTriggerTaskResponse, `${this.baseUrl}/api/v1/tasks/${taskId}/batch`, {
2988
+ const encodedTaskId = encodeURIComponent(taskId);
2989
+ return zodfetch(BatchTriggerTaskResponse, `${this.baseUrl}/api/v1/tasks/${encodedTaskId}/batch`, {
2312
2990
  method: "POST",
2313
2991
  headers: __privateMethod(this, _getHeaders, getHeaders_fn).call(this, options?.spanParentAsLink ?? false),
2314
2992
  body: JSON.stringify(body)
@@ -2332,6 +3010,33 @@ var _ApiClient = class _ApiClient {
2332
3010
  headers: __privateMethod(this, _getHeaders, getHeaders_fn).call(this, false)
2333
3011
  }, zodFetchOptions);
2334
3012
  }
3013
+ listRuns(query) {
3014
+ const searchParams = createSearchQueryForListRuns(query);
3015
+ return zodfetchCursorPage(ListRunResponseItem, `${this.baseUrl}/api/v1/runs`, {
3016
+ query: searchParams,
3017
+ limit: query?.limit,
3018
+ after: query?.after,
3019
+ before: query?.before
3020
+ }, {
3021
+ method: "GET",
3022
+ headers: __privateMethod(this, _getHeaders, getHeaders_fn).call(this, false)
3023
+ }, zodFetchOptions);
3024
+ }
3025
+ listProjectRuns(projectRef, query) {
3026
+ const searchParams = createSearchQueryForListRuns(query);
3027
+ if (query?.env) {
3028
+ searchParams.append("filter[env]", Array.isArray(query.env) ? query.env.join(",") : query.env);
3029
+ }
3030
+ return zodfetchCursorPage(ListRunResponseItem, `${this.baseUrl}/api/v1/projects/${projectRef}/runs`, {
3031
+ query: searchParams,
3032
+ limit: query?.limit,
3033
+ after: query?.after,
3034
+ before: query?.before
3035
+ }, {
3036
+ method: "GET",
3037
+ headers: __privateMethod(this, _getHeaders, getHeaders_fn).call(this, false)
3038
+ }, zodFetchOptions);
3039
+ }
2335
3040
  replayRun(runId) {
2336
3041
  return zodfetch(ReplayRunResponse, `${this.baseUrl}/api/v1/runs/${runId}/replay`, {
2337
3042
  method: "POST",
@@ -2359,7 +3064,10 @@ var _ApiClient = class _ApiClient {
2359
3064
  if (options?.perPage) {
2360
3065
  searchParams.append("perPage", options.perPage.toString());
2361
3066
  }
2362
- return zodfetch(ListSchedulesResult, `${this.baseUrl}/api/v1/schedules${searchParams.size > 0 ? `?${searchParams}` : ""}`, {
3067
+ return zodfetchOffsetLimitPage(ScheduleObject, `${this.baseUrl}/api/v1/schedules`, {
3068
+ page: options?.page,
3069
+ limit: options?.perPage
3070
+ }, {
2363
3071
  method: "GET",
2364
3072
  headers: __privateMethod(this, _getHeaders, getHeaders_fn).call(this, false)
2365
3073
  });
@@ -2460,6 +3168,40 @@ getHeaders_fn = /* @__PURE__ */ __name(function(spanParentAsLink) {
2460
3168
  }, "#getHeaders");
2461
3169
  __name(_ApiClient, "ApiClient");
2462
3170
  var ApiClient = _ApiClient;
3171
+ function createSearchQueryForListRuns(query) {
3172
+ const searchParams = new URLSearchParams();
3173
+ if (query) {
3174
+ if (query.status) {
3175
+ searchParams.append("filter[status]", Array.isArray(query.status) ? query.status.join(",") : query.status);
3176
+ }
3177
+ if (query.taskIdentifier) {
3178
+ searchParams.append("filter[taskIdentifier]", Array.isArray(query.taskIdentifier) ? query.taskIdentifier.join(",") : query.taskIdentifier);
3179
+ }
3180
+ if (query.version) {
3181
+ searchParams.append("filter[version]", Array.isArray(query.version) ? query.version.join(",") : query.version);
3182
+ }
3183
+ if (query.bulkAction) {
3184
+ searchParams.append("filter[bulkAction]", query.bulkAction);
3185
+ }
3186
+ if (query.schedule) {
3187
+ searchParams.append("filter[schedule]", query.schedule);
3188
+ }
3189
+ if (typeof query.isTest === "boolean") {
3190
+ searchParams.append("filter[isTest]", String(query.isTest));
3191
+ }
3192
+ if (query.from) {
3193
+ searchParams.append("filter[createdAt][from]", query.from instanceof Date ? query.from.getTime().toString() : query.from.toString());
3194
+ }
3195
+ if (query.to) {
3196
+ searchParams.append("filter[createdAt][to]", query.to instanceof Date ? query.to.getTime().toString() : query.to.toString());
3197
+ }
3198
+ if (query.period) {
3199
+ searchParams.append("filter[createdAt][period]", query.period);
3200
+ }
3201
+ }
3202
+ return searchParams;
3203
+ }
3204
+ __name(createSearchQueryForListRuns, "createSearchQueryForListRuns");
2463
3205
  var _SimpleClock = class _SimpleClock {
2464
3206
  preciseNow() {
2465
3207
  const now = new PreciseDate();
@@ -2509,145 +3251,6 @@ var ClockAPI = _ClockAPI;
2509
3251
  // src/v3/clock-api.ts
2510
3252
  var clock = ClockAPI.getInstance();
2511
3253
 
2512
- // src/v3/errors.ts
2513
- function parseError(error) {
2514
- if (error instanceof Error) {
2515
- return {
2516
- type: "BUILT_IN_ERROR",
2517
- name: error.name,
2518
- message: error.message,
2519
- stackTrace: error.stack ?? ""
2520
- };
2521
- }
2522
- if (typeof error === "string") {
2523
- return {
2524
- type: "STRING_ERROR",
2525
- raw: error
2526
- };
2527
- }
2528
- try {
2529
- return {
2530
- type: "CUSTOM_ERROR",
2531
- raw: JSON.stringify(error)
2532
- };
2533
- } catch (e) {
2534
- return {
2535
- type: "CUSTOM_ERROR",
2536
- raw: String(error)
2537
- };
2538
- }
2539
- }
2540
- __name(parseError, "parseError");
2541
- function createErrorTaskError(error) {
2542
- switch (error.type) {
2543
- case "BUILT_IN_ERROR": {
2544
- const e = new Error(error.message);
2545
- e.name = error.name;
2546
- e.stack = error.stackTrace;
2547
- return e;
2548
- }
2549
- case "STRING_ERROR": {
2550
- return error.raw;
2551
- }
2552
- case "CUSTOM_ERROR": {
2553
- return JSON.parse(error.raw);
2554
- }
2555
- case "INTERNAL_ERROR": {
2556
- return new Error(`trigger.dev internal error (${error.code})`);
2557
- }
2558
- }
2559
- }
2560
- __name(createErrorTaskError, "createErrorTaskError");
2561
- function createJsonErrorObject(error) {
2562
- switch (error.type) {
2563
- case "BUILT_IN_ERROR": {
2564
- return {
2565
- name: error.name,
2566
- message: error.message,
2567
- stackTrace: error.stackTrace
2568
- };
2569
- }
2570
- case "STRING_ERROR": {
2571
- return {
2572
- message: error.raw
2573
- };
2574
- }
2575
- case "CUSTOM_ERROR": {
2576
- return {
2577
- message: error.raw
2578
- };
2579
- }
2580
- case "INTERNAL_ERROR": {
2581
- return {
2582
- message: `trigger.dev internal error (${error.code})`
2583
- };
2584
- }
2585
- }
2586
- }
2587
- __name(createJsonErrorObject, "createJsonErrorObject");
2588
- function correctErrorStackTrace(stackTrace, projectDir, options) {
2589
- const [errorLine, ...traceLines] = stackTrace.split("\n");
2590
- return [
2591
- options?.removeFirstLine ? void 0 : errorLine,
2592
- ...traceLines.map((line) => correctStackTraceLine(line, projectDir))
2593
- ].filter(Boolean).join("\n");
2594
- }
2595
- __name(correctErrorStackTrace, "correctErrorStackTrace");
2596
- var LINES_TO_IGNORE = [
2597
- /ConsoleInterceptor/,
2598
- /TriggerTracer/,
2599
- /TaskExecutor/,
2600
- /EXECUTE_TASK_RUN/,
2601
- /@trigger.dev\/core/,
2602
- /safeJsonProcess/,
2603
- /__entryPoint.ts/
2604
- ];
2605
- function correctStackTraceLine(line, projectDir) {
2606
- if (LINES_TO_IGNORE.some((regex) => regex.test(line))) {
2607
- return;
2608
- }
2609
- if (projectDir && !line.includes(projectDir)) {
2610
- return;
2611
- }
2612
- return line.trim();
2613
- }
2614
- __name(correctStackTraceLine, "correctStackTraceLine");
2615
- function groupTaskMetadataIssuesByTask(tasks, issues) {
2616
- return issues.reduce((acc, issue) => {
2617
- if (issue.path.length === 0) {
2618
- return acc;
2619
- }
2620
- const taskIndex = issue.path[1];
2621
- if (typeof taskIndex !== "number") {
2622
- return acc;
2623
- }
2624
- const task = tasks[taskIndex];
2625
- if (!task) {
2626
- return acc;
2627
- }
2628
- const restOfPath = issue.path.slice(2);
2629
- const taskId = task.id;
2630
- const taskName = task.exportName;
2631
- const filePath = task.filePath;
2632
- const key = taskIndex;
2633
- const existing = acc[key] ?? {
2634
- id: taskId,
2635
- exportName: taskName,
2636
- filePath,
2637
- issues: []
2638
- };
2639
- existing.issues.push({
2640
- message: issue.message,
2641
- path: restOfPath.length === 0 ? void 0 : restOfPath.join(".")
2642
- });
2643
- return {
2644
- ...acc,
2645
- [key]: existing
2646
- };
2647
- }, {});
2648
- }
2649
- __name(groupTaskMetadataIssuesByTask, "groupTaskMetadataIssuesByTask");
2650
-
2651
3254
  // src/v3/limits.ts
2652
3255
  var OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT = 256;
2653
3256
  var OTEL_LOG_ATTRIBUTE_COUNT_LIMIT = 256;
@@ -3679,6 +4282,6 @@ function safeJsonParse2(value) {
3679
4282
  }
3680
4283
  __name(safeJsonParse2, "safeJsonParse");
3681
4284
 
3682
- export { APIConnectionError, APIError, ApiClient, AttemptStatus, AuthenticationError, BackgroundWorkerClientMessages, BackgroundWorkerMetadata, BackgroundWorkerProperties, BackgroundWorkerServerMessages, BadRequestError, BatchTaskRunExecutionResult, BatchTriggerTaskRequestBody, BatchTriggerTaskResponse, CanceledRunResponse, CancellationSpanEvent, ClientToSharedQueueMessages, Config, ConflictError, CoordinatorToPlatformMessages, CoordinatorToProdWorkerMessages, CreateAuthorizationCodeResponseSchema, CreateBackgroundWorkerRequestBody, CreateBackgroundWorkerResponse, CreateEnvironmentVariableRequestBody, CreateScheduleOptions, CreateUploadPayloadUrlResponseBody, DeletedScheduleObject, DeploymentErrorData, EnvironmentType, EnvironmentVariable, EnvironmentVariableResponseBody, EnvironmentVariableValue, EnvironmentVariables, EventFilter, ExceptionEventProperties, ExceptionSpanEvent, ExternalBuildData, FetchRetryBackoffStrategy, FetchRetryByStatusOptions, FetchRetryHeadersStrategy, FetchRetryOptions, FetchRetryStrategy, FetchTimeoutOptions, FixedWindowRateLimit, GetBatchResponseBody, GetDeploymentResponseBody, GetEnvironmentVariablesResponseBody, GetPersonalAccessTokenRequestSchema, GetPersonalAccessTokenResponseSchema, GetProjectEnvResponse, GetProjectResponseBody, GetProjectsResponseBody, ImageDetailsMetadata, ImportEnvironmentVariablesRequestBody, InitializeDeploymentRequestBody, InitializeDeploymentResponseBody, InternalServerError, ListScheduleOptions, ListSchedulesResult, Machine, MachineCpu, MachineMemory, NULL_SENTINEL, NotFoundError, OFFLOAD_IO_PACKET_LENGTH_LIMIT, OTEL_ATTRIBUTE_PER_EVENT_COUNT_LIMIT, OTEL_ATTRIBUTE_PER_LINK_COUNT_LIMIT, OTEL_LINK_COUNT_LIMIT, OTEL_LOG_ATTRIBUTE_COUNT_LIMIT, OTEL_LOG_ATTRIBUTE_VALUE_LENGTH_LIMIT, OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT, OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT, OTEL_SPAN_EVENT_COUNT_LIMIT, OtherSpanEvent, PRIMARY_VARIANT, PermissionDeniedError, PlatformToCoordinatorMessages, PlatformToProviderMessages, PostStartCauses, PreStopCauses, ProdChildToWorkerMessages, ProdTaskRunExecution, ProdTaskRunExecutionPayload, ProdWorkerSocketData, ProdWorkerToChildMessages, ProdWorkerToCoordinatorMessages, ProviderToPlatformMessages, QueueOptions, RateLimitError, RateLimitOptions, ReplayRunResponse, RetrieveRunResponse, RetryOptions, RunStatus, ScheduleObject, ScheduledTaskPayload, SemanticInternalAttributes, SharedQueueToClientMessages, SlidingWindowRateLimit, SpanEvent, SpanEvents, SpanMessagingEvent, StartDeploymentIndexingRequestBody, StartDeploymentIndexingResponseBody, TaskEventStyle, TaskFileMetadata, TaskMetadata, TaskMetadataFailedToParseData, TaskMetadataWithFilePath, TaskResource, TaskRun, TaskRunBuiltInError, TaskRunContext, TaskRunCustomErrorObject, TaskRunError, TaskRunErrorCodes, TaskRunExecution, TaskRunExecutionAttempt, TaskRunExecutionBatch, TaskRunExecutionEnvironment, TaskRunExecutionOrganization, TaskRunExecutionPayload, TaskRunExecutionProject, TaskRunExecutionQueue, TaskRunExecutionResult, TaskRunExecutionRetry, TaskRunExecutionTask, TaskRunFailedExecutionResult, TaskRunInternalError, TaskRunStringError, TaskRunSuccessfulExecutionResult, TriggerTaskRequestBody, TriggerTaskResponse, TriggerTracer, UncaughtExceptionMessage, UnprocessableEntityError, UpdateEnvironmentVariableRequestBody, UpdateScheduleOptions, WaitReason, WhoAmIResponseSchema, accessoryAttributes, apiClientManager, calculateNextRetryDelay, calculateResetAt2 as calculateResetAt, childToWorkerMessages, clientWebsocketMessages, clock, conditionallyExportPacket, conditionallyImportPacket, correctErrorStackTrace, createErrorTaskError, createJsonErrorObject, createPacketAttributes, createPacketAttributesAsJson, defaultFetchRetryOptions, defaultRetryOptions, detectDependencyVersion, eventFilterMatches, flattenAttributes, formatDuration, formatDurationInDays, formatDurationMilliseconds, formatDurationNanoseconds, groupTaskMetadataIssuesByTask, imposeAttributeLimits, isCancellationSpanEvent, isExceptionSpanEvent, logger, millisecondsToNanoseconds, nanosecondsToMilliseconds, omit, packetRequiresOffloading, parseError, parsePacket, prettyPrintPacket, primitiveValueOrflattenedAttributes, runtime, serverWebsocketMessages, stringPatternMatchers, stringifyIO, taskCatalog, taskContext, unflattenAttributes, workerToChildMessages };
4285
+ export { ApiClient, ApiConnectionError, ApiError, AttemptStatus, AuthenticationError, BackgroundWorkerClientMessages, BackgroundWorkerMetadata, BackgroundWorkerProperties, BackgroundWorkerServerMessages, BadRequestError, BatchTaskRunExecutionResult, BatchTriggerTaskRequestBody, BatchTriggerTaskResponse, CanceledRunResponse, CancellationSpanEvent, ClientToSharedQueueMessages, Config, ConflictError, CoordinatorToPlatformMessages, CoordinatorToProdWorkerMessages, CreateAuthorizationCodeResponseSchema, CreateBackgroundWorkerRequestBody, CreateBackgroundWorkerResponse, CreateEnvironmentVariableRequestBody, CreateScheduleOptions, CreateUploadPayloadUrlResponseBody, CursorPage, DeletedScheduleObject, DeploymentErrorData, EnvironmentType, EnvironmentVariable, EnvironmentVariableResponseBody, EnvironmentVariableValue, EnvironmentVariables, EventFilter, ExceptionEventProperties, ExceptionSpanEvent, ExternalBuildData, FetchRetryBackoffStrategy, FetchRetryByStatusOptions, FetchRetryHeadersStrategy, FetchRetryOptions, FetchRetryStrategy, FetchTimeoutOptions, FixedWindowRateLimit, GetBatchResponseBody, GetDeploymentResponseBody, GetEnvironmentVariablesResponseBody, GetPersonalAccessTokenRequestSchema, GetPersonalAccessTokenResponseSchema, GetProjectEnvResponse, GetProjectResponseBody, GetProjectsResponseBody, ImageDetailsMetadata, ImportEnvironmentVariablesRequestBody, InitializeDeploymentRequestBody, InitializeDeploymentResponseBody, InternalServerError, ListRunResponse, ListRunResponseItem, ListScheduleOptions, ListSchedulesResult, Machine, MachineCpu, MachineMemory, NULL_SENTINEL, NotFoundError, OFFLOAD_IO_PACKET_LENGTH_LIMIT, OTEL_ATTRIBUTE_PER_EVENT_COUNT_LIMIT, OTEL_ATTRIBUTE_PER_LINK_COUNT_LIMIT, OTEL_LINK_COUNT_LIMIT, OTEL_LOG_ATTRIBUTE_COUNT_LIMIT, OTEL_LOG_ATTRIBUTE_VALUE_LENGTH_LIMIT, OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT, OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT, OTEL_SPAN_EVENT_COUNT_LIMIT, OffsetLimitPage, OtherSpanEvent, PRIMARY_VARIANT, PermissionDeniedError, PlatformToCoordinatorMessages, PlatformToProviderMessages, PostStartCauses, PreStopCauses, ProdChildToWorkerMessages, ProdTaskRunExecution, ProdTaskRunExecutionPayload, ProdWorkerSocketData, ProdWorkerToChildMessages, ProdWorkerToCoordinatorMessages, ProviderToPlatformMessages, QueueOptions, RateLimitError, RateLimitOptions, ReplayRunResponse, RetrieveRunResponse, RetryOptions, RunEnvironmentDetails, RunScheduleDetails, RunStatus, ScheduleGenerator, ScheduleObject, ScheduledTaskPayload, SemanticInternalAttributes, SerializedError, SharedQueueToClientMessages, SlidingWindowRateLimit, SpanEvent, SpanEvents, SpanMessagingEvent, StartDeploymentIndexingRequestBody, StartDeploymentIndexingResponseBody, TaskEventStyle, TaskFileMetadata, TaskMetadata, TaskMetadataFailedToParseData, TaskMetadataWithFilePath, TaskResource, TaskRun, TaskRunBuiltInError, TaskRunContext, TaskRunCustomErrorObject, TaskRunError, TaskRunErrorCodes, TaskRunExecution, TaskRunExecutionAttempt, TaskRunExecutionBatch, TaskRunExecutionEnvironment, TaskRunExecutionLazyAttemptPayload, TaskRunExecutionOrganization, TaskRunExecutionPayload, TaskRunExecutionProject, TaskRunExecutionQueue, TaskRunExecutionResult, TaskRunExecutionRetry, TaskRunExecutionTask, TaskRunFailedExecutionResult, TaskRunInternalError, TaskRunStringError, TaskRunSuccessfulExecutionResult, TriggerTaskRequestBody, TriggerTaskResponse, TriggerTracer, UncaughtExceptionMessage, UnprocessableEntityError, UpdateEnvironmentVariableRequestBody, UpdateScheduleOptions, WaitReason, WhoAmIResponseSchema, accessoryAttributes, apiClientManager, calculateNextRetryDelay, calculateResetAt2 as calculateResetAt, childToWorkerMessages, clientWebsocketMessages, clock, conditionallyExportPacket, conditionallyImportPacket, correctErrorStackTrace, createErrorTaskError, createJsonErrorObject, createPacketAttributes, createPacketAttributesAsJson, defaultFetchRetryOptions, defaultRetryOptions, detectDependencyVersion, eventFilterMatches, flattenAttributes, formatDuration, formatDurationInDays, formatDurationMilliseconds, formatDurationNanoseconds, groupTaskMetadataIssuesByTask, imposeAttributeLimits, isCancellationSpanEvent, isExceptionSpanEvent, logger, millisecondsToNanoseconds, nanosecondsToMilliseconds, omit, packetRequiresOffloading, parseError, parsePacket, prettyPrintPacket, primitiveValueOrflattenedAttributes, runtime, serverWebsocketMessages, stringPatternMatchers, stringifyIO, taskCatalog, taskContext, unflattenAttributes, workerToChildMessages };
3683
4286
  //# sourceMappingURL=out.js.map
3684
4287
  //# sourceMappingURL=index.mjs.map