@trigger.dev/core 0.0.0-prerelease-20240112134133 → 0.0.0-prerelease-20240219135254
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/index.d.mts +3 -3
- package/dist/index.d.ts +3 -3
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +2 -2
- package/dist/index.mjs.map +1 -1
- package/dist/v3/index.d.mts +3651 -0
- package/dist/v3/index.d.ts +3651 -0
- package/dist/v3/index.js +1082 -0
- package/dist/v3/index.js.map +1 -0
- package/dist/v3/index.mjs +1024 -0
- package/dist/v3/index.mjs.map +1 -0
- package/dist/v3/otel/index.d.mts +32 -0
- package/dist/v3/otel/index.d.ts +32 -0
- package/dist/v3/otel/index.js +119 -0
- package/dist/v3/otel/index.js.map +1 -0
- package/dist/v3/otel/index.mjs +109 -0
- package/dist/v3/otel/index.mjs.map +1 -0
- package/package.json +44 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/v3/schemas/tokens.ts","../../src/v3/schemas/api.ts","../../src/v3/schemas/resources.ts","../../src/v3/schemas/common.ts","../../src/v3/schemas/messages.ts","../../src/v3/apiClient/index.ts","../../src/zodfetch.ts","../../src/v3/utils/safeAsyncLocalStorage.ts","../../src/v3/utils/flattenAttributes.ts","../../src/v3/tasks/taskContextManager.ts","../../src/v3/zodMessageHandler.ts","../../src/v3/errors.ts","../../src/v3/utils/platform.ts","../../src/v3/utils/globals.ts","../../src/v3/runtime/noopRuntimeManager.ts","../../src/v3/runtime/index.ts","../../src/v3/runtime-api.ts","../../src/v3/logger/taskLogger.ts","../../src/v3/logger/index.ts","../../src/v3/logger-api.ts","../../src/v3/semanticInternalAttributes.ts","../../src/v3/runtime/devRuntimeManager.ts","../../src/v3/tracer.ts","../../src/v3/consoleInterceptor.ts","../../src/v3/index.ts"],"names":["z","CreateAuthorizationCodeResponseSchema","object","url","string","authorizationCode","GetPersonalAccessTokenRequestSchema","GetPersonalAccessTokenResponseSchema","token","obfuscatedToken","nullable","TaskResource","id","filePath","exportName","BackgroundWorkerMetadata","packageVersion","contentHash","cliPackageVersion","tasks","array","WhoAmIResponseSchema","userId","email","GetProjectDevResponse","apiKey","name","CreateBackgroundWorkerRequestBody","localOnly","boolean","metadata","CreateBackgroundWorkerResponse","version","BackgroundWorkerRecord","TriggerTaskRequestBody","payload","any","context","options","parentAttempt","optional","lockToCurrentVersion","TriggerTaskResponse","TaskRunBuiltInError","type","literal","message","stackTrace","TaskRunCustomErrorObject","raw","TaskRunStringError","TaskRunErrorCodes","COULD_NOT_FIND_EXECUTOR","TaskRunInternalError","code","enum","TaskRunError","discriminatedUnion","TaskRun","payloadType","tags","createdAt","coerce","date","TaskRunExecutionTask","TaskRunExecutionAttempt","number","startedAt","backgroundWorkerId","backgroundWorkerTaskId","status","TaskRunExecutionEnvironment","slug","TaskRunExecutionOrganization","TaskRunExecutionProject","ref","TaskRunExecution","task","attempt","run","environment","organization","project","TaskRunContext","omit","TaskRunFailedExecutionResult","ok","error","TaskRunSuccessfulExecutionResult","output","outputType","TaskRunExecutionResult","TaskRunExecutionPayload","execution","traceContext","record","unknown","BackgroundWorkerServerMessages","payloads","serverWebsocketMessages","SERVER_READY","default","BACKGROUND_WORKER_MESSAGE","data","BackgroundWorkerClientMessages","completion","clientWebsocketMessages","READY_FOR_TASKS","WORKER_DEPRECATED","workerToChildMessages","EXECUTE_TASK_RUN","TASK_RUN_COMPLETED","CLEANUP","flush","TaskMetadata","TaskMetadataWithFilePath","extend","childToWorkerMessages","result","TASKS_READY","READY_TO_DISPOSE","undefined","propagation","zodfetch","schema","requestInit","response","fetch","method","statusText","body","json","jsonBody","parsedResult","safeParse","success","JSON","stringify","Error","AsyncLocalStorage","SafeAsyncLocalStorage","constructor","storage","runWith","fn","getStore","flattenAttributes","obj","prefix","key","value","Object","entries","newPrefix","Array","isArray","i","length","assign","isRecord","TaskContextManager","_storage","isInsideTask","ctx","store","worker","attributes","taskContextManager","ApiClient","baseUrl","accessToken","triggerTask","taskId","headers","Authorization","inject","active","messageSchema","ZodMessageHandler","messages","handleMessage","parsedMessage","parseMessage","handler","String","parsedPayload","_schema","ZodMessageSender","sender","send","parseError","stack","e","createErrorTaskError","parse","_globalThis","globalThis","global","GLOBAL_TRIGGER_DOT_DEV_KEY","Symbol","for","_global","registerGlobal","instance","allowOverride","api","err","getGlobal","unregisterGlobal","NoopRuntimeManager","disable","waitForDuration","ms","Promise","resolve","waitUntil","waitForTask","params","API_NAME","NOOP_RUNTIME_MANAGER","RuntimeAPI","getInstance","_instance","setGlobalRuntimeManager","runtimeManager","runtime","SeverityNumber","logLevels","OtelTaskLogger","_config","_level","indexOf","level","debug","properties","DEBUG","log","INFO","info","warn","WARN","ERROR","severityText","severityNumber","logger","emit","NoopTaskLogger","NOOP_TASK_LOGGER","LoggerAPI","setGlobalTaskLogger","taskLogger","SemanticInternalAttributes","ENVIRONMENT_ID","ENVIRONMENT_TYPE","ORGANIZATION_ID","PROJECT_ID","PROJECT_REF","ATTEMPT_ID","ATTEMP_NUMBER","RUN_ID","TASK_SLUG","TASK_PATH","TASK_EXPORT_NAME","SPAN_PARTIAL","SPAN_ID","OUTPUT","STYLE","STYLE_ICON","METADATA","TRIGGER","PAYLOAD","WORKER_ID","WORKER_VERSION","CLI_VERSION","SDK_VERSION","SDK_LANGUAGE","DevRuntimeManager","_taskWaits","Map","tracer","startActiveSpan","span","setTimeout","getTime","Date","now","setAttribute","promise","reject","set","resumeTask","wait","get","delete","SpanStatusCode","trace","logs","TriggerTracer","_tracer","getTracer","_logger","getLogger","extractContext","extract","parentContext","startSpan","spanContext","spanId","end","recordException","setStatus","util","ConsoleInterceptor","intercept","console","callback","originalConsole","bind","args","format","parsed","tryParseJSON","getLogMessage","fallback","parseTriggerTaskRequestBody"],"mappings":"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","sourcesContent":["import { z } from \"zod\";\n\nexport const CreateAuthorizationCodeResponseSchema = z.object({\n url: z.string().url(),\n authorizationCode: z.string(),\n});\n\nexport type CreateAuthorizationCodeResponse = z.infer<typeof CreateAuthorizationCodeResponseSchema>;\n\nexport const GetPersonalAccessTokenRequestSchema = z.object({\n authorizationCode: z.string(),\n});\nexport type GetPersonalAccessTokenRequest = z.infer<typeof GetPersonalAccessTokenRequestSchema>;\n\nexport const GetPersonalAccessTokenResponseSchema = z.object({\n token: z\n .object({\n token: z.string(),\n obfuscatedToken: z.string(),\n })\n .nullable(),\n});\nexport type GetPersonalAccessTokenResponse = z.infer<typeof GetPersonalAccessTokenResponseSchema>;\n","import { z } from \"zod\";\nimport { BackgroundWorkerMetadata } from \"./resources\";\n\nexport const WhoAmIResponseSchema = z.object({\n userId: z.string(),\n email: z.string().email(),\n});\n\nexport type WhoAmIResponse = z.infer<typeof WhoAmIResponseSchema>;\n\nexport const GetProjectDevResponse = z.object({\n apiKey: z.string(),\n name: z.string(),\n});\n\nexport type GetProjectDevResponse = z.infer<typeof GetProjectDevResponse>;\n\nexport const CreateBackgroundWorkerRequestBody = z.object({\n localOnly: z.boolean(),\n metadata: BackgroundWorkerMetadata,\n});\n\nexport type CreateBackgroundWorkerRequestBody = z.infer<typeof CreateBackgroundWorkerRequestBody>;\n\nexport const CreateBackgroundWorkerResponse = z.object({\n id: z.string(),\n version: z.string(),\n contentHash: z.string(),\n});\n\nexport type CreateBackgroundWorkerResponse = z.infer<typeof CreateBackgroundWorkerResponse>;\n\nexport const BackgroundWorkerRecord = CreateBackgroundWorkerResponse;\nexport type BackgroundWorkerRecord = CreateBackgroundWorkerResponse;\n\nexport const TriggerTaskRequestBody = z.object({\n payload: z.any(),\n context: z.any(),\n options: z\n .object({\n parentAttempt: z.string().optional(),\n lockToCurrentVersion: z.boolean().optional(),\n })\n .optional(),\n});\n\nexport type TriggerTaskRequestBody = z.infer<typeof TriggerTaskRequestBody>;\n\nexport const TriggerTaskResponse = z.object({\n id: z.string(),\n});\n\nexport type TriggerTaskResponse = z.infer<typeof TriggerTaskResponse>;\n","import { z } from \"zod\";\n\nexport const TaskResource = z.object({\n id: z.string(),\n filePath: z.string(),\n exportName: z.string(),\n});\n\nexport type TaskResource = z.infer<typeof TaskResource>;\n\nexport const BackgroundWorkerMetadata = z.object({\n packageVersion: z.string(),\n contentHash: z.string(),\n cliPackageVersion: z.string(),\n tasks: z.array(TaskResource),\n});\n\nexport type BackgroundWorkerMetadata = z.infer<typeof BackgroundWorkerMetadata>;\n","import { z } from \"zod\";\n\nexport const TaskRunBuiltInError = z.object({\n type: z.literal(\"BUILT_IN_ERROR\"),\n name: z.string(),\n message: z.string(),\n stackTrace: z.string(),\n});\n\nexport type TaskRunBuiltInError = z.infer<typeof TaskRunBuiltInError>;\n\nexport const TaskRunCustomErrorObject = z.object({\n type: z.literal(\"CUSTOM_ERROR\"),\n raw: z.string(),\n});\n\nexport type TaskRunCustomErrorObject = z.infer<typeof TaskRunCustomErrorObject>;\n\nexport const TaskRunStringError = z.object({\n type: z.literal(\"STRING_ERROR\"),\n raw: z.string(),\n});\n\nexport type TaskRunStringError = z.infer<typeof TaskRunStringError>;\n\nexport const TaskRunErrorCodes = {\n COULD_NOT_FIND_EXECUTOR: \"COULD_NOT_FIND_EXECUTOR\",\n} as const;\n\nexport const TaskRunInternalError = z.object({\n type: z.literal(\"INTERNAL_ERROR\"),\n code: z.enum([\"COULD_NOT_FIND_EXECUTOR\"]),\n});\n\nexport type TaskRunInternalError = z.infer<typeof TaskRunInternalError>;\n\nexport const TaskRunError = z.discriminatedUnion(\"type\", [\n TaskRunBuiltInError,\n TaskRunCustomErrorObject,\n TaskRunStringError,\n TaskRunInternalError,\n]);\n\nexport type TaskRunError = z.infer<typeof TaskRunError>;\n\nexport const TaskRun = z.object({\n id: z.string(),\n payload: z.string(),\n payloadType: z.string(),\n context: z.any(),\n tags: z.array(z.string()),\n createdAt: z.coerce.date(),\n});\n\nexport type TaskRun = z.infer<typeof TaskRun>;\n\nexport const TaskRunExecutionTask = z.object({\n id: z.string(),\n filePath: z.string(),\n exportName: z.string(),\n});\n\nexport type TaskRunExecutionTask = z.infer<typeof TaskRunExecutionTask>;\n\nexport const TaskRunExecutionAttempt = z.object({\n id: z.string(),\n number: z.number(),\n startedAt: z.coerce.date(),\n backgroundWorkerId: z.string(),\n backgroundWorkerTaskId: z.string(),\n status: z.string(),\n});\n\nexport type TaskRunExecutionAttempt = z.infer<typeof TaskRunExecutionAttempt>;\n\nexport const TaskRunExecutionEnvironment = z.object({\n id: z.string(),\n slug: z.string(),\n type: z.enum([\"PRODUCTION\", \"STAGING\", \"DEVELOPMENT\", \"PREVIEW\"]),\n});\n\nexport type TaskRunExecutionEnvironment = z.infer<typeof TaskRunExecutionEnvironment>;\n\nexport const TaskRunExecutionOrganization = z.object({\n id: z.string(),\n slug: z.string(),\n name: z.string(),\n});\n\nexport type TaskRunExecutionOrganization = z.infer<typeof TaskRunExecutionOrganization>;\n\nexport const TaskRunExecutionProject = z.object({\n id: z.string(),\n ref: z.string(),\n slug: z.string(),\n name: z.string(),\n});\n\nexport type TaskRunExecutionProject = z.infer<typeof TaskRunExecutionProject>;\n\nexport const TaskRunExecution = z.object({\n task: TaskRunExecutionTask,\n attempt: TaskRunExecutionAttempt,\n run: TaskRun,\n environment: TaskRunExecutionEnvironment,\n organization: TaskRunExecutionOrganization,\n project: TaskRunExecutionProject,\n});\n\nexport type TaskRunExecution = z.infer<typeof TaskRunExecution>;\n\nexport const TaskRunContext = z.object({\n task: TaskRunExecutionTask,\n attempt: TaskRunExecutionAttempt.omit({ backgroundWorkerId: true, backgroundWorkerTaskId: true }),\n run: TaskRun.omit({ payload: true, payloadType: true }),\n environment: TaskRunExecutionEnvironment,\n organization: TaskRunExecutionOrganization,\n project: TaskRunExecutionProject,\n});\n\nexport type TaskRunContext = z.infer<typeof TaskRunContext>;\n\nexport const TaskRunFailedExecutionResult = z.object({\n ok: z.literal(false),\n id: z.string(),\n error: TaskRunError,\n});\n\nexport type TaskRunFailedExecutionResult = z.infer<typeof TaskRunFailedExecutionResult>;\n\nexport const TaskRunSuccessfulExecutionResult = z.object({\n ok: z.literal(true),\n id: z.string(),\n output: z.string(),\n outputType: z.string(),\n});\n\nexport type TaskRunSuccessfulExecutionResult = z.infer<typeof TaskRunSuccessfulExecutionResult>;\n\nexport const TaskRunExecutionResult = z.discriminatedUnion(\"ok\", [\n TaskRunSuccessfulExecutionResult,\n TaskRunFailedExecutionResult,\n]);\n\nexport type TaskRunExecutionResult = z.infer<typeof TaskRunExecutionResult>;\n","import { z } from \"zod\";\nimport { TaskRunExecutionResult, TaskRunExecution } from \"./common\";\nimport { BackgroundWorkerRecord } from \"./api\";\n\nexport const TaskRunExecutionPayload = z.object({\n execution: TaskRunExecution,\n traceContext: z.record(z.unknown()),\n});\n\nexport type TaskRunExecutionPayload = z.infer<typeof TaskRunExecutionPayload>;\n\nexport const BackgroundWorkerServerMessages = z.discriminatedUnion(\"type\", [\n z.object({\n type: z.literal(\"EXECUTE_RUNS\"),\n payloads: z.array(TaskRunExecutionPayload),\n }),\n]);\n\nexport type BackgroundWorkerServerMessages = z.infer<typeof BackgroundWorkerServerMessages>;\n\nexport const serverWebsocketMessages = {\n SERVER_READY: z.object({\n version: z.literal(\"v1\").default(\"v1\"),\n id: z.string(),\n }),\n BACKGROUND_WORKER_MESSAGE: z.object({\n version: z.literal(\"v1\").default(\"v1\"),\n backgroundWorkerId: z.string(),\n data: BackgroundWorkerServerMessages,\n }),\n};\n\nexport const BackgroundWorkerClientMessages = z.discriminatedUnion(\"type\", [\n z.object({\n version: z.literal(\"v1\").default(\"v1\"),\n type: z.literal(\"TASK_RUN_COMPLETED\"),\n completion: TaskRunExecutionResult,\n }),\n]);\n\nexport type BackgroundWorkerClientMessages = z.infer<typeof BackgroundWorkerClientMessages>;\n\nexport const clientWebsocketMessages = {\n READY_FOR_TASKS: z.object({\n version: z.literal(\"v1\").default(\"v1\"),\n backgroundWorkerId: z.string(),\n }),\n WORKER_DEPRECATED: z.object({\n version: z.literal(\"v1\").default(\"v1\"),\n backgroundWorkerId: z.string(),\n }),\n BACKGROUND_WORKER_MESSAGE: z.object({\n version: z.literal(\"v1\").default(\"v1\"),\n backgroundWorkerId: z.string(),\n data: BackgroundWorkerClientMessages,\n }),\n};\n\nexport const workerToChildMessages = {\n EXECUTE_TASK_RUN: z.object({\n version: z.literal(\"v1\").default(\"v1\"),\n execution: TaskRunExecution,\n traceContext: z.record(z.unknown()),\n metadata: BackgroundWorkerRecord,\n }),\n TASK_RUN_COMPLETED: z.object({\n version: z.literal(\"v1\").default(\"v1\"),\n completion: TaskRunExecutionResult,\n execution: TaskRunExecution,\n }),\n CLEANUP: z.object({\n version: z.literal(\"v1\").default(\"v1\"),\n flush: z.boolean().default(false),\n }),\n};\n\nexport const TaskMetadata = z.object({\n id: z.string(),\n exportName: z.string(),\n packageVersion: z.string(),\n});\n\nexport type TaskMetadata = z.infer<typeof TaskMetadata>;\n\nexport const TaskMetadataWithFilePath = TaskMetadata.extend({\n filePath: z.string(),\n});\n\nexport type TaskMetadataWithFilePath = z.infer<typeof TaskMetadataWithFilePath>;\n\nexport const childToWorkerMessages = {\n TASK_RUN_COMPLETED: z.object({\n version: z.literal(\"v1\").default(\"v1\"),\n result: TaskRunExecutionResult,\n }),\n TASKS_READY: z.object({\n version: z.literal(\"v1\").default(\"v1\"),\n tasks: TaskMetadataWithFilePath.array(),\n }),\n READY_TO_DISPOSE: z.undefined(),\n};\n","import { context, propagation } from \"@opentelemetry/api\";\nimport { zodfetch } from \"../../zodfetch\";\nimport { TriggerTaskRequestBody, TriggerTaskResponse } from \"../schemas/api\";\nimport { taskContextManager } from \"../tasks/taskContextManager\";\n\n/**\n * Trigger.dev v3 API client\n */\nexport class ApiClient {\n constructor(\n private readonly baseUrl: string,\n private readonly accessToken: string\n ) {}\n\n triggerTask(taskId: string, options: TriggerTaskRequestBody) {\n return zodfetch(TriggerTaskResponse, `${this.baseUrl}/api/v1/tasks/${taskId}/trigger`, {\n method: \"POST\",\n headers: this.#getHeaders(),\n body: JSON.stringify(options),\n });\n }\n\n #getHeaders() {\n const headers = {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${this.accessToken}`,\n };\n\n // Only inject the context if we are inside a task\n if (taskContextManager.isInsideTask) {\n propagation.inject(context.active(), headers);\n }\n\n return headers;\n }\n}\n","import { z } from \"zod\";\nimport { context, propagation } from \"@opentelemetry/api\";\n\ntype ApiResult<TSuccessResult> =\n | { ok: true; data: TSuccessResult }\n | {\n ok: false;\n error: string;\n };\n\nexport async function zodfetch<TResponseBody extends any>(\n schema: z.Schema<TResponseBody>,\n url: string,\n requestInit?: RequestInit\n): Promise<ApiResult<TResponseBody>> {\n try {\n const response = await fetch(url, requestInit);\n\n if ((!requestInit || requestInit.method === \"GET\") && response.status === 404) {\n return {\n ok: false,\n error: `404: ${response.statusText}`,\n };\n }\n\n if (response.status >= 400 && response.status < 500) {\n const body = await response.json();\n if (!body.error) {\n return { ok: false, error: \"Something went wrong\" };\n }\n\n return { ok: false, error: body.error };\n }\n\n if (response.status !== 200) {\n return {\n ok: false,\n error: `Failed to fetch ${url}, got status code ${response.status}`,\n };\n }\n\n const jsonBody = await response.json();\n const parsedResult = schema.safeParse(jsonBody);\n\n if (parsedResult.success) {\n return { ok: true, data: parsedResult.data };\n }\n\n if (\"error\" in jsonBody) {\n return {\n ok: false,\n error: typeof jsonBody.error === \"string\" ? jsonBody.error : JSON.stringify(jsonBody.error),\n };\n }\n\n return { ok: false, error: parsedResult.error.message };\n } catch (error) {\n return {\n ok: false,\n error: error instanceof Error ? error.message : JSON.stringify(error),\n };\n }\n}\n","import { AsyncLocalStorage } from \"node:async_hooks\";\n\nexport class SafeAsyncLocalStorage<T> {\n private storage: AsyncLocalStorage<T>;\n\n constructor() {\n this.storage = new AsyncLocalStorage<T>();\n }\n\n runWith<R extends (...args: any[]) => Promise<any>>(context: T, fn: R): Promise<ReturnType<R>> {\n return this.storage.run(context, fn);\n }\n\n getStore(): T | undefined {\n return this.storage.getStore();\n }\n}\n","import { Attributes } from \"@opentelemetry/api\";\n\nexport function flattenAttributes(\n obj: Record<string, unknown> | null | undefined,\n prefix?: string\n): Attributes {\n const result: Attributes = {};\n\n // Check if obj is null or undefined\n if (obj == null) {\n return result;\n }\n\n for (const [key, value] of Object.entries(obj)) {\n const newPrefix = `${prefix ? `${prefix}.` : \"\"}${key}`;\n if (Array.isArray(value)) {\n for (let i = 0; i < value.length; i++) {\n if (typeof value[i] === \"object\" && value[i] !== null) {\n // update null check here as well\n Object.assign(result, flattenAttributes(value[i], `${newPrefix}.${i}`));\n } else {\n result[`${newPrefix}.${i}`] = value[i];\n }\n }\n } else if (isRecord(value)) {\n // update null check here\n Object.assign(result, flattenAttributes(value, newPrefix));\n } else {\n if (typeof value === \"number\" || typeof value === \"string\" || typeof value === \"boolean\") {\n result[newPrefix] = value;\n }\n }\n }\n\n return result;\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return value !== null && typeof value === \"object\" && !Array.isArray(value);\n}\n","import { Attributes } from \"@opentelemetry/api\";\nimport { BackgroundWorkerRecord, TaskRunContext } from \"../schemas\";\nimport { SafeAsyncLocalStorage } from \"../utils/safeAsyncLocalStorage\";\nimport { flattenAttributes } from \"../utils/flattenAttributes\";\n\ntype TaskContext = {\n ctx: TaskRunContext;\n payload: any;\n worker: BackgroundWorkerRecord;\n};\n\nexport class TaskContextManager {\n private _storage: SafeAsyncLocalStorage<TaskContext> = new SafeAsyncLocalStorage<TaskContext>();\n\n get isInsideTask(): boolean {\n return this.#getStore() !== undefined;\n }\n\n get ctx(): TaskRunContext | undefined {\n const store = this.#getStore();\n return store?.ctx;\n }\n\n get payload(): any | undefined {\n const store = this.#getStore();\n return store?.payload;\n }\n\n get worker(): BackgroundWorkerRecord | undefined {\n const store = this.#getStore();\n return store?.worker;\n }\n\n get attributes(): Attributes {\n if (this.ctx) {\n return {\n ...flattenAttributes(this.ctx, \"ctx\"),\n ...flattenAttributes(this.payload, \"payload\"),\n ...flattenAttributes(this.worker, \"worker\"),\n \"service.name\": this.ctx.task.id,\n };\n }\n\n return {};\n }\n\n runWith<R extends (...args: any[]) => Promise<any>>(\n context: TaskContext,\n fn: R\n ): Promise<ReturnType<R>> {\n return this._storage.runWith(context, fn);\n }\n\n #getStore(): TaskContext | undefined {\n return this._storage.getStore();\n }\n}\n\nexport const taskContextManager = new TaskContextManager();\n","import { z } from \"zod\";\n\nexport interface ZodMessageCatalogSchema {\n [key: string]: z.ZodFirstPartySchemaTypes | z.ZodDiscriminatedUnion<any, any>;\n}\n\nexport type ZodMessageHandlers<TCatalogSchema extends ZodMessageCatalogSchema> = Partial<{\n [K in keyof TCatalogSchema]: (payload: z.infer<TCatalogSchema[K]>) => Promise<void>;\n}>;\n\nexport type ZodMessageHandlerOptions<TMessageCatalog extends ZodMessageCatalogSchema> = {\n schema: TMessageCatalog;\n messages?: ZodMessageHandlers<TMessageCatalog>;\n};\n\ntype MessageFromSchema<\n K extends keyof TMessageCatalog,\n TMessageCatalog extends ZodMessageCatalogSchema,\n> = {\n type: K;\n payload: z.input<TMessageCatalog[K]>;\n};\n\ntype MessageFromCatalog<TMessageCatalog extends ZodMessageCatalogSchema> = {\n [K in keyof TMessageCatalog]: MessageFromSchema<K, TMessageCatalog>;\n}[keyof TMessageCatalog];\n\nconst messageSchema = z.object({\n version: z.literal(\"v1\").default(\"v1\"),\n type: z.string(),\n payload: z.unknown(),\n});\n\nexport class ZodMessageHandler<TMessageCatalog extends ZodMessageCatalogSchema> {\n #schema: TMessageCatalog;\n #handlers: ZodMessageHandlers<TMessageCatalog> | undefined;\n\n constructor(options: ZodMessageHandlerOptions<TMessageCatalog>) {\n this.#schema = options.schema;\n this.#handlers = options.messages;\n }\n\n public async handleMessage(message: unknown) {\n const parsedMessage = this.parseMessage(message);\n\n if (!this.#handlers) {\n throw new Error(\"No handlers provided\");\n }\n\n const handler = this.#handlers[parsedMessage.type];\n\n if (!handler) {\n throw new Error(`Unknown message type: ${String(parsedMessage.type)}`);\n }\n\n await handler(parsedMessage.payload);\n }\n\n public parseMessage(message: unknown): MessageFromCatalog<TMessageCatalog> {\n const parsedMessage = messageSchema.safeParse(message);\n\n if (!parsedMessage.success) {\n throw new Error(`Failed to parse message: ${JSON.stringify(parsedMessage.error)}`);\n }\n\n const schema = this.#schema[parsedMessage.data.type];\n\n if (!schema) {\n throw new Error(`Unknown message type: ${parsedMessage.data.type}`);\n }\n\n const parsedPayload = schema.safeParse(parsedMessage.data.payload);\n\n if (!parsedPayload.success) {\n throw new Error(`Failed to parse message payload: ${JSON.stringify(parsedPayload.error)}`);\n }\n\n return {\n type: parsedMessage.data.type,\n payload: parsedPayload.data,\n };\n }\n}\n\ntype ZodMessageSenderCallback<TMessageCatalog extends ZodMessageCatalogSchema> = (message: {\n type: keyof TMessageCatalog;\n payload: z.infer<TMessageCatalog[keyof TMessageCatalog]>;\n version: \"v1\";\n}) => Promise<void>;\n\nexport type ZodMessageSenderOptions<TMessageCatalog extends ZodMessageCatalogSchema> = {\n schema: TMessageCatalog;\n sender: ZodMessageSenderCallback<TMessageCatalog>;\n};\n\nexport class ZodMessageSender<TMessageCatalog extends ZodMessageCatalogSchema> {\n #schema: TMessageCatalog;\n #sender: ZodMessageSenderCallback<TMessageCatalog>;\n\n constructor(options: ZodMessageSenderOptions<TMessageCatalog>) {\n this.#schema = options.schema;\n this.#sender = options.sender;\n }\n\n public async send<K extends keyof TMessageCatalog>(\n type: K,\n payload: z.input<TMessageCatalog[K]>\n ) {\n const schema = this.#schema[type];\n\n if (!schema) {\n throw new Error(`Unknown message type: ${type as string}`);\n }\n\n const parsedPayload = schema.safeParse(payload);\n\n if (!parsedPayload.success) {\n throw new Error(`Failed to parse message payload: ${JSON.stringify(parsedPayload.error)}`);\n }\n\n await this.#sender({ type, payload, version: \"v1\" });\n }\n}\n","import { TaskRunError } from \"./schemas/common\";\n\nexport function parseError(error: unknown): TaskRunError {\n if (error instanceof Error) {\n return {\n type: \"BUILT_IN_ERROR\",\n name: error.name,\n message: error.message,\n stackTrace: error.stack ?? \"\",\n };\n }\n\n if (typeof error === \"string\") {\n return {\n type: \"STRING_ERROR\",\n raw: error,\n };\n }\n\n try {\n return {\n type: \"CUSTOM_ERROR\",\n raw: JSON.stringify(error),\n };\n } catch (e) {\n return {\n type: \"CUSTOM_ERROR\",\n raw: String(error),\n };\n }\n}\n\nexport function createErrorTaskError(error: TaskRunError): any {\n switch (error.type) {\n case \"BUILT_IN_ERROR\": {\n const e = new Error(error.message);\n\n e.name = error.name;\n e.stack = error.stackTrace;\n\n return e;\n }\n case \"STRING_ERROR\": {\n return error.raw;\n }\n case \"CUSTOM_ERROR\": {\n return JSON.parse(error.raw);\n }\n case \"INTERNAL_ERROR\": {\n return new Error(`trigger.dev internal error (${error.code})`);\n }\n }\n}\n","export const _globalThis = typeof globalThis === \"object\" ? globalThis : global;\n","import type { RuntimeManager } from \"../runtime/manager\";\nimport { _globalThis } from \"./platform\";\n\nconst GLOBAL_TRIGGER_DOT_DEV_KEY = Symbol.for(`dev.trigger.ts.api`);\n\nconst _global = _globalThis as TriggerDotDevGlobal;\n\nexport function registerGlobal<Type extends keyof TriggerDotDevGlobalAPI>(\n type: Type,\n instance: TriggerDotDevGlobalAPI[Type],\n allowOverride = false\n): boolean {\n const api = (_global[GLOBAL_TRIGGER_DOT_DEV_KEY] = _global[GLOBAL_TRIGGER_DOT_DEV_KEY] ?? {});\n\n if (!allowOverride && api[type]) {\n // already registered an API of this type\n const err = new Error(`trigger.dev: Attempted duplicate registration of API: ${type}`);\n return false;\n }\n\n api[type] = instance;\n\n return true;\n}\n\nexport function getGlobal<Type extends keyof TriggerDotDevGlobalAPI>(\n type: Type\n): TriggerDotDevGlobalAPI[Type] | undefined {\n return _global[GLOBAL_TRIGGER_DOT_DEV_KEY]?.[type];\n}\n\nexport function unregisterGlobal(type: keyof TriggerDotDevGlobalAPI) {\n const api = _global[GLOBAL_TRIGGER_DOT_DEV_KEY];\n\n if (api) {\n delete api[type];\n }\n}\n\ntype TriggerDotDevGlobal = {\n [GLOBAL_TRIGGER_DOT_DEV_KEY]?: TriggerDotDevGlobalAPI;\n};\n\ntype TriggerDotDevGlobalAPI = {\n runtime?: RuntimeManager;\n logger?: any;\n};\n","import { TaskRunContext, TaskRunExecutionResult } from \"../schemas\";\nimport { RuntimeManager } from \"./manager\";\n\nexport class NoopRuntimeManager implements RuntimeManager {\n disable(): void {\n // do nothing\n }\n\n waitForDuration(ms: number): Promise<void> {\n return Promise.resolve();\n }\n\n waitUntil(date: Date): Promise<void> {\n return Promise.resolve();\n }\n\n waitForTask(params: { id: string; ctx: TaskRunContext }): Promise<TaskRunExecutionResult> {\n throw new Error(\"Method not implemented.\");\n }\n}\n","const API_NAME = \"runtime\";\n\nimport { TaskRunContext, TaskRunExecutionResult } from \"../schemas\";\nimport { getGlobal, registerGlobal, unregisterGlobal } from \"../utils/globals\";\nimport { type RuntimeManager } from \"./manager\";\nimport { NoopRuntimeManager } from \"./noopRuntimeManager\";\n\nconst NOOP_RUNTIME_MANAGER = new NoopRuntimeManager();\n\nexport class RuntimeAPI {\n private static _instance?: RuntimeAPI;\n\n private constructor() {}\n\n public static getInstance(): RuntimeAPI {\n if (!this._instance) {\n this._instance = new RuntimeAPI();\n }\n\n return this._instance;\n }\n\n public waitForDuration(ms: number): Promise<void> {\n return this.#getRuntimeManager().waitForDuration(ms);\n }\n\n public waitUntil(date: Date): Promise<void> {\n return this.#getRuntimeManager().waitUntil(date);\n }\n\n public waitForTask(params: { id: string; ctx: TaskRunContext }): Promise<TaskRunExecutionResult> {\n return this.#getRuntimeManager().waitForTask(params);\n }\n\n public setGlobalRuntimeManager(runtimeManager: RuntimeManager): boolean {\n return registerGlobal(API_NAME, runtimeManager);\n }\n\n public disable() {\n this.#getRuntimeManager().disable();\n unregisterGlobal(API_NAME);\n }\n\n #getRuntimeManager(): RuntimeManager {\n return getGlobal(API_NAME) ?? NOOP_RUNTIME_MANAGER;\n }\n}\n","// Split module-level variable definition into separate files to allow\n// tree-shaking on each api instance.\nimport { RuntimeAPI } from \"./runtime\";\n/** Entrypoint for runtime API */\nexport const runtime = RuntimeAPI.getInstance();\n","import { Logger, SeverityNumber } from \"@opentelemetry/api-logs\";\nimport { flattenAttributes } from \"../utils/flattenAttributes\";\n\nexport type LogLevel = \"log\" | \"error\" | \"warn\" | \"info\" | \"debug\";\n\nconst logLevels: Array<LogLevel> = [\"error\", \"warn\", \"log\", \"info\", \"debug\"];\n\nexport type TaskLoggerConfig = {\n logger: Logger;\n level: LogLevel;\n};\n\nexport interface TaskLogger {\n debug(message: string, properties?: Record<string, unknown>): void;\n log(message: string, properties?: Record<string, unknown>): void;\n info(message: string, properties?: Record<string, unknown>): void;\n warn(message: string, properties?: Record<string, unknown>): void;\n error(message: string, properties?: Record<string, unknown>): void;\n}\n\nexport class OtelTaskLogger implements TaskLogger {\n private readonly _level: number;\n\n constructor(private readonly _config: TaskLoggerConfig) {\n this._level = logLevels.indexOf(_config.level);\n }\n\n debug(message: string, properties?: Record<string, unknown>) {\n if (this._level < 4) return;\n\n this.#emitLog(message, \"debug\", SeverityNumber.DEBUG, properties);\n }\n\n log(message: string, properties?: Record<string, unknown>) {\n if (this._level < 2) return;\n\n this.#emitLog(message, \"log\", SeverityNumber.INFO, properties);\n }\n\n info(message: string, properties?: Record<string, unknown>) {\n if (this._level < 3) return;\n\n this.#emitLog(message, \"info\", SeverityNumber.INFO, properties);\n }\n\n warn(message: string, properties?: Record<string, unknown>) {\n if (this._level < 1) return;\n\n this.#emitLog(message, \"warn\", SeverityNumber.WARN, properties);\n }\n\n error(message: string, properties?: Record<string, unknown>) {\n if (this._level < 0) return;\n\n this.#emitLog(message, \"error\", SeverityNumber.ERROR, properties);\n }\n\n #emitLog(\n message: string,\n severityText: string,\n severityNumber: SeverityNumber,\n properties?: Record<string, unknown>\n ) {\n this._config.logger.emit({\n severityNumber,\n severityText,\n body: message,\n attributes: { ...flattenAttributes(properties), \"log.type\": \"logger\" },\n });\n }\n}\n\nexport class NoopTaskLogger implements TaskLogger {\n debug() {}\n log() {}\n info() {}\n warn() {}\n error() {}\n}\n","import { NoopTaskLogger, TaskLogger } from \"./taskLogger\";\nimport { getGlobal, registerGlobal, unregisterGlobal } from \"../utils/globals\";\n\nconst API_NAME = \"logger\";\n\nconst NOOP_TASK_LOGGER = new NoopTaskLogger();\n\nexport class LoggerAPI implements TaskLogger {\n private static _instance?: LoggerAPI;\n\n private constructor() {}\n\n public static getInstance(): LoggerAPI {\n if (!this._instance) {\n this._instance = new LoggerAPI();\n }\n\n return this._instance;\n }\n\n public disable() {\n unregisterGlobal(API_NAME);\n }\n\n public setGlobalTaskLogger(taskLogger: TaskLogger): boolean {\n return registerGlobal(API_NAME, taskLogger);\n }\n\n public debug(message: string, metadata?: Record<string, unknown>) {\n this.#getTaskLogger().debug(message, metadata);\n }\n\n public log(message: string, metadata?: Record<string, unknown>) {\n this.#getTaskLogger().log(message, metadata);\n }\n\n public info(message: string, metadata?: Record<string, unknown>) {\n this.#getTaskLogger().info(message, metadata);\n }\n\n public warn(message: string, metadata?: Record<string, unknown>) {\n this.#getTaskLogger().warn(message, metadata);\n }\n\n public error(message: string, metadata?: Record<string, unknown>) {\n this.#getTaskLogger().error(message, metadata);\n }\n\n #getTaskLogger(): TaskLogger {\n return getGlobal(API_NAME) ?? NOOP_TASK_LOGGER;\n }\n}\n","// Split module-level variable definition into separate files to allow\n// tree-shaking on each api instance.\nimport { LoggerAPI } from \"./logger\";\n/** Entrypoint for logger API */\nexport const logger = LoggerAPI.getInstance();\n","export const SemanticInternalAttributes = {\n ENVIRONMENT_ID: \"ctx.environment.id\",\n ENVIRONMENT_TYPE: \"ctx.environment.type\",\n ORGANIZATION_ID: \"ctx.organization.id\",\n PROJECT_ID: \"ctx.project.id\",\n PROJECT_REF: \"ctx.project.ref\",\n ATTEMPT_ID: \"ctx.attempt.id\",\n ATTEMP_NUMBER: \"ctx.attempt.number\",\n RUN_ID: \"ctx.run.id\",\n TASK_SLUG: \"ctx.task.id\",\n TASK_PATH: \"ctx.task.filePath\",\n TASK_EXPORT_NAME: \"ctx.task.exportName\",\n SPAN_PARTIAL: \"$span.partial\",\n SPAN_ID: \"$span.span_id\",\n OUTPUT: \"$output\",\n STYLE: \"$style\",\n STYLE_ICON: \"$style.icon\",\n METADATA: \"$metadata\",\n TRIGGER: \"$trigger\",\n PAYLOAD: \"$payload\",\n WORKER_ID: \"worker.id\",\n WORKER_VERSION: \"worker.version\",\n CLI_VERSION: \"cli.version\",\n SDK_VERSION: \"sdk.version\",\n SDK_LANGUAGE: \"sdk.language\",\n};\n","import { TaskRunContext, TaskRunExecution, TaskRunExecutionResult } from \"../schemas\";\nimport { TriggerTracer } from \"../tracer\";\nimport { RuntimeManager } from \"./manager\";\n\nexport type DevRuntimeManagerOptions = {\n tracer: TriggerTracer;\n};\n\nexport class DevRuntimeManager implements RuntimeManager {\n _taskWaits: Map<\n string,\n { resolve: (value: TaskRunExecutionResult) => void; reject: (err?: any) => void }\n > = new Map();\n\n constructor(private readonly options: DevRuntimeManagerOptions) {}\n\n disable(): void {\n // do nothing\n }\n\n async waitForDuration(ms: number): Promise<void> {\n return this.options.tracer.startActiveSpan(\"wait for duration\", async (span) => {\n return new Promise((resolve) => {\n setTimeout(resolve, ms);\n });\n });\n }\n\n async waitUntil(date: Date): Promise<void> {\n return new Promise((resolve) => {\n setTimeout(resolve, date.getTime() - Date.now());\n });\n }\n\n async waitForTask(params: { id: string; ctx: TaskRunContext }): Promise<TaskRunExecutionResult> {\n return this.options.tracer.startActiveSpan(\"wait for task\", async (span) => {\n span.setAttribute(\"trigger.task.run.id\", params.id);\n\n const promise = new Promise<TaskRunExecutionResult>((resolve, reject) => {\n this._taskWaits.set(params.id, { resolve, reject });\n });\n\n return await promise;\n });\n }\n\n resumeTask(completion: TaskRunExecutionResult, execution: TaskRunExecution): void {\n const wait = this._taskWaits.get(execution.run.id);\n\n if (wait) {\n wait.resolve(completion);\n this._taskWaits.delete(execution.run.id);\n }\n }\n}\n","import {\n Context,\n SpanOptions,\n SpanStatusCode,\n context,\n propagation,\n trace,\n type Span,\n type Tracer,\n} from \"@opentelemetry/api\";\nimport { Logger, logs } from \"@opentelemetry/api-logs\";\nimport { SemanticInternalAttributes } from \"./semanticInternalAttributes\";\n\nexport type TriggerTracerConfig =\n | {\n name: string;\n version: string;\n }\n | {\n tracer: Tracer;\n logger: Logger;\n };\n\nexport class TriggerTracer {\n constructor(private readonly _config: TriggerTracerConfig) {}\n\n private _tracer: Tracer | undefined;\n private get tracer(): Tracer {\n if (!this._tracer) {\n if (\"tracer\" in this._config) return this._config.tracer;\n\n this._tracer = trace.getTracer(this._config.name, this._config.version);\n }\n\n return this._tracer;\n }\n\n private _logger: Logger | undefined;\n private get logger(): Logger {\n if (!this._logger) {\n if (\"logger\" in this._config) return this._config.logger;\n\n this._logger = logs.getLogger(this._config.name, this._config.version);\n }\n\n return this._logger;\n }\n\n extractContext(traceContext?: Record<string, unknown>) {\n return propagation.extract(context.active(), traceContext ?? {});\n }\n\n startActiveSpan<T>(\n name: string,\n fn: (span: Span) => Promise<T>,\n options?: SpanOptions,\n ctx?: Context\n ): Promise<T> {\n const parentContext = ctx ?? context.active();\n\n const attributes = options?.attributes ?? {};\n\n return this.tracer.startActiveSpan(\n name,\n {\n ...options,\n attributes,\n },\n parentContext,\n async (span) => {\n this.tracer\n .startSpan(\n name,\n {\n ...options,\n attributes: {\n ...attributes,\n [SemanticInternalAttributes.SPAN_PARTIAL]: true,\n [SemanticInternalAttributes.SPAN_ID]: span.spanContext().spanId,\n },\n },\n parentContext\n )\n .end();\n\n try {\n return await fn(span);\n } catch (e) {\n if (typeof e === \"string\" || e instanceof Error) {\n span.recordException(e);\n }\n\n span.setStatus({ code: SpanStatusCode.ERROR });\n\n throw e;\n } finally {\n span.end();\n }\n }\n );\n }\n}\n","import type * as logsAPI from \"@opentelemetry/api-logs\";\nimport { SeverityNumber } from \"@opentelemetry/api-logs\";\nimport util from \"node:util\";\nimport { flattenAttributes } from \"./utils/flattenAttributes\";\n\nexport class ConsoleInterceptor {\n constructor(private readonly logger: logsAPI.Logger) {}\n\n // Intercept the console and send logs to the OpenTelemetry logger\n // during the execution of the callback\n async intercept<T, R extends Promise<T>>(console: Console, callback: () => R): Promise<T> {\n // Save the original console methods\n const originalConsole = {\n log: console.log,\n info: console.info,\n warn: console.warn,\n error: console.error,\n };\n\n // Override the console methods\n console.log = this.log.bind(this);\n console.info = this.info.bind(this);\n console.warn = this.warn.bind(this);\n console.error = this.error.bind(this);\n\n try {\n return await callback();\n } finally {\n // Restore the original console methods\n console.log = originalConsole.log;\n console.info = originalConsole.info;\n console.warn = originalConsole.warn;\n console.error = originalConsole.error;\n }\n }\n\n log(...args: unknown[]): void {\n this.#handleLog(SeverityNumber.INFO, \"Log\", ...args);\n }\n\n info(...args: unknown[]): void {\n this.#handleLog(SeverityNumber.INFO, \"Info\", ...args);\n }\n\n warn(...args: unknown[]): void {\n this.#handleLog(SeverityNumber.WARN, \"Warn\", ...args);\n }\n\n error(...args: unknown[]): void {\n this.#handleLog(SeverityNumber.ERROR, \"Error\", ...args);\n }\n\n #handleLog(severityNumber: SeverityNumber, severityText: string, ...args: unknown[]): void {\n const body = util.format(...args);\n\n const parsed = tryParseJSON(body);\n\n if (parsed.ok) {\n this.logger.emit({\n severityNumber,\n severityText,\n body: getLogMessage(parsed.value, severityText),\n attributes: { ...this.#getAttributes(), ...flattenAttributes(parsed.value) },\n });\n\n return;\n }\n\n this.logger.emit({\n severityNumber,\n severityText,\n body,\n attributes: this.#getAttributes(),\n });\n }\n\n #getAttributes(): logsAPI.LogAttributes {\n return {\n \"log.type\": \"console\",\n };\n }\n}\n\nfunction getLogMessage(value: Record<string, unknown>, fallback: string): string {\n if (typeof value[\"message\"] === \"string\") {\n return value[\"message\"];\n }\n\n if (typeof value[\"msg\"] === \"string\") {\n return value[\"msg\"];\n }\n\n if (typeof value[\"body\"] === \"string\") {\n return value[\"body\"];\n }\n\n if (typeof value[\"error\"] === \"string\") {\n return value[\"error\"];\n }\n\n return fallback;\n}\n\nfunction tryParseJSON(\n value: string\n): { ok: true; value: Record<string, unknown> } | { ok: false; value: string } {\n try {\n const parsed = JSON.parse(value);\n\n if (typeof parsed === \"object\" && parsed !== null && !Array.isArray(parsed)) {\n return { ok: true, value: parsed };\n }\n\n return { ok: false, value };\n } catch (e) {\n return { ok: false, value };\n }\n}\n","import { TriggerTaskRequestBody } from \"./schemas\";\n\nexport * from \"./schemas\";\nexport * from \"./apiClient\";\nexport * from \"./zodMessageHandler\";\nexport * from \"./errors\";\nexport * from \"./runtime-api\";\nexport * from \"./logger-api\";\nexport { SemanticInternalAttributes } from \"./semanticInternalAttributes\";\n\nexport function parseTriggerTaskRequestBody(body: unknown) {\n return TriggerTaskRequestBody.safeParse(body);\n}\n\nexport { taskContextManager } from \"./tasks/taskContextManager\";\nexport type { RuntimeManager } from \"./runtime/manager\";\nexport { DevRuntimeManager } from \"./runtime/devRuntimeManager\";\nexport { TriggerTracer } from \"./tracer\";\n\nexport type { TaskLogger } from \"./logger/taskLogger\";\nexport { OtelTaskLogger } from \"./logger/taskLogger\";\nexport { ConsoleInterceptor } from \"./consoleInterceptor\";\nexport { flattenAttributes } from \"./utils/flattenAttributes\";\n"]}
|