@upstash/workflow 0.2.11 → 0.2.12

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/express.js CHANGED
@@ -23806,7 +23806,7 @@ var formatWorkflowError = (error) => {
23806
23806
  message: error.message
23807
23807
  } : {
23808
23808
  error: "Error",
23809
- message: "An error occured while executing workflow."
23809
+ message: `An error occured while executing workflow: '${typeof error === "string" ? error : JSON.stringify(error)}'`
23810
23810
  };
23811
23811
  };
23812
23812
 
@@ -25706,6 +25706,9 @@ var WorkflowApi = class extends BaseWorkflowApi {
25706
25706
  }
25707
25707
  };
25708
25708
 
25709
+ // src/agents/index.ts
25710
+ var import_openai3 = require("@ai-sdk/openai");
25711
+
25709
25712
  // src/agents/adapters.ts
25710
25713
  var import_openai2 = require("@ai-sdk/openai");
25711
25714
  var import_ai = require("ai");
@@ -25725,46 +25728,49 @@ you need from that agent.
25725
25728
  `;
25726
25729
 
25727
25730
  // src/agents/adapters.ts
25728
- var createWorkflowOpenAI = (context, config) => {
25729
- const { baseURL, apiKey } = config ?? {};
25730
- return (0, import_openai2.createOpenAI)({
25731
- baseURL,
25732
- apiKey,
25733
- compatibility: "strict",
25734
- fetch: async (input, init) => {
25735
- try {
25736
- const headers = init?.headers ? Object.fromEntries(new Headers(init.headers).entries()) : {};
25737
- const body = init?.body ? JSON.parse(init.body) : void 0;
25738
- const agentName = headers[AGENT_NAME_HEADER];
25739
- const stepName = agentName ? `Call Agent ${agentName}` : "Call Agent";
25740
- const responseInfo = await context.call(stepName, {
25741
- url: input.toString(),
25742
- method: init?.method,
25743
- headers,
25744
- body
25745
- });
25746
- const responseHeaders = new Headers(
25747
- Object.entries(responseInfo.header).reduce(
25748
- (acc, [key, values]) => {
25749
- acc[key] = values.join(", ");
25750
- return acc;
25751
- },
25752
- {}
25753
- )
25754
- );
25755
- return new Response(JSON.stringify(responseInfo.body), {
25756
- status: responseInfo.status,
25757
- headers: responseHeaders
25758
- });
25759
- } catch (error) {
25760
- if (error instanceof Error && error.name === "WorkflowAbort") {
25761
- throw error;
25762
- } else {
25763
- console.error("Error in fetch implementation:", error);
25764
- throw error;
25765
- }
25766
- }
25731
+ var fetchWithContextCall = async (context, ...params) => {
25732
+ const [input, init] = params;
25733
+ try {
25734
+ const headers = init?.headers ? Object.fromEntries(new Headers(init.headers).entries()) : {};
25735
+ const body = init?.body ? JSON.parse(init.body) : void 0;
25736
+ const agentName = headers[AGENT_NAME_HEADER];
25737
+ const stepName = agentName ? `Call Agent ${agentName}` : "Call Agent";
25738
+ const responseInfo = await context.call(stepName, {
25739
+ url: input.toString(),
25740
+ method: init?.method,
25741
+ headers,
25742
+ body
25743
+ });
25744
+ const responseHeaders = new Headers(
25745
+ Object.entries(responseInfo.header).reduce(
25746
+ (acc, [key, values]) => {
25747
+ acc[key] = values.join(", ");
25748
+ return acc;
25749
+ },
25750
+ {}
25751
+ )
25752
+ );
25753
+ return new Response(JSON.stringify(responseInfo.body), {
25754
+ status: responseInfo.status,
25755
+ headers: responseHeaders
25756
+ });
25757
+ } catch (error) {
25758
+ if (error instanceof Error && error.name === "WorkflowAbort") {
25759
+ throw error;
25760
+ } else {
25761
+ console.error("Error in fetch implementation:", error);
25762
+ throw error;
25767
25763
  }
25764
+ }
25765
+ };
25766
+ var createWorkflowModel = ({
25767
+ context,
25768
+ provider,
25769
+ providerParams
25770
+ }) => {
25771
+ return provider({
25772
+ fetch: (...params) => fetchWithContextCall(context, ...params),
25773
+ ...providerParams
25768
25774
  });
25769
25775
  };
25770
25776
  var wrapTools = ({
@@ -26004,9 +26010,14 @@ var WorkflowAgents = class {
26004
26010
  openai(...params) {
26005
26011
  const [model, settings] = params;
26006
26012
  const { baseURL, apiKey, ...otherSettings } = settings ?? {};
26007
- const openai2 = createWorkflowOpenAI(this.context, { baseURL, apiKey });
26008
- return openai2(model, otherSettings);
26013
+ const openaiModel = this.AISDKModel({
26014
+ context: this.context,
26015
+ provider: import_openai3.createOpenAI,
26016
+ providerParams: { baseURL, apiKey, compatibility: "strict" }
26017
+ });
26018
+ return openaiModel(model, otherSettings);
26009
26019
  }
26020
+ AISDKModel = createWorkflowModel;
26010
26021
  };
26011
26022
 
26012
26023
  // src/context/context.ts
@@ -26729,6 +26740,7 @@ var processOptions = (options) => {
26729
26740
  retries: DEFAULT_RETRIES,
26730
26741
  useJSONContent: false,
26731
26742
  disableTelemetry: false,
26743
+ onError: console.error,
26732
26744
  ...options
26733
26745
  };
26734
26746
  };
@@ -26778,7 +26790,8 @@ var serveBase = (routeFunction, telemetry2, options) => {
26778
26790
  retries,
26779
26791
  useJSONContent,
26780
26792
  disableTelemetry,
26781
- flowControl
26793
+ flowControl,
26794
+ onError
26782
26795
  } = processOptions(options);
26783
26796
  telemetry2 = disableTelemetry ? void 0 : telemetry2;
26784
26797
  const debug = WorkflowLogger.getLogger(verbose);
@@ -26907,8 +26920,19 @@ var serveBase = (routeFunction, telemetry2, options) => {
26907
26920
  try {
26908
26921
  return await handler(request);
26909
26922
  } catch (error) {
26910
- console.error(error);
26911
- return new Response(JSON.stringify(formatWorkflowError(error)), {
26923
+ const formattedError = formatWorkflowError(error);
26924
+ try {
26925
+ onError?.(error);
26926
+ } catch (onErrorError) {
26927
+ const formattedOnErrorError = formatWorkflowError(onErrorError);
26928
+ const errorMessage = `Error while running onError callback: '${formattedOnErrorError.message}'.
26929
+ Original error: '${formattedError.message}'`;
26930
+ console.error(errorMessage);
26931
+ return new Response(errorMessage, {
26932
+ status: 500
26933
+ });
26934
+ }
26935
+ return new Response(JSON.stringify(formattedError), {
26912
26936
  status: 500
26913
26937
  });
26914
26938
  }
package/express.mjs CHANGED
@@ -5,7 +5,7 @@ import {
5
5
  __toESM,
6
6
  serveBase,
7
7
  serveManyBase
8
- } from "./chunk-WQAJ2RSZ.mjs";
8
+ } from "./chunk-4GTHIL7S.mjs";
9
9
 
10
10
  // node_modules/depd/index.js
11
11
  var require_depd = __commonJS({
package/h3.d.mts CHANGED
@@ -1,6 +1,6 @@
1
1
  import * as h3 from 'h3';
2
- import { R as RouteFunction, k as PublicServeOptions, t as InvokableWorkflow } from './types-DS9q8FyV.mjs';
3
- import { s as serveManyBase } from './serve-many-Fuovl7gl.mjs';
2
+ import { R as RouteFunction, k as PublicServeOptions, t as InvokableWorkflow } from './types-D1W0VOpy.mjs';
3
+ import { s as serveManyBase } from './serve-many-DLguU9iR.mjs';
4
4
  import '@upstash/qstash';
5
5
  import 'zod';
6
6
  import 'ai';
package/h3.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import * as h3 from 'h3';
2
- import { R as RouteFunction, k as PublicServeOptions, t as InvokableWorkflow } from './types-DS9q8FyV.js';
3
- import { s as serveManyBase } from './serve-many-DNnLsDIp.js';
2
+ import { R as RouteFunction, k as PublicServeOptions, t as InvokableWorkflow } from './types-D1W0VOpy.js';
3
+ import { s as serveManyBase } from './serve-many-BdMq5rFX.js';
4
4
  import '@upstash/qstash';
5
5
  import 'zod';
6
6
  import 'ai';
package/h3.js CHANGED
@@ -446,7 +446,7 @@ var formatWorkflowError = (error) => {
446
446
  message: error.message
447
447
  } : {
448
448
  error: "Error",
449
- message: "An error occured while executing workflow."
449
+ message: `An error occured while executing workflow: '${typeof error === "string" ? error : JSON.stringify(error)}'`
450
450
  };
451
451
  };
452
452
 
@@ -2346,6 +2346,9 @@ var WorkflowApi = class extends BaseWorkflowApi {
2346
2346
  }
2347
2347
  };
2348
2348
 
2349
+ // src/agents/index.ts
2350
+ var import_openai3 = require("@ai-sdk/openai");
2351
+
2349
2352
  // src/agents/adapters.ts
2350
2353
  var import_openai2 = require("@ai-sdk/openai");
2351
2354
  var import_ai = require("ai");
@@ -2365,46 +2368,49 @@ you need from that agent.
2365
2368
  `;
2366
2369
 
2367
2370
  // src/agents/adapters.ts
2368
- var createWorkflowOpenAI = (context, config) => {
2369
- const { baseURL, apiKey } = config ?? {};
2370
- return (0, import_openai2.createOpenAI)({
2371
- baseURL,
2372
- apiKey,
2373
- compatibility: "strict",
2374
- fetch: async (input, init) => {
2375
- try {
2376
- const headers = init?.headers ? Object.fromEntries(new Headers(init.headers).entries()) : {};
2377
- const body = init?.body ? JSON.parse(init.body) : void 0;
2378
- const agentName = headers[AGENT_NAME_HEADER];
2379
- const stepName = agentName ? `Call Agent ${agentName}` : "Call Agent";
2380
- const responseInfo = await context.call(stepName, {
2381
- url: input.toString(),
2382
- method: init?.method,
2383
- headers,
2384
- body
2385
- });
2386
- const responseHeaders = new Headers(
2387
- Object.entries(responseInfo.header).reduce(
2388
- (acc, [key, values]) => {
2389
- acc[key] = values.join(", ");
2390
- return acc;
2391
- },
2392
- {}
2393
- )
2394
- );
2395
- return new Response(JSON.stringify(responseInfo.body), {
2396
- status: responseInfo.status,
2397
- headers: responseHeaders
2398
- });
2399
- } catch (error) {
2400
- if (error instanceof Error && error.name === "WorkflowAbort") {
2401
- throw error;
2402
- } else {
2403
- console.error("Error in fetch implementation:", error);
2404
- throw error;
2405
- }
2406
- }
2371
+ var fetchWithContextCall = async (context, ...params) => {
2372
+ const [input, init] = params;
2373
+ try {
2374
+ const headers = init?.headers ? Object.fromEntries(new Headers(init.headers).entries()) : {};
2375
+ const body = init?.body ? JSON.parse(init.body) : void 0;
2376
+ const agentName = headers[AGENT_NAME_HEADER];
2377
+ const stepName = agentName ? `Call Agent ${agentName}` : "Call Agent";
2378
+ const responseInfo = await context.call(stepName, {
2379
+ url: input.toString(),
2380
+ method: init?.method,
2381
+ headers,
2382
+ body
2383
+ });
2384
+ const responseHeaders = new Headers(
2385
+ Object.entries(responseInfo.header).reduce(
2386
+ (acc, [key, values]) => {
2387
+ acc[key] = values.join(", ");
2388
+ return acc;
2389
+ },
2390
+ {}
2391
+ )
2392
+ );
2393
+ return new Response(JSON.stringify(responseInfo.body), {
2394
+ status: responseInfo.status,
2395
+ headers: responseHeaders
2396
+ });
2397
+ } catch (error) {
2398
+ if (error instanceof Error && error.name === "WorkflowAbort") {
2399
+ throw error;
2400
+ } else {
2401
+ console.error("Error in fetch implementation:", error);
2402
+ throw error;
2407
2403
  }
2404
+ }
2405
+ };
2406
+ var createWorkflowModel = ({
2407
+ context,
2408
+ provider,
2409
+ providerParams
2410
+ }) => {
2411
+ return provider({
2412
+ fetch: (...params) => fetchWithContextCall(context, ...params),
2413
+ ...providerParams
2408
2414
  });
2409
2415
  };
2410
2416
  var wrapTools = ({
@@ -2644,9 +2650,14 @@ var WorkflowAgents = class {
2644
2650
  openai(...params) {
2645
2651
  const [model, settings] = params;
2646
2652
  const { baseURL, apiKey, ...otherSettings } = settings ?? {};
2647
- const openai2 = createWorkflowOpenAI(this.context, { baseURL, apiKey });
2648
- return openai2(model, otherSettings);
2653
+ const openaiModel = this.AISDKModel({
2654
+ context: this.context,
2655
+ provider: import_openai3.createOpenAI,
2656
+ providerParams: { baseURL, apiKey, compatibility: "strict" }
2657
+ });
2658
+ return openaiModel(model, otherSettings);
2649
2659
  }
2660
+ AISDKModel = createWorkflowModel;
2650
2661
  };
2651
2662
 
2652
2663
  // src/context/context.ts
@@ -3369,6 +3380,7 @@ var processOptions = (options) => {
3369
3380
  retries: DEFAULT_RETRIES,
3370
3381
  useJSONContent: false,
3371
3382
  disableTelemetry: false,
3383
+ onError: console.error,
3372
3384
  ...options
3373
3385
  };
3374
3386
  };
@@ -3418,7 +3430,8 @@ var serveBase = (routeFunction, telemetry2, options) => {
3418
3430
  retries,
3419
3431
  useJSONContent,
3420
3432
  disableTelemetry,
3421
- flowControl
3433
+ flowControl,
3434
+ onError
3422
3435
  } = processOptions(options);
3423
3436
  telemetry2 = disableTelemetry ? void 0 : telemetry2;
3424
3437
  const debug = WorkflowLogger.getLogger(verbose);
@@ -3547,8 +3560,19 @@ var serveBase = (routeFunction, telemetry2, options) => {
3547
3560
  try {
3548
3561
  return await handler(request);
3549
3562
  } catch (error) {
3550
- console.error(error);
3551
- return new Response(JSON.stringify(formatWorkflowError(error)), {
3563
+ const formattedError = formatWorkflowError(error);
3564
+ try {
3565
+ onError?.(error);
3566
+ } catch (onErrorError) {
3567
+ const formattedOnErrorError = formatWorkflowError(onErrorError);
3568
+ const errorMessage = `Error while running onError callback: '${formattedOnErrorError.message}'.
3569
+ Original error: '${formattedError.message}'`;
3570
+ console.error(errorMessage);
3571
+ return new Response(errorMessage, {
3572
+ status: 500
3573
+ });
3574
+ }
3575
+ return new Response(JSON.stringify(formattedError), {
3552
3576
  status: 500
3553
3577
  });
3554
3578
  }
package/h3.mjs CHANGED
@@ -2,7 +2,7 @@ import {
2
2
  SDK_TELEMETRY,
3
3
  serveBase,
4
4
  serveManyBase
5
- } from "./chunk-WQAJ2RSZ.mjs";
5
+ } from "./chunk-4GTHIL7S.mjs";
6
6
 
7
7
  // node_modules/defu/dist/defu.mjs
8
8
  function isPlainObject(value) {
package/hono.d.mts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { Context } from 'hono';
2
- import { R as RouteFunction, k as PublicServeOptions, t as InvokableWorkflow } from './types-DS9q8FyV.mjs';
2
+ import { R as RouteFunction, k as PublicServeOptions, t as InvokableWorkflow } from './types-D1W0VOpy.mjs';
3
3
  import { Variables } from 'hono/types';
4
- import { s as serveManyBase } from './serve-many-Fuovl7gl.mjs';
4
+ import { s as serveManyBase } from './serve-many-DLguU9iR.mjs';
5
5
  import '@upstash/qstash';
6
6
  import 'zod';
7
7
  import 'ai';
package/hono.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { Context } from 'hono';
2
- import { R as RouteFunction, k as PublicServeOptions, t as InvokableWorkflow } from './types-DS9q8FyV.js';
2
+ import { R as RouteFunction, k as PublicServeOptions, t as InvokableWorkflow } from './types-D1W0VOpy.js';
3
3
  import { Variables } from 'hono/types';
4
- import { s as serveManyBase } from './serve-many-DNnLsDIp.js';
4
+ import { s as serveManyBase } from './serve-many-BdMq5rFX.js';
5
5
  import '@upstash/qstash';
6
6
  import 'zod';
7
7
  import 'ai';
package/hono.js CHANGED
@@ -134,7 +134,7 @@ var formatWorkflowError = (error) => {
134
134
  message: error.message
135
135
  } : {
136
136
  error: "Error",
137
- message: "An error occured while executing workflow."
137
+ message: `An error occured while executing workflow: '${typeof error === "string" ? error : JSON.stringify(error)}'`
138
138
  };
139
139
  };
140
140
 
@@ -2034,6 +2034,9 @@ var WorkflowApi = class extends BaseWorkflowApi {
2034
2034
  }
2035
2035
  };
2036
2036
 
2037
+ // src/agents/index.ts
2038
+ var import_openai3 = require("@ai-sdk/openai");
2039
+
2037
2040
  // src/agents/adapters.ts
2038
2041
  var import_openai2 = require("@ai-sdk/openai");
2039
2042
  var import_ai = require("ai");
@@ -2053,46 +2056,49 @@ you need from that agent.
2053
2056
  `;
2054
2057
 
2055
2058
  // src/agents/adapters.ts
2056
- var createWorkflowOpenAI = (context, config) => {
2057
- const { baseURL, apiKey } = config ?? {};
2058
- return (0, import_openai2.createOpenAI)({
2059
- baseURL,
2060
- apiKey,
2061
- compatibility: "strict",
2062
- fetch: async (input, init) => {
2063
- try {
2064
- const headers = init?.headers ? Object.fromEntries(new Headers(init.headers).entries()) : {};
2065
- const body = init?.body ? JSON.parse(init.body) : void 0;
2066
- const agentName = headers[AGENT_NAME_HEADER];
2067
- const stepName = agentName ? `Call Agent ${agentName}` : "Call Agent";
2068
- const responseInfo = await context.call(stepName, {
2069
- url: input.toString(),
2070
- method: init?.method,
2071
- headers,
2072
- body
2073
- });
2074
- const responseHeaders = new Headers(
2075
- Object.entries(responseInfo.header).reduce(
2076
- (acc, [key, values]) => {
2077
- acc[key] = values.join(", ");
2078
- return acc;
2079
- },
2080
- {}
2081
- )
2082
- );
2083
- return new Response(JSON.stringify(responseInfo.body), {
2084
- status: responseInfo.status,
2085
- headers: responseHeaders
2086
- });
2087
- } catch (error) {
2088
- if (error instanceof Error && error.name === "WorkflowAbort") {
2089
- throw error;
2090
- } else {
2091
- console.error("Error in fetch implementation:", error);
2092
- throw error;
2093
- }
2094
- }
2059
+ var fetchWithContextCall = async (context, ...params) => {
2060
+ const [input, init] = params;
2061
+ try {
2062
+ const headers = init?.headers ? Object.fromEntries(new Headers(init.headers).entries()) : {};
2063
+ const body = init?.body ? JSON.parse(init.body) : void 0;
2064
+ const agentName = headers[AGENT_NAME_HEADER];
2065
+ const stepName = agentName ? `Call Agent ${agentName}` : "Call Agent";
2066
+ const responseInfo = await context.call(stepName, {
2067
+ url: input.toString(),
2068
+ method: init?.method,
2069
+ headers,
2070
+ body
2071
+ });
2072
+ const responseHeaders = new Headers(
2073
+ Object.entries(responseInfo.header).reduce(
2074
+ (acc, [key, values]) => {
2075
+ acc[key] = values.join(", ");
2076
+ return acc;
2077
+ },
2078
+ {}
2079
+ )
2080
+ );
2081
+ return new Response(JSON.stringify(responseInfo.body), {
2082
+ status: responseInfo.status,
2083
+ headers: responseHeaders
2084
+ });
2085
+ } catch (error) {
2086
+ if (error instanceof Error && error.name === "WorkflowAbort") {
2087
+ throw error;
2088
+ } else {
2089
+ console.error("Error in fetch implementation:", error);
2090
+ throw error;
2095
2091
  }
2092
+ }
2093
+ };
2094
+ var createWorkflowModel = ({
2095
+ context,
2096
+ provider,
2097
+ providerParams
2098
+ }) => {
2099
+ return provider({
2100
+ fetch: (...params) => fetchWithContextCall(context, ...params),
2101
+ ...providerParams
2096
2102
  });
2097
2103
  };
2098
2104
  var wrapTools = ({
@@ -2332,9 +2338,14 @@ var WorkflowAgents = class {
2332
2338
  openai(...params) {
2333
2339
  const [model, settings] = params;
2334
2340
  const { baseURL, apiKey, ...otherSettings } = settings ?? {};
2335
- const openai2 = createWorkflowOpenAI(this.context, { baseURL, apiKey });
2336
- return openai2(model, otherSettings);
2341
+ const openaiModel = this.AISDKModel({
2342
+ context: this.context,
2343
+ provider: import_openai3.createOpenAI,
2344
+ providerParams: { baseURL, apiKey, compatibility: "strict" }
2345
+ });
2346
+ return openaiModel(model, otherSettings);
2337
2347
  }
2348
+ AISDKModel = createWorkflowModel;
2338
2349
  };
2339
2350
 
2340
2351
  // src/context/context.ts
@@ -3057,6 +3068,7 @@ var processOptions = (options) => {
3057
3068
  retries: DEFAULT_RETRIES,
3058
3069
  useJSONContent: false,
3059
3070
  disableTelemetry: false,
3071
+ onError: console.error,
3060
3072
  ...options
3061
3073
  };
3062
3074
  };
@@ -3106,7 +3118,8 @@ var serveBase = (routeFunction, telemetry2, options) => {
3106
3118
  retries,
3107
3119
  useJSONContent,
3108
3120
  disableTelemetry,
3109
- flowControl
3121
+ flowControl,
3122
+ onError
3110
3123
  } = processOptions(options);
3111
3124
  telemetry2 = disableTelemetry ? void 0 : telemetry2;
3112
3125
  const debug = WorkflowLogger.getLogger(verbose);
@@ -3235,8 +3248,19 @@ var serveBase = (routeFunction, telemetry2, options) => {
3235
3248
  try {
3236
3249
  return await handler(request);
3237
3250
  } catch (error) {
3238
- console.error(error);
3239
- return new Response(JSON.stringify(formatWorkflowError(error)), {
3251
+ const formattedError = formatWorkflowError(error);
3252
+ try {
3253
+ onError?.(error);
3254
+ } catch (onErrorError) {
3255
+ const formattedOnErrorError = formatWorkflowError(onErrorError);
3256
+ const errorMessage = `Error while running onError callback: '${formattedOnErrorError.message}'.
3257
+ Original error: '${formattedError.message}'`;
3258
+ console.error(errorMessage);
3259
+ return new Response(errorMessage, {
3260
+ status: 500
3261
+ });
3262
+ }
3263
+ return new Response(JSON.stringify(formattedError), {
3240
3264
  status: 500
3241
3265
  });
3242
3266
  }
package/hono.mjs CHANGED
@@ -2,7 +2,7 @@ import {
2
2
  SDK_TELEMETRY,
3
3
  serveBase,
4
4
  serveManyBase
5
- } from "./chunk-WQAJ2RSZ.mjs";
5
+ } from "./chunk-4GTHIL7S.mjs";
6
6
 
7
7
  // platforms/hono.ts
8
8
  var telemetry = {
package/index.d.mts CHANGED
@@ -1,5 +1,5 @@
1
- import { R as RouteFunction, W as WorkflowServeOptions, E as ExclusiveValidationOptions, T as Telemetry, S as StepType, a as RawStep, N as NotifyResponse, b as Waiter, c as Step } from './types-DS9q8FyV.mjs';
2
- export { A as AsyncStepFunction, C as CallResponse, r as CallSettings, D as Duration, l as FailureFunctionPayload, F as FinishCondition, H as HeaderParams, t as InvokableWorkflow, s as InvokeStepResponse, I as InvokeWorkflowRequest, L as LazyInvokeStepParams, u as LogLevel, p as NotifyStepResponse, P as ParallelCallState, k as PublicServeOptions, m as RequiredExceptFields, j as StepFunction, h as StepTypes, i as SyncStepFunction, q as WaitEventOptions, n as WaitRequest, o as WaitStepResponse, f as WorkflowClient, e as WorkflowContext, w as WorkflowLogger, v as WorkflowLoggerOptions, g as WorkflowReceiver, d as WorkflowTool } from './types-DS9q8FyV.mjs';
1
+ import { R as RouteFunction, W as WorkflowServeOptions, E as ExclusiveValidationOptions, T as Telemetry, S as StepType, a as RawStep, N as NotifyResponse, b as Waiter, c as Step } from './types-D1W0VOpy.mjs';
2
+ export { A as AsyncStepFunction, C as CallResponse, r as CallSettings, D as Duration, l as FailureFunctionPayload, F as FinishCondition, H as HeaderParams, t as InvokableWorkflow, s as InvokeStepResponse, I as InvokeWorkflowRequest, L as LazyInvokeStepParams, u as LogLevel, p as NotifyStepResponse, P as ParallelCallState, k as PublicServeOptions, m as RequiredExceptFields, j as StepFunction, h as StepTypes, i as SyncStepFunction, q as WaitEventOptions, n as WaitRequest, o as WaitStepResponse, f as WorkflowClient, e as WorkflowContext, w as WorkflowLogger, v as WorkflowLoggerOptions, g as WorkflowReceiver, d as WorkflowTool } from './types-D1W0VOpy.mjs';
3
3
  import { HTTPMethods, State, FlowControl, Client as Client$1, QstashError } from '@upstash/qstash';
4
4
  import 'zod';
5
5
  import 'ai';
@@ -154,7 +154,11 @@ type WaitEventGroup = {
154
154
  type AsOptional<TType> = TType | {
155
155
  [P in keyof TType]?: never;
156
156
  };
157
- type StepLog = BaseStepLog & AsOptional<CallUrlGroup> & AsOptional<CallResponseStatusGroup> & AsOptional<InvokedWorkflowGroup> & AsOptional<WaitEventGroup>;
157
+ type StepLog = BaseStepLog & AsOptional<CallUrlGroup> & AsOptional<CallResponseStatusGroup> & AsOptional<InvokedWorkflowGroup> & AsOptional<{
158
+ sleepFor: number;
159
+ }> & AsOptional<{
160
+ sleepUntil: number;
161
+ }> & AsOptional<WaitEventGroup>;
158
162
  type StepLogGroup = {
159
163
  /**
160
164
  * Log which belongs to a single step
@@ -179,7 +183,7 @@ type StepLogGroup = {
179
183
  */
180
184
  steps: {
181
185
  messageId: string;
182
- state: "STEP_PROGRESS" | "STEP_RETRY" | "STEP_FAILED";
186
+ state: "STEP_PROGRESS" | "STEP_RETRY" | "STEP_FAILED" | "STEP_CANCELED";
183
187
  }[];
184
188
  /**
185
189
  * Log which belongs to the next step
package/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { R as RouteFunction, W as WorkflowServeOptions, E as ExclusiveValidationOptions, T as Telemetry, S as StepType, a as RawStep, N as NotifyResponse, b as Waiter, c as Step } from './types-DS9q8FyV.js';
2
- export { A as AsyncStepFunction, C as CallResponse, r as CallSettings, D as Duration, l as FailureFunctionPayload, F as FinishCondition, H as HeaderParams, t as InvokableWorkflow, s as InvokeStepResponse, I as InvokeWorkflowRequest, L as LazyInvokeStepParams, u as LogLevel, p as NotifyStepResponse, P as ParallelCallState, k as PublicServeOptions, m as RequiredExceptFields, j as StepFunction, h as StepTypes, i as SyncStepFunction, q as WaitEventOptions, n as WaitRequest, o as WaitStepResponse, f as WorkflowClient, e as WorkflowContext, w as WorkflowLogger, v as WorkflowLoggerOptions, g as WorkflowReceiver, d as WorkflowTool } from './types-DS9q8FyV.js';
1
+ import { R as RouteFunction, W as WorkflowServeOptions, E as ExclusiveValidationOptions, T as Telemetry, S as StepType, a as RawStep, N as NotifyResponse, b as Waiter, c as Step } from './types-D1W0VOpy.js';
2
+ export { A as AsyncStepFunction, C as CallResponse, r as CallSettings, D as Duration, l as FailureFunctionPayload, F as FinishCondition, H as HeaderParams, t as InvokableWorkflow, s as InvokeStepResponse, I as InvokeWorkflowRequest, L as LazyInvokeStepParams, u as LogLevel, p as NotifyStepResponse, P as ParallelCallState, k as PublicServeOptions, m as RequiredExceptFields, j as StepFunction, h as StepTypes, i as SyncStepFunction, q as WaitEventOptions, n as WaitRequest, o as WaitStepResponse, f as WorkflowClient, e as WorkflowContext, w as WorkflowLogger, v as WorkflowLoggerOptions, g as WorkflowReceiver, d as WorkflowTool } from './types-D1W0VOpy.js';
3
3
  import { HTTPMethods, State, FlowControl, Client as Client$1, QstashError } from '@upstash/qstash';
4
4
  import 'zod';
5
5
  import 'ai';
@@ -154,7 +154,11 @@ type WaitEventGroup = {
154
154
  type AsOptional<TType> = TType | {
155
155
  [P in keyof TType]?: never;
156
156
  };
157
- type StepLog = BaseStepLog & AsOptional<CallUrlGroup> & AsOptional<CallResponseStatusGroup> & AsOptional<InvokedWorkflowGroup> & AsOptional<WaitEventGroup>;
157
+ type StepLog = BaseStepLog & AsOptional<CallUrlGroup> & AsOptional<CallResponseStatusGroup> & AsOptional<InvokedWorkflowGroup> & AsOptional<{
158
+ sleepFor: number;
159
+ }> & AsOptional<{
160
+ sleepUntil: number;
161
+ }> & AsOptional<WaitEventGroup>;
158
162
  type StepLogGroup = {
159
163
  /**
160
164
  * Log which belongs to a single step
@@ -179,7 +183,7 @@ type StepLogGroup = {
179
183
  */
180
184
  steps: {
181
185
  messageId: string;
182
- state: "STEP_PROGRESS" | "STEP_RETRY" | "STEP_FAILED";
186
+ state: "STEP_PROGRESS" | "STEP_RETRY" | "STEP_FAILED" | "STEP_CANCELED";
183
187
  }[];
184
188
  /**
185
189
  * Log which belongs to the next step