@versori/run 0.5.0-alpha.1 → 0.5.0-alpha.2

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 (93) hide show
  1. package/esm/deps/jsr.io/@std/encoding/1.0.10/_common64.d.ts +35 -0
  2. package/esm/deps/jsr.io/@std/encoding/1.0.10/_common64.d.ts.map +1 -0
  3. package/esm/deps/jsr.io/@std/encoding/1.0.10/_common64.js +113 -0
  4. package/esm/deps/jsr.io/@std/encoding/1.0.10/_common_detach.d.ts +4 -0
  5. package/esm/deps/jsr.io/@std/encoding/1.0.10/_common_detach.d.ts.map +1 -0
  6. package/esm/deps/jsr.io/@std/encoding/1.0.10/_common_detach.js +13 -0
  7. package/esm/deps/jsr.io/@std/encoding/1.0.10/_types.d.ts +9 -0
  8. package/esm/deps/jsr.io/@std/encoding/1.0.10/_types.d.ts.map +1 -0
  9. package/esm/deps/jsr.io/@std/encoding/1.0.10/_types.js +2 -0
  10. package/esm/deps/jsr.io/@std/encoding/1.0.10/base64.d.ts +40 -0
  11. package/esm/deps/jsr.io/@std/encoding/1.0.10/base64.d.ts.map +1 -0
  12. package/esm/deps/jsr.io/@std/encoding/1.0.10/base64.js +82 -0
  13. package/esm/src/connection/CredentialsProvider.d.ts +23 -0
  14. package/esm/src/connection/CredentialsProvider.d.ts.map +1 -0
  15. package/esm/src/connection/CredentialsProvider.js +130 -0
  16. package/esm/src/connection/DirectConnectionFactory.d.ts +3 -3
  17. package/esm/src/connection/DirectConnectionFactory.d.ts.map +1 -1
  18. package/esm/src/context/ContextProvider.d.ts.map +1 -1
  19. package/esm/src/context/ContextProvider.js +1 -0
  20. package/esm/src/credentials/CredentialsProvider.d.ts +49 -0
  21. package/esm/src/credentials/CredentialsProvider.d.ts.map +1 -0
  22. package/esm/src/credentials/CredentialsProvider.js +102 -0
  23. package/esm/src/dsl/http/versori/configloader.d.ts.map +1 -1
  24. package/esm/src/dsl/http/versori/webhookmiddleware.d.ts.map +1 -1
  25. package/esm/src/dsl/http/versori/webhookmiddleware.js +9 -1
  26. package/esm/src/internal/supervisor.d.ts +2 -0
  27. package/esm/src/internal/supervisor.d.ts.map +1 -1
  28. package/esm/src/internal/supervisor.js +23 -0
  29. package/esm/src/interpreter/durable/DurableInterpreter.d.ts.map +1 -1
  30. package/esm/src/interpreter/durable/DurableInterpreter.js +6 -39
  31. package/esm/src/interpreter/memory/MemoryInterpreter.d.ts.map +1 -1
  32. package/esm/src/interpreter/memory/MemoryInterpreter.js +6 -39
  33. package/esm/src/interpreter/memory/compilers/catch.d.ts.map +1 -1
  34. package/esm/src/interpreter/memory/compilers/catch.js +2 -0
  35. package/esm/src/interpreter/memory/compilers/fn.d.ts.map +1 -1
  36. package/esm/src/interpreter/memory/compilers/fn.js +2 -1
  37. package/esm/src/interpreter/memory/compilers/http.d.ts.map +1 -1
  38. package/esm/src/interpreter/memory/compilers/http.js +2 -1
  39. package/esm/src/interpreter/memory/compilers/schedule.d.ts.map +1 -1
  40. package/esm/src/interpreter/memory/compilers/schedule.js +2 -0
  41. package/esm/src/interpreter/memory/compilers/webhook.d.ts.map +1 -1
  42. package/esm/src/interpreter/memory/compilers/webhook.js +7 -3
  43. package/esm/src/kv/nats/NatsKeyValueProvider.d.ts.map +1 -1
  44. package/esm/src/kv/nats/NatsKeyValueProvider.js +2 -2
  45. package/esm/src/kv/sdk/SDKKeyValueProvider.d.ts.map +1 -1
  46. package/esm/src/kv/sdk/SDKKeyValueProvider.js +3 -3
  47. package/package.json +1 -1
  48. package/script/deps/jsr.io/@std/encoding/1.0.10/_common64.d.ts +35 -0
  49. package/script/deps/jsr.io/@std/encoding/1.0.10/_common64.d.ts.map +1 -0
  50. package/script/deps/jsr.io/@std/encoding/1.0.10/_common64.js +119 -0
  51. package/script/deps/jsr.io/@std/encoding/1.0.10/_common_detach.d.ts +4 -0
  52. package/script/deps/jsr.io/@std/encoding/1.0.10/_common_detach.d.ts.map +1 -0
  53. package/script/deps/jsr.io/@std/encoding/1.0.10/_common_detach.js +16 -0
  54. package/script/deps/jsr.io/@std/encoding/1.0.10/_types.d.ts +9 -0
  55. package/script/deps/jsr.io/@std/encoding/1.0.10/_types.d.ts.map +1 -0
  56. package/script/deps/jsr.io/@std/encoding/1.0.10/_types.js +3 -0
  57. package/script/deps/jsr.io/@std/encoding/1.0.10/base64.d.ts +40 -0
  58. package/script/deps/jsr.io/@std/encoding/1.0.10/base64.d.ts.map +1 -0
  59. package/script/deps/jsr.io/@std/encoding/1.0.10/base64.js +86 -0
  60. package/script/src/connection/CredentialsProvider.d.ts +23 -0
  61. package/script/src/connection/CredentialsProvider.d.ts.map +1 -0
  62. package/script/src/connection/CredentialsProvider.js +134 -0
  63. package/script/src/connection/DirectConnectionFactory.d.ts +3 -3
  64. package/script/src/connection/DirectConnectionFactory.d.ts.map +1 -1
  65. package/script/src/context/ContextProvider.d.ts.map +1 -1
  66. package/script/src/context/ContextProvider.js +1 -0
  67. package/script/src/credentials/CredentialsProvider.d.ts +49 -0
  68. package/script/src/credentials/CredentialsProvider.d.ts.map +1 -0
  69. package/script/src/credentials/CredentialsProvider.js +106 -0
  70. package/script/src/dsl/http/versori/configloader.d.ts.map +1 -1
  71. package/script/src/dsl/http/versori/webhookmiddleware.d.ts.map +1 -1
  72. package/script/src/dsl/http/versori/webhookmiddleware.js +9 -1
  73. package/script/src/internal/supervisor.d.ts +2 -0
  74. package/script/src/internal/supervisor.d.ts.map +1 -1
  75. package/script/src/internal/supervisor.js +24 -0
  76. package/script/src/interpreter/durable/DurableInterpreter.d.ts.map +1 -1
  77. package/script/src/interpreter/durable/DurableInterpreter.js +5 -38
  78. package/script/src/interpreter/memory/MemoryInterpreter.d.ts.map +1 -1
  79. package/script/src/interpreter/memory/MemoryInterpreter.js +5 -38
  80. package/script/src/interpreter/memory/compilers/catch.d.ts.map +1 -1
  81. package/script/src/interpreter/memory/compilers/catch.js +2 -0
  82. package/script/src/interpreter/memory/compilers/fn.d.ts.map +1 -1
  83. package/script/src/interpreter/memory/compilers/fn.js +1 -0
  84. package/script/src/interpreter/memory/compilers/http.d.ts.map +1 -1
  85. package/script/src/interpreter/memory/compilers/http.js +1 -0
  86. package/script/src/interpreter/memory/compilers/schedule.d.ts.map +1 -1
  87. package/script/src/interpreter/memory/compilers/schedule.js +2 -0
  88. package/script/src/interpreter/memory/compilers/webhook.d.ts.map +1 -1
  89. package/script/src/interpreter/memory/compilers/webhook.js +7 -3
  90. package/script/src/kv/nats/NatsKeyValueProvider.d.ts.map +1 -1
  91. package/script/src/kv/nats/NatsKeyValueProvider.js +2 -2
  92. package/script/src/kv/sdk/SDKKeyValueProvider.d.ts.map +1 -1
  93. package/script/src/kv/sdk/SDKKeyValueProvider.js +3 -3
@@ -0,0 +1,102 @@
1
+ /*
2
+ * Copyright (c) 2025 Versori Group Inc
3
+ *
4
+ * Use of this software is governed by the Business Source License 1.1
5
+ * included in the LICENSE file at the root of this repository.
6
+ *
7
+ * Change Date: 2029-01-01
8
+ * Change License: Apache License, Version 2.0
9
+ *
10
+ * As of the Change Date, in accordance with the Business Source License,
11
+ * use of this software will be governed by the Apache License, Version 2.0.
12
+ */
13
+ import { create } from '@bufbuild/protobuf';
14
+ import { encodeBase64 } from '../../deps/jsr.io/@std/encoding/1.0.10/base64.js';
15
+ import { credentialv1alpha1 } from '../services/credentials/mod.js';
16
+ /**
17
+ * CredentialsProviderV2 is the latest version of the CredentialsProvider interface and provides more capabilities for
18
+ * interacting with the credentials service.
19
+ *
20
+ * THIS IS A WORK IN PROGRESS - WE SHOULD STILL USE THE V1 INTERFACE FOR NOW.
21
+ *
22
+ * No idea if this approach is a good idea, happy to change it if there's a better way.
23
+ */
24
+ export class CredentialsProviderImpl {
25
+ constructor(client, organisationId) {
26
+ Object.defineProperty(this, "client", {
27
+ enumerable: true,
28
+ configurable: true,
29
+ writable: true,
30
+ value: client
31
+ });
32
+ Object.defineProperty(this, "organisationId", {
33
+ enumerable: true,
34
+ configurable: true,
35
+ writable: true,
36
+ value: organisationId
37
+ });
38
+ }
39
+ async get(id) {
40
+ const response = await this.client.get({ id, organisationId: this.organisationId });
41
+ if (!response.credential) {
42
+ throw new Error('Failed to get credential, response was undefined');
43
+ }
44
+ return response.credential;
45
+ }
46
+ async updateApiKey(id, key) {
47
+ const rawMsg = create(credentialv1alpha1.CredentialDataRawSchema, {
48
+ raw: new TextEncoder().encode(encodeBase64(key)),
49
+ });
50
+ const response = await this.client.update({
51
+ id,
52
+ organisationId: this.organisationId,
53
+ data: {
54
+ raw: rawMsg.raw,
55
+ },
56
+ });
57
+ if (!response.credential) {
58
+ throw new Error('Failed to update API key credential, response was undefined');
59
+ }
60
+ return response.credential;
61
+ }
62
+ async updateBasicAuth(id, username, password) {
63
+ const basicAuthMsg = create(credentialv1alpha1.CredentialDataBasicAuthSchema, {
64
+ username,
65
+ password,
66
+ });
67
+ const data = {
68
+ username: new TextEncoder().encode(encodeBase64(basicAuthMsg.username)),
69
+ password: new TextEncoder().encode(encodeBase64(basicAuthMsg.password)),
70
+ };
71
+ const response = await this.client.update({
72
+ id,
73
+ organisationId: this.organisationId,
74
+ data,
75
+ });
76
+ if (!response.credential) {
77
+ throw new Error('Failed to update basic auth credential, response was undefined');
78
+ }
79
+ return response.credential;
80
+ }
81
+ async updateCertificate(id, payload) {
82
+ const certificateMsg = create(credentialv1alpha1.CredentialDataCertificateSchema, {
83
+ certificate: payload.certificate,
84
+ key: payload.key,
85
+ ca: payload.ca,
86
+ });
87
+ const data = {
88
+ certificate: new TextEncoder().encode(encodeBase64(certificateMsg.certificate)),
89
+ key: new TextEncoder().encode(encodeBase64(certificateMsg.key)),
90
+ ca: new TextEncoder().encode(encodeBase64(certificateMsg.ca)),
91
+ };
92
+ const response = await this.client.update({
93
+ id,
94
+ organisationId: this.organisationId,
95
+ data,
96
+ });
97
+ if (!response.credential) {
98
+ throw new Error('Failed to update certificate credential, response was undefined');
99
+ }
100
+ return response.credential;
101
+ }
102
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"configloader.d.ts","sourceRoot":"","sources":["../../../../../src/src/dsl/http/versori/configloader.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,YAAY,EAA+B,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAIlG;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,IAAI,gBAAgB,CAUrD;AAED,qBAAa,mBAAoB,YAAW,YAAY;IACpD,OAAO,CAAC,UAAU,CAAmB;gBAEzB,GAAG,EAAE,gBAAgB;IAIjC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,mBAAmB;IAShD,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAI/C,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAczC,aAAa,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM;CAa9C"}
1
+ {"version":3,"file":"configloader.d.ts","sourceRoot":"","sources":["../../../../../src/src/dsl/http/versori/configloader.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,YAAY,EAA+B,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAGlG;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,IAAI,gBAAgB,CAUrD;AAED,qBAAa,mBAAoB,YAAW,YAAY;IACpD,OAAO,CAAC,UAAU,CAAmB;gBAEzB,GAAG,EAAE,gBAAgB;IAIjC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,mBAAmB;IAShD,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAI/C,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAczC,aAAa,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM;CAa9C"}
@@ -1 +1 @@
1
- {"version":3,"file":"webhookmiddleware.d.ts","sourceRoot":"","sources":["../../../../../src/src/dsl/http/versori/webhookmiddleware.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACvD,OAAO,EAAc,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAU3C,MAAM,MAAM,2BAA2B,GAAG;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,WAAW,CAAC;IACzB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,SAAS,EAAE,YAAY,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;CACf,CAAC;AAmCF,wBAAgB,6BAA6B,CACzC,IAAI,EAAE,2BAA2B,GAClC,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CA+FpE;AAED,wBAAgB,mCAAmC,CAC/C,IAAI,EAAE,2BAA2B,GAClC,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAyEpE;AAED,wBAAgB,oCAAoC,CAChD,IAAI,EAAE,2BAA2B,GAClC,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CA2FpE"}
1
+ {"version":3,"file":"webhookmiddleware.d.ts","sourceRoot":"","sources":["../../../../../src/src/dsl/http/versori/webhookmiddleware.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACvD,OAAO,EAAc,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,MAAM,2BAA2B,GAAG;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,WAAW,CAAC;IACzB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,SAAS,EAAE,YAAY,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;CACf,CAAC;AAmCF,wBAAgB,6BAA6B,CACzC,IAAI,EAAE,2BAA2B,GAClC,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAsGpE;AAED,wBAAgB,mCAAmC,CAC/C,IAAI,EAAE,2BAA2B,GAClC,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAyEpE;AAED,wBAAgB,oCAAoC,CAChD,IAAI,EAAE,2BAA2B,GAClC,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CA2FpE"}
@@ -10,6 +10,7 @@
10
10
  * As of the Change Date, in accordance with the Business Source License,
11
11
  * use of this software will be governed by the Apache License, Version 2.0.
12
12
  */
13
+ import { ulid } from '../../../../deps/jsr.io/@std/ulid/1.0.0/mod.js';
13
14
  import { enabled as supervisorEnabled } from '../../../internal/supervisor.js';
14
15
  // TODO: this gets called for every request for all endpoints, can we cache this?
15
16
  async function getStaticActivation(opts) {
@@ -42,10 +43,17 @@ export function createStaticWebhookMiddleware(opts) {
42
43
  const staticMiddleware = async (_req, res, next) => {
43
44
  try {
44
45
  res.locals.activation = await getStaticActivation(opts);
46
+ console.log("activation", res.locals.activation);
45
47
  }
46
48
  catch (err) {
49
+ // when working in mocks users might not be connected so there might not be an activation
47
50
  if (supervisorEnabled) {
48
- res.locals.activation = {};
51
+ res.locals.activation = {
52
+ id: ulid(), // random ulid used for testing
53
+ user: {
54
+ externalId: '__ai_mock_testing__',
55
+ }
56
+ };
49
57
  next();
50
58
  return;
51
59
  }
@@ -1,5 +1,6 @@
1
1
  import { ExportResult } from '@opentelemetry/core';
2
2
  import { ReadableSpan, SpanExporter } from '@opentelemetry/sdk-trace-node';
3
+ import { Span } from '@opentelemetry/api';
3
4
  export declare const enabled: boolean;
4
5
  type Webhooks = Map<string, {
5
6
  method: string;
@@ -13,6 +14,7 @@ type MockConnection = {
13
14
  baseUrl?: string;
14
15
  };
15
16
  export declare function registerWebhooks(webhooks: Webhooks): Promise<void>;
17
+ export declare function sendTaskStartEvent(taskId: string, span: Span): Promise<void>;
16
18
  export declare function registerCrons(crons: Crons): Promise<void>;
17
19
  export declare function mockAPIRequest(info: RequestInfo | URL, cnx?: MockConnection, options?: RequestInit): Promise<Response>;
18
20
  export declare class Fake implements SpanExporter {
@@ -1 +1 @@
1
- {"version":3,"file":"supervisor.d.ts","sourceRoot":"","sources":["../../../src/src/internal/supervisor.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,YAAY,EAA6D,MAAM,qBAAqB,CAAC;AAC9G,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAO3E,eAAO,MAAM,OAAO,SAEjB,CAAA;AAyBH,KAAK,QAAQ,GAAG,GAAG,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,CAAC,CAAC;AAC5E,KAAK,KAAK,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAEjC,KAAK,cAAc,GAAG;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB,CAAA;AAED,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBxE;AAED,wBAAsB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAgB/D;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,GAAG,EAAE,GAAG,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,CAoC5H;AAyBD,qBAAa,IAAK,YAAW,YAAY;;IAOrC,MAAM,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,cAAc,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,GAAG,IAAI;IAmBnF,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAIzB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAG9B"}
1
+ {"version":3,"file":"supervisor.d.ts","sourceRoot":"","sources":["../../../src/src/internal/supervisor.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,YAAY,EAA6D,MAAM,qBAAqB,CAAC;AAC9G,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE3E,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAM1C,eAAO,MAAM,OAAO,SAEjB,CAAA;AAyBH,KAAK,QAAQ,GAAG,GAAG,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,CAAC,CAAC;AAC5E,KAAK,KAAK,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAEjC,KAAK,cAAc,GAAG;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB,CAAA;AAED,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBxE;AAED,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAuBlF;AAED,wBAAsB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAgB/D;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,GAAG,EAAE,GAAG,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,CAoC5H;AAyBD,qBAAa,IAAK,YAAW,YAAY;;IAOrC,MAAM,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,cAAc,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,GAAG,IAAI;IAmBnF,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAIzB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAG9B"}
@@ -54,6 +54,29 @@ export async function registerWebhooks(webhooks) {
54
54
  logger.error('Failed to register webhooks with supervisor', { error: err });
55
55
  }
56
56
  }
57
+ export async function sendTaskStartEvent(taskId, span) {
58
+ if (!enabled) {
59
+ return;
60
+ }
61
+ const data = {
62
+ taskId,
63
+ spanId: span.spanContext().spanId,
64
+ traceId: span.spanContext().traceId,
65
+ startTime: new Date().toISOString(), // assuming current time as start time
66
+ };
67
+ try {
68
+ await fetch(`${supervisorURL}/tasks/start`, {
69
+ method: "POST",
70
+ body: JSON.stringify(data),
71
+ headers: {
72
+ "Content-Type": "application/json",
73
+ },
74
+ });
75
+ }
76
+ catch (err) {
77
+ logger.error('Failed to send task start event to supervisor', { error: err });
78
+ }
79
+ }
57
80
  export async function registerCrons(crons) {
58
81
  if (!enabled) {
59
82
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"DurableInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/durable/DurableInterpreter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DurableInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/durable/DurableInterpreter.ts"],"names":[],"mappings":"AAYA,OAAsB,EAAQ,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAGjE,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;AAEtF,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AACtF,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,eAAe,EAAuB,MAAM,kCAAkC,CAAC;AACxF,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAGrE,OAAO,EAAE,QAAQ,EAAgB,MAAM,uBAAuB,CAAC;AAe/D,OAAO,EAAE,QAAQ,EAAa,MAAM,wBAAwB,CAAC;AAK7D,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAmB,MAAM,wCAAwC,CAAC;AACtF,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAA0B,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AACrF,OAAO,EAAE,QAAQ,EAAa,MAAM,YAAY,CAAC;AAEjD;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACpC;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAE9B;;OAEG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;IAElC;;OAEG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;IAErB;;OAEG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;CACpC,CAAC;AAEF,KAAK,YAAY,GAAG;IAChB,QAAQ,EAAE,UAAU,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;IAC7C,KAAK,EAAE,uBAAuB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAC9C,oBAAoB,EAAE,eAAe,CAAC;IACtC,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,YAAY,CAAC,EAAE,YAAY,CAAC;CAC/B,CAAC;AAUF,KAAK,eAAe,GAAG,GAAG,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,CAAC,CAAC;AAEnF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,kBAAkB;IAQvB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;IArB7B,OAAO,CAAC,mBAAmB,CAA2B;IACtD,OAAO,CAAC,aAAa,CAAC,CAAS;IAC/B,OAAO,CAAC,UAAU,CAAC,CAAS;IAC5B,OAAO,CAAC,cAAc,CAAC,CAAa;IACpC,OAAO,CAAC,cAAc,CAAS;gBAGV,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,kBAAkB,EAC5B,eAAe,EAAE,eAAe,EAChC,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAC3B,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EACjC,eAAe,EAAE,eAAe,EACvB,WAAW,EAAE,WAAW,EACxB,eAAe,EAAE,uBAAuB,EACxC,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,QAAQ,EACf,SAAS,EAAE,YAAY,EACvB,aAAa,EAAE,QAAQ,EACvB,OAAO,CAAC,EAAE,OAAO,YAAA;WAWzB,WAAW,CAAC,OAAO,GAAE,yBAA8B,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAgH9F,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,yBAAyB;IAqDhE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA+N5B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CASxB"}
@@ -10,26 +10,24 @@
10
10
  * As of the Change Date, in accordance with the Business Source License,
11
11
  * use of this software will be governed by the Apache License, Version 2.0.
12
12
  */
13
- import { create } from '@bufbuild/protobuf';
14
- import { timestampMs } from '@bufbuild/protobuf/wkt';
15
13
  import opentelemetry from '@opentelemetry/api';
16
14
  import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-proto';
17
15
  import { resourceFromAttributes } from '@opentelemetry/resources';
18
16
  import { NodeSDK } from '@opentelemetry/sdk-node';
19
17
  import express from 'express';
20
18
  import { catchError, EMPTY, mergeMap, of, tap } from 'rxjs';
19
+ import { CredentialsProviderImpl } from '../../connection/CredentialsProvider.js';
21
20
  import { DirectConnectionFactory } from '../../connection/DirectConnectionFactory.js';
22
21
  import { ContextProviderImpl } from '../../context/ContextProvider.js';
23
22
  import { VersoriConfigReader } from '../../dsl/http/versori/configloader.js';
24
23
  import { CronAPIClient } from '../../dsl/http/versori/cronapi.js';
25
24
  import { WorkflowImpl } from '../../dsl/Workflow.js';
26
- import { envCronPort, envPort, envReadyCheckURL, envVarEnvId, envVarEnvironmentName, envVarOrgId, envVarOrgSlug, envVarOtelTracesURL, envVarProjectId, envVarSDKApiBaseURL, envVarVersion, } from '../../internal/constants.js';
25
+ import { envCronPort, envPort, envReadyCheckURL, envVarEnvId, envVarEnvironmentName, envVarOrgId, envVarOrgSlug, envVarOtelTracesURL, envVarProjectId, envVarSDKApiBaseURL, envVarVersion } from '../../internal/constants.js';
27
26
  import { Fake, registerCrons, registerWebhooks, enabled as supervisorEnabled } from '../../internal/supervisor.js';
28
27
  import { IssueImpl } from '../../issues/Issues.js';
29
28
  import { MemoryKeyValueProvider } from '../../kv/memory/MemoryKeyValueProvider.js';
30
29
  import { SDKKeyValueProvider } from '../../kv/sdk/SDKKeyValueProvider.js';
31
30
  import { ConsoleLogger } from '../../observability/logging/ConsoleLogger.js';
32
- import { credentialv1alpha1 } from '../../services/credentials/mod.js';
33
31
  import { PlatformApiImpl } from '../../services/platform/PlatformApi.js';
34
32
  import { ObservableCompiler } from './ObservableCompiler.js';
35
33
  import { QueueImpl } from './Queue.js';
@@ -39,36 +37,6 @@ function getKVProvider() {
39
37
  }
40
38
  return SDKKeyValueProvider.fromEnv();
41
39
  }
42
- function getCredentialsProvider(d) {
43
- return {
44
- async getRaw(name, _activationId) {
45
- const response = await d['credentials'].get({ id: name, organisationId: '' });
46
- if (!response.credential) {
47
- throw new Error(`Failed to get credential: ${name}`);
48
- }
49
- const rawData = create(credentialv1alpha1.CredentialDataRawSchema, response.credential.data);
50
- return rawData.raw;
51
- },
52
- async getAccessToken(name, forceRefresh, _activationId) {
53
- const response = await d['tokens'].getToken({ credentialId: name, forceRefresh: forceRefresh || false });
54
- if (!response.token) {
55
- throw new Error(`Failed to get token for credential: ${name}`);
56
- }
57
- return {
58
- accessToken: response.token.accessToken,
59
- tokenType: response.token.tokenType,
60
- expiry: response.token.expiry ? new Date(timestampMs(response.token.expiry)) : undefined,
61
- };
62
- },
63
- async getOAuth1Metadata(name, _activationId) {
64
- const response = await d['oauth1'].getAuthorizationMetadata({ credentialId: name });
65
- if (!response) {
66
- throw new Error(`Failed to get OAuth1 metadata for credential: ${name}`);
67
- }
68
- return response;
69
- },
70
- };
71
- }
72
40
  /**
73
41
  * DurableInterpreter is an interpreter for executing Versori workflows with support for durable, queue-based workflow
74
42
  * execution. It supports all trigger types including the {@link workflow} trigger which allows workflows to be started
@@ -266,21 +234,20 @@ export class DurableInterpreter {
266
234
  otelSDK.start();
267
235
  }
268
236
  const tracer = opentelemetry.trace.getTracer(serviceName, version);
269
- const cnxFactory = DirectConnectionFactory.fromEnv(log);
270
- const credentialsProvider = getCredentialsProvider(cnxFactory);
271
237
  const queueProvider = await QueueImpl.fromEnv(log);
238
+ const connectionFactory = DirectConnectionFactory.fromEnv(log);
272
239
  const issuesProvider = new IssueImpl(log);
273
240
  if (options.contextProvider) {
274
241
  // no need to set up a key-value provider if options.contextProvider is already
275
242
  // initialised.
276
- return new DurableInterpreter(log, compiler, options.contextProvider, express.Router(), express.Router(), new Map(), new Map(), PlatformApiImpl.fromEnv(), cnxFactory, CronAPIClient.fromEnv(), tracer, issuesProvider, configReader, queueProvider, otelSDK);
243
+ return new DurableInterpreter(log, compiler, options.contextProvider, express.Router(), express.Router(), new Map(), new Map(), PlatformApiImpl.fromEnv(), connectionFactory, CronAPIClient.fromEnv(), tracer, issuesProvider, configReader, queueProvider, otelSDK);
277
244
  }
278
245
  const kvp = await getKVProvider();
279
246
  const platformApi = PlatformApiImpl.fromEnv();
280
247
  const organisationId = Deno.env.get(envVarOrgId) || 'development';
281
248
  const environmentId = Deno.env.get(envVarEnvId) || 'development';
282
- const ctxProvider = new ContextProviderImpl(log, kvp, credentialsProvider, platformApi, organisationId, environmentId, issuesProvider);
283
- return new DurableInterpreter(log, compiler, ctxProvider, express.Router(), express.Router(), new Map(), new Map(), PlatformApiImpl.fromEnv(), cnxFactory, CronAPIClient.fromEnv(), tracer, issuesProvider, configReader, queueProvider, otelSDK);
249
+ const ctxProvider = new ContextProviderImpl(log, kvp, new CredentialsProviderImpl(connectionFactory.credentials, connectionFactory.tokens, connectionFactory.oauth1, configReader, platformApi), platformApi, organisationId, environmentId, issuesProvider);
250
+ return new DurableInterpreter(log, compiler, ctxProvider, express.Router(), express.Router(), new Map(), new Map(), PlatformApiImpl.fromEnv(), connectionFactory, CronAPIClient.fromEnv(), tracer, issuesProvider, configReader, queueProvider, otelSDK);
284
251
  }
285
252
  register(workflow, options) {
286
253
  const localAbortController = new AbortController();
@@ -1 +1 @@
1
- {"version":3,"file":"MemoryInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/memory/MemoryInterpreter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MemoryInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/memory/MemoryInterpreter.ts"],"names":[],"mappings":"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"}
@@ -10,26 +10,24 @@
10
10
  * As of the Change Date, in accordance with the Business Source License,
11
11
  * use of this software will be governed by the Apache License, Version 2.0.
12
12
  */
13
- import { create } from '@bufbuild/protobuf';
14
- import { timestampMs } from '@bufbuild/protobuf/wkt';
15
13
  import opentelemetry from '@opentelemetry/api';
16
14
  import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-proto';
17
15
  import { resourceFromAttributes } from '@opentelemetry/resources';
18
16
  import { NodeSDK } from '@opentelemetry/sdk-node';
19
17
  import express from 'express';
20
18
  import { catchError, EMPTY, mergeMap, of, tap } from 'rxjs';
19
+ import { CredentialsProviderImpl } from '../../connection/CredentialsProvider.js';
21
20
  import { DirectConnectionFactory } from '../../connection/DirectConnectionFactory.js';
22
21
  import { ContextProviderImpl } from '../../context/ContextProvider.js';
23
22
  import { VersoriConfigReader } from '../../dsl/http/versori/configloader.js';
24
23
  import { CronAPIClient } from '../../dsl/http/versori/cronapi.js';
25
24
  import { WorkflowImpl } from '../../dsl/Workflow.js';
26
- import { envCronPort, envPort, envReadyCheckURL, envVarEnvId, envVarEnvironmentName, envVarOrgId, envVarOrgSlug, envVarOtelTracesURL, envVarProjectId, envVarVersion, } from '../../internal/constants.js';
25
+ import { envCronPort, envPort, envReadyCheckURL, envVarEnvId, envVarEnvironmentName, envVarOrgId, envVarOrgSlug, envVarOtelTracesURL, envVarProjectId, envVarVersion } from '../../internal/constants.js';
27
26
  import { Fake, registerCrons, registerWebhooks, enabled as supervisorEnabled } from '../../internal/supervisor.js';
28
27
  import { IssueImpl } from '../../issues/Issues.js';
29
28
  import { MemoryKeyValueProvider } from '../../kv/memory/MemoryKeyValueProvider.js';
30
29
  import { NatsKeyValueProvider } from '../../kv/nats/NatsKeyValueProvider.js';
31
30
  import { ConsoleLogger } from '../../observability/logging/ConsoleLogger.js';
32
- import { credentialv1alpha1 } from '../../services/credentials/mod.js';
33
31
  import { PlatformApiImpl } from '../../services/platform/PlatformApi.js';
34
32
  import { ObservableCompiler } from './ObservableCompiler.js';
35
33
  function getKVProvider() {
@@ -38,36 +36,6 @@ function getKVProvider() {
38
36
  }
39
37
  return NatsKeyValueProvider.fromEnv();
40
38
  }
41
- function getCredentialsProvider(d) {
42
- return {
43
- async getRaw(name, _activationId) {
44
- const response = await d['credentials'].get({ id: name, organisationId: '' });
45
- if (!response.credential) {
46
- throw new Error(`Failed to get credential: ${name}`);
47
- }
48
- const rawData = create(credentialv1alpha1.CredentialDataRawSchema, response.credential.data);
49
- return rawData.raw;
50
- },
51
- async getAccessToken(name, forceRefresh, _activationId) {
52
- const response = await d['tokens'].getToken({ credentialId: name, forceRefresh: forceRefresh || false });
53
- if (!response.token) {
54
- throw new Error(`Failed to get token for credential: ${name}`);
55
- }
56
- return {
57
- accessToken: response.token.accessToken,
58
- tokenType: response.token.tokenType,
59
- expiry: response.token.expiry ? new Date(timestampMs(response.token.expiry)) : undefined,
60
- };
61
- },
62
- async getOAuth1Metadata(name, _activationId) {
63
- const response = await d['oauth1'].getAuthorizationMetadata({ credentialId: name });
64
- if (!response) {
65
- throw new Error(`Failed to get OAuth1 metadata for credential: ${name}`);
66
- }
67
- return response;
68
- },
69
- };
70
- }
71
39
  /**
72
40
  * MemoryInterpreter is the default interpreter for executing Versori workflows. It handles registration and execution
73
41
  * of workflows triggered by schedules and webhooks.
@@ -248,20 +216,19 @@ export class MemoryInterpreter {
248
216
  otelSDK.start();
249
217
  }
250
218
  const tracer = opentelemetry.trace.getTracer(serviceName, version);
251
- const cnxFactory = DirectConnectionFactory.fromEnv(log);
252
- const credentialsProvider = getCredentialsProvider(cnxFactory);
219
+ const connectionFactory = DirectConnectionFactory.fromEnv(log);
253
220
  const issuesProvider = new IssueImpl(log);
254
221
  if (options.contextProvider) {
255
222
  // no need to set up a key-value provider if options.contextProvider is already
256
223
  // initialised.
257
- return new MemoryInterpreter(log, compiler, options.contextProvider, express.Router(), express.Router(), new Map(), new Map(), cnxFactory, CronAPIClient.fromEnv(), tracer, issuesProvider, configReader, otelSDK);
224
+ return new MemoryInterpreter(log, compiler, options.contextProvider, express.Router(), express.Router(), new Map(), new Map(), connectionFactory, CronAPIClient.fromEnv(), tracer, issuesProvider, configReader, otelSDK);
258
225
  }
259
226
  const kvp = await getKVProvider();
260
227
  const platformApi = PlatformApiImpl.fromEnv();
261
228
  const organisationId = Deno.env.get(envVarOrgId) || 'development';
262
229
  const environmentId = Deno.env.get(envVarEnvId) || 'development';
263
- const ctxProvider = new ContextProviderImpl(log, kvp, credentialsProvider, platformApi, organisationId, environmentId, issuesProvider);
264
- return new MemoryInterpreter(log, compiler, ctxProvider, express.Router(), express.Router(), new Map(), new Map(), cnxFactory, CronAPIClient.fromEnv(), tracer, issuesProvider, configReader, otelSDK);
230
+ const ctxProvider = new ContextProviderImpl(log, kvp, new CredentialsProviderImpl(connectionFactory.credentials, connectionFactory.tokens, connectionFactory.oauth1, configReader, platformApi), platformApi, organisationId, environmentId, issuesProvider);
231
+ return new MemoryInterpreter(log, compiler, ctxProvider, express.Router(), express.Router(), new Map(), new Map(), connectionFactory, CronAPIClient.fromEnv(), tracer, issuesProvider, configReader, otelSDK);
265
232
  }
266
233
  register(workflow, options) {
267
234
  const localAbortController = new AbortController();
@@ -1 +1 @@
1
- {"version":3,"file":"catch.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/memory/compilers/catch.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAG5D,OAAO,EAA2B,YAAY,EAAE,MAAM,YAAY,CAAC;AAmFnE,eAAO,MAAM,aAAa,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAGrE,CAAC"}
1
+ {"version":3,"file":"catch.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/memory/compilers/catch.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAG5D,OAAO,EAA2B,YAAY,EAAE,MAAM,YAAY,CAAC;AAsFnE,eAAO,MAAM,aAAa,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAGrE,CAAC"}
@@ -19,6 +19,8 @@ function compileCatch(compilerCtx, task) {
19
19
  return (src) => src.pipe(mergeMap((ctx) => {
20
20
  return baseOperator(of(ctx)).pipe(catchError((error) => {
21
21
  return compilerCtx.tracer.startActiveSpan(`catch`, (span) => {
22
+ // TODO: do we even want this here? Can't be async in here I believe
23
+ // await sendTaskStartEvent(task.id, span);
22
24
  span.setAttribute('execution.id', ctx.executionId);
23
25
  span.setAttribute('task.type', 'catch');
24
26
  span.setAttribute('type', 'task');
@@ -1 +1 @@
1
- {"version":3,"file":"fn.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/memory/compilers/fn.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAGtD,OAAO,EAA2B,YAAY,EAAE,MAAM,YAAY,CAAC;AA2CnE,eAAO,MAAM,UAAU,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAG/D,CAAC"}
1
+ {"version":3,"file":"fn.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/memory/compilers/fn.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAGtD,OAAO,EAA2B,YAAY,EAAE,MAAM,YAAY,CAAC;AA6CnE,eAAO,MAAM,UAAU,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAG/D,CAAC"}
@@ -1,11 +1,12 @@
1
1
  import { mergeMap, tap } from 'rxjs';
2
2
  import { FnTask } from '../../../dsl/tasks/FnTask.js';
3
- import { enabled as supervisorEnabled } from '../../../internal/supervisor.js';
3
+ import { sendTaskStartEvent, enabled as supervisorEnabled } from '../../../internal/supervisor.js';
4
4
  function compileFn(compilerCtx, task) {
5
5
  return (src) => src.pipe(tap({
6
6
  complete: () => compilerCtx.log.debug('fn.complete'),
7
7
  }), mergeMap(async (ctx) => {
8
8
  return await compilerCtx.tracer.startActiveSpan(`fn-${task.id}`, async (span) => {
9
+ await sendTaskStartEvent(task.id, span);
9
10
  span.setAttribute('task.id', task.id);
10
11
  span.setAttribute('type', 'task');
11
12
  span.setAttribute('task.type', 'fn');
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/memory/compilers/http.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAmB,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAG/E,OAAO,EAA2B,YAAY,EAAE,MAAM,YAAY,CAAC;AAuHnE,eAAO,MAAM,YAAY,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAG5E,CAAC"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/memory/compilers/http.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAmB,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAG/E,OAAO,EAA2B,YAAY,EAAE,MAAM,YAAY,CAAC;AAyHnE,eAAO,MAAM,YAAY,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAG5E,CAAC"}
@@ -16,7 +16,7 @@ import { DynamicFetchFactory } from '../../../connection/DynamicFetchFactory.js'
16
16
  import { FetchBuilder } from '../../../connection/internal/FetchBuilder.js';
17
17
  import { StaticFetchFactory } from '../../../connection/StaticFetchFactory.js';
18
18
  import { HttpContextImpl, HttpTaskImpl } from '../../../dsl/tasks/HttpTask.js';
19
- import { enabled as supervisorEnabled } from '../../../internal/supervisor.js';
19
+ import { sendTaskStartEvent, enabled as supervisorEnabled } from '../../../internal/supervisor.js';
20
20
  function compileHttp(compilerCtx, task) {
21
21
  const cnxMap = compilerCtx.configReader.getCnxMapping(task.opts.connection);
22
22
  let fetchFactory;
@@ -73,6 +73,7 @@ function compileHttp(compilerCtx, task) {
73
73
  complete: () => compilerCtx.log.debug('http.complete'),
74
74
  }), mergeMap((ctx) => {
75
75
  return compilerCtx.tracer.startActiveSpan(`http-${task.id}`, async (span) => {
76
+ await sendTaskStartEvent(task.id, span);
76
77
  span.setAttribute('task.id', task.id);
77
78
  span.setAttribute('task.type', 'http');
78
79
  span.setAttribute('type', 'task');
@@ -1 +1 @@
1
- {"version":3,"file":"schedule.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/memory/compilers/schedule.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAQzF,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAyI7C,eAAO,MAAM,gBAAgB,EAAE,eAAe,CAAC,YAAY,EAAE,eAAe,CAG3E,CAAC"}
1
+ {"version":3,"file":"schedule.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/memory/compilers/schedule.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAQzF,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AA4I7C,eAAO,MAAM,gBAAgB,EAAE,eAAe,CAAC,YAAY,EAAE,eAAe,CAG3E,CAAC"}
@@ -13,6 +13,7 @@
13
13
  import { Observable } from 'rxjs';
14
14
  import { ScheduleTrigger } from '../../../dsl/triggers/ScheduleTrigger.js';
15
15
  import { envVarEnvId, envVarEnvironmentName, envVarOrgId, envVarProjectId, } from '../../../internal/constants.js';
16
+ import { sendTaskStartEvent } from '../../../internal/supervisor.js';
16
17
  function compileSchedule(ctx, trigger, signal) {
17
18
  return new Observable((subscriber) => {
18
19
  // Add HTTP endpoint for manual triggering
@@ -94,6 +95,7 @@ function compileSchedule(ctx, trigger, signal) {
94
95
  }
95
96
  ctx.cronRouter.post(`/cron/${trigger.id}`, async (req, res) => {
96
97
  await ctx.tracer.startActiveSpan(`schedule-${trigger.id}`, async (span) => {
98
+ await sendTaskStartEvent(trigger.id, span);
97
99
  span.setAttribute('task.id', trigger.id);
98
100
  span.setAttribute('task.type', 'schedule');
99
101
  span.setAttribute('type', 'task');
@@ -1 +1 @@
1
- {"version":3,"file":"webhook.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/memory/compilers/webhook.ts"],"names":[],"mappings":"AA2BA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAGtF,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAuD7C,eAAO,MAAM,eAAe,EAAE,eAAe,CAAC,WAAW,EAAE,cAAc,CA4TxE,CAAC"}
1
+ {"version":3,"file":"webhook.d.ts","sourceRoot":"","sources":["../../../../../src/src/interpreter/memory/compilers/webhook.ts"],"names":[],"mappings":"AA2BA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAGtF,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAwD7C,eAAO,MAAM,eAAe,EAAE,eAAe,CAAC,WAAW,EAAE,cAAc,CAkUxE,CAAC"}
@@ -18,6 +18,7 @@ import { Observable } from 'rxjs';
18
18
  import { createActIdDynamicWebhookMiddleware, createStaticWebhookMiddleware, createUserIdDynamicWebhookMiddleware, } from '../../../dsl/http/versori/webhookmiddleware.js';
19
19
  import { WebhookTrigger } from '../../../dsl/triggers/WebhookTrigger.js';
20
20
  import { envVarEnvId } from '../../../internal/constants.js';
21
+ import { sendTaskStartEvent } from '../../../internal/supervisor.js';
21
22
  const xml2jsDefaults = {
22
23
  explicitArray: false,
23
24
  normalize: false,
@@ -129,7 +130,8 @@ export const webhookCompiler = {
129
130
  cfgReader: ctx.configReader,
130
131
  log: ctx.log,
131
132
  }), async (req, res) => {
132
- await ctx.tracer.startActiveSpan(`webhook-${trigger.id}`, (span) => {
133
+ await ctx.tracer.startActiveSpan(`webhook-${trigger.id}`, async (span) => {
134
+ await sendTaskStartEvent(trigger.id, span);
133
135
  span.setAttribute('task.id', trigger.id);
134
136
  span.setAttribute('task.type', 'webhook');
135
137
  span.setAttribute('type', 'task');
@@ -169,7 +171,8 @@ export const webhookCompiler = {
169
171
  cfgReader: ctx.configReader,
170
172
  log: ctx.log,
171
173
  }), async (req, res) => {
172
- await ctx.tracer.startActiveSpan(`webhook-${trigger.id}`, (span) => {
174
+ await ctx.tracer.startActiveSpan(`webhook-${trigger.id}`, async (span) => {
175
+ await sendTaskStartEvent(trigger.id, span);
173
176
  span.setAttribute('task.id', trigger.id);
174
177
  span.setAttribute('task.type', 'webhook');
175
178
  span.setAttribute('type', 'task');
@@ -228,7 +231,8 @@ export const webhookCompiler = {
228
231
  cfgReader: ctx.configReader,
229
232
  log: ctx.log,
230
233
  }), async (req, res) => {
231
- await ctx.tracer.startActiveSpan(`webhook-${trigger.id}`, (span) => {
234
+ await ctx.tracer.startActiveSpan(`webhook-${trigger.id}`, async (span) => {
235
+ await sendTaskStartEvent(trigger.id, span);
232
236
  span.setAttribute('task.id', trigger.id);
233
237
  span.setAttribute('task.type', 'webhook');
234
238
  span.setAttribute('type', 'task');
@@ -1 +1 @@
1
- {"version":3,"file":"NatsKeyValueProvider.d.ts","sourceRoot":"","sources":["../../../../src/src/kv/nats/NatsKeyValueProvider.ts"],"names":[],"mappings":"AAeA,OAAO,EAA+B,UAAU,EAAE,MAAM,+DAA+D,CAAC;AACxH,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AA6CvF,MAAM,MAAM,2BAA2B,GAAG;IACtC,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE;QACF,GAAG,EAAE,MAAM,CAAC;QACZ,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,GAAG,CAAC,EAAE,UAAU,CAAC;KACpB,CAAC;CACL,CAAC;AAuBF,qBAAa,oBAAqB,YAAW,gBAAgB,EAAE,eAAe;IAEtE,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,IAAI;IALzB,OAAO;WAQM,WAAW,CACpB,IAAI,GAAE,OAAO,CAAC,2BAA2B,CAAM,GAChD,OAAO,CAAC,oBAAoB,CAAC;IA0BhC,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAI/C,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC;IAI1C,EAAE,CAAC,OAAO,EAAE,SAAS,GAAG,QAAQ;IAqB1B,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA6CrD,OAAO,CAAC,aAAa;CAYxB"}
1
+ {"version":3,"file":"NatsKeyValueProvider.d.ts","sourceRoot":"","sources":["../../../../src/src/kv/nats/NatsKeyValueProvider.ts"],"names":[],"mappings":"AAeA,OAAO,EAA+B,UAAU,EAAE,MAAM,+DAA+D,CAAC;AAExH,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AA4CvF,MAAM,MAAM,2BAA2B,GAAG;IACtC,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE;QACF,GAAG,EAAE,MAAM,CAAC;QACZ,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,GAAG,CAAC,EAAE,UAAU,CAAC;KACpB,CAAC;CACL,CAAC;AAuBF,qBAAa,oBAAqB,YAAW,gBAAgB,EAAE,eAAe;IAEtE,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,IAAI;IALzB,OAAO;WAQM,WAAW,CACpB,IAAI,GAAE,OAAO,CAAC,2BAA2B,CAAM,GAChD,OAAO,CAAC,oBAAoB,CAAC;IA0BhC,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAI/C,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC;IAI1C,EAAE,CAAC,OAAO,EAAE,SAAS,GAAG,QAAQ;IAqB1B,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA6CrD,OAAO,CAAC,aAAa;CAYxB"}
@@ -13,8 +13,8 @@
13
13
  import { JetStreamApiCodes, JetStreamApiError } from '../../../deps/jsr.io/@nats-io/jetstream/3.2.0/src/mod.js';
14
14
  import { Kvm } from '../../../deps/jsr.io/@nats-io/kv/3.2.0/src/mod.js';
15
15
  import { connect, credsAuthenticator } from '../../../deps/jsr.io/@nats-io/transport-deno/3.2.0/src/mod.js';
16
- import { NatsKeyValue } from './NatsKeyValue.js';
17
16
  import { isKVOptionsExecution } from '../isKVOptionsExecution.js';
17
+ import { NatsKeyValue } from './NatsKeyValue.js';
18
18
  function getOptionsFromEnv() {
19
19
  const natsTlsCaFile = Deno.env.get('RUN_NATS_TLS_CA_FILE');
20
20
  return {
@@ -172,7 +172,7 @@ export class NatsKeyValueProvider {
172
172
  const activationSuffix = options.activationId ? `.${options.activationId}` : '';
173
173
  switch (options.scope) {
174
174
  case ':organization:':
175
- return `${this.opts.organizationId}${activationSuffix}`;
175
+ return `${this.opts.organizationId}`;
176
176
  case ':project:':
177
177
  return `${this.opts.organizationId}.${this.opts.projectId}.${this.opts.environment}${activationSuffix}`;
178
178
  case ':execution:':
@@ -1 +1 @@
1
- {"version":3,"file":"SDKKeyValueProvider.d.ts","sourceRoot":"","sources":["../../../../src/src/kv/sdk/SDKKeyValueProvider.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAmCvF,MAAM,MAAM,0BAA0B,GAAG;IACrC,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CACpB,CAAC;AA6BF,qBAAa,mBAAoB,YAAW,gBAAgB,EAAE,eAAe;IAErE,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,IAAI;IAJzB,OAAO;WAOM,WAAW,CACpB,IAAI,GAAE,OAAO,CAAC,0BAA0B,CAAM,GAC/C,OAAO,CAAC,mBAAmB,CAAC;IAY/B,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAI9C,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC;IAI1C,EAAE,CAAC,OAAO,EAAE,SAAS,GAAG,QAAQ;IAqB1B,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA6CrD,OAAO,CAAC,aAAa;CAYxB"}
1
+ {"version":3,"file":"SDKKeyValueProvider.d.ts","sourceRoot":"","sources":["../../../../src/src/kv/sdk/SDKKeyValueProvider.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAkCvF,MAAM,MAAM,0BAA0B,GAAG;IACrC,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CACpB,CAAC;AA6BF,qBAAa,mBAAoB,YAAW,gBAAgB,EAAE,eAAe;IAErE,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,IAAI;IAJzB,OAAO;WAOM,WAAW,CACpB,IAAI,GAAE,OAAO,CAAC,0BAA0B,CAAM,GAC/C,OAAO,CAAC,mBAAmB,CAAC;IAY/B,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAI9C,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC;IAI1C,EAAE,CAAC,OAAO,EAAE,SAAS,GAAG,QAAQ;IAqB1B,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA6CrD,OAAO,CAAC,aAAa;CAYxB"}
@@ -10,10 +10,10 @@
10
10
  * As of the Change Date, in accordance with the Business Source License,
11
11
  * use of this software will be governed by the Apache License, Version 2.0.
12
12
  */
13
- import { StoresService } from '../../dsl/http/versori/kvapi/services/StoresService.js';
14
13
  import { KvOperationsService } from '../../dsl/http/versori/kvapi/services/KvOperationsService.js';
15
- import { SDKKeyValue } from './SDKKeyValue.js';
14
+ import { StoresService } from '../../dsl/http/versori/kvapi/services/StoresService.js';
16
15
  import { isKVOptionsExecution } from '../isKVOptionsExecution.js';
16
+ import { SDKKeyValue } from './SDKKeyValue.js';
17
17
  function getOptionsFromEnv() {
18
18
  return {
19
19
  organizationId: Deno.env.get('RUN_ORGANISATION_ID'),
@@ -145,7 +145,7 @@ export class SDKKeyValueProvider {
145
145
  const activationSuffix = options.activationId ? `/${options.activationId}` : '';
146
146
  switch (options.scope) {
147
147
  case ':organization:':
148
- return `${this.opts.organizationId}${activationSuffix}`;
148
+ return `${this.opts.organizationId}`;
149
149
  case ':project:':
150
150
  return `${this.opts.organizationId}/${this.opts.projectId}/${this.opts.environment}${activationSuffix}`;
151
151
  case ':execution:':
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@versori/run",
3
- "version": "0.5.0-alpha.1",
3
+ "version": "0.5.0-alpha.2",
4
4
  "description": "Versori Run",
5
5
  "homepage": "https://github.com/versori/versori-run#readme",
6
6
  "repository": {