@versori/run 0.3.0-beta.6 → 0.3.0-beta.9
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/{script/deps/jsr.io/@std/fs/1.0.19 → esm/deps/jsr.io/@std/fs/1.0.20}/exists.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/log/0.224.14/rotating_file_handler.js +1 -1
- package/esm/src/connection/DirectConnectionFactory.d.ts.map +1 -1
- package/esm/src/connection/DirectConnectionFactory.js +7 -4
- package/esm/src/connection/internal/CredentialHolder.d.ts.map +1 -1
- package/esm/src/connection/internal/CredentialHolder.js +2 -11
- package/esm/src/connection/internal/OutboundConnectionFactory.d.ts.map +1 -1
- package/esm/src/connection/internal/OutboundConnectionFactory.js +1 -0
- package/esm/src/context/AsyncWorkflow.js +1 -1
- package/esm/src/context/Context.d.ts +6 -7
- package/esm/src/context/Context.d.ts.map +1 -1
- package/esm/src/context/Context.js +13 -3
- package/esm/src/context/ContextProvider.d.ts +2 -0
- package/esm/src/context/ContextProvider.d.ts.map +1 -1
- package/esm/src/context/ContextProvider.js +5 -2
- package/esm/src/context/WorkflowClient.d.ts +29 -0
- package/esm/src/context/WorkflowClient.d.ts.map +1 -0
- package/esm/src/context/WorkflowClient.js +95 -0
- package/esm/src/dsl/http/versori/webhookmiddleware.d.ts +1 -1
- package/esm/src/dsl/http/versori/webhookmiddleware.d.ts.map +1 -1
- package/esm/src/dsl/http/versori/webhookmiddleware.js +18 -10
- package/esm/src/dsl/tasks/HttpTask.d.ts +2 -1
- package/esm/src/dsl/tasks/HttpTask.d.ts.map +1 -1
- package/esm/src/dsl/tasks/HttpTask.js +3 -0
- package/esm/src/dsl/triggers/DurableTrigger.d.ts +0 -1
- package/esm/src/dsl/triggers/DurableTrigger.d.ts.map +1 -1
- package/esm/src/internal/InternalAuth.d.ts +0 -1
- package/esm/src/internal/InternalAuth.d.ts.map +1 -1
- package/esm/src/internal/InternalAuth.js +1 -14
- package/esm/src/interpreter/durable/DurableInterpreter.d.ts.map +1 -1
- package/esm/src/interpreter/durable/DurableInterpreter.js +2 -20
- package/esm/src/interpreter/durable/Queue.d.ts +24 -16
- package/esm/src/interpreter/durable/Queue.d.ts.map +1 -1
- package/esm/src/interpreter/durable/Queue.js +3 -4
- package/esm/src/interpreter/durable/compilers/catch.js +2 -2
- package/esm/src/interpreter/durable/compilers/durableworkflow.d.ts.map +1 -1
- package/esm/src/interpreter/durable/compilers/durableworkflow.js +19 -19
- package/esm/src/interpreter/memory/MemoryInterpreter.d.ts.map +1 -1
- package/esm/src/interpreter/memory/MemoryInterpreter.js +0 -1
- package/esm/src/interpreter/memory/compilers/catch.js +2 -2
- package/esm/src/kv/sdk/SDKKeyValue.d.ts.map +1 -1
- package/esm/src/kv/sdk/SDKKeyValue.js +9 -3
- package/package.json +1 -1
- package/{esm/deps/jsr.io/@std/fs/1.0.19 → script/deps/jsr.io/@std/fs/1.0.20}/exists.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/log/0.224.14/rotating_file_handler.js +1 -1
- package/script/src/connection/DirectConnectionFactory.d.ts.map +1 -1
- package/script/src/connection/DirectConnectionFactory.js +7 -4
- package/script/src/connection/internal/CredentialHolder.d.ts.map +1 -1
- package/script/src/connection/internal/CredentialHolder.js +2 -11
- package/script/src/connection/internal/OutboundConnectionFactory.d.ts.map +1 -1
- package/script/src/connection/internal/OutboundConnectionFactory.js +1 -0
- package/script/src/context/AsyncWorkflow.js +1 -1
- package/script/src/context/Context.d.ts +6 -7
- package/script/src/context/Context.d.ts.map +1 -1
- package/script/src/context/Context.js +13 -3
- package/script/src/context/ContextProvider.d.ts +2 -0
- package/script/src/context/ContextProvider.d.ts.map +1 -1
- package/script/src/context/ContextProvider.js +5 -2
- package/script/src/context/WorkflowClient.d.ts +29 -0
- package/script/src/context/WorkflowClient.d.ts.map +1 -0
- package/script/src/context/WorkflowClient.js +99 -0
- package/script/src/dsl/http/versori/webhookmiddleware.d.ts +1 -1
- package/script/src/dsl/http/versori/webhookmiddleware.d.ts.map +1 -1
- package/script/src/dsl/http/versori/webhookmiddleware.js +18 -10
- package/script/src/dsl/tasks/HttpTask.d.ts +2 -1
- package/script/src/dsl/tasks/HttpTask.d.ts.map +1 -1
- package/script/src/dsl/tasks/HttpTask.js +3 -0
- package/script/src/dsl/triggers/DurableTrigger.d.ts +0 -1
- package/script/src/dsl/triggers/DurableTrigger.d.ts.map +1 -1
- package/script/src/internal/InternalAuth.d.ts +0 -1
- package/script/src/internal/InternalAuth.d.ts.map +1 -1
- package/script/src/internal/InternalAuth.js +0 -13
- package/script/src/interpreter/durable/DurableInterpreter.d.ts.map +1 -1
- package/script/src/interpreter/durable/DurableInterpreter.js +1 -19
- package/script/src/interpreter/durable/Queue.d.ts +24 -16
- package/script/src/interpreter/durable/Queue.d.ts.map +1 -1
- package/script/src/interpreter/durable/Queue.js +3 -4
- package/script/src/interpreter/durable/compilers/catch.js +2 -2
- package/script/src/interpreter/durable/compilers/durableworkflow.d.ts.map +1 -1
- package/script/src/interpreter/durable/compilers/durableworkflow.js +19 -19
- package/script/src/interpreter/memory/MemoryInterpreter.d.ts.map +1 -1
- package/script/src/interpreter/memory/MemoryInterpreter.js +0 -1
- package/script/src/interpreter/memory/compilers/catch.js +2 -2
- package/script/src/kv/sdk/SDKKeyValue.d.ts.map +1 -1
- package/script/src/kv/sdk/SDKKeyValue.js +9 -3
- package/esm/src/internal/cli.d.ts +0 -2
- package/esm/src/internal/cli.d.ts.map +0 -1
- package/esm/src/internal/cli.js +0 -20
- package/esm/src/services/createConnectRpcClient.d.ts +0 -16
- package/esm/src/services/createConnectRpcClient.d.ts.map +0 -1
- package/esm/src/services/createConnectRpcClient.js +0 -63
- package/script/src/internal/cli.d.ts +0 -2
- package/script/src/internal/cli.d.ts.map +0 -1
- package/script/src/internal/cli.js +0 -23
- package/script/src/services/createConnectRpcClient.d.ts +0 -16
- package/script/src/services/createConnectRpcClient.d.ts.map +0 -1
- package/script/src/services/createConnectRpcClient.js +0 -66
- /package/esm/deps/jsr.io/@std/fs/{1.0.19 → 1.0.20}/exists.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/fs/{1.0.19 → 1.0.20}/exists.js +0 -0
- /package/script/deps/jsr.io/@std/fs/{1.0.19 → 1.0.20}/exists.d.ts +0 -0
- /package/script/deps/jsr.io/@std/fs/{1.0.19 → 1.0.20}/exists.js +0 -0
|
@@ -8,21 +8,17 @@ import { DirectConnectionFactory } from '../../connection/DirectConnectionFactor
|
|
|
8
8
|
import { ContextProviderImpl } from '../../context/ContextProvider.js';
|
|
9
9
|
import { DefaultRoundTripperFactory } from '../../dsl/http/default.js';
|
|
10
10
|
import { VersoriConfigReader } from '../../dsl/http/versori/configloader.js';
|
|
11
|
-
import { envVarEnvId, envVarEnvironmentName, envVarLocalRun, envVarOrgId, envVarOrgSlug, envVarOtelTracesURL, envVarProjectId,
|
|
11
|
+
import { envVarEnvId, envVarEnvironmentName, envVarLocalRun, envVarOrgId, envVarOrgSlug, envVarOtelTracesURL, envVarProjectId, envVarVersion, } from '../../dsl/http/versori/constants.js';
|
|
12
12
|
import { CronAPIClient } from '../../dsl/http/versori/cronapi.js';
|
|
13
13
|
import { ProxyRoundTripper } from '../../dsl/http/versori/proxyroundtripper.js';
|
|
14
14
|
import { WorkflowImpl } from '../../dsl/Workflow.js';
|
|
15
15
|
import { IssueImpl } from '../../issues/Issues.js';
|
|
16
|
-
import { MemoryKeyValueProvider } from '../../kv/memory/MemoryKeyValueProvider.js';
|
|
17
16
|
import { SDKKeyValueProvider } from '../../kv/sdk/SDKKeyValueProvider.js';
|
|
18
17
|
import { ConsoleLogger } from '../../observability/logging/ConsoleLogger.js';
|
|
19
18
|
import { PlatformApiImpl } from '../../services/platform/PlatformApi.js';
|
|
20
19
|
import { ObservableCompiler } from './ObservableCompiler.js';
|
|
21
20
|
import { QueueImpl } from './Queue.js';
|
|
22
21
|
function getKVProvider(runLocal) {
|
|
23
|
-
if (runLocal) {
|
|
24
|
-
return Promise.resolve(new MemoryKeyValueProvider());
|
|
25
|
-
}
|
|
26
22
|
return SDKKeyValueProvider.fromEnv();
|
|
27
23
|
}
|
|
28
24
|
function getRoundTripperFactory(log, tracer, opts) {
|
|
@@ -160,10 +156,8 @@ export class DurableInterpreter {
|
|
|
160
156
|
const compiler = options.compiler || new ObservableCompiler();
|
|
161
157
|
const serviceName = Deno.env.get(envVarProjectId) || 'example-service';
|
|
162
158
|
const environmentID = Deno.env.get(envVarEnvId) || 'development';
|
|
163
|
-
const serviceId = Deno.env.get(envVarProjectId) || 'development';
|
|
164
159
|
const version = Deno.env.get(envVarVersion) || '1.0.0';
|
|
165
160
|
const environment = Deno.env.get(envVarEnvironmentName) || 'development';
|
|
166
|
-
const sdkAPIBaseURL = Deno.env.get(envVarSDKApiBaseURL) || 'http://localhost:8902';
|
|
167
161
|
const orgId = Deno.env.get(envVarOrgId) || 'development';
|
|
168
162
|
const orgSlug = Deno.env.get(envVarOrgSlug) || 'development';
|
|
169
163
|
const otelTracesURL = Deno.env.get(envVarOtelTracesURL);
|
|
@@ -207,7 +201,7 @@ export class DurableInterpreter {
|
|
|
207
201
|
const platformApi = PlatformApiImpl.fromEnv();
|
|
208
202
|
const organisationId = Deno.env.get(envVarOrgId) || 'development';
|
|
209
203
|
const environmentId = Deno.env.get(envVarEnvId) || 'development';
|
|
210
|
-
const ctxProvider = new ContextProviderImpl(log, kvp, roundTripperFactory.credentials(), platformApi, organisationId, environmentId, issuesProvider);
|
|
204
|
+
const ctxProvider = new ContextProviderImpl(log, kvp, roundTripperFactory.credentials(), platformApi, organisationId, environmentId, issuesProvider, queueProvider);
|
|
211
205
|
return new DurableInterpreter(log, compiler, ctxProvider, express.Router(), express.Router(), new Map(), PlatformApiImpl.fromEnv(), DirectConnectionFactory.fromEnv(log), CronAPIClient.fromEnv(), tracer, issuesProvider, configReader, queueProvider, otelSDK);
|
|
212
206
|
}
|
|
213
207
|
register(workflow, options) {
|
|
@@ -291,7 +285,6 @@ export class DurableInterpreter {
|
|
|
291
285
|
const durationMs = Date.now() - ctx.startTime.getTime();
|
|
292
286
|
ctx.log.info('DurableInterpreter.executionCompleted', {
|
|
293
287
|
durationMs,
|
|
294
|
-
data: ctx.data,
|
|
295
288
|
});
|
|
296
289
|
try {
|
|
297
290
|
ctx.options.onSuccess?.(ctx);
|
|
@@ -303,17 +296,6 @@ export class DurableInterpreter {
|
|
|
303
296
|
error: err instanceof Error ? err.toString() : err,
|
|
304
297
|
}));
|
|
305
298
|
}
|
|
306
|
-
if (ctx.workflowId) {
|
|
307
|
-
this.log.info('Async workflow completed', {
|
|
308
|
-
workflowId: ctx.workflowId,
|
|
309
|
-
});
|
|
310
|
-
const output = ctx.data ? btoa(JSON.stringify(ctx.data)) : undefined;
|
|
311
|
-
await ctx.queue?.complete({
|
|
312
|
-
id: ctx.workflowId,
|
|
313
|
-
output,
|
|
314
|
-
status: 'completed',
|
|
315
|
-
});
|
|
316
|
-
}
|
|
317
299
|
this.contextProvider.destroy(ctx);
|
|
318
300
|
},
|
|
319
301
|
error: (err) => {
|
|
@@ -1,26 +1,34 @@
|
|
|
1
1
|
import { Logger } from '../../observability/mod.js';
|
|
2
2
|
export type WorkflowMsgMetadata = {
|
|
3
3
|
parentWorkflowId?: string;
|
|
4
|
-
executionId
|
|
5
|
-
activationId
|
|
4
|
+
executionId: string;
|
|
5
|
+
activationId: string;
|
|
6
6
|
userId?: string;
|
|
7
7
|
};
|
|
8
8
|
export type Workflows = {
|
|
9
|
-
workflows:
|
|
9
|
+
workflows: Workflow[];
|
|
10
10
|
};
|
|
11
|
-
export type
|
|
12
|
-
id
|
|
13
|
-
projectId
|
|
14
|
-
environmentId
|
|
11
|
+
export type Workflow = {
|
|
12
|
+
id: string;
|
|
13
|
+
projectId: string;
|
|
14
|
+
environmentId: string;
|
|
15
15
|
group: string;
|
|
16
|
-
payload
|
|
16
|
+
payload: string;
|
|
17
17
|
output?: string;
|
|
18
18
|
status?: 'available' | 'locked' | 'completed' | 'failed';
|
|
19
|
-
attempt
|
|
19
|
+
attempt: number;
|
|
20
|
+
maxAttempts?: number;
|
|
21
|
+
timeout: string;
|
|
22
|
+
createdAt: string;
|
|
23
|
+
metadata: WorkflowMsgMetadata;
|
|
24
|
+
};
|
|
25
|
+
export type SubmitWorkflow = {
|
|
26
|
+
group: string;
|
|
27
|
+
payload: string;
|
|
20
28
|
maxAttempts?: number;
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
29
|
+
metadata: WorkflowMsgMetadata;
|
|
30
|
+
projectId?: string;
|
|
31
|
+
environmentId?: string;
|
|
24
32
|
};
|
|
25
33
|
export type CompleteWorkflowRequest = {
|
|
26
34
|
id: string;
|
|
@@ -39,14 +47,14 @@ export type RescheduleWorkflowRequest = {
|
|
|
39
47
|
after: string;
|
|
40
48
|
};
|
|
41
49
|
export type SubmitWorkflowsRequest = {
|
|
42
|
-
workflows:
|
|
50
|
+
workflows: SubmitWorkflow[];
|
|
43
51
|
};
|
|
44
52
|
export interface QueueAPI {
|
|
45
53
|
complete(request: CompleteWorkflowRequest): Promise<void>;
|
|
46
54
|
submit(request: SubmitWorkflowsRequest): Promise<Workflows>;
|
|
47
55
|
fetchWorkflows(request: FetchWorkflowsRequest): Promise<Workflows | undefined>;
|
|
48
56
|
reschedule(request: RescheduleWorkflowRequest): Promise<void>;
|
|
49
|
-
|
|
57
|
+
getWorkflow(workflowId: string): Promise<Workflow>;
|
|
50
58
|
}
|
|
51
59
|
export declare class QueueImpl implements QueueAPI {
|
|
52
60
|
private baseUrl;
|
|
@@ -59,7 +67,7 @@ export declare class QueueImpl implements QueueAPI {
|
|
|
59
67
|
submit(request: SubmitWorkflowsRequest): Promise<Workflows>;
|
|
60
68
|
fetchWorkflows(request: FetchWorkflowsRequest): Promise<Workflows | undefined>;
|
|
61
69
|
reschedule(request: RescheduleWorkflowRequest): Promise<void>;
|
|
62
|
-
|
|
70
|
+
getWorkflow(workflowId: string): Promise<Workflow>;
|
|
63
71
|
}
|
|
64
72
|
export declare class MockQueue implements QueueAPI {
|
|
65
73
|
constructor();
|
|
@@ -67,6 +75,6 @@ export declare class MockQueue implements QueueAPI {
|
|
|
67
75
|
submit(_request: SubmitWorkflowsRequest): Promise<Workflows>;
|
|
68
76
|
fetchWorkflows(_request: FetchWorkflowsRequest): Promise<Workflows | undefined>;
|
|
69
77
|
reschedule(_request: RescheduleWorkflowRequest): Promise<void>;
|
|
70
|
-
|
|
78
|
+
getWorkflow(_workflowId: string): Promise<Workflow>;
|
|
71
79
|
}
|
|
72
80
|
//# sourceMappingURL=Queue.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Queue.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/durable/Queue.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAEpD,MAAM,MAAM,mBAAmB,GAAG;IAC9B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,
|
|
1
|
+
{"version":3,"file":"Queue.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/durable/Queue.ts"],"names":[],"mappings":"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"}
|
|
@@ -57,7 +57,7 @@ export class QueueImpl {
|
|
|
57
57
|
output: request.output,
|
|
58
58
|
status: request.status,
|
|
59
59
|
});
|
|
60
|
-
throw new Error(
|
|
60
|
+
throw new Error(await resp.text());
|
|
61
61
|
}
|
|
62
62
|
return;
|
|
63
63
|
}
|
|
@@ -130,8 +130,7 @@ export class QueueImpl {
|
|
|
130
130
|
}
|
|
131
131
|
return;
|
|
132
132
|
}
|
|
133
|
-
async
|
|
134
|
-
// this endpoint returns a 404 if the workflow is not completed
|
|
133
|
+
async getWorkflow(workflowId) {
|
|
135
134
|
const resp = await fetch(`${this.baseUrl}/v1/workflows/fetch/${workflowId}`, {
|
|
136
135
|
method: 'GET',
|
|
137
136
|
});
|
|
@@ -158,7 +157,7 @@ export class MockQueue {
|
|
|
158
157
|
reschedule(_request) {
|
|
159
158
|
throw new Error('Method not implemented.');
|
|
160
159
|
}
|
|
161
|
-
|
|
160
|
+
getWorkflow(_workflowId) {
|
|
162
161
|
throw new Error('Method not implemented.');
|
|
163
162
|
}
|
|
164
163
|
}
|
|
@@ -23,7 +23,7 @@ function compileCatch(compilerCtx, task) {
|
|
|
23
23
|
annotations: {
|
|
24
24
|
'error': error.message,
|
|
25
25
|
'stack': error.stack || '',
|
|
26
|
-
'workflowId': ctx.options.
|
|
26
|
+
'workflowId': ctx.options.workflow?.id || ctx.workflow?.id ||
|
|
27
27
|
'',
|
|
28
28
|
'executionId': ctx.executionId,
|
|
29
29
|
},
|
|
@@ -39,7 +39,7 @@ function compileCatch(compilerCtx, task) {
|
|
|
39
39
|
annotations: {
|
|
40
40
|
'error': error.message || '',
|
|
41
41
|
'stack': error.stack || '',
|
|
42
|
-
'workflowId': ctx.options.
|
|
42
|
+
'workflowId': ctx.options.workflow?.id || ctx.workflow?.id ||
|
|
43
43
|
'',
|
|
44
44
|
'executionId': ctx.executionId,
|
|
45
45
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"durableworkflow.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/durable/compilers/durableworkflow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,
|
|
1
|
+
{"version":3,"file":"durableworkflow.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/durable/compilers/durableworkflow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAW,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EACH,mBAAmB,EACnB,sBAAsB,EACzB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAK3C,wBAAgB,sBAAsB,CAClC,GAAG,EAAE,sBAAsB,EAC3B,OAAO,EAAE,sBAAsB,EAC/B,MAAM,EAAE,WAAW,GACpB,UAAU,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC,CA8F9C;AAED,eAAO,MAAM,uBAAuB,EAAE,eAAe,CAAC,mBAAmB,EAAE,sBAAsB,CAIhG,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
2
|
import { DurableWorkflowTrigger, } from '../../../dsl/triggers/DurableTrigger.js';
|
|
3
3
|
import { envVarEnvId } from '../../../internal/constants.js';
|
|
4
|
+
import { ulid } from '../../../../deps/jsr.io/@std/ulid/1.0.0/mod.js';
|
|
4
5
|
export function compileDurableWorkflow(ctx, trigger, signal) {
|
|
5
6
|
return new Observable((subscriber) => {
|
|
6
7
|
function cleanup() {
|
|
@@ -35,24 +36,9 @@ export function compileDurableWorkflow(ctx, trigger, signal) {
|
|
|
35
36
|
continue;
|
|
36
37
|
}
|
|
37
38
|
for (const wf of wfs.workflows) {
|
|
38
|
-
if (wf.id &&
|
|
39
|
-
wf.attempt !== undefined &&
|
|
40
|
-
trigger.options.maxAttempts &&
|
|
41
|
-
wf.attempt > trigger.options.maxAttempts) {
|
|
42
|
-
ctx.log.error('Workflow exceeded max attempts failing', {
|
|
43
|
-
workflowId: wf.id,
|
|
44
|
-
attempts: wf.attempt,
|
|
45
|
-
});
|
|
46
|
-
await ctx.queueProvider.complete({
|
|
47
|
-
id: wf.id,
|
|
48
|
-
output: wf.output,
|
|
49
|
-
status: 'failed',
|
|
50
|
-
});
|
|
51
|
-
continue;
|
|
52
|
-
}
|
|
53
39
|
const data = JSON.parse(atob(wf.payload ?? '{}'));
|
|
54
40
|
let activation;
|
|
55
|
-
|
|
41
|
+
try {
|
|
56
42
|
const { data } = await ctx.platformApi.getActivation({
|
|
57
43
|
path: {
|
|
58
44
|
activation_id: wf.metadata.activationId,
|
|
@@ -63,9 +49,23 @@ export function compileDurableWorkflow(ctx, trigger, signal) {
|
|
|
63
49
|
});
|
|
64
50
|
activation = data;
|
|
65
51
|
}
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
52
|
+
catch (error) {
|
|
53
|
+
ctx.log.error('Failed to get activation', { error });
|
|
54
|
+
throw new Error('Failed to get activation');
|
|
55
|
+
}
|
|
56
|
+
const newContext = ctx.contextProvider.createWithExecutionId(activation, data, wf.metadata.executionId ?? ulid().toString(), {
|
|
57
|
+
workflow: wf,
|
|
58
|
+
onSuccess: (completedContext) => {
|
|
59
|
+
// locked status means we own the workflow and it's not completed yet
|
|
60
|
+
if (wf.status !== 'locked') {
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
ctx.queueProvider.complete({
|
|
64
|
+
id: wf.id,
|
|
65
|
+
output: btoa(JSON.stringify(completedContext.data)),
|
|
66
|
+
status: 'completed',
|
|
67
|
+
});
|
|
68
|
+
},
|
|
69
69
|
});
|
|
70
70
|
consecutiveErrors = 0;
|
|
71
71
|
subscriber.next(newContext);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemoryInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/memory/MemoryInterpreter.ts"],"names":[],"mappings":"AAAA,OAAsB,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAG3D,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAgB,EAAqB,MAAM,EAAE,MAAM,SAAS,CAAC;AAE7D,OAAO,EAA+B,UAAU,EAAM,YAAY,EAAO,MAAM,MAAM,CAAC;AACtF,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AACtF,OAAO,EAAE,eAAe,EAAuB,MAAM,kCAAkC,CAAC;AAExF,OAAO,
|
|
1
|
+
{"version":3,"file":"MemoryInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/memory/MemoryInterpreter.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,7 +22,7 @@ function compileCatch(compilerCtx, task) {
|
|
|
22
22
|
annotations: {
|
|
23
23
|
'error': error.message,
|
|
24
24
|
'stack': error.stack || '',
|
|
25
|
-
'workflowId': ctx.options.
|
|
25
|
+
'workflowId': ctx.options.workflow?.id || ctx.workflow?.id ||
|
|
26
26
|
'',
|
|
27
27
|
'executionId': ctx.executionId,
|
|
28
28
|
},
|
|
@@ -35,7 +35,7 @@ function compileCatch(compilerCtx, task) {
|
|
|
35
35
|
annotations: {
|
|
36
36
|
'error': error.message || '',
|
|
37
37
|
'stack': error.stack || '',
|
|
38
|
-
'workflowId': ctx.options.
|
|
38
|
+
'workflowId': ctx.options.workflow?.id || ctx.workflow?.id ||
|
|
39
39
|
'',
|
|
40
40
|
'executionId': ctx.executionId,
|
|
41
41
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SDKKeyValue.d.ts","sourceRoot":"","sources":["../../../../src/src/kv/sdk/SDKKeyValue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4DAA4D,CAAC;AAGjG,OAAO,EAAE,aAAa,EAAE,MAAM,sDAAsD,CAAC;AACrF,OAAO,EAAE,cAAc,EAAE,MAAM,uDAAuD,CAAC;AACvF,OAAO,EAAE,eAAe,EAAE,MAAM,wDAAwD,CAAC;AAEzF,qBAAa,WAAY,YAAW,QAAQ;IAC5B,OAAO,CAAC,QAAQ,CAAC,KAAK;IAAuB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAnD,KAAK,EAAE,mBAAmB,EAAmB,MAAM,EAAE,MAAM;IAElF,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,GAAE,UAAU,CAAC,CAAC,CAAM,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"SDKKeyValue.d.ts","sourceRoot":"","sources":["../../../../src/src/kv/sdk/SDKKeyValue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4DAA4D,CAAC;AAGjG,OAAO,EAAE,aAAa,EAAE,MAAM,sDAAsD,CAAC;AACrF,OAAO,EAAE,cAAc,EAAE,MAAM,uDAAuD,CAAC;AACvF,OAAO,EAAE,eAAe,EAAE,MAAM,wDAAwD,CAAC;AAEzF,qBAAa,WAAY,YAAW,QAAQ;IAC5B,OAAO,CAAC,QAAQ,CAAC,KAAK;IAAuB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAnD,KAAK,EAAE,mBAAmB,EAAmB,MAAM,EAAE,MAAM;IAElF,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,GAAE,UAAU,CAAC,CAAC,CAAM,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IA2BnF,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAYvD,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAU7C,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC;IAUjD,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IAY9E,OAAO,CAAC,WAAW;CAGtB"}
|
|
@@ -19,7 +19,13 @@ export class SDKKeyValue {
|
|
|
19
19
|
try {
|
|
20
20
|
const k = this.generateKey(key instanceof Array ? key.join('/') : key);
|
|
21
21
|
const entry = await KvOperationsService.getKv(this.store.id, k);
|
|
22
|
-
|
|
22
|
+
if (entry.value === undefined) {
|
|
23
|
+
if (options.throwOnNotFound) {
|
|
24
|
+
throw new Error('Key not found');
|
|
25
|
+
}
|
|
26
|
+
return undefined;
|
|
27
|
+
}
|
|
28
|
+
return JSON.parse(String(entry.value));
|
|
23
29
|
}
|
|
24
30
|
catch (error) {
|
|
25
31
|
if (options.throwOnNotFound && error instanceof Error && error.message === 'Key not found') {
|
|
@@ -33,10 +39,10 @@ export class SDKKeyValue {
|
|
|
33
39
|
}
|
|
34
40
|
}
|
|
35
41
|
async set(key, value) {
|
|
36
|
-
|
|
42
|
+
const payload = JSON.stringify(value);
|
|
37
43
|
const k = this.generateKey(key instanceof Array ? key.join('/') : key);
|
|
38
44
|
await KvOperationsService.setKv(this.store.id, k, {
|
|
39
|
-
value:
|
|
45
|
+
value: payload,
|
|
40
46
|
options: {}
|
|
41
47
|
});
|
|
42
48
|
}
|
package/package.json
CHANGED
package/{esm/deps/jsr.io/@std/fs/1.0.19 → script/deps/jsr.io/@std/fs/1.0.20}/exists.d.ts.map
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exists.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/fs/1.0.
|
|
1
|
+
{"version":3,"file":"exists.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/fs/1.0.20/exists.ts"],"names":[],"mappings":"AAEA,iEAAiE;AACjE,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgGG;AACH,wBAAsB,MAAM,CAC1B,IAAI,EAAE,MAAM,GAAG,GAAG,EAClB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,OAAO,CAAC,CAsClB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+FG;AACH,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,GAAG,GAAG,EAClB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAqCT"}
|
|
@@ -13,7 +13,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
13
13
|
var _RotatingFileHandler_maxBytes, _RotatingFileHandler_maxBackupCount, _RotatingFileHandler_currentFileSize;
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.RotatingFileHandler = void 0;
|
|
16
|
-
const exists_js_1 = require("../../fs/1.0.
|
|
16
|
+
const exists_js_1 = require("../../fs/1.0.20/exists.js");
|
|
17
17
|
const file_handler_js_1 = require("./file_handler.js");
|
|
18
18
|
const _file_handler_symbols_js_1 = require("./_file_handler_symbols.js");
|
|
19
19
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DirectConnectionFactory.d.ts","sourceRoot":"","sources":["../../../src/src/connection/DirectConnectionFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"DirectConnectionFactory.d.ts","sourceRoot":"","sources":["../../../src/src/connection/DirectConnectionFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAgB,MAAM,qBAAqB,CAAC;AAE3D,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAGpE,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAG1D;;;;;;;GAOG;AACH,qBAAa,uBAAwB,YAAW,iBAAiB;IAKzD,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAR3B,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAA4B;IACtE,OAAO,CAAC,QAAQ,CAAC,+BAA+B,CAA2B;gBAGtD,iBAAiB,EAAE,iBAAiB,EACpC,WAAW,EAAE,MAAM,CAAC,OAAO,kBAAkB,CAAC,iBAAiB,CAAC,EAChE,MAAM,EAAE,MAAM,CAAC,OAAO,QAAQ,CAAC,YAAY,CAAC,EAC5C,MAAM,EAAE,MAAM,CAAC,OAAO,QAAQ,CAAC,oBAAoB,CAAC,EACpD,MAAM,EAAE,MAAM;IAkBnC,OAAO,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;IAI5C,OAAO,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,cAAc,CAAC;IAIjD,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,uBAAuB;CAqB1D"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DirectConnectionFactory = void 0;
|
|
4
|
+
const connect_1 = require("@connectrpc/connect");
|
|
4
5
|
const connect_node_1 = require("@connectrpc/connect-node");
|
|
5
6
|
const mod_js_1 = require("../services/credentials/mod.js");
|
|
6
|
-
const createConnectRpcClient_js_1 = require("../services/createConnectRpcClient.js");
|
|
7
7
|
const HttpClientFactory_js_1 = require("./internal/HttpClientFactory.js");
|
|
8
8
|
const InboundConnectionFactory_js_1 = require("./internal/InboundConnectionFactory.js");
|
|
9
9
|
const OutboundConnectionFactory_js_1 = require("./internal/OutboundConnectionFactory.js");
|
|
@@ -73,9 +73,12 @@ class DirectConnectionFactory {
|
|
|
73
73
|
}
|
|
74
74
|
static fromEnv(logger) {
|
|
75
75
|
const baseUrl = Deno.env.get(constants_js_1.envVarCredsBaseURL) || 'http://localhost:9000';
|
|
76
|
-
const
|
|
77
|
-
|
|
78
|
-
|
|
76
|
+
const transport = (0, connect_node_1.createGrpcTransport)({
|
|
77
|
+
baseUrl,
|
|
78
|
+
});
|
|
79
|
+
const credentials = (0, connect_1.createClient)(mod_js_1.credentialv1alpha1.CredentialService, transport);
|
|
80
|
+
const tokens = (0, connect_1.createClient)(mod_js_1.tokensv1.TokenService, transport);
|
|
81
|
+
const oauth1 = (0, connect_1.createClient)(mod_js_1.oauth1v1.AuthorizationService, transport);
|
|
79
82
|
const httpClientFactory = new HttpClientFactory_js_1.HttpClientFactory();
|
|
80
83
|
return new DirectConnectionFactory(httpClientFactory, credentials, tokens, oauth1, logger);
|
|
81
84
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CredentialHolder.d.ts","sourceRoot":"","sources":["../../../../src/src/connection/internal/CredentialHolder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CredentialHolder.d.ts","sourceRoot":"","sources":["../../../../src/src/connection/internal/CredentialHolder.ts"],"names":[],"mappings":"AAAA,wBAAgB,WAAW,IAAI,OAAO,CAErC;AAED;;GAEG;AACH,qBAAa,gBAAgB,CAAC,CAAC;;gBAOf,YAAY,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAMxF,GAAG,CAAC,OAAO,GAAE,OAAe,GAAG,OAAO,CAAC,CAAC,CAAC;IAkB/C,OAAO,IAAI,IAAI;CAgClB"}
|
|
@@ -35,17 +35,8 @@ class CredentialHolder {
|
|
|
35
35
|
this.refresh();
|
|
36
36
|
return __classPrivateFieldGet(this, _CredentialHolder_value, "f");
|
|
37
37
|
}
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
//
|
|
41
|
-
// We might have to change this because if credentials has an issue we might just make that issue worse by pamming more requests
|
|
42
|
-
try {
|
|
43
|
-
const value = await __classPrivateFieldGet(this, _CredentialHolder_value, "f");
|
|
44
|
-
if (!__classPrivateFieldGet(this, _CredentialHolder_isValid, "f").call(this, value)) {
|
|
45
|
-
this.refresh();
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
catch {
|
|
38
|
+
const value = await __classPrivateFieldGet(this, _CredentialHolder_value, "f");
|
|
39
|
+
if (!__classPrivateFieldGet(this, _CredentialHolder_isValid, "f").call(this, value)) {
|
|
49
40
|
this.refresh();
|
|
50
41
|
}
|
|
51
42
|
// must return this.#value and not value, since calling `this.refresh()` above will replace
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OutboundConnectionFactory.d.ts","sourceRoot":"","sources":["../../../../src/src/connection/internal/OutboundConnectionFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAC3F,OAAO,EAGH,UAAU,EAGb,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,SAAS,EAAsB,MAAM,aAAa,CAAC;AAG5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAI3D,qBAAa,yBAAyB;IAI9B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAP3B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAuC;gBAGxC,iBAAiB,EAAE,iBAAiB,EACpC,WAAW,EAAE,MAAM,CAAC,OAAO,kBAAkB,CAAC,iBAAiB,CAAC,EAChE,MAAM,EAAE,MAAM,CAAC,OAAO,QAAQ,CAAC,YAAY,CAAC,EAC5C,MAAM,EAAE,MAAM,CAAC,OAAO,QAAQ,CAAC,oBAAoB,CAAC,EACpD,MAAM,EAAE,MAAM;IAKnC,OAAO,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;YAkB9B,YAAY;IAmB1B,OAAO,CAAC,eAAe;YAiDT,0BAA0B;YAwB1B,qBAAqB;IA4DnC,OAAO,CAAC,2BAA2B;IAuBnC,OAAO,CAAC,0BAA0B;IAkDlC,OAAO,CAAC,2BAA2B;YA0BrB,wBAAwB;YAkCxB,qBAAqB;IAiCnC,OAAO,CAAC,8BAA8B;IAuBtC,OAAO,CAAC,2BAA2B;YA2ErB,wBAAwB;YAkCxB,qBAAqB;IA6CnC,OAAO,CAAC,kCAAkC;
|
|
1
|
+
{"version":3,"file":"OutboundConnectionFactory.d.ts","sourceRoot":"","sources":["../../../../src/src/connection/internal/OutboundConnectionFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAC3F,OAAO,EAGH,UAAU,EAGb,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,SAAS,EAAsB,MAAM,aAAa,CAAC;AAG5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAI3D,qBAAa,yBAAyB;IAI9B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAP3B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAuC;gBAGxC,iBAAiB,EAAE,iBAAiB,EACpC,WAAW,EAAE,MAAM,CAAC,OAAO,kBAAkB,CAAC,iBAAiB,CAAC,EAChE,MAAM,EAAE,MAAM,CAAC,OAAO,QAAQ,CAAC,YAAY,CAAC,EAC5C,MAAM,EAAE,MAAM,CAAC,OAAO,QAAQ,CAAC,oBAAoB,CAAC,EACpD,MAAM,EAAE,MAAM;IAKnC,OAAO,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;YAkB9B,YAAY;IAmB1B,OAAO,CAAC,eAAe;YAiDT,0BAA0B;YAwB1B,qBAAqB;IA4DnC,OAAO,CAAC,2BAA2B;IAuBnC,OAAO,CAAC,0BAA0B;IAkDlC,OAAO,CAAC,2BAA2B;YA0BrB,wBAAwB;YAkCxB,qBAAqB;IAiCnC,OAAO,CAAC,8BAA8B;IAuBtC,OAAO,CAAC,2BAA2B;YA2ErB,wBAAwB;YAkCxB,qBAAqB;IA6CnC,OAAO,CAAC,kCAAkC;CAyB7C"}
|
|
@@ -419,6 +419,7 @@ class OutboundConnectionFactory {
|
|
|
419
419
|
const token = await tokenHolder.get();
|
|
420
420
|
const headers = new Headers(init?.headers);
|
|
421
421
|
headers.set('Authorization', `${tokenType} ${token.accessToken}`);
|
|
422
|
+
console.log('headers', input);
|
|
422
423
|
return fetch(input, {
|
|
423
424
|
...init,
|
|
424
425
|
headers,
|
|
@@ -63,7 +63,7 @@ class AsyncWorkflow {
|
|
|
63
63
|
this.isWaiting = false;
|
|
64
64
|
throw new Error('wait timed out');
|
|
65
65
|
}
|
|
66
|
-
const workflow = await this.queue.
|
|
66
|
+
const workflow = await this.queue.getWorkflow(this.workflowId);
|
|
67
67
|
if (workflow.status === 'completed') {
|
|
68
68
|
// workflow is completed, parse the output and set the data and completed to true
|
|
69
69
|
const stringData = workflow.output;
|
|
@@ -5,20 +5,17 @@ import { Issue, IssueAPI } from '../issues/Issues.js';
|
|
|
5
5
|
import { KeyValue, KeyValueProvider, KeyValueScope } from '../kv/KeyValue.js';
|
|
6
6
|
import { Logger } from '../observability/logging/Logger.js';
|
|
7
7
|
import { AsyncWorkflow } from './AsyncWorkflow.js';
|
|
8
|
+
import { Workflow } from '../interpreter/durable/Queue.js';
|
|
8
9
|
import { ActivationImpl } from './ActivationImpl.js';
|
|
10
|
+
import { WorkflowInterface, WorkflowOpts } from './WorkflowClient.js';
|
|
9
11
|
export type OnSuccessFn = (ctx: Context<any>) => void;
|
|
10
12
|
export type OnErrorFn = (ctx: Context<any>) => void;
|
|
11
13
|
export type ContextOptions = {
|
|
12
|
-
|
|
14
|
+
workflow?: Workflow;
|
|
13
15
|
request?: express.Request;
|
|
14
16
|
onSuccess?: OnSuccessFn;
|
|
15
17
|
onError?: OnErrorFn;
|
|
16
18
|
};
|
|
17
|
-
export type WorkflowOpts = {
|
|
18
|
-
maxAttempts?: number;
|
|
19
|
-
data?: unknown;
|
|
20
|
-
dataRaw?: string;
|
|
21
|
-
};
|
|
22
19
|
export type CreateIssue = {
|
|
23
20
|
severity: 'low' | 'medium' | 'high';
|
|
24
21
|
title: string;
|
|
@@ -43,6 +40,7 @@ export interface Context<D> {
|
|
|
43
40
|
deduplicate?: boolean;
|
|
44
41
|
}): Promise<Issue | null>;
|
|
45
42
|
request(): express.Request | undefined;
|
|
43
|
+
workflowClient(): WorkflowInterface;
|
|
46
44
|
}
|
|
47
45
|
export declare class ContextImpl<D, Index = void> implements Context<D> {
|
|
48
46
|
#private;
|
|
@@ -56,11 +54,12 @@ export declare class ContextImpl<D, Index = void> implements Context<D> {
|
|
|
56
54
|
readonly options: ContextOptions;
|
|
57
55
|
constructor(log: Logger, kvp: KeyValueProvider, creds: CredentialsProvider, executionId: string, startTime: Date, data: D, activation: ActivationImpl, issues: IssueAPI, queue?: QueueAPI, options?: ContextOptions);
|
|
58
56
|
get activation(): ActivationImpl;
|
|
59
|
-
get
|
|
57
|
+
get workflow(): Workflow | undefined;
|
|
60
58
|
setIndex(idx: number): ContextImpl<D, number>;
|
|
61
59
|
withData<D2>(data: D2): ContextImpl<D2, Index>;
|
|
62
60
|
openKv(scope?: KeyValueScope): KeyValue;
|
|
63
61
|
request(): express.Request | undefined;
|
|
62
|
+
workflowClient(): WorkflowInterface;
|
|
64
63
|
start(group: string, opts: WorkflowOpts): Promise<AsyncWorkflow>;
|
|
65
64
|
createIssue(issue: CreateIssue, options?: {
|
|
66
65
|
deduplicate?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../../src/src/context/Context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,OAAO,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC3D,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC9E,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../../src/src/context/Context.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,7 @@ var _ContextImpl_activation, _ContextImpl_issues, _ContextImpl_creds;
|
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.ContextImpl = void 0;
|
|
16
16
|
const AsyncWorkflow_js_1 = require("./AsyncWorkflow.js");
|
|
17
|
+
const WorkflowClient_js_1 = require("./WorkflowClient.js");
|
|
17
18
|
class ContextImpl {
|
|
18
19
|
constructor(log, kvp, creds, executionId, startTime, data, activation, issues, queue, options = {}) {
|
|
19
20
|
Object.defineProperty(this, "log", {
|
|
@@ -87,12 +88,13 @@ class ContextImpl {
|
|
|
87
88
|
this.request = this.request.bind(this);
|
|
88
89
|
this.createIssue = this.createIssue.bind(this);
|
|
89
90
|
this.destroy = this.destroy.bind(this);
|
|
91
|
+
this.workflowClient = this.workflowClient.bind(this);
|
|
90
92
|
}
|
|
91
93
|
get activation() {
|
|
92
94
|
return __classPrivateFieldGet(this, _ContextImpl_activation, "f");
|
|
93
95
|
}
|
|
94
|
-
get
|
|
95
|
-
return this.options.
|
|
96
|
+
get workflow() {
|
|
97
|
+
return this.options.workflow;
|
|
96
98
|
}
|
|
97
99
|
setIndex(idx) {
|
|
98
100
|
const next = new ContextImpl(this.log, this.kvp, __classPrivateFieldGet(this, _ContextImpl_creds, "f"), this.executionId, this.startTime, this.data, __classPrivateFieldGet(this, _ContextImpl_activation, "f"), __classPrivateFieldGet(this, _ContextImpl_issues, "f"), this.queue, this.options);
|
|
@@ -118,6 +120,12 @@ class ContextImpl {
|
|
|
118
120
|
request() {
|
|
119
121
|
return this.options.request;
|
|
120
122
|
}
|
|
123
|
+
workflowClient() {
|
|
124
|
+
if (!this.queue) {
|
|
125
|
+
throw new Error('Queue is not available for this context, cannot start workflow');
|
|
126
|
+
}
|
|
127
|
+
return new WorkflowClient_js_1.WorkflowImpl(this.queue, this.executionId, this.activation);
|
|
128
|
+
}
|
|
121
129
|
async start(group, opts) {
|
|
122
130
|
// this makes a post request to the endpoint sending a message and schedule the workflow to run
|
|
123
131
|
if (!this.queue) {
|
|
@@ -134,12 +142,14 @@ class ContextImpl {
|
|
|
134
142
|
workflows: [
|
|
135
143
|
{
|
|
136
144
|
group,
|
|
145
|
+
projectId: Deno.env.get('VERSORI_PROJECT_ID') ?? 'unknown',
|
|
146
|
+
environmentId: Deno.env.get('VERSORI_ENVIRONMENT_ID') ?? 'unknown',
|
|
137
147
|
metadata: {
|
|
138
148
|
executionId: this.executionId,
|
|
139
149
|
activationId: this.activation?.id,
|
|
140
150
|
userId: this.activation?.user?.externalId,
|
|
141
151
|
},
|
|
142
|
-
payload,
|
|
152
|
+
payload: payload ?? btoa("{}"),
|
|
143
153
|
maxAttempts: opts.maxAttempts,
|
|
144
154
|
},
|
|
145
155
|
],
|
|
@@ -7,6 +7,7 @@ import { Context, ContextImpl, ContextOptions } from './Context.js';
|
|
|
7
7
|
import { Activation, PlatformApi } from '../services/platform/mod.js';
|
|
8
8
|
export interface ContextProvider {
|
|
9
9
|
create<D>(activation: Activation, data: D, options?: ContextOptions): ContextImpl<D, void>;
|
|
10
|
+
createWithExecutionId<D>(activation: Activation, data: D, executionId: string, options?: ContextOptions): ContextImpl<D, void>;
|
|
10
11
|
destroy(ctx: Context<any>): Promise<void>;
|
|
11
12
|
}
|
|
12
13
|
export declare class ContextProviderImpl implements ContextProvider {
|
|
@@ -19,6 +20,7 @@ export declare class ContextProviderImpl implements ContextProvider {
|
|
|
19
20
|
issues: IssueAPI;
|
|
20
21
|
queue?: QueueAPI;
|
|
21
22
|
constructor(log: Logger, kvp: KeyValueProvider, creds: CredentialsProvider, platformApi: PlatformApi, organisationId: string, environmentId: string, issues: IssueAPI, queue?: QueueAPI | undefined);
|
|
23
|
+
createWithExecutionId<D>(activation: Activation, data: D, executionId: string, options?: ContextOptions): ContextImpl<D, void>;
|
|
22
24
|
create<D>(activation: Activation, data: D, options?: ContextOptions): ContextImpl<D>;
|
|
23
25
|
destroy(_: Context<any>): Promise<void>;
|
|
24
26
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContextProvider.d.ts","sourceRoot":"","sources":["../../../src/src/context/ContextProvider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAGtE,MAAM,WAAW,eAAe;IAC5B,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC3F,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7C;AAED,qBAAa,mBAAoB,YAAW,eAAe;IAWnD,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAZlC,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,gBAAgB,CAAC;IACtB,KAAK,EAAE,mBAAmB,CAAC;IAC3B,MAAM,EAAE,QAAQ,CAAC;IACjB,KAAK,CAAC,EAAE,QAAQ,CAAC;gBAGb,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,gBAAgB,EACrB,KAAK,EAAE,mBAAmB,EACT,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,MAAM,EACtC,MAAM,EAAE,QAAQ,EAChB,KAAK,GAAE,QAAQ,GAAG,SAAqB;IAS3C,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,GAAE,cAAmB,GAAG,WAAW,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"ContextProvider.d.ts","sourceRoot":"","sources":["../../../src/src/context/ContextProvider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAGtE,MAAM,WAAW,eAAe;IAC5B,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC3F,qBAAqB,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC/H,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7C;AAED,qBAAa,mBAAoB,YAAW,eAAe;IAWnD,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAZlC,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,gBAAgB,CAAC;IACtB,KAAK,EAAE,mBAAmB,CAAC;IAC3B,MAAM,EAAE,QAAQ,CAAC;IACjB,KAAK,CAAC,EAAE,QAAQ,CAAC;gBAGb,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,gBAAgB,EACrB,KAAK,EAAE,mBAAmB,EACT,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,MAAM,EACtC,MAAM,EAAE,QAAQ,EAChB,KAAK,GAAE,QAAQ,GAAG,SAAqB;IAS3C,qBAAqB,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC;IAuBlI,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,GAAE,cAAmB,GAAG,WAAW,CAAC,CAAC,CAAC;IAMxF,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAG1C"}
|