@aikirun/types 0.9.2 → 0.10.0

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/client.d.ts CHANGED
@@ -30,11 +30,11 @@ interface Client<AppContext = unknown> {
30
30
  };
31
31
  }
32
32
  interface Logger {
33
- info(message: string, metadata?: Record<string, unknown>): void;
33
+ trace(message: string, metadata?: Record<string, unknown>): void;
34
34
  debug(message: string, metadata?: Record<string, unknown>): void;
35
+ info(message: string, metadata?: Record<string, unknown>): void;
35
36
  warn(message: string, metadata?: Record<string, unknown>): void;
36
37
  error(message: string, metadata?: Record<string, unknown>): void;
37
- trace(message: string, metadata?: Record<string, unknown>): void;
38
38
  child(bindings: Record<string, unknown>): Logger;
39
39
  }
40
40
  interface ApiClient {
@@ -88,7 +88,7 @@ interface ResolvedSubscriberStrategy {
88
88
  getNextDelay: (context: SubscriberDelayParams) => number;
89
89
  getNextBatch: (size: number) => Promise<WorkflowRunBatch[]>;
90
90
  heartbeat?: (workflowRunId: WorkflowRunId, meta: SubscriberMessageMeta) => Promise<void>;
91
- acknowledge?: (workflowRunId: WorkflowRunId, meta: SubscriberMessageMeta) => Promise<void>;
91
+ acknowledge?: (workerId: string, workflowRunId: WorkflowRunId, meta: SubscriberMessageMeta) => Promise<void>;
92
92
  }
93
93
  interface PollingSubscriberStrategy {
94
94
  type: "polling";
package/dist/event.d.ts CHANGED
@@ -10,7 +10,7 @@ interface EventStateBase {
10
10
  }
11
11
  interface EventStateReceived<Data> extends EventStateBase {
12
12
  status: "received";
13
- data: Data;
13
+ data?: Data;
14
14
  receivedAt: number;
15
15
  reference?: EventReferenceOptions;
16
16
  }
package/dist/task.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { RetryStrategy } from './retry.js';
2
2
  import { SerializableError } from './serializable.js';
3
+ import { OptionalProp } from './utils.js';
3
4
 
4
5
  type TaskId = string & {
5
6
  _brand: "task_id";
@@ -58,18 +59,20 @@ interface TransitionTaskStateToRunningCreate extends TransitionTaskStateBase {
58
59
  type: "create";
59
60
  taskName: string;
60
61
  options?: TaskOptions;
61
- taskState: TaskStateRunning<unknown>;
62
+ taskState: TaskStateRunningRequest;
62
63
  }
63
64
  interface TransitionTaskStateToRunningRetry extends TransitionTaskStateBase {
64
65
  type: "retry";
65
66
  taskId: string;
66
67
  options?: TaskOptions;
67
- taskState: TaskStateRunning<unknown>;
68
+ taskState: TaskStateRunningRequest;
68
69
  }
70
+ type TaskStateRunningRequest = OptionalProp<TaskStateRunning<unknown>, "input">;
69
71
  interface TransitionTaskStateToCompleted extends TransitionTaskStateBase {
70
72
  taskId: string;
71
- taskState: TaskStateCompleted<unknown>;
73
+ taskState: TaskStateCompletedRequest;
72
74
  }
75
+ type TaskStateCompletedRequest = OptionalProp<TaskStateCompleted<unknown>, "output">;
73
76
  interface TransitionTaskStateToFailed extends TransitionTaskStateBase {
74
77
  taskId: string;
75
78
  taskState: TaskStateFailed;
@@ -88,4 +91,4 @@ declare class TaskFailedError extends Error {
88
91
  constructor(taskId: TaskId, attempts: number, reason: string);
89
92
  }
90
93
 
91
- export { TaskFailedError, type TaskId, type TaskInfo, type TaskName, type TaskOptions, type TaskPath, type TaskReferenceOptions, type TaskState, type TaskStateAwaitingRetry, type TaskStateAwaitingRetryRequest, type TaskStateCompleted, type TaskStateFailed, type TaskStateRunning, type TaskStatus, type TransitionTaskStateBase, type TransitionTaskStateToAwaitingRetry, type TransitionTaskStateToCompleted, type TransitionTaskStateToFailed, type TransitionTaskStateToRunningCreate, type TransitionTaskStateToRunningRetry };
94
+ export { TaskFailedError, type TaskId, type TaskInfo, type TaskName, type TaskOptions, type TaskPath, type TaskReferenceOptions, type TaskState, type TaskStateAwaitingRetry, type TaskStateAwaitingRetryRequest, type TaskStateCompleted, type TaskStateCompletedRequest, type TaskStateFailed, type TaskStateRunning, type TaskStateRunningRequest, type TaskStatus, type TransitionTaskStateBase, type TransitionTaskStateToAwaitingRetry, type TransitionTaskStateToCompleted, type TransitionTaskStateToFailed, type TransitionTaskStateToRunningCreate, type TransitionTaskStateToRunningRetry };
package/dist/task.js CHANGED
@@ -1,11 +1,14 @@
1
1
  // task.ts
2
2
  var TaskFailedError = class extends Error {
3
+ taskId;
4
+ attempts;
5
+ reason;
3
6
  constructor(taskId, attempts, reason) {
4
7
  super(`Task ${taskId} failed after ${attempts} attempts. Reason: ${reason}`);
8
+ this.name = "TaskFailedError";
5
9
  this.taskId = taskId;
6
10
  this.attempts = attempts;
7
11
  this.reason = reason;
8
- this.name = "TaskFailedError";
9
12
  }
10
13
  };
11
14
  export {
package/dist/trigger.d.ts CHANGED
@@ -9,9 +9,6 @@ type TriggerStrategy = {
9
9
  } | {
10
10
  type: "delayed";
11
11
  delay: DurationObject;
12
- } | {
13
- type: "startAt";
14
- startAt: number;
15
12
  };
16
13
 
17
14
  export type { TriggerStrategy };
package/dist/utils.d.ts CHANGED
@@ -2,5 +2,8 @@ type RequireAtLeastOneProp<T, Keys extends keyof T = keyof T> = {
2
2
  [K in Keys]-?: Required<Pick<T, K>> & Omit<T, K>;
3
3
  }[Keys];
4
4
  type DistributiveOmit<T, K extends keyof T> = T extends T ? Omit<T, K> : never;
5
+ type OptionalProp<T, K extends keyof T> = Omit<T, K> & {
6
+ [Key in K]?: T[Key];
7
+ };
5
8
 
6
- export type { DistributiveOmit, RequireAtLeastOneProp };
9
+ export type { DistributiveOmit, OptionalProp, RequireAtLeastOneProp };
@@ -1,7 +1,7 @@
1
1
  import { EventSendOptions } from './event.js';
2
2
  import { TransitionTaskStateToRunningCreate, TransitionTaskStateToRunningRetry, TransitionTaskStateToCompleted, TransitionTaskStateToFailed, TransitionTaskStateToAwaitingRetry, TaskStateCompleted, TaskStateFailed } from './task.js';
3
- import { DistributiveOmit } from './utils.js';
4
- import { WorkflowRunStatus, WorkflowRun, WorkflowRunState, WorkflowOptions, WorkflowRunStateScheduled, WorkflowRunStateAwaitingEvent, WorkflowRunStateAwaitingRetry, WorkflowRunStateAwaitingChildWorkflow, WorkflowRunStatePaused, WorkflowRunStateCancelled, WorkflowRunTransition } from './workflow-run.js';
3
+ import { DistributiveOmit, OptionalProp } from './utils.js';
4
+ import { WorkflowRunStatus, WorkflowRun, WorkflowRunState, WorkflowOptions, WorkflowRunStateScheduled, WorkflowRunStateAwaitingEvent, WorkflowRunStateAwaitingRetry, WorkflowRunStateAwaitingChildWorkflow, WorkflowRunStateCompleted, WorkflowRunStatePaused, WorkflowRunStateCancelled, WorkflowRunTransition } from './workflow-run.js';
5
5
  import './duration.js';
6
6
  import './retry.js';
7
7
  import './serializable.js';
@@ -61,7 +61,7 @@ interface WorkflowRunGetStateResponseV1 {
61
61
  interface WorkflowRunCreateRequestV1 {
62
62
  name: string;
63
63
  versionId: string;
64
- input: unknown;
64
+ input?: unknown;
65
65
  parentWorkflowRunId?: string;
66
66
  options?: WorkflowOptions;
67
67
  }
@@ -80,9 +80,10 @@ type WorkflowRunStateAwaitingRetryRequest = DistributiveOmit<WorkflowRunStateAwa
80
80
  type WorkflowRunStateAwaitingChildWorkflowRequest = DistributiveOmit<WorkflowRunStateAwaitingChildWorkflow, "timeoutAt"> & {
81
81
  timeoutInMs?: number;
82
82
  };
83
+ type WorkflowRunStateCompletedRequest = OptionalProp<WorkflowRunStateCompleted<unknown>, "output">;
83
84
  type WorkflowRunStateRequest = Exclude<WorkflowRunState, {
84
- status: "scheduled" | "awaiting_event" | "awaiting_retry" | "awaiting_child_workflow";
85
- }> | WorkflowRunStateScheduledRequest | WorkflowRunStateAwaitingEventRequest | WorkflowRunStateAwaitingRetryRequest | WorkflowRunStateAwaitingChildWorkflowRequest;
85
+ status: "scheduled" | "awaiting_event" | "awaiting_retry" | "awaiting_child_workflow" | "completed";
86
+ }> | WorkflowRunStateScheduledRequest | WorkflowRunStateAwaitingEventRequest | WorkflowRunStateAwaitingRetryRequest | WorkflowRunStateAwaitingChildWorkflowRequest | WorkflowRunStateCompletedRequest;
86
87
  interface WorkflowRunTransitionStateRequestBase {
87
88
  type: "optimistic" | "pessimistic";
88
89
  id: string;
@@ -91,7 +92,9 @@ interface WorkflowRunTransitionStateRequestBase {
91
92
  type WorkflowRunStateScheduledRequestOptimistic = Extract<WorkflowRunStateScheduledRequest, {
92
93
  reason: "retry" | "task_retry" | "awake" | "event" | "child_workflow";
93
94
  }>;
94
- type WorkflowRunStateScheduledRequestPessimistic = Exclude<WorkflowRunStateScheduledRequest, WorkflowRunStateScheduledRequestOptimistic>;
95
+ type WorkflowRunStateScheduledRequestPessimistic = Extract<WorkflowRunStateScheduledRequest, {
96
+ reason: "new" | "awake_early" | "resume";
97
+ }>;
95
98
  interface WorkflowRunTransitionStateRequestOptimistic extends WorkflowRunTransitionStateRequestBase {
96
99
  type: "optimistic";
97
100
  state: WorkflowRunStateScheduledRequestOptimistic | Exclude<WorkflowRunStateRequest, {
@@ -117,7 +120,7 @@ interface WorkflowRunSetTaskStateRequestNew {
117
120
  type: "new";
118
121
  id: string;
119
122
  taskName: string;
120
- input: unknown;
123
+ input?: unknown;
121
124
  reference?: {
122
125
  id: string;
123
126
  };
@@ -149,7 +152,7 @@ interface WorkflowRunListTransitionsResponseV1 {
149
152
  interface WorkflowRunSendEventRequestV1 {
150
153
  id: string;
151
154
  eventName: string;
152
- data: unknown;
155
+ data?: unknown;
153
156
  options?: EventSendOptions;
154
157
  }
155
158
  interface WorkflowRunSendEventResponseV1 {
@@ -158,8 +161,8 @@ interface WorkflowRunSendEventResponseV1 {
158
161
  interface WorkflowRunMulticastEventRequestV1 {
159
162
  ids: string[];
160
163
  eventName: string;
161
- data: unknown;
164
+ data?: unknown;
162
165
  options?: EventSendOptions;
163
166
  }
164
167
 
165
- export type { TransitionTaskStateToRunning, WorkflowRunApi, WorkflowRunCreateRequestV1, WorkflowRunCreateResponseV1, WorkflowRunGetByIdRequestV1, WorkflowRunGetByIdResponseV1, WorkflowRunGetStateRequestV1, WorkflowRunGetStateResponseV1, WorkflowRunListItem, WorkflowRunListRequestV1, WorkflowRunListResponseV1, WorkflowRunListTransitionsRequestV1, WorkflowRunListTransitionsResponseV1, WorkflowRunMulticastEventRequestV1, WorkflowRunSendEventRequestV1, WorkflowRunSendEventResponseV1, WorkflowRunSetTaskStateRequestExisting, WorkflowRunSetTaskStateRequestNew, WorkflowRunSetTaskStateRequestV1, WorkflowRunSetTaskStateResponseV1, WorkflowRunStateAwaitingChildWorkflowRequest, WorkflowRunStateAwaitingEventRequest, WorkflowRunStateAwaitingRetryRequest, WorkflowRunStateRequest, WorkflowRunStateScheduledRequest, WorkflowRunStateScheduledRequestOptimistic, WorkflowRunStateScheduledRequestPessimistic, WorkflowRunTransitionStateRequestOptimistic, WorkflowRunTransitionStateRequestPessimistic, WorkflowRunTransitionStateRequestV1, WorkflowRunTransitionStateResponseV1, WorkflowRunTransitionTaskStateRequestV1, WorkflowRunTransitionTaskStateResponseV1 };
168
+ export type { TransitionTaskStateToRunning, WorkflowRunApi, WorkflowRunCreateRequestV1, WorkflowRunCreateResponseV1, WorkflowRunGetByIdRequestV1, WorkflowRunGetByIdResponseV1, WorkflowRunGetStateRequestV1, WorkflowRunGetStateResponseV1, WorkflowRunListItem, WorkflowRunListRequestV1, WorkflowRunListResponseV1, WorkflowRunListTransitionsRequestV1, WorkflowRunListTransitionsResponseV1, WorkflowRunMulticastEventRequestV1, WorkflowRunSendEventRequestV1, WorkflowRunSendEventResponseV1, WorkflowRunSetTaskStateRequestExisting, WorkflowRunSetTaskStateRequestNew, WorkflowRunSetTaskStateRequestV1, WorkflowRunSetTaskStateResponseV1, WorkflowRunStateAwaitingChildWorkflowRequest, WorkflowRunStateAwaitingEventRequest, WorkflowRunStateAwaitingRetryRequest, WorkflowRunStateCompletedRequest, WorkflowRunStateRequest, WorkflowRunStateScheduledRequest, WorkflowRunStateScheduledRequestOptimistic, WorkflowRunStateScheduledRequestPessimistic, WorkflowRunTransitionStateRequestOptimistic, WorkflowRunTransitionStateRequestPessimistic, WorkflowRunTransitionStateRequestV1, WorkflowRunTransitionStateResponseV1, WorkflowRunTransitionTaskStateRequestV1, WorkflowRunTransitionTaskStateResponseV1 };
@@ -140,7 +140,7 @@ interface WorkflowRun<Input = unknown, Output = unknown> {
140
140
  versionId: string;
141
141
  createdAt: number;
142
142
  revision: number;
143
- input: Input;
143
+ input?: Input;
144
144
  path: string;
145
145
  options: WorkflowOptions;
146
146
  attempts: number;
@@ -193,12 +193,12 @@ declare class WorkflowRunSuspendedError extends Error {
193
193
  declare class WorkflowRunFailedError extends Error {
194
194
  readonly id: WorkflowRunId;
195
195
  readonly attempts: number;
196
- readonly reason?: string | undefined;
197
- constructor(id: WorkflowRunId, attempts: number, reason?: string | undefined);
196
+ readonly reason?: string;
197
+ constructor(id: WorkflowRunId, attempts: number, reason?: string);
198
198
  }
199
199
  declare class WorkflowRunConflictError extends Error {
200
200
  readonly id: WorkflowRunId;
201
201
  constructor(id: WorkflowRunId);
202
202
  }
203
203
 
204
- export { type ChildWorkflowRunInfo, type ChildWorkflowWaitResult, type ChildWorkflowWaitResultCompleted, type ChildWorkflowWaitResultTimeout, type NonTerminalWorkflowRunStatus, type TerminalWorkflowRunStatus, type WorkflowFailureCause, type WorkflowOptions, type WorkflowReferenceOptions, type WorkflowRun, WorkflowRunConflictError, WorkflowRunFailedError, type WorkflowRunId, WorkflowRunNotExecutableError, type WorkflowRunPath, type WorkflowRunScheduledReason, type WorkflowRunState, type WorkflowRunStateAwaitingChildWorkflow, type WorkflowRunStateAwaitingEvent, type WorkflowRunStateAwaitingRetry, type WorkflowRunStateAwaitingRetryBase, type WorkflowRunStateAwaitingRetryCausedByChildWorkflow, type WorkflowRunStateAwaitingRetryCausedBySelf, type WorkflowRunStateAwaitingRetryCausedByTask, type WorkflowRunStateCancelled, type WorkflowRunStateCompleted, type WorkflowRunStateFailed, type WorkflowRunStateFailedByChildWorkflow, type WorkflowRunStateFailedBySelf, type WorkflowRunStateFailedByTask, type WorkflowRunStateInComplete, type WorkflowRunStatePaused, type WorkflowRunStateQueued, type WorkflowRunStateRunning, type WorkflowRunStateScheduled, type WorkflowRunStateScheduledByAwake, type WorkflowRunStateScheduledByAwakeEarly, type WorkflowRunStateScheduledByChildWorkflow, type WorkflowRunStateScheduledByEvent, type WorkflowRunStateScheduledByNew, type WorkflowRunStateScheduledByResume, type WorkflowRunStateScheduledByRetry, type WorkflowRunStateScheduledByTaskRetry, type WorkflowRunStateSleeping, type WorkflowRunStateTransition, type WorkflowRunStatus, WorkflowRunSuspendedError, type WorkflowRunTaskStateTransition, type WorkflowRunTransition, type WorkflowRunTransitionBase, isTerminalWorkflowRunStatus };
204
+ export { type ChildWorkflowRunInfo, type ChildWorkflowWaitResult, type ChildWorkflowWaitResultCompleted, type ChildWorkflowWaitResultTimeout, type NonTerminalWorkflowRunStatus, type TerminalWorkflowRunStatus, type WorkflowFailureCause, type WorkflowOptions, type WorkflowReferenceOptions, type WorkflowRun, WorkflowRunConflictError, WorkflowRunFailedError, type WorkflowRunId, WorkflowRunNotExecutableError, type WorkflowRunPath, type WorkflowRunScheduledReason, type WorkflowRunState, type WorkflowRunStateAwaitingChildWorkflow, type WorkflowRunStateAwaitingEvent, type WorkflowRunStateAwaitingRetry, type WorkflowRunStateAwaitingRetryBase, type WorkflowRunStateAwaitingRetryCausedByChildWorkflow, type WorkflowRunStateAwaitingRetryCausedBySelf, type WorkflowRunStateAwaitingRetryCausedByTask, type WorkflowRunStateCancelled, type WorkflowRunStateCompleted, type WorkflowRunStateFailed, type WorkflowRunStateFailedByChildWorkflow, type WorkflowRunStateFailedBySelf, type WorkflowRunStateFailedByTask, type WorkflowRunStateInComplete, type WorkflowRunStatePaused, type WorkflowRunStateQueued, type WorkflowRunStateRunning, type WorkflowRunStateScheduled, type WorkflowRunStateScheduledBase, type WorkflowRunStateScheduledByAwake, type WorkflowRunStateScheduledByAwakeEarly, type WorkflowRunStateScheduledByChildWorkflow, type WorkflowRunStateScheduledByEvent, type WorkflowRunStateScheduledByNew, type WorkflowRunStateScheduledByResume, type WorkflowRunStateScheduledByRetry, type WorkflowRunStateScheduledByTaskRetry, type WorkflowRunStateSleeping, type WorkflowRunStateTransition, type WorkflowRunStatus, WorkflowRunSuspendedError, type WorkflowRunTaskStateTransition, type WorkflowRunTransition, type WorkflowRunTransitionBase, isTerminalWorkflowRunStatus };
@@ -9,42 +9,42 @@ function isTerminalWorkflowRunStatus(status) {
9
9
  return false;
10
10
  }
11
11
  var WorkflowRunNotExecutableError = class extends Error {
12
+ id;
13
+ status;
12
14
  constructor(id, status) {
13
15
  super(`Workflow ${id} is not executable while ${status}`);
16
+ this.name = "WorkflowRunNotExecutableError";
14
17
  this.id = id;
15
18
  this.status = status;
16
- this.name = "WorkflowRunNotExecutableError";
17
19
  }
18
20
  };
19
21
  var WorkflowRunSuspendedError = class extends Error {
22
+ id;
20
23
  constructor(id) {
21
24
  super(`Workflow ${id} is suspended`);
22
- this.id = id;
23
25
  this.name = "WorkflowRunSuspendedError";
26
+ this.id = id;
24
27
  }
25
28
  };
26
29
  var WorkflowRunFailedError = class extends Error {
30
+ id;
31
+ attempts;
32
+ reason;
27
33
  constructor(id, attempts, reason) {
28
- var __super = (...args) => {
29
- super(...args);
30
- this.id = id;
31
- this.attempts = attempts;
32
- this.reason = reason;
33
- return this;
34
- };
35
- if (reason) {
36
- __super(`Workflow ${id} failed after ${attempts} attempt(s): ${reason}`);
37
- } else {
38
- __super(`Workflow ${id} failed after ${attempts} attempt(s)`);
39
- }
34
+ const message = reason ? `Workflow ${id} failed after ${attempts} attempt(s): ${reason}` : `Workflow ${id} failed after ${attempts} attempt(s)`;
35
+ super(message);
40
36
  this.name = "WorkflowRunFailedError";
37
+ this.id = id;
38
+ this.attempts = attempts;
39
+ this.reason = reason;
41
40
  }
42
41
  };
43
42
  var WorkflowRunConflictError = class extends Error {
43
+ id;
44
44
  constructor(id) {
45
45
  super(`Conflict while trying to update Workflow run ${id}`);
46
- this.id = id;
47
46
  this.name = "WorkflowRunConflictError";
47
+ this.id = id;
48
48
  }
49
49
  };
50
50
  export {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aikirun/types",
3
- "version": "0.9.2",
3
+ "version": "0.10.0",
4
4
  "description": "Core type definitions for Aiki - including workflow, task, client, and trigger types",
5
5
  "type": "module",
6
6
  "exports": {