@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.
- package/dist/commonjs/schemas/api.d.ts +8 -8
- package/dist/commonjs/v3/apiClient/index.d.ts +55 -55
- package/dist/commonjs/v3/config.d.ts +8 -0
- package/dist/commonjs/v3/errors.js +4 -1
- package/dist/commonjs/v3/errors.js.map +1 -1
- package/dist/commonjs/v3/index.d.ts +1 -0
- package/dist/commonjs/v3/index.js +1 -0
- package/dist/commonjs/v3/index.js.map +1 -1
- package/dist/commonjs/v3/runMetadata/index.d.ts +2 -1
- package/dist/commonjs/v3/runMetadata/index.js +9 -2
- package/dist/commonjs/v3/runMetadata/index.js.map +1 -1
- package/dist/commonjs/v3/schemas/api.d.ts +285 -266
- package/dist/commonjs/v3/schemas/api.js +3 -0
- package/dist/commonjs/v3/schemas/api.js.map +1 -1
- package/dist/commonjs/v3/schemas/build.d.ts +66 -52
- package/dist/commonjs/v3/schemas/common.d.ts +116 -102
- package/dist/commonjs/v3/schemas/common.js +3 -0
- package/dist/commonjs/v3/schemas/common.js.map +1 -1
- package/dist/commonjs/v3/schemas/messages.d.ts +2267 -2119
- package/dist/commonjs/v3/schemas/resources.d.ts +36 -28
- package/dist/commonjs/v3/schemas/resources.js +1 -0
- package/dist/commonjs/v3/schemas/resources.js.map +1 -1
- package/dist/commonjs/v3/schemas/schemas.d.ts +282 -257
- package/dist/commonjs/v3/schemas/schemas.js +1 -0
- package/dist/commonjs/v3/schemas/schemas.js.map +1 -1
- package/dist/commonjs/v3/timeout/api.d.ts +11 -0
- package/dist/commonjs/v3/timeout/api.js +38 -0
- package/dist/commonjs/v3/timeout/api.js.map +1 -0
- package/dist/commonjs/v3/timeout/types.d.ts +9 -0
- package/dist/commonjs/v3/timeout/types.js +15 -0
- package/dist/commonjs/v3/timeout/types.js.map +1 -0
- package/dist/commonjs/v3/timeout/usageTimeoutManager.d.ts +10 -0
- package/dist/commonjs/v3/timeout/usageTimeoutManager.js +32 -0
- package/dist/commonjs/v3/timeout/usageTimeoutManager.js.map +1 -0
- package/dist/commonjs/v3/timeout-api.d.ts +3 -0
- package/dist/commonjs/v3/timeout-api.js +9 -0
- package/dist/commonjs/v3/timeout-api.js.map +1 -0
- package/dist/commonjs/v3/tracer.d.ts +1 -1
- package/dist/commonjs/v3/tracer.js +28 -14
- package/dist/commonjs/v3/tracer.js.map +1 -1
- package/dist/commonjs/v3/types/index.d.ts +10 -0
- package/dist/commonjs/v3/utils/globals.d.ts +4 -0
- package/dist/commonjs/v3/utils/globals.js.map +1 -1
- package/dist/commonjs/v3/workers/index.d.ts +1 -0
- package/dist/commonjs/v3/workers/index.js +3 -1
- package/dist/commonjs/v3/workers/index.js.map +1 -1
- package/dist/commonjs/v3/workers/taskExecutor.d.ts +1 -1
- package/dist/commonjs/v3/workers/taskExecutor.js +41 -35
- package/dist/commonjs/v3/workers/taskExecutor.js.map +1 -1
- package/dist/commonjs/version.js +1 -1
- package/dist/esm/schemas/api.d.ts +8 -8
- package/dist/esm/v3/apiClient/index.d.ts +55 -55
- package/dist/esm/v3/config.d.ts +8 -0
- package/dist/esm/v3/errors.js +4 -1
- package/dist/esm/v3/errors.js.map +1 -1
- package/dist/esm/v3/index.d.ts +1 -0
- package/dist/esm/v3/index.js +1 -0
- package/dist/esm/v3/index.js.map +1 -1
- package/dist/esm/v3/runMetadata/index.d.ts +2 -1
- package/dist/esm/v3/runMetadata/index.js +9 -2
- package/dist/esm/v3/runMetadata/index.js.map +1 -1
- package/dist/esm/v3/schemas/api.d.ts +285 -266
- package/dist/esm/v3/schemas/api.js +3 -0
- package/dist/esm/v3/schemas/api.js.map +1 -1
- package/dist/esm/v3/schemas/build.d.ts +66 -52
- package/dist/esm/v3/schemas/common.d.ts +116 -102
- package/dist/esm/v3/schemas/common.js +3 -0
- package/dist/esm/v3/schemas/common.js.map +1 -1
- package/dist/esm/v3/schemas/messages.d.ts +2231 -2083
- package/dist/esm/v3/schemas/resources.d.ts +36 -28
- package/dist/esm/v3/schemas/resources.js +1 -0
- package/dist/esm/v3/schemas/resources.js.map +1 -1
- package/dist/esm/v3/schemas/schemas.d.ts +282 -257
- package/dist/esm/v3/schemas/schemas.js +1 -0
- package/dist/esm/v3/schemas/schemas.js.map +1 -1
- package/dist/esm/v3/timeout/api.d.ts +11 -0
- package/dist/esm/v3/timeout/api.js +34 -0
- package/dist/esm/v3/timeout/api.js.map +1 -0
- package/dist/esm/v3/timeout/types.d.ts +9 -0
- package/dist/esm/v3/timeout/types.js +11 -0
- package/dist/esm/v3/timeout/types.js.map +1 -0
- package/dist/esm/v3/timeout/usageTimeoutManager.d.ts +10 -0
- package/dist/esm/v3/timeout/usageTimeoutManager.js +28 -0
- package/dist/esm/v3/timeout/usageTimeoutManager.js.map +1 -0
- package/dist/esm/v3/timeout-api.d.ts +3 -0
- package/dist/esm/v3/timeout-api.js +6 -0
- package/dist/esm/v3/timeout-api.js.map +1 -0
- package/dist/esm/v3/tracer.d.ts +1 -1
- package/dist/esm/v3/tracer.js +28 -14
- package/dist/esm/v3/tracer.js.map +1 -1
- package/dist/esm/v3/types/index.d.ts +10 -0
- package/dist/esm/v3/utils/globals.d.ts +4 -0
- package/dist/esm/v3/utils/globals.js.map +1 -1
- package/dist/esm/v3/workers/index.d.ts +1 -0
- package/dist/esm/v3/workers/index.js +1 -0
- package/dist/esm/v3/workers/index.js.map +1 -1
- package/dist/esm/v3/workers/taskExecutor.d.ts +1 -1
- package/dist/esm/v3/workers/taskExecutor.js +41 -35
- package/dist/esm/v3/workers/taskExecutor.js.map +1 -1
- package/dist/esm/version.js +1 -1
- 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":"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"}
|
|
@@ -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,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 (
|
|
62
|
-
|
|
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 (
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
:
|
|
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":";;;AAAA,4CAS4B;AAC5B,sDAAuD;AACvD,mFAA6E;AAC7E,iDAAuC;AACvC,iDAAuC;AACvC,+DAAoD;
|
|
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":";;
|
|
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, {
|
|
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
|