trigger.dev 3.0.0-beta.3 → 3.0.0-beta.30

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.
@@ -2,8 +2,9 @@ import type { TriggerConfig } from "@trigger.dev/sdk/v3";
2
2
 
3
3
  export const config: TriggerConfig = {
4
4
  project: "${projectRef}",
5
+ logLevel: "log",
5
6
  retries: {
6
- enabledInDev: false,
7
+ enabledInDev: true,
7
8
  default: {
8
9
  maxAttempts: 3,
9
10
  minTimeoutInMs: 1000,
@@ -1,23 +1,31 @@
1
1
  // src/workers/dev/worker-facade.ts
2
2
  import {
3
- TaskExecutor,
4
- DurableClock,
5
- clock
3
+ clock,
4
+ taskCatalog
6
5
  } from "@trigger.dev/core/v3";
7
6
  import {
8
- ConsoleInterceptor,
9
- DevRuntimeManager,
7
+ TaskExecutor,
8
+ DurableClock,
9
+ getEnvVar,
10
+ logLevels,
10
11
  OtelTaskLogger,
12
+ ConsoleInterceptor
13
+ } from "@trigger.dev/core/v3/workers";
14
+ import {
11
15
  TaskRunErrorCodes,
12
16
  TriggerTracer,
13
- ZodMessageHandler,
14
17
  logger,
15
18
  runtime,
16
19
  workerToChildMessages
17
20
  } from "@trigger.dev/core/v3";
21
+ import { DevRuntimeManager } from "@trigger.dev/core/v3/dev";
22
+ import {
23
+ ZodMessageHandler,
24
+ ZodSchemaParsedError
25
+ } from "@trigger.dev/core/v3/zodMessageHandler";
18
26
 
19
27
  // package.json
20
- var version = "3.0.0-beta.3";
28
+ var version = "3.0.0-beta.30";
21
29
 
22
30
  // src/workers/dev/worker-facade.ts
23
31
  __WORKER_SETUP__;
@@ -27,62 +35,38 @@ var otelLogger = tracingSDK.getLogger("trigger-dev-worker", version);
27
35
  var durableClock = new DurableClock();
28
36
  clock.setGlobalClock(durableClock);
29
37
  var tracer = new TriggerTracer({ tracer: otelTracer, logger: otelLogger });
30
- var consoleInterceptor = new ConsoleInterceptor(otelLogger);
38
+ var consoleInterceptor = new ConsoleInterceptor(
39
+ otelLogger,
40
+ typeof __PROJECT_CONFIG__.enableConsoleLogging === "boolean" ? __PROJECT_CONFIG__.enableConsoleLogging : true
41
+ );
31
42
  var devRuntimeManager = new DevRuntimeManager();
32
43
  runtime.setGlobalRuntimeManager(devRuntimeManager);
44
+ var triggerLogLevel = getEnvVar("TRIGGER_LOG_LEVEL");
45
+ var configLogLevel = triggerLogLevel ? triggerLogLevel : importedConfig ? importedConfig.logLevel : __PROJECT_CONFIG__.logLevel;
33
46
  var otelTaskLogger = new OtelTaskLogger({
34
47
  logger: otelLogger,
35
48
  tracer,
36
- level: "info"
49
+ level: logLevels.includes(configLogLevel) ? configLogLevel : "info"
37
50
  });
38
51
  logger.setGlobalTaskLogger(otelTaskLogger);
39
52
  var TaskFileImports = {};
40
53
  var TaskFiles = {};
41
54
  __TASKS__;
42
- function getTasks() {
43
- const result = [];
55
+ (() => {
44
56
  for (const [importName, taskFile] of Object.entries(TaskFiles)) {
45
57
  const fileImports = TaskFileImports[importName];
46
58
  for (const [exportName, task] of Object.entries(fileImports ?? {})) {
47
- if (task.__trigger) {
48
- result.push({
49
- id: task.__trigger.id,
50
- exportName,
51
- packageVersion: task.__trigger.packageVersion,
52
- filePath: taskFile.filePath,
53
- queue: task.__trigger.queue,
54
- retry: task.__trigger.retry,
55
- machine: task.__trigger.machine,
56
- fns: task.__trigger.fns
57
- });
59
+ if (typeof task === "object" && task !== null && "id" in task && typeof task.id === "string") {
60
+ if (taskCatalog.taskExists(task.id)) {
61
+ taskCatalog.registerTaskFileMetadata(task.id, {
62
+ exportName,
63
+ filePath: taskFile.filePath
64
+ });
65
+ }
58
66
  }
59
67
  }
60
68
  }
61
- return result;
62
- }
63
- function getTaskMetadata() {
64
- const result = getTasks();
65
- return result.map((task) => {
66
- const { fns, ...metadata } = task;
67
- return metadata;
68
- });
69
- }
70
- var tasks = getTasks();
71
- runtime.registerTasks(tasks);
72
- var taskExecutors = /* @__PURE__ */ new Map();
73
- for (const task of tasks) {
74
- taskExecutors.set(
75
- task.id,
76
- new TaskExecutor(task, {
77
- tracer,
78
- tracingSDK,
79
- consoleInterceptor,
80
- projectConfig: __PROJECT_CONFIG__,
81
- importedConfig,
82
- handleErrorFn: handleError
83
- })
84
- );
85
- }
69
+ })();
86
70
  var _execution;
87
71
  var _isRunning = false;
88
72
  var handler = new ZodMessageHandler({
@@ -95,7 +79,7 @@ var handler = new ZodMessageHandler({
95
79
  execution,
96
80
  result: {
97
81
  ok: false,
98
- id: execution.attempt.id,
82
+ id: execution.run.id,
99
83
  error: {
100
84
  type: "INTERNAL_ERROR",
101
85
  code: TaskRunErrorCodes.TASK_ALREADY_RUNNING
@@ -105,14 +89,14 @@ var handler = new ZodMessageHandler({
105
89
  return;
106
90
  }
107
91
  process.title = `trigger-dev-worker: ${execution.task.id} ${execution.run.id}`;
108
- const executor = taskExecutors.get(execution.task.id);
109
- if (!executor) {
110
- console.error(`Could not find executor for task ${execution.task.id}`);
92
+ const task = taskCatalog.getTask(execution.task.id);
93
+ if (!task) {
94
+ console.error(`Could not find task ${execution.task.id}`);
111
95
  await sender.send("TASK_RUN_COMPLETED", {
112
96
  execution,
113
97
  result: {
114
98
  ok: false,
115
- id: execution.attempt.id,
99
+ id: execution.run.id,
116
100
  error: {
117
101
  type: "INTERNAL_ERROR",
118
102
  code: TaskRunErrorCodes.COULD_NOT_FIND_EXECUTOR
@@ -121,6 +105,14 @@ var handler = new ZodMessageHandler({
121
105
  });
122
106
  return;
123
107
  }
108
+ const executor = new TaskExecutor(task, {
109
+ tracer,
110
+ tracingSDK,
111
+ consoleInterceptor,
112
+ projectConfig: __PROJECT_CONFIG__,
113
+ importedConfig,
114
+ handleErrorFn: handleError
115
+ });
124
116
  try {
125
117
  _execution = execution;
126
118
  _isRunning = true;
@@ -152,8 +144,13 @@ var handler = new ZodMessageHandler({
152
144
  process.on("message", async (msg) => {
153
145
  await handler.handleMessage(msg);
154
146
  });
155
- sender.send("TASKS_READY", { tasks: getTaskMetadata() }).catch((err) => {
156
- console.error("Failed to send TASKS_READY message", err);
147
+ var TASK_METADATA = taskCatalog.getAllTaskMetadata();
148
+ sender.send("TASKS_READY", { tasks: TASK_METADATA }).catch((err) => {
149
+ if (err instanceof ZodSchemaParsedError) {
150
+ sender.send("TASKS_FAILED_TO_PARSE", { zodIssues: err.error.issues, tasks: TASK_METADATA });
151
+ } else {
152
+ console.error("Failed to send TASKS_READY message", err);
153
+ }
157
154
  });
158
155
  process.title = "trigger-dev-worker";
159
156
  async function asyncHeartbeat(initialDelayInSeconds = 30, intervalInSeconds = 5) {
@@ -3,10 +3,14 @@ import "source-map-support/register.js";
3
3
  import { Resource } from "@opentelemetry/resources";
4
4
  import {
5
5
  SemanticInternalAttributes,
6
- TracingSDK,
7
- ZodMessageSender,
8
- childToWorkerMessages
6
+ childToWorkerMessages,
7
+ taskCatalog
9
8
  } from "@trigger.dev/core/v3";
9
+ import {
10
+ TracingSDK,
11
+ StandardTaskCatalog
12
+ } from "@trigger.dev/core/v3/workers";
13
+ import { ZodMessageSender } from "@trigger.dev/core/v3/zodMessageHandler";
10
14
  __SETUP_IMPORTED_PROJECT_CONFIG__;
11
15
  var tracingSDK = new TracingSDK({
12
16
  url: process.env.OTEL_EXPORTER_OTLP_ENDPOINT ?? "http://0.0.0.0:4318",
@@ -22,18 +26,7 @@ var sender = new ZodMessageSender({
22
26
  process.send?.(message);
23
27
  }
24
28
  });
25
- process.on("uncaughtException", (error, origin) => {
26
- sender.send("UNCAUGHT_EXCEPTION", {
27
- error: {
28
- name: error.name,
29
- message: error.message,
30
- stack: error.stack
31
- },
32
- origin
33
- }).catch((err) => {
34
- console.error("Failed to send UNCAUGHT_EXCEPTION message", err);
35
- });
36
- });
29
+ taskCatalog.setGlobalTaskCatalog(new StandardTaskCatalog());
37
30
  export {
38
31
  sender,
39
32
  tracingSDK