duron 0.3.0-beta.10 → 0.3.0-beta.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.
Files changed (90) hide show
  1. package/dist/action-job.d.ts +33 -2
  2. package/dist/action-job.d.ts.map +1 -1
  3. package/dist/action-job.js +87 -22
  4. package/dist/action-manager.d.ts +44 -2
  5. package/dist/action-manager.d.ts.map +1 -1
  6. package/dist/action-manager.js +64 -3
  7. package/dist/action.d.ts +146 -3
  8. package/dist/action.d.ts.map +1 -1
  9. package/dist/action.js +131 -0
  10. package/dist/adapters/adapter.d.ts +365 -8
  11. package/dist/adapters/adapter.d.ts.map +1 -1
  12. package/dist/adapters/adapter.js +221 -15
  13. package/dist/adapters/postgres/base.d.ts +174 -5
  14. package/dist/adapters/postgres/base.d.ts.map +1 -1
  15. package/dist/adapters/postgres/base.js +349 -66
  16. package/dist/adapters/postgres/pglite.d.ts +37 -0
  17. package/dist/adapters/postgres/pglite.d.ts.map +1 -1
  18. package/dist/adapters/postgres/pglite.js +38 -0
  19. package/dist/adapters/postgres/postgres.d.ts +35 -0
  20. package/dist/adapters/postgres/postgres.d.ts.map +1 -1
  21. package/dist/adapters/postgres/postgres.js +42 -0
  22. package/dist/adapters/postgres/schema.d.ts +118 -35
  23. package/dist/adapters/postgres/schema.d.ts.map +1 -1
  24. package/dist/adapters/postgres/schema.default.d.ts +119 -36
  25. package/dist/adapters/postgres/schema.default.d.ts.map +1 -1
  26. package/dist/adapters/postgres/schema.default.js +2 -2
  27. package/dist/adapters/postgres/schema.js +55 -22
  28. package/dist/adapters/schemas.d.ts +107 -80
  29. package/dist/adapters/schemas.d.ts.map +1 -1
  30. package/dist/adapters/schemas.js +131 -26
  31. package/dist/client.d.ts +315 -9
  32. package/dist/client.d.ts.map +1 -1
  33. package/dist/client.js +391 -21
  34. package/dist/constants.js +6 -0
  35. package/dist/errors.d.ts +119 -0
  36. package/dist/errors.d.ts.map +1 -1
  37. package/dist/errors.js +111 -0
  38. package/dist/index.d.ts +1 -0
  39. package/dist/index.d.ts.map +1 -1
  40. package/dist/server.d.ts +91 -37
  41. package/dist/server.d.ts.map +1 -1
  42. package/dist/server.js +81 -25
  43. package/dist/step-manager.d.ts +111 -4
  44. package/dist/step-manager.d.ts.map +1 -1
  45. package/dist/step-manager.js +340 -69
  46. package/dist/telemetry/adapter.d.ts +322 -0
  47. package/dist/telemetry/adapter.d.ts.map +1 -1
  48. package/dist/telemetry/adapter.js +145 -0
  49. package/dist/telemetry/index.d.ts +1 -4
  50. package/dist/telemetry/index.d.ts.map +1 -1
  51. package/dist/telemetry/index.js +2 -4
  52. package/dist/telemetry/local-span-exporter.d.ts +56 -0
  53. package/dist/telemetry/local-span-exporter.d.ts.map +1 -0
  54. package/dist/telemetry/local-span-exporter.js +118 -0
  55. package/dist/telemetry/local.d.ts +48 -0
  56. package/dist/telemetry/local.d.ts.map +1 -1
  57. package/dist/telemetry/local.js +102 -0
  58. package/dist/telemetry/noop.d.ts +10 -0
  59. package/dist/telemetry/noop.d.ts.map +1 -1
  60. package/dist/telemetry/noop.js +43 -0
  61. package/dist/telemetry/opentelemetry.d.ts +23 -0
  62. package/dist/telemetry/opentelemetry.d.ts.map +1 -1
  63. package/dist/telemetry/opentelemetry.js +39 -0
  64. package/dist/utils/p-retry.d.ts +5 -0
  65. package/dist/utils/p-retry.d.ts.map +1 -1
  66. package/dist/utils/p-retry.js +8 -0
  67. package/dist/utils/wait-for-abort.d.ts +1 -0
  68. package/dist/utils/wait-for-abort.d.ts.map +1 -1
  69. package/dist/utils/wait-for-abort.js +1 -0
  70. package/migrations/postgres/{20260119153838_flimsy_thor_girl → 20260120154151_mean_magdalene}/migration.sql +27 -19
  71. package/migrations/postgres/{20260119153838_flimsy_thor_girl → 20260120154151_mean_magdalene}/snapshot.json +172 -65
  72. package/package.json +7 -2
  73. package/src/action-job.ts +32 -28
  74. package/src/action-manager.ts +5 -5
  75. package/src/action.ts +7 -7
  76. package/src/adapters/adapter.ts +54 -54
  77. package/src/adapters/postgres/base.ts +140 -77
  78. package/src/adapters/postgres/schema.default.ts +2 -2
  79. package/src/adapters/postgres/schema.ts +47 -23
  80. package/src/adapters/schemas.ts +83 -36
  81. package/src/client.ts +195 -42
  82. package/src/index.ts +1 -0
  83. package/src/server.ts +37 -37
  84. package/src/step-manager.ts +170 -86
  85. package/src/telemetry/index.ts +2 -20
  86. package/src/telemetry/local-span-exporter.ts +148 -0
  87. package/src/telemetry/adapter.ts +0 -642
  88. package/src/telemetry/local.ts +0 -429
  89. package/src/telemetry/noop.ts +0 -141
  90. package/src/telemetry/opentelemetry.ts +0 -453
package/dist/client.d.ts CHANGED
@@ -1,13 +1,21 @@
1
+ import { type Span, type Tracer } from '@opentelemetry/api';
2
+ import { type SpanExporter, type SpanProcessor } from '@opentelemetry/sdk-trace-base';
1
3
  import pino, { type Logger } from 'pino';
2
4
  import * as z from 'zod';
3
5
  import type { Action } from './action.js';
4
- import type { Adapter, GetActionsResult, GetJobStepsOptions, GetJobStepsResult, GetJobsOptions, GetJobsResult, GetMetricsOptions, GetMetricsResult, Job, JobStep } from './adapters/adapter.js';
6
+ import type { Adapter, GetActionsResult, GetJobStepsOptions, GetJobStepsResult, GetJobsOptions, GetJobsResult, GetSpansOptions, GetSpansResult, Job, JobStep } from './adapters/adapter.js';
5
7
  import type { JobStatusResult, JobStepStatusResult } from './adapters/schemas.js';
6
8
  import { type JobStatus } from './constants.js';
7
- import { type TelemetryAdapter } from './telemetry/index.js';
9
+ /**
10
+ * Extracts the inferred type from an action's input/output schema.
11
+ * Handles the case where the schema might be undefined.
12
+ */
8
13
  type InferActionSchema<T> = T extends z.ZodTypeAny ? z.infer<T> : Record<string, unknown>;
14
+ /**
15
+ * Result returned from waitForJob with untyped input and output.
16
+ */
9
17
  export interface JobResult {
10
- jobId: string;
18
+ id: string;
11
19
  actionName: string;
12
20
  status: JobStatus;
13
21
  groupKey: string;
@@ -15,8 +23,11 @@ export interface JobResult {
15
23
  output: unknown;
16
24
  error: Job['error'];
17
25
  }
26
+ /**
27
+ * Result returned from runActionAndWait with typed input and output based on the action's Zod schemas.
28
+ */
18
29
  export interface TypedJobResult<TAction extends Action<any, any, any>> {
19
- jobId: string;
30
+ id: string;
20
31
  actionName: string;
21
32
  status: JobStatus;
22
33
  groupKey: string;
@@ -24,6 +35,71 @@ export interface TypedJobResult<TAction extends Action<any, any, any>> {
24
35
  output: InferActionSchema<NonNullable<TAction['output']>>;
25
36
  error: Job['error'];
26
37
  }
38
+ /**
39
+ * Telemetry context provided to action and step handlers.
40
+ * Provides access to OpenTelemetry APIs for recording traces and metrics.
41
+ */
42
+ export interface TelemetryContext {
43
+ /**
44
+ * Get the active OpenTelemetry span for the current job/step.
45
+ * Use standard OTel Span methods: setAttribute, addEvent, recordException, etc.
46
+ */
47
+ getActiveSpan(): Span;
48
+ /**
49
+ * Get an OpenTelemetry tracer for creating custom spans.
50
+ *
51
+ * @param name - The name of the tracer (typically your service or library name)
52
+ */
53
+ getTracer(name: string): Tracer;
54
+ /**
55
+ * Record a custom metric as a span event.
56
+ * This is a convenience method that stores metrics as span events
57
+ * which can be queried from the local database when telemetry.local is enabled.
58
+ *
59
+ * @param name - The metric name (e.g., 'tokens.input', 'latency.ms')
60
+ * @param value - The metric value
61
+ * @param attributes - Optional attributes for the metric
62
+ */
63
+ recordMetric(name: string, value: number, attributes?: Record<string, any>): void;
64
+ }
65
+ /**
66
+ * Options for local telemetry storage.
67
+ */
68
+ export interface LocalTelemetryOptions {
69
+ /**
70
+ * Delay in milliseconds before flushing spans to the database.
71
+ * Uses BatchSpanProcessor with this delay.
72
+ * @default 5000
73
+ */
74
+ flushDelayMs?: number;
75
+ }
76
+ /**
77
+ * Telemetry configuration options.
78
+ * Uses OpenTelemetry SDK for tracing.
79
+ */
80
+ export interface TelemetryOptions {
81
+ /**
82
+ * Enable local span storage in the database.
83
+ * When enabled, spans are stored in the database and can be queried via getSpans().
84
+ * Set to true for default options, or provide LocalTelemetryOptions for custom config.
85
+ */
86
+ local?: LocalTelemetryOptions | boolean;
87
+ /**
88
+ * Additional span processors to add to the tracer provider.
89
+ * These are merged with the local processor (if enabled).
90
+ */
91
+ spanProcessors?: SpanProcessor[];
92
+ /**
93
+ * Additional span exporter to use.
94
+ * Will be wrapped in a BatchSpanProcessor and merged with other processors.
95
+ */
96
+ traceExporter?: SpanExporter;
97
+ /**
98
+ * Service name for OpenTelemetry resource.
99
+ * @default 'duron'
100
+ */
101
+ serviceName?: string;
102
+ }
27
103
  declare const BaseOptionsSchema: z.ZodObject<{
28
104
  id: z.ZodOptional<z.ZodString>;
29
105
  syncPattern: z.ZodDefault<z.ZodUnion<readonly [z.ZodLiteral<"pull">, z.ZodLiteral<"push">, z.ZodLiteral<"hybrid">, z.ZodLiteral<false>]>>;
@@ -36,23 +112,98 @@ declare const BaseOptionsSchema: z.ZodObject<{
36
112
  multiProcessMode: z.ZodDefault<z.ZodBoolean>;
37
113
  processTimeout: z.ZodDefault<z.ZodNumber>;
38
114
  }, z.core.$strip>;
115
+ /**
116
+ * Options for configuring a Duron instance.
117
+ *
118
+ * @template TActions - Record of action definitions keyed by action name
119
+ * @template TVariables - Type of variables available to actions
120
+ */
39
121
  export interface ClientOptions<TActions extends Record<string, Action<any, any, TVariables>>, TVariables = Record<string, unknown>> extends z.input<typeof BaseOptionsSchema> {
122
+ /**
123
+ * The database adapter to use for storing jobs and steps.
124
+ * Required.
125
+ */
40
126
  database: Adapter;
127
+ /**
128
+ * A record of action definitions, where each key is the action name.
129
+ * Required.
130
+ */
41
131
  actions?: TActions;
132
+ /**
133
+ * Logger instance or log level for logging events and errors.
134
+ * Can be a pino Logger instance or a log level string ('fatal' | 'error' | 'warn' | 'info' | 'debug' | 'trace' | 'silent').
135
+ * If not provided, defaults to 'error' level.
136
+ */
42
137
  logger?: Logger | 'fatal' | 'error' | 'warn' | 'info' | 'debug' | 'trace' | 'silent';
138
+ /**
139
+ * Variables available to all actions via the context.
140
+ * These can be accessed in action handlers using `ctx.var`.
141
+ */
43
142
  variables?: TVariables;
44
- telemetry?: TelemetryAdapter;
143
+ /**
144
+ * Optional telemetry configuration for observability.
145
+ * Uses OpenTelemetry SDK for tracing.
146
+ *
147
+ * @example
148
+ * ```typescript
149
+ * // Enable local span storage (stored in the database)
150
+ * telemetry: { local: true }
151
+ *
152
+ * // Enable local storage with custom flush delay
153
+ * telemetry: { local: { flushDelayMs: 10000 } }
154
+ *
155
+ * // Export to external systems (e.g., OTLP)
156
+ * telemetry: { traceExporter: new OTLPTraceExporter() }
157
+ *
158
+ * // Both local storage and external export
159
+ * telemetry: { local: true, traceExporter: new OTLPTraceExporter() }
160
+ * ```
161
+ */
162
+ telemetry?: TelemetryOptions;
45
163
  }
46
164
  interface FetchOptions {
47
165
  batchSize?: number;
48
166
  }
167
+ /**
168
+ * Client is the main entry point for Duron.
169
+ * Manages job execution, action handling, and database operations.
170
+ *
171
+ * @template TActions - Record of action definitions keyed by action name
172
+ * @template TVariables - Type of variables available to actions
173
+ */
49
174
  export declare class Client<TActions extends Record<string, Action<any, any, TVariables>>, TVariables = Record<string, unknown>> {
50
175
  #private;
176
+ /**
177
+ * Create a new Duron Client instance.
178
+ *
179
+ * @param options - Configuration options for the client
180
+ */
51
181
  constructor(options: ClientOptions<TActions, TVariables>);
52
182
  get logger(): pino.Logger;
53
- get telemetry(): TelemetryAdapter;
183
+ /**
184
+ * Get the OpenTelemetry tracer for creating custom spans.
185
+ * Always returns a tracer - it's a no-op tracer when no SDK is configured.
186
+ */
187
+ get tracer(): Tracer;
188
+ /**
189
+ * Get the database adapter instance.
190
+ */
54
191
  get database(): Adapter;
55
- get metricsEnabled(): boolean;
192
+ /**
193
+ * Check if local span storage is enabled.
194
+ * Returns true if telemetry.local is enabled.
195
+ */
196
+ get spansEnabled(): boolean;
197
+ /**
198
+ * Force flush any pending telemetry data.
199
+ * Useful in tests or when you need to ensure spans are exported before querying.
200
+ */
201
+ flushTelemetry(): Promise<void>;
202
+ /**
203
+ * Get the current configuration of this Duron instance.
204
+ *
205
+ * @returns Configuration object including options, actions, and variables
206
+ */
56
207
  getConfig(): {
57
208
  actions: TActions | null;
58
209
  variables: Record<string, unknown>;
@@ -67,12 +218,43 @@ export declare class Client<TActions extends Record<string, Action<any, any, TVa
67
218
  processTimeout: number;
68
219
  id?: string | undefined;
69
220
  };
221
+ /**
222
+ * Run an action by creating a new job.
223
+ *
224
+ * @param actionName - Name of the action to run
225
+ * @param input - Input data for the action (validated against action's input schema if provided)
226
+ * @returns Promise resolving to the created job ID
227
+ * @throws Error if action is not found or job creation fails
228
+ */
70
229
  runAction<TActionName extends keyof TActions>(actionName: TActionName, input?: NonNullable<TActions[TActionName]['input']> extends z.ZodObject ? z.input<NonNullable<TActions[TActionName]['input']>> : never): Promise<string>;
230
+ /**
231
+ * Run an action and wait for its completion.
232
+ * This is a convenience method that combines `runAction` and `waitForJob`.
233
+ *
234
+ * @param actionName - Name of the action to run
235
+ * @param input - Input data for the action (validated against action's input schema if provided)
236
+ * @param options - Options including abort signal and timeout
237
+ * @returns Promise resolving to the job result with typed input and output
238
+ * @throws Error if action is not found, job creation fails, job is cancelled, or operation is aborted
239
+ */
71
240
  runActionAndWait<TActionName extends keyof TActions>(actionName: TActionName, input?: NonNullable<TActions[TActionName]['input']> extends z.ZodObject ? z.input<NonNullable<TActions[TActionName]['input']>> : never, options?: {
241
+ /**
242
+ * AbortSignal to cancel the operation. If aborted, the job will be cancelled and the promise will reject.
243
+ */
72
244
  signal?: AbortSignal;
245
+ /**
246
+ * Timeout in milliseconds. If the job doesn't complete within this time, the job will be cancelled and the promise will reject.
247
+ */
73
248
  timeout?: number;
74
249
  }): Promise<TypedJobResult<TActions[TActionName]>>;
75
- fetch(options: FetchOptions): Promise<{
250
+ /**
251
+ * Fetch and process jobs from the database.
252
+ * Concurrency limits are determined from the latest job created for each groupKey.
253
+ *
254
+ * @param [options.batchSize] - Maximum number of jobs to fetch in this batch (defaults to `batchSize` from client options)
255
+ * @returns Promise resolving to the array of fetched jobs
256
+ */
257
+ fetch(options?: FetchOptions): Promise<{
76
258
  id: string;
77
259
  actionName: string;
78
260
  groupKey: string;
@@ -87,30 +269,154 @@ export declare class Client<TActions extends Record<string, Action<any, any, TVa
87
269
  createdAt: Date;
88
270
  updatedAt: Date;
89
271
  concurrencyLimit: number;
272
+ durationMs: number | null;
90
273
  clientId?: string | null | undefined;
91
274
  }[]>;
275
+ /**
276
+ * Cancel a job by its ID.
277
+ * If the job is currently being processed, it will be cancelled immediately.
278
+ * Otherwise, it will be cancelled in the database.
279
+ *
280
+ * @param jobId - The ID of the job to cancel
281
+ * @returns Promise resolving to `true` if cancelled, `false` otherwise
282
+ */
92
283
  cancelJob(jobId: string): Promise<boolean>;
284
+ /**
285
+ * Retry a failed job by creating a copy of it with status 'created' and cleared output/error.
286
+ *
287
+ * @param jobId - The ID of the job to retry
288
+ * @returns Promise resolving to the new job ID, or `null` if retry failed
289
+ */
93
290
  retryJob(jobId: string): Promise<string | null>;
291
+ /**
292
+ * Time travel a job to restart from a specific step.
293
+ * The job must be in completed, failed, or cancelled status.
294
+ * Resets the job and ancestor steps to active status, deletes subsequent steps,
295
+ * and preserves completed parallel siblings.
296
+ *
297
+ * @param jobId - The ID of the job to time travel
298
+ * @param stepId - The ID of the step to restart from
299
+ * @returns Promise resolving to `true` if time travel succeeded, `false` otherwise
300
+ */
94
301
  timeTravelJob(jobId: string, stepId: string): Promise<boolean>;
302
+ /**
303
+ * Delete a job by its ID.
304
+ * Active jobs cannot be deleted.
305
+ *
306
+ * @param jobId - The ID of the job to delete
307
+ * @returns Promise resolving to `true` if deleted, `false` otherwise
308
+ */
95
309
  deleteJob(jobId: string): Promise<boolean>;
310
+ /**
311
+ * Delete multiple jobs using the same filters as getJobs.
312
+ * Active jobs cannot be deleted and will be excluded from deletion.
313
+ *
314
+ * @param options - Query options including filters (same as getJobs)
315
+ * @returns Promise resolving to the number of jobs deleted
316
+ */
96
317
  deleteJobs(options?: GetJobsOptions): Promise<number>;
318
+ /**
319
+ * Get a job by its ID. Does not include step information.
320
+ *
321
+ * @param jobId - The ID of the job to retrieve
322
+ * @returns Promise resolving to the job, or `null` if not found
323
+ */
97
324
  getJobById(jobId: string): Promise<Job | null>;
325
+ /**
326
+ * Get steps for a job with pagination and fuzzy search.
327
+ * Steps are always ordered by created_at ASC.
328
+ * Steps do not include output data.
329
+ *
330
+ * @param options - Query options including jobId, pagination, and search
331
+ * @returns Promise resolving to steps result with pagination info
332
+ */
98
333
  getJobSteps(options: GetJobStepsOptions): Promise<GetJobStepsResult>;
334
+ /**
335
+ * Get jobs with pagination, filtering, and sorting.
336
+ * Does not include step information or job output.
337
+ *
338
+ * @param options - Query options including pagination, filters, and sort
339
+ * @returns Promise resolving to jobs result with pagination info
340
+ */
99
341
  getJobs(options?: GetJobsOptions): Promise<GetJobsResult>;
342
+ /**
343
+ * Get a step by its ID with all information.
344
+ *
345
+ * @param stepId - The ID of the step to retrieve
346
+ * @returns Promise resolving to the step, or `null` if not found
347
+ */
100
348
  getJobStepById(stepId: string): Promise<JobStep | null>;
349
+ /**
350
+ * Get job status and updatedAt timestamp.
351
+ *
352
+ * @param jobId - The ID of the job
353
+ * @returns Promise resolving to job status result, or `null` if not found
354
+ */
101
355
  getJobStatus(jobId: string): Promise<JobStatusResult | null>;
356
+ /**
357
+ * Get job step status and updatedAt timestamp.
358
+ *
359
+ * @param stepId - The ID of the step
360
+ * @returns Promise resolving to step status result, or `null` if not found
361
+ */
102
362
  getJobStepStatus(stepId: string): Promise<JobStepStatusResult | null>;
363
+ /**
364
+ * Wait for a job to change status by subscribing to job-status-changed events.
365
+ * When the job status changes, the job result is returned.
366
+ *
367
+ * @param jobId - The ID of the job to wait for
368
+ * @param options - Optional configuration including timeout
369
+ * @returns Promise resolving to the job result when its status changes, or `null` if timeout
370
+ */
103
371
  waitForJob(jobId: string, options?: {
372
+ /**
373
+ * Timeout in milliseconds. If the job status doesn't change within this time, the promise resolves to `null`.
374
+ * Defaults to no timeout (waits indefinitely).
375
+ */
104
376
  timeout?: number;
377
+ /**
378
+ * AbortSignal to cancel waiting. If aborted, the promise resolves to `null`.
379
+ */
105
380
  signal?: AbortSignal;
106
381
  }): Promise<JobResult | null>;
382
+ /**
383
+ * Get action statistics including counts and last job created date.
384
+ *
385
+ * @returns Promise resolving to action statistics
386
+ */
107
387
  getActions(): Promise<GetActionsResult>;
108
- getMetrics(options: GetMetricsOptions): Promise<GetMetricsResult>;
388
+ /**
389
+ * Get spans for a job or step.
390
+ * Only available when telemetry.local is enabled.
391
+ *
392
+ * @param options - Query options including jobId/stepId, filters, and sort
393
+ * @returns Promise resolving to spans result
394
+ * @throws Error if local telemetry is not enabled
395
+ */
396
+ getSpans(options: GetSpansOptions): Promise<GetSpansResult>;
397
+ /**
398
+ * Get action metadata including input schemas and mock data.
399
+ * This is useful for generating UI forms or mock data.
400
+ *
401
+ * @returns Promise resolving to action metadata
402
+ */
109
403
  getActionsMetadata(): Promise<Array<{
110
404
  name: string;
111
405
  mockInput: any;
112
406
  }>>;
407
+ /**
408
+ * Start the Duron instance.
409
+ * Initializes the database, recovers stuck jobs, and sets up sync patterns.
410
+ *
411
+ * @returns Promise resolving to `true` if started successfully, `false` otherwise
412
+ */
113
413
  start(): Promise<boolean>;
414
+ /**
415
+ * Stop the Duron instance.
416
+ * Stops the pull loop, aborts all running jobs, waits for queues to drain, and stops the database.
417
+ *
418
+ * @returns Promise resolving to `true` if stopped successfully, `false` otherwise
419
+ */
114
420
  stop(): Promise<boolean>;
115
421
  }
116
422
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}