@trigger.dev/core 0.0.0-prerelease-20240926084729 → 0.0.0-prerelease-20241003205750

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 (101) hide show
  1. package/dist/commonjs/schemas/api.d.ts +8 -8
  2. package/dist/commonjs/v3/apiClient/index.d.ts +55 -55
  3. package/dist/commonjs/v3/config.d.ts +8 -0
  4. package/dist/commonjs/v3/errors.js +4 -1
  5. package/dist/commonjs/v3/errors.js.map +1 -1
  6. package/dist/commonjs/v3/index.d.ts +1 -0
  7. package/dist/commonjs/v3/index.js +1 -0
  8. package/dist/commonjs/v3/index.js.map +1 -1
  9. package/dist/commonjs/v3/runMetadata/index.d.ts +2 -1
  10. package/dist/commonjs/v3/runMetadata/index.js +9 -2
  11. package/dist/commonjs/v3/runMetadata/index.js.map +1 -1
  12. package/dist/commonjs/v3/schemas/api.d.ts +285 -266
  13. package/dist/commonjs/v3/schemas/api.js +3 -0
  14. package/dist/commonjs/v3/schemas/api.js.map +1 -1
  15. package/dist/commonjs/v3/schemas/build.d.ts +66 -52
  16. package/dist/commonjs/v3/schemas/common.d.ts +116 -102
  17. package/dist/commonjs/v3/schemas/common.js +3 -0
  18. package/dist/commonjs/v3/schemas/common.js.map +1 -1
  19. package/dist/commonjs/v3/schemas/messages.d.ts +2267 -2119
  20. package/dist/commonjs/v3/schemas/resources.d.ts +36 -28
  21. package/dist/commonjs/v3/schemas/resources.js +1 -0
  22. package/dist/commonjs/v3/schemas/resources.js.map +1 -1
  23. package/dist/commonjs/v3/schemas/schemas.d.ts +282 -257
  24. package/dist/commonjs/v3/schemas/schemas.js +1 -0
  25. package/dist/commonjs/v3/schemas/schemas.js.map +1 -1
  26. package/dist/commonjs/v3/timeout/api.d.ts +11 -0
  27. package/dist/commonjs/v3/timeout/api.js +38 -0
  28. package/dist/commonjs/v3/timeout/api.js.map +1 -0
  29. package/dist/commonjs/v3/timeout/types.d.ts +9 -0
  30. package/dist/commonjs/v3/timeout/types.js +15 -0
  31. package/dist/commonjs/v3/timeout/types.js.map +1 -0
  32. package/dist/commonjs/v3/timeout/usageTimeoutManager.d.ts +10 -0
  33. package/dist/commonjs/v3/timeout/usageTimeoutManager.js +32 -0
  34. package/dist/commonjs/v3/timeout/usageTimeoutManager.js.map +1 -0
  35. package/dist/commonjs/v3/timeout-api.d.ts +3 -0
  36. package/dist/commonjs/v3/timeout-api.js +9 -0
  37. package/dist/commonjs/v3/timeout-api.js.map +1 -0
  38. package/dist/commonjs/v3/tracer.d.ts +1 -1
  39. package/dist/commonjs/v3/tracer.js +28 -14
  40. package/dist/commonjs/v3/tracer.js.map +1 -1
  41. package/dist/commonjs/v3/types/index.d.ts +10 -0
  42. package/dist/commonjs/v3/utils/globals.d.ts +4 -0
  43. package/dist/commonjs/v3/utils/globals.js.map +1 -1
  44. package/dist/commonjs/v3/workers/index.d.ts +1 -0
  45. package/dist/commonjs/v3/workers/index.js +3 -1
  46. package/dist/commonjs/v3/workers/index.js.map +1 -1
  47. package/dist/commonjs/v3/workers/taskExecutor.d.ts +1 -1
  48. package/dist/commonjs/v3/workers/taskExecutor.js +41 -35
  49. package/dist/commonjs/v3/workers/taskExecutor.js.map +1 -1
  50. package/dist/commonjs/version.js +1 -1
  51. package/dist/esm/schemas/api.d.ts +8 -8
  52. package/dist/esm/v3/apiClient/index.d.ts +55 -55
  53. package/dist/esm/v3/config.d.ts +8 -0
  54. package/dist/esm/v3/errors.js +4 -1
  55. package/dist/esm/v3/errors.js.map +1 -1
  56. package/dist/esm/v3/index.d.ts +1 -0
  57. package/dist/esm/v3/index.js +1 -0
  58. package/dist/esm/v3/index.js.map +1 -1
  59. package/dist/esm/v3/runMetadata/index.d.ts +2 -1
  60. package/dist/esm/v3/runMetadata/index.js +9 -2
  61. package/dist/esm/v3/runMetadata/index.js.map +1 -1
  62. package/dist/esm/v3/schemas/api.d.ts +285 -266
  63. package/dist/esm/v3/schemas/api.js +3 -0
  64. package/dist/esm/v3/schemas/api.js.map +1 -1
  65. package/dist/esm/v3/schemas/build.d.ts +66 -52
  66. package/dist/esm/v3/schemas/common.d.ts +116 -102
  67. package/dist/esm/v3/schemas/common.js +3 -0
  68. package/dist/esm/v3/schemas/common.js.map +1 -1
  69. package/dist/esm/v3/schemas/messages.d.ts +2231 -2083
  70. package/dist/esm/v3/schemas/resources.d.ts +36 -28
  71. package/dist/esm/v3/schemas/resources.js +1 -0
  72. package/dist/esm/v3/schemas/resources.js.map +1 -1
  73. package/dist/esm/v3/schemas/schemas.d.ts +282 -257
  74. package/dist/esm/v3/schemas/schemas.js +1 -0
  75. package/dist/esm/v3/schemas/schemas.js.map +1 -1
  76. package/dist/esm/v3/timeout/api.d.ts +11 -0
  77. package/dist/esm/v3/timeout/api.js +34 -0
  78. package/dist/esm/v3/timeout/api.js.map +1 -0
  79. package/dist/esm/v3/timeout/types.d.ts +9 -0
  80. package/dist/esm/v3/timeout/types.js +11 -0
  81. package/dist/esm/v3/timeout/types.js.map +1 -0
  82. package/dist/esm/v3/timeout/usageTimeoutManager.d.ts +10 -0
  83. package/dist/esm/v3/timeout/usageTimeoutManager.js +28 -0
  84. package/dist/esm/v3/timeout/usageTimeoutManager.js.map +1 -0
  85. package/dist/esm/v3/timeout-api.d.ts +3 -0
  86. package/dist/esm/v3/timeout-api.js +6 -0
  87. package/dist/esm/v3/timeout-api.js.map +1 -0
  88. package/dist/esm/v3/tracer.d.ts +1 -1
  89. package/dist/esm/v3/tracer.js +28 -14
  90. package/dist/esm/v3/tracer.js.map +1 -1
  91. package/dist/esm/v3/types/index.d.ts +10 -0
  92. package/dist/esm/v3/utils/globals.d.ts +4 -0
  93. package/dist/esm/v3/utils/globals.js.map +1 -1
  94. package/dist/esm/v3/workers/index.d.ts +1 -0
  95. package/dist/esm/v3/workers/index.js +1 -0
  96. package/dist/esm/v3/workers/index.js.map +1 -1
  97. package/dist/esm/v3/workers/taskExecutor.d.ts +1 -1
  98. package/dist/esm/v3/workers/taskExecutor.js +41 -35
  99. package/dist/esm/v3/workers/taskExecutor.js.map +1 -1
  100. package/dist/esm/version.js +1 -1
  101. package/package.json +1 -1
@@ -132,6 +132,7 @@ const taskMetadata = {
132
132
  machine: common_js_1.MachineConfig.optional(),
133
133
  triggerSource: zod_1.z.string().optional(),
134
134
  schedule: exports.ScheduleMetadata.optional(),
135
+ maxDuration: zod_1.z.number().optional(),
135
136
  };
136
137
  exports.TaskMetadata = zod_1.z.object(taskMetadata);
137
138
  exports.TaskFile = zod_1.z.object({
@@ -1 +1 @@
1
- {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../../../src/v3/schemas/schemas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../../../src/v3/schemas/schemas.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAExB,2CAA6E;AAE7E;;EAEE;AACW,QAAA,eAAe,GAAG,OAAC,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC;AAG9E,QAAA,uBAAuB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC9C,SAAS,EAAE,4BAAgB;IAC3B,YAAY,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,OAAO,EAAE,CAAC;IACnC,WAAW,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CAC7C,CAAC,CAAC;AAIH,uMAAuM;AACvM,uDAAuD;AACvD,gCAAgC;AAChC,iDAAiD;AACpC,QAAA,oBAAoB,GAAG,4BAAgB,CAAC,MAAM,CAAC;IAC1D,MAAM,EAAE,OAAC,CAAC,MAAM,CAAC;QACf,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE;QACd,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE;QACvB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;KACpB,CAAC;IACF,OAAO,EAAE,yBAAa,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC;CACvF,CAAC,CAAC;AAIU,QAAA,2BAA2B,GAAG,OAAC,CAAC,MAAM,CAAC;IAClD,SAAS,EAAE,4BAAoB;IAC/B,YAAY,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,OAAO,EAAE,CAAC;IACnC,WAAW,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CAC7C,CAAC,CAAC;AAIU,QAAA,oBAAoB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,cAAc,CAAC;IAC/B,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;IACjB,MAAM,EAAE,OAAC,CAAC,KAAK,CAAC;QACd,OAAC,CAAC,MAAM,CAAC;YACP,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;SACpB,CAAC;QACF,OAAC,CAAC,MAAM,CAAC;YACP,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;SACpB,CAAC;QACF,OAAC,CAAC,MAAM,CAAC;YACP,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;SAClB,CAAC;KACH,CAAC;CACH,CAAC,CAAC;AAEU,QAAA,sBAAsB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC7C,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC;IACjC,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;IACjB,MAAM,EAAE,OAAC,CAAC,KAAK,CAAC;QACd,OAAC,CAAC,MAAM,CAAC;YACP,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;SACpB,CAAC;QACF,OAAC,CAAC,MAAM,CAAC;YACP,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;SACpB,CAAC;QACF,OAAC,CAAC,MAAM,CAAC;YACP,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;SAClB,CAAC;KACH,CAAC;CACH,CAAC,CAAC;AAEU,QAAA,gBAAgB,GAAG,OAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC3D,4BAAoB;IACpB,8BAAsB;CACvB,CAAC,CAAC;AAIU,QAAA,YAAY,GAAG,OAAC,CAAC,MAAM,CAAC;IACnC,8CAA8C;IAC9C,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACxC;;;OAGG;IACH,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,+CAA+C;IAC/C,cAAc,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC3C,+CAA+C;IAC/C,cAAc,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC3C;;;OAGG;IACH,SAAS,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAC;AAIU,QAAA,YAAY,GAAG,OAAC,CAAC,MAAM,CAAC;IACnC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACH,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B;;8GAE0G;IAC1G,gBAAgB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;IAC9D,8CAA8C;IAC9C,SAAS,EAAE,wBAAgB,CAAC,QAAQ,EAAE;CACvC,CAAC,CAAC;AAIU,QAAA,gBAAgB,GAAG,OAAC,CAAC,MAAM,CAAC;IACvC,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;IAChB,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE;CACrB,CAAC,CAAC;AAEH,MAAM,YAAY,GAAG;IACnB,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE;IACd,KAAK,EAAE,oBAAY,CAAC,QAAQ,EAAE;IAC9B,KAAK,EAAE,oBAAY,CAAC,QAAQ,EAAE;IAC9B,OAAO,EAAE,yBAAa,CAAC,QAAQ,EAAE;IACjC,aAAa,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,QAAQ,EAAE,wBAAgB,CAAC,QAAQ,EAAE;IACrC,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACnC,CAAC;AAEW,QAAA,YAAY,GAAG,OAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;AAItC,QAAA,QAAQ,GAAG,OAAC,CAAC,MAAM,CAAC;IAC/B,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;IACjB,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE;CAChB,CAAC,CAAC;AAIH,MAAM,gBAAgB,GAAG;IACvB,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE;IACpB,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE;IACtB,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE;CACvB,CAAC;AAEW,QAAA,gBAAgB,GAAG,OAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAI9C,QAAA,YAAY,GAAG,OAAC,CAAC,MAAM,CAAC;IACnC,GAAG,YAAY;IACf,GAAG,gBAAgB;CACpB,CAAC,CAAC;AAIU,QAAA,eAAe,GAAG,OAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;AAGzD,QAAA,aAAa,GAAG,OAAC,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;AAGnD,MAAM,WAAW,GAAG,OAAC,CAAC,MAAM,CAAS,CAAC,GAAG,EAAE,EAAE;IAC3C,IAAI,CAAC;QACH,iCAAiC;QACjC,OAAO,OAAQ,GAAc,CAAC,IAAI,KAAK,UAAU,CAAC;IACpD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC,CAAC;AAEU,QAAA,MAAM,GAAG,OAAC,CAAC,MAAM,CAAC;IAC7B,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;IACnB,kBAAkB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE;IACjD,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,OAAO,EAAE,OAAC;SACP,MAAM,CAAC;QACN,YAAY,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;QACvC,OAAO,EAAE,oBAAY,CAAC,QAAQ,EAAE;KACjC,CAAC;SACD,QAAQ,EAAE;IACb,kBAAkB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE;IACjD,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE;IAC9C,oBAAoB,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,KAAK,CAAC,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC5E,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,oBAAoB,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC5C,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACpC,CAAC,CAAC;AAQU,QAAA,UAAU,GAAG,OAAC,CAAC,IAAI,CAAC,CAAC,mBAAmB,EAAE,eAAe,EAAE,gBAAgB,CAAC,CAAC,CAAC;AAI9E,QAAA,kCAAkC,GAAG,OAAC,CAAC,MAAM,CAAC;IACzD,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;IACjB,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;IACrB,MAAM,EAAE,OAAC,CAAC,OAAO,EAAE;IACnB,YAAY,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,OAAO,EAAE,CAAC;IACnC,WAAW,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CAC7C,CAAC,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { TimeoutManager } from "./types.js";
2
+ export declare class TimeoutAPI implements TimeoutManager {
3
+ #private;
4
+ private static _instance?;
5
+ private constructor();
6
+ static getInstance(): TimeoutAPI;
7
+ get signal(): AbortSignal | undefined;
8
+ abortAfterTimeout(timeoutInSeconds: number): AbortSignal;
9
+ setGlobalManager(manager: TimeoutManager): boolean;
10
+ disable(): void;
11
+ }
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TimeoutAPI = void 0;
4
+ const globals_js_1 = require("../utils/globals.js");
5
+ const API_NAME = "timeout";
6
+ class NoopTimeoutManager {
7
+ abortAfterTimeout(timeoutInSeconds) {
8
+ return new AbortController().signal;
9
+ }
10
+ }
11
+ const NOOP_TIMEOUT_MANAGER = new NoopTimeoutManager();
12
+ class TimeoutAPI {
13
+ static _instance;
14
+ constructor() { }
15
+ static getInstance() {
16
+ if (!this._instance) {
17
+ this._instance = new TimeoutAPI();
18
+ }
19
+ return this._instance;
20
+ }
21
+ get signal() {
22
+ return this.#getManagerManager().signal;
23
+ }
24
+ abortAfterTimeout(timeoutInSeconds) {
25
+ return this.#getManagerManager().abortAfterTimeout(timeoutInSeconds);
26
+ }
27
+ setGlobalManager(manager) {
28
+ return (0, globals_js_1.registerGlobal)(API_NAME, manager);
29
+ }
30
+ disable() {
31
+ (0, globals_js_1.unregisterGlobal)(API_NAME);
32
+ }
33
+ #getManagerManager() {
34
+ return (0, globals_js_1.getGlobal)(API_NAME) ?? NOOP_TIMEOUT_MANAGER;
35
+ }
36
+ }
37
+ exports.TimeoutAPI = TimeoutAPI;
38
+ //# sourceMappingURL=api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../../src/v3/timeout/api.ts"],"names":[],"mappings":";;;AAAA,oDAAkF;AAGlF,MAAM,QAAQ,GAAG,SAAS,CAAC;AAE3B,MAAM,kBAAkB;IACtB,iBAAiB,CAAC,gBAAwB;QACxC,OAAO,IAAI,eAAe,EAAE,CAAC,MAAM,CAAC;IACtC,CAAC;CACF;AAED,MAAM,oBAAoB,GAAG,IAAI,kBAAkB,EAAE,CAAC;AAEtD,MAAa,UAAU;IACb,MAAM,CAAC,SAAS,CAAc;IAEtC,gBAAuB,CAAC;IAEjB,MAAM,CAAC,WAAW;QACvB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,GAAG,IAAI,UAAU,EAAE,CAAC;QACpC,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,kBAAkB,EAAE,CAAC,MAAM,CAAC;IAC1C,CAAC;IAEM,iBAAiB,CAAC,gBAAwB;QAC/C,OAAO,IAAI,CAAC,kBAAkB,EAAE,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;IACvE,CAAC;IAEM,gBAAgB,CAAC,OAAuB;QAC7C,OAAO,IAAA,2BAAc,EAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;IAEM,OAAO;QACZ,IAAA,6BAAgB,EAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAED,kBAAkB;QAChB,OAAO,IAAA,sBAAS,EAAC,QAAQ,CAAC,IAAI,oBAAoB,CAAC;IACrD,CAAC;CACF;AAhCD,gCAgCC"}
@@ -0,0 +1,9 @@
1
+ export interface TimeoutManager {
2
+ abortAfterTimeout: (timeoutInSeconds: number) => AbortSignal;
3
+ signal?: AbortSignal;
4
+ }
5
+ export declare class TaskRunExceededMaxDuration extends Error {
6
+ readonly timeoutInSeconds: number;
7
+ readonly usageInSeconds: number;
8
+ constructor(timeoutInSeconds: number, usageInSeconds: number);
9
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TaskRunExceededMaxDuration = void 0;
4
+ class TaskRunExceededMaxDuration extends Error {
5
+ timeoutInSeconds;
6
+ usageInSeconds;
7
+ constructor(timeoutInSeconds, usageInSeconds) {
8
+ super(`Run exceeded maxDuration of ${timeoutInSeconds} seconds`);
9
+ this.timeoutInSeconds = timeoutInSeconds;
10
+ this.usageInSeconds = usageInSeconds;
11
+ this.name = "TaskRunExceededMaxDuration";
12
+ }
13
+ }
14
+ exports.TaskRunExceededMaxDuration = TaskRunExceededMaxDuration;
15
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/v3/timeout/types.ts"],"names":[],"mappings":";;;AAKA,MAAa,0BAA2B,SAAQ,KAAK;IAEjC;IACA;IAFlB,YACkB,gBAAwB,EACxB,cAAsB;QAEtC,KAAK,CAAC,+BAA+B,gBAAgB,UAAU,CAAC,CAAC;QAHjD,qBAAgB,GAAhB,gBAAgB,CAAQ;QACxB,mBAAc,GAAd,cAAc,CAAQ;QAGtC,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAC;IAC3C,CAAC;CACF;AARD,gEAQC"}
@@ -0,0 +1,10 @@
1
+ import { UsageManager } from "../usage/types.js";
2
+ import { TimeoutManager } from "./types.js";
3
+ export declare class UsageTimeoutManager implements TimeoutManager {
4
+ private readonly usageManager;
5
+ private _abortController;
6
+ private _abortSignal;
7
+ constructor(usageManager: UsageManager);
8
+ get signal(): AbortSignal | undefined;
9
+ abortAfterTimeout(timeoutInSeconds: number): AbortSignal;
10
+ }
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UsageTimeoutManager = void 0;
4
+ const types_js_1 = require("./types.js");
5
+ class UsageTimeoutManager {
6
+ usageManager;
7
+ _abortController;
8
+ _abortSignal;
9
+ constructor(usageManager) {
10
+ this.usageManager = usageManager;
11
+ this._abortController = new AbortController();
12
+ }
13
+ get signal() {
14
+ return this._abortSignal;
15
+ }
16
+ abortAfterTimeout(timeoutInSeconds) {
17
+ this._abortSignal = this._abortController.signal;
18
+ // Now we need to start an interval that will measure usage and abort the signal if the usage is too high
19
+ const intervalId = setInterval(() => {
20
+ const sample = this.usageManager.sample();
21
+ if (sample) {
22
+ if (sample.cpuTime > timeoutInSeconds * 1000) {
23
+ clearInterval(intervalId);
24
+ this._abortController.abort(new types_js_1.TaskRunExceededMaxDuration(timeoutInSeconds, sample.cpuTime / 1000));
25
+ }
26
+ }
27
+ }, 1000);
28
+ return this._abortSignal;
29
+ }
30
+ }
31
+ exports.UsageTimeoutManager = UsageTimeoutManager;
32
+ //# sourceMappingURL=usageTimeoutManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usageTimeoutManager.js","sourceRoot":"","sources":["../../../../src/v3/timeout/usageTimeoutManager.ts"],"names":[],"mappings":";;;AACA,yCAAwE;AAExE,MAAa,mBAAmB;IAID;IAHrB,gBAAgB,CAAkB;IAClC,YAAY,CAA0B;IAE9C,YAA6B,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;QACrD,IAAI,CAAC,gBAAgB,GAAG,IAAI,eAAe,EAAE,CAAC;IAChD,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,iBAAiB,CAAC,gBAAwB;QACxC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC;QAEjD,yGAAyG;QACzG,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;YAClC,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;YAC1C,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,MAAM,CAAC,OAAO,GAAG,gBAAgB,GAAG,IAAI,EAAE,CAAC;oBAC7C,aAAa,CAAC,UAAU,CAAC,CAAC;oBAE1B,IAAI,CAAC,gBAAgB,CAAC,KAAK,CACzB,IAAI,qCAA0B,CAAC,gBAAgB,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,CACxE,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC,EAAE,IAAI,CAAC,CAAC;QAET,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;CACF;AA/BD,kDA+BC"}
@@ -0,0 +1,3 @@
1
+ import { TimeoutAPI } from "./timeout/api.js";
2
+ /** Entrypoint for timeout API */
3
+ export declare const timeout: TimeoutAPI;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.timeout = void 0;
4
+ // Split module-level variable definition into separate files to allow
5
+ // tree-shaking on each api instance.
6
+ const api_js_1 = require("./timeout/api.js");
7
+ /** Entrypoint for timeout API */
8
+ exports.timeout = api_js_1.TimeoutAPI.getInstance();
9
+ //# sourceMappingURL=timeout-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timeout-api.js","sourceRoot":"","sources":["../../../src/v3/timeout-api.ts"],"names":[],"mappings":";;;AAAA,sEAAsE;AACtE,qCAAqC;AACrC,6CAA8C;AAC9C,iCAAiC;AACpB,QAAA,OAAO,GAAG,mBAAU,CAAC,WAAW,EAAE,CAAC"}
@@ -15,6 +15,6 @@ export declare class TriggerTracer {
15
15
  private _logger;
16
16
  private get logger();
17
17
  extractContext(traceContext?: Record<string, unknown>): Context;
18
- startActiveSpan<T>(name: string, fn: (span: Span) => Promise<T>, options?: SpanOptions, ctx?: Context): Promise<T>;
18
+ startActiveSpan<T>(name: string, fn: (span: Span) => Promise<T>, options?: SpanOptions, ctx?: Context, signal?: AbortSignal): Promise<T>;
19
19
  startSpan(name: string, options?: SpanOptions, ctx?: Context): Span;
20
20
  }
@@ -7,6 +7,7 @@ const semanticInternalAttributes_js_1 = require("./semanticInternalAttributes.js
7
7
  const clock_api_js_1 = require("./clock-api.js");
8
8
  const usage_api_js_1 = require("./usage-api.js");
9
9
  const task_context_api_js_1 = require("./task-context-api.js");
10
+ const index_js_1 = require("./otel/index.js");
10
11
  class TriggerTracer {
11
12
  _config;
12
13
  constructor(_config) {
@@ -33,14 +34,22 @@ class TriggerTracer {
33
34
  extractContext(traceContext) {
34
35
  return api_1.propagation.extract(api_1.context.active(), traceContext ?? {});
35
36
  }
36
- startActiveSpan(name, fn, options, ctx) {
37
+ startActiveSpan(name, fn, options, ctx, signal) {
37
38
  const parentContext = ctx ?? api_1.context.active();
38
39
  const attributes = options?.attributes ?? {};
40
+ let spanEnded = false;
39
41
  return this.tracer.startActiveSpan(name, {
40
42
  ...options,
41
43
  attributes,
42
44
  startTime: clock_api_js_1.clock.preciseNow(),
43
45
  }, parentContext, async (span) => {
46
+ signal?.addEventListener("abort", () => {
47
+ if (!spanEnded) {
48
+ spanEnded = true;
49
+ (0, index_js_1.recordSpanException)(span, signal.reason);
50
+ span.end();
51
+ }
52
+ });
44
53
  if (task_context_api_js_1.taskContext.ctx) {
45
54
  this.tracer
46
55
  .startSpan(name, {
@@ -58,24 +67,29 @@ class TriggerTracer {
58
67
  return await fn(span);
59
68
  }
60
69
  catch (e) {
61
- if (typeof e === "string" || e instanceof Error) {
62
- span.recordException(e);
70
+ if (!spanEnded) {
71
+ if (typeof e === "string" || e instanceof Error) {
72
+ span.recordException(e);
73
+ }
74
+ span.setStatus({ code: api_1.SpanStatusCode.ERROR });
63
75
  }
64
- span.setStatus({ code: api_1.SpanStatusCode.ERROR });
65
76
  throw e;
66
77
  }
67
78
  finally {
68
- if (task_context_api_js_1.taskContext.ctx) {
69
- const usageSample = usage_api_js_1.usage.stop(usageMeasurement);
70
- const machine = task_context_api_js_1.taskContext.ctx.machine;
71
- span.setAttributes({
72
- [semanticInternalAttributes_js_1.SemanticInternalAttributes.USAGE_DURATION_MS]: usageSample.cpuTime,
73
- [semanticInternalAttributes_js_1.SemanticInternalAttributes.USAGE_COST_IN_CENTS]: machine?.centsPerMs
74
- ? usageSample.cpuTime * machine.centsPerMs
75
- : 0,
76
- });
79
+ if (!spanEnded) {
80
+ spanEnded = true;
81
+ if (task_context_api_js_1.taskContext.ctx) {
82
+ const usageSample = usage_api_js_1.usage.stop(usageMeasurement);
83
+ const machine = task_context_api_js_1.taskContext.ctx.machine;
84
+ span.setAttributes({
85
+ [semanticInternalAttributes_js_1.SemanticInternalAttributes.USAGE_DURATION_MS]: usageSample.cpuTime,
86
+ [semanticInternalAttributes_js_1.SemanticInternalAttributes.USAGE_COST_IN_CENTS]: machine?.centsPerMs
87
+ ? usageSample.cpuTime * machine.centsPerMs
88
+ : 0,
89
+ });
90
+ }
91
+ span.end(clock_api_js_1.clock.preciseNow());
77
92
  }
78
- span.end(clock_api_js_1.clock.preciseNow());
79
93
  }
80
94
  });
81
95
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tracer.js","sourceRoot":"","sources":["../../../src/v3/tracer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tracer.js","sourceRoot":"","sources":["../../../src/v3/tracer.ts"],"names":[],"mappings":"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"}
@@ -7,16 +7,24 @@ export type RunFnParams<TInitOutput extends InitOutput> = Prettify<{
7
7
  ctx: Context;
8
8
  /** If you use the `init` function, this will be whatever you returned. */
9
9
  init?: TInitOutput;
10
+ /** Abort signal that is aborted when a task run exceeds it's maxDuration. Can be used to automatically cancel downstream requests */
11
+ signal?: AbortSignal;
10
12
  }>;
11
13
  export type MiddlewareFnParams = Prettify<{
12
14
  ctx: Context;
13
15
  next: () => Promise<void>;
16
+ /** Abort signal that is aborted when a task run exceeds it's maxDuration. Can be used to automatically cancel downstream requests */
17
+ signal?: AbortSignal;
14
18
  }>;
15
19
  export type InitFnParams = Prettify<{
16
20
  ctx: Context;
21
+ /** Abort signal that is aborted when a task run exceeds it's maxDuration. Can be used to automatically cancel downstream requests */
22
+ signal?: AbortSignal;
17
23
  }>;
18
24
  export type StartFnParams = Prettify<{
19
25
  ctx: Context;
26
+ /** Abort signal that is aborted when a task run exceeds it's maxDuration. Can be used to automatically cancel downstream requests */
27
+ signal?: AbortSignal;
20
28
  }>;
21
29
  export type Context = TaskRunContext;
22
30
  export type SuccessFnParams<TInitOutput extends InitOutput> = RunFnParams<TInitOutput>;
@@ -39,6 +47,8 @@ export type HandleErrorArgs = {
39
47
  retry?: RetryOptions;
40
48
  retryAt?: Date;
41
49
  retryDelayInMs?: number;
50
+ /** Abort signal that is aborted when a task run exceeds it's maxDuration. Can be used to automatically cancel downstream requests */
51
+ signal?: AbortSignal;
42
52
  };
43
53
  export type HandleErrorFunction = (payload: any, error: unknown, params: HandleErrorArgs) => HandleErrorResult;
44
54
  type ResolveEnvironmentVariablesOptions = {
@@ -1,8 +1,10 @@
1
+ import { DeserializedJson } from "../../schemas/json.js";
1
2
  import { ApiClientConfiguration } from "../apiClientManager/types.js";
2
3
  import { Clock } from "../clock/clock.js";
3
4
  import type { RuntimeManager } from "../runtime/manager.js";
4
5
  import { TaskCatalog } from "../task-catalog/catalog.js";
5
6
  import { TaskContext } from "../taskContext/types.js";
7
+ import { TimeoutManager } from "../timeout/types.js";
6
8
  import { UsageManager } from "../usage/types.js";
7
9
  export declare function registerGlobal<Type extends keyof TriggerDotDevGlobalAPI>(type: Type, instance: TriggerDotDevGlobalAPI[Type], allowOverride?: boolean): boolean;
8
10
  export declare function getGlobal<Type extends keyof TriggerDotDevGlobalAPI>(type: Type): TriggerDotDevGlobalAPI[Type] | undefined;
@@ -15,5 +17,7 @@ type TriggerDotDevGlobalAPI = {
15
17
  ["task-catalog"]?: TaskCatalog;
16
18
  ["task-context"]?: TaskContext;
17
19
  ["api-client"]?: ApiClientConfiguration;
20
+ ["run-metadata"]?: Record<string, DeserializedJson>;
21
+ ["timeout"]?: TimeoutManager;
18
22
  };
19
23
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"globals.js","sourceRoot":"","sources":["../../../../src/v3/utils/globals.ts"],"names":[],"mappings":";;AAYA,wCAgBC;AAED,8BAIC;AAED,4CAMC;AApCD,+CAA4C;AAE5C,MAAM,0BAA0B,GAAG,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;AAEpE,MAAM,OAAO,GAAG,yBAAkC,CAAC;AAEnD,SAAgB,cAAc,CAC5B,IAAU,EACV,QAAsC,EACtC,aAAa,GAAG,KAAK;IAErB,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,0BAA0B,CAAC,GAAG,OAAO,CAAC,0BAA0B,CAAC,IAAI,EAAE,CAAC,CAAC;IAE9F,IAAI,CAAC,aAAa,IAAI,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QAChC,yCAAyC;QACzC,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,yDAAyD,IAAI,EAAE,CAAC,CAAC;QACvF,OAAO,KAAK,CAAC;IACf,CAAC;IAED,GAAG,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC;IAErB,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAgB,SAAS,CACvB,IAAU;IAEV,OAAO,OAAO,CAAC,0BAA0B,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;AACrD,CAAC;AAED,SAAgB,gBAAgB,CAAC,IAAkC;IACjE,MAAM,GAAG,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;IAEhD,IAAI,GAAG,EAAE,CAAC;QACR,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"globals.js","sourceRoot":"","sources":["../../../../src/v3/utils/globals.ts"],"names":[],"mappings":";;AAcA,wCAgBC;AAED,8BAIC;AAED,4CAMC;AApCD,+CAA4C;AAE5C,MAAM,0BAA0B,GAAG,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;AAEpE,MAAM,OAAO,GAAG,yBAAkC,CAAC;AAEnD,SAAgB,cAAc,CAC5B,IAAU,EACV,QAAsC,EACtC,aAAa,GAAG,KAAK;IAErB,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,0BAA0B,CAAC,GAAG,OAAO,CAAC,0BAA0B,CAAC,IAAI,EAAE,CAAC,CAAC;IAE9F,IAAI,CAAC,aAAa,IAAI,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QAChC,yCAAyC;QACzC,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,yDAAyD,IAAI,EAAE,CAAC,CAAC;QACvF,OAAO,KAAK,CAAC;IACf,CAAC;IAED,GAAG,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC;IAErB,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAgB,SAAS,CACvB,IAAU;IAEV,OAAO,OAAO,CAAC,0BAA0B,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;AACrD,CAAC;AAED,SAAgB,gBAAgB,CAAC,IAAkC;IACjE,MAAM,GAAG,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;IAEhD,IAAI,GAAG,EAAE,CAAC;QACR,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;AACH,CAAC"}
@@ -10,3 +10,4 @@ export { TaskContextSpanProcessor, TaskContextLogProcessor, } from "../taskConte
10
10
  export * from "../usage-api.js";
11
11
  export { DevUsageManager } from "../usage/devUsageManager.js";
12
12
  export { ProdUsageManager, type ProdUsageManagerOptions } from "../usage/prodUsageManager.js";
13
+ export { UsageTimeoutManager } from "../timeout/usageTimeoutManager.js";
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.ProdUsageManager = exports.DevUsageManager = exports.TaskContextLogProcessor = exports.TaskContextSpanProcessor = exports.StandardTaskCatalog = exports.recordSpanException = exports.TracingSDK = exports.ConsoleInterceptor = exports.logLevels = exports.OtelTaskLogger = exports.getEnvVar = exports.DurableClock = exports.TaskExecutor = void 0;
17
+ exports.UsageTimeoutManager = exports.ProdUsageManager = exports.DevUsageManager = exports.TaskContextLogProcessor = exports.TaskContextSpanProcessor = exports.StandardTaskCatalog = exports.recordSpanException = exports.TracingSDK = exports.ConsoleInterceptor = exports.logLevels = exports.OtelTaskLogger = exports.getEnvVar = exports.DurableClock = exports.TaskExecutor = void 0;
18
18
  var taskExecutor_js_1 = require("./taskExecutor.js");
19
19
  Object.defineProperty(exports, "TaskExecutor", { enumerable: true, get: function () { return taskExecutor_js_1.TaskExecutor; } });
20
20
  var preciseWallClock_js_1 = require("../clock/preciseWallClock.js");
@@ -39,4 +39,6 @@ var devUsageManager_js_1 = require("../usage/devUsageManager.js");
39
39
  Object.defineProperty(exports, "DevUsageManager", { enumerable: true, get: function () { return devUsageManager_js_1.DevUsageManager; } });
40
40
  var prodUsageManager_js_1 = require("../usage/prodUsageManager.js");
41
41
  Object.defineProperty(exports, "ProdUsageManager", { enumerable: true, get: function () { return prodUsageManager_js_1.ProdUsageManager; } });
42
+ var usageTimeoutManager_js_1 = require("../timeout/usageTimeoutManager.js");
43
+ Object.defineProperty(exports, "UsageTimeoutManager", { enumerable: true, get: function () { return usageTimeoutManager_js_1.UsageTimeoutManager; } });
42
44
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/v3/workers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,qDAA2E;AAAlE,+GAAA,YAAY,OAAA;AAErB,oEAAgF;AAAvE,mHAAA,gBAAgB,OAAgB;AACzC,gDAA+C;AAAtC,sGAAA,SAAS,OAAA;AAClB,yDAAoE;AAA3D,+GAAA,cAAc,OAAA;AAAE,0GAAA,SAAS,OAAA;AAClC,kEAA8D;AAArD,2HAAA,kBAAkB,OAAA;AAC3B,6CAAmG;AAA1F,sGAAA,UAAU,OAAA;AAAkC,+GAAA,mBAAmB,OAAA;AACxE,iFAA6E;AAApE,6HAAA,mBAAmB,OAAA;AAC5B,sEAG0C;AAFxC,6HAAA,wBAAwB,OAAA;AACxB,4HAAA,uBAAuB,OAAA;AAEzB,kDAAgC;AAChC,kEAA8D;AAArD,qHAAA,eAAe,OAAA;AACxB,oEAA8F;AAArF,uHAAA,gBAAgB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/v3/workers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,qDAA2E;AAAlE,+GAAA,YAAY,OAAA;AAErB,oEAAgF;AAAvE,mHAAA,gBAAgB,OAAgB;AACzC,gDAA+C;AAAtC,sGAAA,SAAS,OAAA;AAClB,yDAAoE;AAA3D,+GAAA,cAAc,OAAA;AAAE,0GAAA,SAAS,OAAA;AAClC,kEAA8D;AAArD,2HAAA,kBAAkB,OAAA;AAC3B,6CAAmG;AAA1F,sGAAA,UAAU,OAAA;AAAkC,+GAAA,mBAAmB,OAAA;AACxE,iFAA6E;AAApE,6HAAA,mBAAmB,OAAA;AAC5B,sEAG0C;AAFxC,6HAAA,wBAAwB,OAAA;AACxB,4HAAA,uBAAuB,OAAA;AAEzB,kDAAgC;AAChC,kEAA8D;AAArD,qHAAA,eAAe,OAAA;AACxB,oEAA8F;AAArF,uHAAA,gBAAgB,OAAA;AACzB,4EAAwE;AAA/D,6HAAA,mBAAmB,OAAA"}
@@ -21,7 +21,7 @@ export declare class TaskExecutor {
21
21
  private _importedConfig;
22
22
  private _handleErrorFn;
23
23
  constructor(task: TaskMetadataWithFunctions, options: TaskExecutorOptions);
24
- execute(execution: TaskRunExecution, worker: ServerBackgroundWorker, traceContext: Record<string, unknown>, usage: UsageMeasurement): Promise<{
24
+ execute(execution: TaskRunExecution, worker: ServerBackgroundWorker, traceContext: Record<string, unknown>, usage: UsageMeasurement, signal?: AbortSignal): Promise<{
25
25
  result: TaskRunExecutionResult;
26
26
  }>;
27
27
  }
@@ -26,7 +26,7 @@ class TaskExecutor {
26
26
  this._importedConfig = options.config;
27
27
  this._handleErrorFn = options.handleErrorFn;
28
28
  }
29
- async execute(execution, worker, traceContext, usage) {
29
+ async execute(execution, worker, traceContext, usage, signal) {
30
30
  const ctx = index_js_3.TaskRunContext.parse(execution);
31
31
  const attemptMessage = `Attempt ${execution.attempt.number}`;
32
32
  const originalPacket = {
@@ -53,11 +53,11 @@ class TaskExecutor {
53
53
  const payloadPacket = await (0, ioSerialization_js_1.conditionallyImportPacket)(originalPacket, this._tracer);
54
54
  parsedPayload = await (0, ioSerialization_js_1.parsePacket)(payloadPacket);
55
55
  if (execution.attempt.number === 1) {
56
- await this.#callOnStartFunctions(parsedPayload, ctx);
56
+ await this.#callOnStartFunctions(parsedPayload, ctx, signal);
57
57
  }
58
- initOutput = await this.#callInitFunctions(parsedPayload, ctx);
59
- const output = await this.#callRun(parsedPayload, ctx, initOutput);
60
- await this.#callOnSuccessFunctions(parsedPayload, output, ctx, initOutput);
58
+ initOutput = await this.#callInitFunctions(parsedPayload, ctx, signal);
59
+ const output = await this.#callRun(parsedPayload, ctx, initOutput, signal);
60
+ await this.#callOnSuccessFunctions(parsedPayload, output, ctx, initOutput, signal);
61
61
  try {
62
62
  const stringifiedOutput = await (0, ioSerialization_js_1.stringifyIO)(output);
63
63
  const finalOutput = await (0, ioSerialization_js_1.conditionallyExportPacket)(stringifiedOutput, `${execution.attempt.id}/output`, this._tracer);
@@ -91,10 +91,10 @@ class TaskExecutor {
91
91
  }
92
92
  catch (runError) {
93
93
  try {
94
- const handleErrorResult = await this.#handleError(execution, runError, parsedPayload, ctx);
94
+ const handleErrorResult = await this.#handleError(execution, runError, parsedPayload, ctx, signal);
95
95
  (0, index_js_2.recordSpanException)(span, handleErrorResult.error ?? runError);
96
96
  if (handleErrorResult.status !== "retry") {
97
- await this.#callOnFailureFunctions(parsedPayload, handleErrorResult.error ?? runError, ctx, initOutput);
97
+ await this.#callOnFailureFunctions(parsedPayload, handleErrorResult.error ?? runError, ctx, initOutput, signal);
98
98
  }
99
99
  return {
100
100
  id: execution.run.id,
@@ -124,7 +124,7 @@ class TaskExecutor {
124
124
  }
125
125
  }
126
126
  finally {
127
- await this.#callTaskCleanup(parsedPayload, ctx, initOutput);
127
+ await this.#callTaskCleanup(parsedPayload, ctx, initOutput, signal);
128
128
  }
129
129
  });
130
130
  }, {
@@ -132,58 +132,62 @@ class TaskExecutor {
132
132
  attributes: {
133
133
  [semanticInternalAttributes_js_1.SemanticInternalAttributes.STYLE_ICON]: "attempt",
134
134
  },
135
- }, this._tracer.extractContext(traceContext));
135
+ }, this._tracer.extractContext(traceContext), signal);
136
136
  return { result };
137
137
  }
138
- async #callRun(payload, ctx, init) {
138
+ async #callRun(payload, ctx, init, signal) {
139
139
  const runFn = this.task.fns.run;
140
140
  const middlewareFn = this.task.fns.middleware;
141
141
  if (!runFn) {
142
142
  throw new Error("Task does not have a run function");
143
143
  }
144
144
  if (!middlewareFn) {
145
- return runFn(payload, { ctx, init });
145
+ return runFn(payload, { ctx, init, signal });
146
146
  }
147
- return middlewareFn(payload, { ctx, next: async () => runFn(payload, { ctx, init }) });
147
+ return middlewareFn(payload, {
148
+ ctx,
149
+ signal,
150
+ next: async () => runFn(payload, { ctx, init, signal }),
151
+ });
148
152
  }
149
- async #callInitFunctions(payload, ctx) {
150
- await this.#callConfigInit(payload, ctx);
153
+ async #callInitFunctions(payload, ctx, signal) {
154
+ await this.#callConfigInit(payload, ctx, signal);
151
155
  const initFn = this.task.fns.init;
152
156
  if (!initFn) {
153
157
  return {};
154
158
  }
155
159
  return this._tracer.startActiveSpan("init", async (span) => {
156
- return await initFn(payload, { ctx });
160
+ return await initFn(payload, { ctx, signal });
157
161
  }, {
158
162
  attributes: {
159
163
  [semanticInternalAttributes_js_1.SemanticInternalAttributes.STYLE_ICON]: "function",
160
164
  },
161
165
  });
162
166
  }
163
- async #callConfigInit(payload, ctx) {
167
+ async #callConfigInit(payload, ctx, signal) {
164
168
  const initFn = this._importedConfig?.init;
165
169
  if (!initFn) {
166
170
  return {};
167
171
  }
168
172
  return this._tracer.startActiveSpan("config.init", async (span) => {
169
- return await initFn(payload, { ctx });
173
+ return await initFn(payload, { ctx, signal });
170
174
  }, {
171
175
  attributes: {
172
176
  [semanticInternalAttributes_js_1.SemanticInternalAttributes.STYLE_ICON]: "function",
173
177
  },
174
178
  });
175
179
  }
176
- async #callOnSuccessFunctions(payload, output, ctx, initOutput) {
177
- await this.#callOnSuccessFunction(this.task.fns.onSuccess, "task.onSuccess", payload, output, ctx, initOutput);
178
- await this.#callOnSuccessFunction(this._importedConfig?.onSuccess, "config.onSuccess", payload, output, ctx, initOutput);
180
+ async #callOnSuccessFunctions(payload, output, ctx, initOutput, signal) {
181
+ await this.#callOnSuccessFunction(this.task.fns.onSuccess, "task.onSuccess", payload, output, ctx, initOutput, signal);
182
+ await this.#callOnSuccessFunction(this._importedConfig?.onSuccess, "config.onSuccess", payload, output, ctx, initOutput, signal);
179
183
  }
180
- async #callOnSuccessFunction(onSuccessFn, name, payload, output, ctx, initOutput) {
184
+ async #callOnSuccessFunction(onSuccessFn, name, payload, output, ctx, initOutput, signal) {
181
185
  if (!onSuccessFn) {
182
186
  return;
183
187
  }
184
188
  try {
185
189
  await this._tracer.startActiveSpan(name, async (span) => {
186
- return await onSuccessFn(payload, output, { ctx, init: initOutput });
190
+ return await onSuccessFn(payload, output, { ctx, init: initOutput, signal });
187
191
  }, {
188
192
  attributes: {
189
193
  [semanticInternalAttributes_js_1.SemanticInternalAttributes.STYLE_ICON]: "function",
@@ -194,17 +198,17 @@ class TaskExecutor {
194
198
  // Ignore errors from onSuccess functions
195
199
  }
196
200
  }
197
- async #callOnFailureFunctions(payload, error, ctx, initOutput) {
198
- await this.#callOnFailureFunction(this.task.fns.onFailure, "task.onFailure", payload, error, ctx, initOutput);
199
- await this.#callOnFailureFunction(this._importedConfig?.onFailure, "config.onFailure", payload, error, ctx, initOutput);
201
+ async #callOnFailureFunctions(payload, error, ctx, initOutput, signal) {
202
+ await this.#callOnFailureFunction(this.task.fns.onFailure, "task.onFailure", payload, error, ctx, initOutput, signal);
203
+ await this.#callOnFailureFunction(this._importedConfig?.onFailure, "config.onFailure", payload, error, ctx, initOutput, signal);
200
204
  }
201
- async #callOnFailureFunction(onFailureFn, name, payload, error, ctx, initOutput) {
205
+ async #callOnFailureFunction(onFailureFn, name, payload, error, ctx, initOutput, signal) {
202
206
  if (!onFailureFn) {
203
207
  return;
204
208
  }
205
209
  try {
206
210
  return await this._tracer.startActiveSpan(name, async (span) => {
207
- return await onFailureFn(payload, error, { ctx, init: initOutput });
211
+ return await onFailureFn(payload, error, { ctx, init: initOutput, signal });
208
212
  }, {
209
213
  attributes: {
210
214
  [semanticInternalAttributes_js_1.SemanticInternalAttributes.STYLE_ICON]: "function",
@@ -215,17 +219,17 @@ class TaskExecutor {
215
219
  // Ignore errors from onFailure functions
216
220
  }
217
221
  }
218
- async #callOnStartFunctions(payload, ctx) {
219
- await this.#callOnStartFunction(this._importedConfig?.onStart, "config.onStart", payload, ctx, {});
220
- await this.#callOnStartFunction(this.task.fns.onStart, "task.onStart", payload, ctx, {});
222
+ async #callOnStartFunctions(payload, ctx, signal) {
223
+ await this.#callOnStartFunction(this._importedConfig?.onStart, "config.onStart", payload, ctx, {}, signal);
224
+ await this.#callOnStartFunction(this.task.fns.onStart, "task.onStart", payload, ctx, {}, signal);
221
225
  }
222
- async #callOnStartFunction(onStartFn, name, payload, ctx, initOutput) {
226
+ async #callOnStartFunction(onStartFn, name, payload, ctx, initOutput, signal) {
223
227
  if (!onStartFn) {
224
228
  return;
225
229
  }
226
230
  try {
227
231
  await this._tracer.startActiveSpan(name, async (span) => {
228
- return await onStartFn(payload, { ctx });
232
+ return await onStartFn(payload, { ctx, signal });
229
233
  }, {
230
234
  attributes: {
231
235
  [semanticInternalAttributes_js_1.SemanticInternalAttributes.STYLE_ICON]: "function",
@@ -236,16 +240,16 @@ class TaskExecutor {
236
240
  // Ignore errors from onStart functions
237
241
  }
238
242
  }
239
- async #callTaskCleanup(payload, ctx, init) {
243
+ async #callTaskCleanup(payload, ctx, init, signal) {
240
244
  const cleanupFn = this.task.fns.cleanup;
241
245
  if (!cleanupFn) {
242
246
  return;
243
247
  }
244
248
  return this._tracer.startActiveSpan("cleanup", async (span) => {
245
- return await cleanupFn(payload, { ctx, init });
249
+ return await cleanupFn(payload, { ctx, init, signal });
246
250
  });
247
251
  }
248
- async #handleError(execution, error, payload, ctx) {
252
+ async #handleError(execution, error, payload, ctx, signal) {
249
253
  const retriesConfig = this._importedConfig?.retries;
250
254
  const retry = this.task.retry ?? retriesConfig?.default;
251
255
  if (!retry) {
@@ -277,6 +281,7 @@ class TaskExecutor {
277
281
  retry,
278
282
  retryDelayInMs: delay,
279
283
  retryAt: delay ? new Date(Date.now() + delay) : undefined,
284
+ signal,
280
285
  })
281
286
  : this._importedConfig
282
287
  ? await this._handleErrorFn?.(payload, error, {
@@ -284,6 +289,7 @@ class TaskExecutor {
284
289
  retry,
285
290
  retryDelayInMs: delay,
286
291
  retryAt: delay ? new Date(Date.now() + delay) : undefined,
292
+ signal,
287
293
  })
288
294
  : undefined;
289
295
  // If handleErrorResult