@versori/run 0.5.10 → 0.6.0-alpha.1

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 (161) hide show
  1. package/esm/src/connection/internal/CredentialHolder.js +1 -1
  2. package/esm/src/connection/internal/FetchBuilder.d.ts +9 -2
  3. package/esm/src/connection/internal/FetchBuilder.d.ts.map +1 -1
  4. package/esm/src/connection/internal/FetchBuilder.js +124 -3
  5. package/esm/src/context/Context.d.ts +5 -0
  6. package/esm/src/context/Context.d.ts.map +1 -1
  7. package/esm/src/context/Context.js +6 -1
  8. package/esm/src/context/VanillaContext.d.ts.map +1 -1
  9. package/esm/src/context/VanillaContext.js +0 -1
  10. package/esm/src/dsl/Workflow.d.ts.map +1 -1
  11. package/esm/src/dsl/Workflow.js +2 -0
  12. package/esm/src/dsl/http/types.d.ts +2 -0
  13. package/esm/src/dsl/http/types.d.ts.map +1 -1
  14. package/esm/src/dsl/http/versori/configloader.d.ts.map +1 -1
  15. package/esm/src/dsl/http/versori/configloader.js +1 -1
  16. package/esm/src/dsl/http/versori/cronapi.d.ts +2 -3
  17. package/esm/src/dsl/http/versori/cronapi.d.ts.map +1 -1
  18. package/esm/src/dsl/http/versori/cronapi.js +14 -15
  19. package/esm/src/dsl/http/versori/kvapi/core/OpenAPI.js +1 -1
  20. package/esm/src/dsl/triggers/WebhookTrigger.d.ts.map +1 -1
  21. package/esm/src/dsl/triggers/WebhookTrigger.js +3 -1
  22. package/esm/src/internal/constants.d.ts +3 -0
  23. package/esm/src/internal/constants.d.ts.map +1 -1
  24. package/esm/src/internal/constants.js +3 -0
  25. package/esm/src/internal/supervisor.d.ts +23 -0
  26. package/esm/src/internal/supervisor.d.ts.map +1 -0
  27. package/esm/src/internal/supervisor.js +267 -0
  28. package/esm/src/interpreter/durable/DurableInterpreter.d.ts +9 -2
  29. package/esm/src/interpreter/durable/DurableInterpreter.d.ts.map +1 -1
  30. package/esm/src/interpreter/durable/DurableInterpreter.js +57 -13
  31. package/esm/src/interpreter/durable/ObservableCompiler.d.ts +6 -1
  32. package/esm/src/interpreter/durable/ObservableCompiler.d.ts.map +1 -1
  33. package/esm/src/interpreter/durable/Queue.js +1 -1
  34. package/esm/src/interpreter/durable/compilers/catch.d.ts.map +1 -1
  35. package/esm/src/interpreter/durable/compilers/catch.js +3 -1
  36. package/esm/src/interpreter/durable/compilers/fn.d.ts.map +1 -1
  37. package/esm/src/interpreter/durable/compilers/fn.js +29 -6
  38. package/esm/src/interpreter/durable/compilers/http.d.ts.map +1 -1
  39. package/esm/src/interpreter/durable/compilers/http.js +45 -11
  40. package/esm/src/interpreter/durable/compilers/schedule.d.ts.map +1 -1
  41. package/esm/src/interpreter/durable/compilers/schedule.js +4 -3
  42. package/esm/src/interpreter/durable/compilers/webhook.d.ts.map +1 -1
  43. package/esm/src/interpreter/durable/compilers/webhook.js +2 -0
  44. package/esm/src/interpreter/memory/MemoryInterpreter.d.ts +8 -1
  45. package/esm/src/interpreter/memory/MemoryInterpreter.d.ts.map +1 -1
  46. package/esm/src/interpreter/memory/MemoryInterpreter.js +56 -12
  47. package/esm/src/interpreter/memory/ObservableCompiler.d.ts +6 -1
  48. package/esm/src/interpreter/memory/ObservableCompiler.d.ts.map +1 -1
  49. package/esm/src/interpreter/memory/compilers/catch.d.ts.map +1 -1
  50. package/esm/src/interpreter/memory/compilers/catch.js +5 -0
  51. package/esm/src/interpreter/memory/compilers/fn.d.ts.map +1 -1
  52. package/esm/src/interpreter/memory/compilers/fn.js +29 -18
  53. package/esm/src/interpreter/memory/compilers/http.d.ts.map +1 -1
  54. package/esm/src/interpreter/memory/compilers/http.js +44 -10
  55. package/esm/src/interpreter/memory/compilers/schedule.d.ts.map +1 -1
  56. package/esm/src/interpreter/memory/compilers/schedule.js +61 -4
  57. package/esm/src/interpreter/memory/compilers/webhook.d.ts.map +1 -1
  58. package/esm/src/interpreter/memory/compilers/webhook.js +9 -3
  59. package/esm/src/interpreter/vanilla/VanillaInterpreter.d.ts +1 -0
  60. package/esm/src/interpreter/vanilla/VanillaInterpreter.d.ts.map +1 -1
  61. package/esm/src/interpreter/vanilla/VanillaInterpreter.js +30 -6
  62. package/esm/src/interpreter/vanilla/compilers/schedule.js +1 -1
  63. package/esm/src/issues/Issues.d.ts.map +1 -1
  64. package/esm/src/issues/Issues.js +6 -1
  65. package/esm/src/kv/KeyValue.d.ts +3 -7
  66. package/esm/src/kv/KeyValue.d.ts.map +1 -1
  67. package/esm/src/kv/memory/MemoryKeyValueProvider.d.ts +0 -4
  68. package/esm/src/kv/memory/MemoryKeyValueProvider.d.ts.map +1 -1
  69. package/esm/src/kv/memory/MemoryKeyValueProvider.js +0 -50
  70. package/esm/src/kv/nats/NatsKeyValueProvider.d.ts.map +1 -1
  71. package/esm/src/kv/nats/NatsKeyValueProvider.js +0 -14
  72. package/esm/src/kv/sdk/SDKKeyValueProvider.d.ts.map +1 -1
  73. package/esm/src/kv/sdk/SDKKeyValueProvider.js +0 -12
  74. package/esm/src/observability/logging/ConsoleLogger.d.ts.map +1 -1
  75. package/package.json +3 -1
  76. package/script/src/connection/internal/CredentialHolder.js +1 -1
  77. package/script/src/connection/internal/FetchBuilder.d.ts +9 -2
  78. package/script/src/connection/internal/FetchBuilder.d.ts.map +1 -1
  79. package/script/src/connection/internal/FetchBuilder.js +147 -3
  80. package/script/src/context/Context.d.ts +5 -0
  81. package/script/src/context/Context.d.ts.map +1 -1
  82. package/script/src/context/Context.js +6 -1
  83. package/script/src/context/VanillaContext.d.ts.map +1 -1
  84. package/script/src/context/VanillaContext.js +0 -1
  85. package/script/src/dsl/Workflow.d.ts.map +1 -1
  86. package/script/src/dsl/Workflow.js +2 -0
  87. package/script/src/dsl/http/types.d.ts +2 -0
  88. package/script/src/dsl/http/types.d.ts.map +1 -1
  89. package/script/src/dsl/http/versori/configloader.d.ts.map +1 -1
  90. package/script/src/dsl/http/versori/configloader.js +1 -1
  91. package/script/src/dsl/http/versori/cronapi.d.ts +2 -3
  92. package/script/src/dsl/http/versori/cronapi.d.ts.map +1 -1
  93. package/script/src/dsl/http/versori/cronapi.js +14 -15
  94. package/script/src/dsl/http/versori/kvapi/core/OpenAPI.js +1 -1
  95. package/script/src/dsl/triggers/WebhookTrigger.d.ts.map +1 -1
  96. package/script/src/dsl/triggers/WebhookTrigger.js +3 -1
  97. package/script/src/internal/constants.d.ts +3 -0
  98. package/script/src/internal/constants.d.ts.map +1 -1
  99. package/script/src/internal/constants.js +4 -1
  100. package/script/src/internal/supervisor.d.ts +23 -0
  101. package/script/src/internal/supervisor.d.ts.map +1 -0
  102. package/script/src/internal/supervisor.js +275 -0
  103. package/script/src/interpreter/durable/DurableInterpreter.d.ts +9 -2
  104. package/script/src/interpreter/durable/DurableInterpreter.d.ts.map +1 -1
  105. package/script/src/interpreter/durable/DurableInterpreter.js +62 -18
  106. package/script/src/interpreter/durable/ObservableCompiler.d.ts +6 -1
  107. package/script/src/interpreter/durable/ObservableCompiler.d.ts.map +1 -1
  108. package/script/src/interpreter/durable/Queue.js +1 -1
  109. package/script/src/interpreter/durable/compilers/catch.d.ts.map +1 -1
  110. package/script/src/interpreter/durable/compilers/catch.js +3 -1
  111. package/script/src/interpreter/durable/compilers/fn.d.ts.map +1 -1
  112. package/script/src/interpreter/durable/compilers/fn.js +28 -5
  113. package/script/src/interpreter/durable/compilers/http.d.ts.map +1 -1
  114. package/script/src/interpreter/durable/compilers/http.js +45 -11
  115. package/script/src/interpreter/durable/compilers/schedule.d.ts.map +1 -1
  116. package/script/src/interpreter/durable/compilers/schedule.js +4 -3
  117. package/script/src/interpreter/durable/compilers/webhook.d.ts.map +1 -1
  118. package/script/src/interpreter/durable/compilers/webhook.js +2 -0
  119. package/script/src/interpreter/memory/MemoryInterpreter.d.ts +8 -1
  120. package/script/src/interpreter/memory/MemoryInterpreter.d.ts.map +1 -1
  121. package/script/src/interpreter/memory/MemoryInterpreter.js +55 -11
  122. package/script/src/interpreter/memory/ObservableCompiler.d.ts +6 -1
  123. package/script/src/interpreter/memory/ObservableCompiler.d.ts.map +1 -1
  124. package/script/src/interpreter/memory/compilers/catch.d.ts.map +1 -1
  125. package/script/src/interpreter/memory/compilers/catch.js +5 -0
  126. package/script/src/interpreter/memory/compilers/fn.d.ts.map +1 -1
  127. package/script/src/interpreter/memory/compilers/fn.js +28 -17
  128. package/script/src/interpreter/memory/compilers/http.d.ts.map +1 -1
  129. package/script/src/interpreter/memory/compilers/http.js +44 -10
  130. package/script/src/interpreter/memory/compilers/schedule.d.ts.map +1 -1
  131. package/script/src/interpreter/memory/compilers/schedule.js +61 -4
  132. package/script/src/interpreter/memory/compilers/webhook.d.ts.map +1 -1
  133. package/script/src/interpreter/memory/compilers/webhook.js +9 -3
  134. package/script/src/interpreter/vanilla/VanillaInterpreter.d.ts +1 -0
  135. package/script/src/interpreter/vanilla/VanillaInterpreter.d.ts.map +1 -1
  136. package/script/src/interpreter/vanilla/VanillaInterpreter.js +30 -6
  137. package/script/src/interpreter/vanilla/compilers/schedule.js +1 -1
  138. package/script/src/issues/Issues.d.ts.map +1 -1
  139. package/script/src/issues/Issues.js +6 -1
  140. package/script/src/kv/KeyValue.d.ts +3 -7
  141. package/script/src/kv/KeyValue.d.ts.map +1 -1
  142. package/script/src/kv/memory/MemoryKeyValueProvider.d.ts +0 -4
  143. package/script/src/kv/memory/MemoryKeyValueProvider.d.ts.map +1 -1
  144. package/script/src/kv/memory/MemoryKeyValueProvider.js +0 -50
  145. package/script/src/kv/nats/NatsKeyValueProvider.d.ts.map +1 -1
  146. package/script/src/kv/nats/NatsKeyValueProvider.js +0 -14
  147. package/script/src/kv/sdk/SDKKeyValueProvider.d.ts.map +1 -1
  148. package/script/src/kv/sdk/SDKKeyValueProvider.js +0 -12
  149. package/script/src/observability/logging/ConsoleLogger.d.ts.map +1 -1
  150. package/esm/src/dsl/http/versori/constants.d.ts +0 -21
  151. package/esm/src/dsl/http/versori/constants.d.ts.map +0 -1
  152. package/esm/src/dsl/http/versori/constants.js +0 -38
  153. package/esm/src/kv/fingerprintExternalUserId.d.ts +0 -6
  154. package/esm/src/kv/fingerprintExternalUserId.d.ts.map +0 -1
  155. package/esm/src/kv/fingerprintExternalUserId.js +0 -20
  156. package/script/src/dsl/http/versori/constants.d.ts +0 -21
  157. package/script/src/dsl/http/versori/constants.d.ts.map +0 -1
  158. package/script/src/dsl/http/versori/constants.js +0 -41
  159. package/script/src/kv/fingerprintExternalUserId.d.ts +0 -6
  160. package/script/src/kv/fingerprintExternalUserId.d.ts.map +0 -1
  161. package/script/src/kv/fingerprintExternalUserId.js +0 -23
@@ -11,8 +11,9 @@
11
11
  * use of this software will be governed by the Apache License, Version 2.0.
12
12
  */
13
13
  import { Observable } from 'rxjs';
14
- import { envVarEnvId, envVarEnvironmentName, envVarOrgId, envVarProjectId, } from '../../../dsl/http/versori/constants.js';
15
14
  import { ScheduleTrigger } from '../../../dsl/triggers/ScheduleTrigger.js';
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
@@ -25,8 +26,43 @@ function compileSchedule(ctx, trigger, signal) {
25
26
  const orgId = Deno.env.get(envVarOrgId) || 'example-org';
26
27
  const client = ctx.platformApi;
27
28
  ctx.cronRegistry.set(trigger.id, trigger.schedule);
28
- async function handleSchedule(_req, res, span) {
29
+ async function handleSchedule(req, res, span) {
29
30
  try {
31
+ // run for a single activation
32
+ const activationId = req.params.activationId;
33
+ if (activationId) {
34
+ const { data: activation } = await client.getActivation({
35
+ path: {
36
+ organisation_id: ctx.organisationId,
37
+ environment_id: environmentId,
38
+ activation_id: activationId,
39
+ },
40
+ throwOnError: false,
41
+ });
42
+ if (!activation) {
43
+ res.status(412).json({
44
+ status: 'error',
45
+ message: `No activation found for ID: ${activationId}`,
46
+ });
47
+ return;
48
+ }
49
+ const executionCtx = ctx.contextProvider.create(activation, {}, { workflowId: trigger.id });
50
+ span.setAttribute('execution.id', executionCtx.executionId);
51
+ await sendTaskStartEvent(trigger.id, executionCtx, span);
52
+ try {
53
+ ctx.log.info(`Running schedule ${trigger.id} for activation ${activationId}`);
54
+ subscriber.next(executionCtx);
55
+ }
56
+ catch (error) {
57
+ executionCtx.log.error('execution error inside schedule', { error });
58
+ }
59
+ res.status(200).json({
60
+ status: 'triggered',
61
+ executionId: executionCtx.executionId,
62
+ });
63
+ return;
64
+ }
65
+ // run for static activation only
30
66
  if (trigger.activationPredicate === undefined) {
31
67
  const { data: activation } = await client.listActivations({
32
68
  path: {
@@ -45,8 +81,9 @@ function compileSchedule(ctx, trigger, signal) {
45
81
  });
46
82
  return;
47
83
  }
48
- const executionCtx = ctx.contextProvider.create(activation[0], {});
84
+ const executionCtx = ctx.contextProvider.create(activation[0], {}, { workflowId: trigger.id });
49
85
  span.setAttribute('execution.id', executionCtx.executionId);
86
+ await sendTaskStartEvent(trigger.id, executionCtx, span);
50
87
  try {
51
88
  subscriber.next(executionCtx);
52
89
  }
@@ -59,6 +96,7 @@ function compileSchedule(ctx, trigger, signal) {
59
96
  });
60
97
  return;
61
98
  }
99
+ // run for all activations
62
100
  const { data: activations } = await client.listActivations({
63
101
  path: {
64
102
  organisation_id: ctx.organisationId,
@@ -77,8 +115,9 @@ function compileSchedule(ctx, trigger, signal) {
77
115
  return;
78
116
  }
79
117
  activations.forEach((activation) => {
80
- const executionCtx = ctx.contextProvider.create(activation, {});
118
+ const executionCtx = ctx.contextProvider.create(activation, {}, { workflowId: trigger.id });
81
119
  try {
120
+ ctx.log.info(`Running schedule ${trigger.id} for activation ${activation.id}`);
82
121
  subscriber.next(executionCtx);
83
122
  }
84
123
  catch (error) {
@@ -96,11 +135,29 @@ function compileSchedule(ctx, trigger, signal) {
96
135
  await ctx.tracer.startActiveSpan(`schedule-${trigger.id}`, async (span) => {
97
136
  span.setAttribute('task.id', trigger.id);
98
137
  span.setAttribute('task.type', 'schedule');
138
+ span.setAttribute('type', 'task');
139
+ span.setAttribute('schedule', trigger.schedule);
140
+ span.setAttribute('project.id', projectId);
141
+ span.setAttribute('environment.id', environmentId);
142
+ span.setAttribute('environment.name', environmentName);
143
+ span.setAttribute('org.id', orgId);
144
+ span.setAttribute('workflow.id', trigger.id);
145
+ await handleSchedule(req, res, span);
146
+ span.end();
147
+ });
148
+ });
149
+ ctx.cronRouter.post(`/cron/${trigger.id}/activations/:activationId`, async (req, res) => {
150
+ await ctx.tracer.startActiveSpan(`schedule-${trigger.id}`, async (span) => {
151
+ span.setAttribute('task.id', trigger.id);
152
+ span.setAttribute('activation.id', req.params.activationId);
153
+ span.setAttribute('task.type', 'schedule');
154
+ span.setAttribute('type', 'task');
99
155
  span.setAttribute('schedule', trigger.schedule);
100
156
  span.setAttribute('project.id', projectId);
101
157
  span.setAttribute('environment.id', environmentId);
102
158
  span.setAttribute('environment.name', environmentName);
103
159
  span.setAttribute('org.id', orgId);
160
+ span.setAttribute('workflow.id', trigger.id);
104
161
  await handleSchedule(req, res, span);
105
162
  span.end();
106
163
  });
@@ -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,CA0SxE,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;AAItF,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAuD7C,eAAO,MAAM,eAAe,EAAE,eAAe,CAAC,WAAW,EAAE,cAAc,CAmTxE,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,
@@ -84,6 +85,7 @@ export const webhookCompiler = {
84
85
  onError = trigger.options.response.onError;
85
86
  }
86
87
  const ctxOptionsFn = (req, res) => ({
88
+ workflowId: trigger.id,
87
89
  onSuccess: (ctx) => {
88
90
  if (isSync) {
89
91
  sendResponse(res, onSuccess(ctx));
@@ -104,6 +106,7 @@ export const webhookCompiler = {
104
106
  else {
105
107
  routeMiddleware.push(express.raw({ type: '*/*', limit: '50mb' }));
106
108
  }
109
+ ctx.webhookRegistry.set(trigger.id, { method, path: `/${trigger.id}`, options: trigger.options });
107
110
  return new Observable((subscriber) => {
108
111
  if (!ctx.webhookRouter) {
109
112
  throw new Error('Router not available in compiler context');
@@ -129,12 +132,13 @@ export const webhookCompiler = {
129
132
  cfgReader: ctx.configReader,
130
133
  log: ctx.log,
131
134
  }), async (req, res) => {
132
- await ctx.tracer.startActiveSpan(`webhook-${trigger.id}`, (span) => {
135
+ await ctx.tracer.startActiveSpan(`webhook-${trigger.id}`, async (span) => {
133
136
  span.setAttribute('task.id', trigger.id);
134
137
  span.setAttribute('task.type', 'webhook');
135
138
  const staticActivation = res.locals.activation;
136
139
  const executionCtx = ctx.contextProvider.create(staticActivation, req.body, ctxOptionsFn(req, res));
137
140
  span.setAttribute('execution.id', executionCtx.executionId);
141
+ await sendTaskStartEvent(trigger.id, executionCtx, span);
138
142
  try {
139
143
  subscriber.next(executionCtx);
140
144
  if (isAsync) {
@@ -165,7 +169,7 @@ export const webhookCompiler = {
165
169
  cfgReader: ctx.configReader,
166
170
  log: ctx.log,
167
171
  }), async (req, res) => {
168
- await ctx.tracer.startActiveSpan(`webhook-${trigger.id}`, (span) => {
172
+ await ctx.tracer.startActiveSpan(`webhook-${trigger.id}`, async (span) => {
169
173
  span.setAttribute('task.id', trigger.id);
170
174
  span.setAttribute('task.type', 'webhook');
171
175
  span.setAttribute('user.id', req.params.userId);
@@ -186,6 +190,7 @@ export const webhookCompiler = {
186
190
  }
187
191
  const executionCtx = ctx.contextProvider.create(activation, req.body, ctxOptionsFn(req, res));
188
192
  span.setAttribute('execution.id', executionCtx.executionId);
193
+ await sendTaskStartEvent(trigger.id, executionCtx, span);
189
194
  const errors = [];
190
195
  try {
191
196
  subscriber.next(executionCtx);
@@ -221,7 +226,7 @@ export const webhookCompiler = {
221
226
  cfgReader: ctx.configReader,
222
227
  log: ctx.log,
223
228
  }), async (req, res) => {
224
- await ctx.tracer.startActiveSpan(`webhook-${trigger.id}`, (span) => {
229
+ await ctx.tracer.startActiveSpan(`webhook-${trigger.id}`, async (span) => {
225
230
  span.setAttribute('task.id', trigger.id);
226
231
  span.setAttribute('task.type', 'webhook');
227
232
  span.setAttribute('activation.id', req.params.activationId);
@@ -240,6 +245,7 @@ export const webhookCompiler = {
240
245
  }
241
246
  const activationCtx = ctx.contextProvider.create(activation, req.body, ctxOptionsFn(req, res));
242
247
  span.setAttribute('execution.id', activationCtx.executionId);
248
+ await sendTaskStartEvent(trigger.id, activationCtx, span);
243
249
  try {
244
250
  subscriber.next(activationCtx);
245
251
  if (isAsync) {
@@ -86,6 +86,7 @@ export declare class VanillaInterpreter {
86
86
  private cronServer?;
87
87
  private shutdownServer?;
88
88
  private isShuttingDown;
89
+ private wfRegistration;
89
90
  constructor(log: Logger, compiler: ObservableCompiler, contextProvider: ContextProvider, webhookRouter: Router, cronRouter: Router, cronRegistry: Map<string, string>, cnxFetchFactory: DefaultConnectionFactory, cronProvider: CronProvider, tracer: Tracer, cfgReader: ConfigReader, queueProvider: QueueAPI, otelSDK?: NodeSDK | undefined);
90
91
  static newInstance(options?: VanillaInterpreterOptions): Promise<VanillaInterpreter>;
91
92
  register<O>(workflow: Workflow<O>, options?: VanillaInterpreterOptions): Registration;
@@ -1 +1 @@
1
- {"version":3,"file":"VanillaInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/vanilla/VanillaInterpreter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VanillaInterpreter.d.ts","sourceRoot":"","sources":["../../../../src/src/interpreter/vanilla/VanillaInterpreter.ts"],"names":[],"mappings":"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"}
@@ -19,7 +19,8 @@ import { catchError, EMPTY, mergeMap, of, tap } from 'rxjs';
19
19
  import { DefaultConnectionFactory } from '../../connection/VanillaConnectionFactory.js';
20
20
  import { VanillaContextProvider } from '../../context/VanillaContext.js';
21
21
  import { VersoriConfigReader } from '../../dsl/http/versori/configloader.js';
22
- import { envVarEnvId, envVarEnvironmentName, envVarLocalRun, envVarOrgId, envVarOrgSlug, envVarOtelTracesURL, envVarProjectId, envVarVersion, } from '../../dsl/http/versori/constants.js';
22
+ import { envVarEnvId, envVarEnvironmentName, envVarOrgId, envVarOrgSlug, envVarOtelTracesURL, envVarProjectId, envVarVersion, } from '../../internal/constants.js';
23
+ import { Fake, registerWorkflow, signalReady, enabled as supervisorEnabled } from '../../internal/supervisor.js';
23
24
  import { CronAPIClient } from '../../dsl/http/versori/cronapi.js';
24
25
  import { WorkflowImpl } from '../../dsl/Workflow.js';
25
26
  import { IssueImpl } from '../../issues/Issues.js';
@@ -28,8 +29,8 @@ import { SDKKeyValueProvider } from '../../kv/sdk/SDKKeyValueProvider.js';
28
29
  import { ConsoleLogger } from '../../observability/logging/ConsoleLogger.js';
29
30
  import { QueueImpl } from '../durable/Queue.js';
30
31
  import { ObservableCompiler } from './ObservableCompiler.js';
31
- function getKVProvider(runLocal) {
32
- if (runLocal) {
32
+ function getKVProvider() {
33
+ if (supervisorEnabled) {
33
34
  return Promise.resolve(new MemoryKeyValueProvider());
34
35
  }
35
36
  return SDKKeyValueProvider.fromEnv();
@@ -161,6 +162,13 @@ export class VanillaInterpreter {
161
162
  writable: true,
162
163
  value: false
163
164
  });
165
+ // Workflow registration promises only used when supervisor is enabled
166
+ Object.defineProperty(this, "wfRegistration", {
167
+ enumerable: true,
168
+ configurable: true,
169
+ writable: true,
170
+ value: []
171
+ });
164
172
  if (typeof this.log === 'undefined') {
165
173
  throw new Error('VanillaInterpreter should not be instantiated directly. Use VanillaInterpreter.newInstance() instead.');
166
174
  }
@@ -177,7 +185,6 @@ export class VanillaInterpreter {
177
185
  const otelTracesURL = Deno.env.get(envVarOtelTracesURL);
178
186
  let otelSDK;
179
187
  const configReader = VersoriConfigReader.fromEnv(log);
180
- const runLocal = Deno.env.get(envVarLocalRun) === 'true';
181
188
  await waitForReady(log);
182
189
  // Do NOT change these attributes, they are used by the API to filter on
183
190
  const resource = resourceFromAttributes({
@@ -199,6 +206,15 @@ export class VanillaInterpreter {
199
206
  log.info('Starting OpenTelemetry SDK');
200
207
  otelSDK.start();
201
208
  }
209
+ else if (supervisorEnabled) {
210
+ otelSDK = new NodeSDK({
211
+ traceExporter: new Fake(),
212
+ serviceName: serviceName,
213
+ resource: resource,
214
+ });
215
+ log.info('Starting Testing OpenTelemetry SDK');
216
+ otelSDK.start();
217
+ }
202
218
  const tracer = opentelemetry.trace.getTracer(serviceName, version);
203
219
  const queueProvider = await QueueImpl.fromEnv(log);
204
220
  const connectionFactory = new DefaultConnectionFactory();
@@ -206,7 +222,7 @@ export class VanillaInterpreter {
206
222
  if (options.contextProvider) {
207
223
  return new VanillaInterpreter(log, compiler, options.contextProvider, express.Router(), express.Router(), new Map(), connectionFactory, CronAPIClient.fromEnv(), tracer, configReader, queueProvider, otelSDK);
208
224
  }
209
- const kvp = await getKVProvider(runLocal);
225
+ const kvp = await getKVProvider();
210
226
  const organisationId = Deno.env.get(envVarOrgId) || 'development';
211
227
  const environmentId = Deno.env.get(envVarEnvId) || 'development';
212
228
  const ctxProvider = new VanillaContextProvider(log, kvp, organisationId, environmentId, issuesProvider, queueProvider);
@@ -249,9 +265,12 @@ export class VanillaInterpreter {
249
265
  },
250
266
  };
251
267
  this.registeredWorkflows.push(registration);
268
+ if (supervisorEnabled) {
269
+ this.wfRegistration.push(registerWorkflow(workflow));
270
+ }
252
271
  return registration;
253
272
  }
254
- start() {
273
+ async start() {
255
274
  const port = Deno.env.get('PORT') || 3000;
256
275
  const cronPort = Deno.env.get('CRON_PORT') || 3001;
257
276
  const webhookApp = express();
@@ -360,6 +379,7 @@ export class VanillaInterpreter {
360
379
  if (this.cronServer) {
361
380
  this.cronServer.close();
362
381
  }
382
+ this.otelSDK?.shutdown();
363
383
  for (const registration of this.registeredWorkflows) {
364
384
  Deno.removeSignalListener('SIGINT', registration.sigintListener);
365
385
  if (registration.subscription) {
@@ -372,6 +392,10 @@ export class VanillaInterpreter {
372
392
  }
373
393
  };
374
394
  Deno.addSignalListener('SIGINT', this.shutdownServer);
395
+ if (supervisorEnabled) {
396
+ await Promise.all(this.wfRegistration);
397
+ await signalReady();
398
+ }
375
399
  return new Promise((resolve) => {
376
400
  let serversClosed = 0;
377
401
  const totalServers = [this.webhookServer, this.cronServer].filter(Boolean).length;
@@ -11,7 +11,7 @@
11
11
  * use of this software will be governed by the Apache License, Version 2.0.
12
12
  */
13
13
  import { Observable } from 'rxjs';
14
- import { envVarEnvId, envVarEnvironmentName, envVarOrgId, envVarProjectId, } from '../../../dsl/http/versori/constants.js';
14
+ import { envVarEnvId, envVarEnvironmentName, envVarOrgId, envVarProjectId, } from '../../../internal/constants.js';
15
15
  import { ScheduleTrigger } from '../../../dsl/triggers/ScheduleTrigger.js';
16
16
  import { VanillaActivation } from '../ObservableCompiler.js';
17
17
  function compileSchedule(ctx, trigger, signal) {
@@ -1 +1 @@
1
- {"version":3,"file":"Issues.d.ts","sourceRoot":"","sources":["../../../src/src/issues/Issues.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAWjD,MAAM,MAAM,WAAW,GAAG;IACtB,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC3B,QAAQ,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,KAAK,GAAG;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,WAAW,QAAQ;IACrB,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE/C,WAAW,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE;QACtC,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,cAAc,CAAC,EAAE,MAAM,CAAC;KAC3B,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;CAC7B;AAED,qBAAa,SAAU,YAAW,QAAQ;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IAExC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAS;IAClC,OAAO,CAAC,GAAG,CAAS;gBAER,GAAG,EAAE,MAAM;IA2BjB,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAQpD,WAAW,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE;QACtC,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,cAAc,CAAC,EAAE,MAAM,CAAC;KAC3B,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;YAWX,MAAM;CA2DvB;AAED,qBAAa,UAAW,YAAW,QAAQ;IACvC,WAAW,CAAC,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1C,WAAW,CAAC,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE;QACnC,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,cAAc,CAAC,EAAE,MAAM,CAAC;KAC3B,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;CAG5B"}
1
+ {"version":3,"file":"Issues.d.ts","sourceRoot":"","sources":["../../../src/src/issues/Issues.ts"],"names":[],"mappings":"AAwBA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEjD,MAAM,MAAM,WAAW,GAAG;IACtB,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC3B,QAAQ,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,KAAK,GAAG;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,WAAW,QAAQ;IACrB,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE/C,WAAW,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE;QACtC,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,cAAc,CAAC,EAAE,MAAM,CAAC;KAC3B,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;CAC7B;AAED,qBAAa,SAAU,YAAW,QAAQ;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IAExC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAS;IAClC,OAAO,CAAC,GAAG,CAAS;gBAER,GAAG,EAAE,MAAM;IA2BjB,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAQpD,WAAW,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE;QACtC,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,cAAc,CAAC,EAAE,MAAM,CAAC;KAC3B,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;YAWX,MAAM;CAiEvB;AAED,qBAAa,UAAW,YAAW,QAAQ;IACvC,WAAW,CAAC,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1C,WAAW,CAAC,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE;QACnC,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,cAAc,CAAC,EAAE,MAAM,CAAC;KAC3B,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;CAG5B"}
@@ -11,7 +11,8 @@
11
11
  * use of this software will be governed by the Apache License, Version 2.0.
12
12
  */
13
13
  import { createHash } from 'node:crypto';
14
- import { envVarEnvId, envVarEnvironmentName, envVarOrgId, envVarOrgSlug, envVarProjectId, envVarSDKApiBaseURL, envVarVersion, } from '../dsl/http/versori/constants.js';
14
+ import { envVarEnvId, envVarEnvironmentName, envVarOrgId, envVarOrgSlug, envVarProjectId, envVarSDKApiBaseURL, envVarVersion, } from '../internal/constants.js';
15
+ import { enabled as supervisorEnabled } from '../internal/supervisor.js';
15
16
  export class IssueImpl {
16
17
  constructor(log) {
17
18
  Object.defineProperty(this, "baseUrl", {
@@ -107,6 +108,10 @@ export class IssueImpl {
107
108
  issue.annotations['environmentId'] = this.environmentId;
108
109
  issue.annotations['organisationId'] = this.organisationId;
109
110
  try {
111
+ if (supervisorEnabled) {
112
+ this.log.info('Issue to be submitted', { issue: issue });
113
+ return Promise.resolve(null);
114
+ }
110
115
  const response = await fetch(`${this.baseUrl}/v1/issues/submit`, {
111
116
  method: 'POST',
112
117
  headers: {
@@ -67,13 +67,10 @@ export interface KeyValue {
67
67
  * KeyValueScope determines the visibility and lifetime of key-value data.
68
68
  *
69
69
  * - `:execution:` - Data scoped to a single workflow execution (deleted after execution completes).
70
- * - `:project:` - Contrary to the name this scopes the KV to the current activation, not the project.
71
- * - `:workspace:` - Data scoped to the true project (shared across all activations within the project).
70
+ * - `:project:` - Data scoped to the current project (shared across all executions).
72
71
  * - `:organization:` - Data scoped to the organization (shared across all projects).
73
- * - `:user:` - Data scoped to the current user based on the external_id of the activation.
74
- *
75
72
  */
76
- export type KeyValueScope = ':execution:' | ':project:' | ':workspace:' | ':organization:' | ':user:';
73
+ export type KeyValueScope = ':execution:' | ':project:' | ':organization:';
77
74
  /**
78
75
  * KVOptionsExecution specifies options for opening an execution-scoped KV store.
79
76
  */
@@ -82,7 +79,7 @@ export type KVOptionsExecution = {
82
79
  executionId: string;
83
80
  };
84
81
  /**
85
- * KVOptionsNotExecution specifies options for opening project, workspace, organization, or user-scoped KV stores.
82
+ * KVOptionsNotExecution specifies options for opening project or organization-scoped KV stores.
86
83
  */
87
84
  export type KVOptionsNotExecution = {
88
85
  scope: Exclude<KeyValueScope, ':execution:'>;
@@ -92,7 +89,6 @@ export type KVOptionsNotExecution = {
92
89
  */
93
90
  export type KVOptions = (KVOptionsExecution | KVOptionsNotExecution) & {
94
91
  activationId?: string;
95
- externalUserId?: string;
96
92
  };
97
93
  /**
98
94
  * DestroyOptions configures which KV store to destroy.
@@ -1 +1 @@
1
- {"version":3,"file":"KeyValue.d.ts","sourceRoot":"","sources":["../../../src/src/kv/KeyValue.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAEpG,KAAK,sBAAsB,CAAC,CAAC,IAAI;IAC7B,YAAY,CAAC,EAAE,CAAC,CAAC;IACjB,eAAe,CAAC,EAAE,KAAK,CAAC;CAC3B,CAAC;AAEF,KAAK,qBAAqB,CAAC,CAAC,IAAI;IAC5B,YAAY,EAAE,CAAC,CAAC;IAChB,eAAe,CAAC,EAAE,KAAK,CAAC;CAC3B,CAAC;AAEF,KAAK,mBAAmB,CAAC,CAAC,IAAI;IAC1B,eAAe,EAAE,IAAI,CAAC;CACzB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,IAClB,sBAAsB,CAAC,CAAC,CAAC,GACzB,qBAAqB,CAAC,CAAC,CAAC,GACxB,mBAAmB,CAAC,CAAC,CAAC,CAAC;AAE7B;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACrB;;;;;;;;OAQG;IACH,GAAG,CAAC,CAAC,GAAG,GAAG,EACP,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EACtB,OAAO,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC,GAC3D,OAAO,CAAC,CAAC,CAAC,CAAC;IACd,GAAG,CAAC,CAAC,GAAG,GAAG,EACP,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EACtB,OAAO,CAAC,EAAE,sBAAsB,CAAC,CAAC,CAAC,GACpC,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IAC1B,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IAEtF;;;;;;OAMG;IACH,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExD;;;;;;OAMG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAEzE;;;;;OAKG;IACH,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAElD;;;;OAIG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACjD;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,WAAW,GAAG,aAAa,GAAG,gBAAgB,GAAG,QAAQ,CAAC;AAEtG;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC7B,KAAK,EAAE,aAAa,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAChC,KAAK,EAAE,OAAO,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;CAChD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,kBAAkB,GAAG,qBAAqB,CAAC,GAAG;IACnE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,SAAS,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B;;;;;OAKG;IACH,EAAE,CAAC,OAAO,EAAE,SAAS,GAAG,QAAQ,CAAC;IAEjC;;;;OAIG;IACH,OAAO,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACjD"}
1
+ {"version":3,"file":"KeyValue.d.ts","sourceRoot":"","sources":["../../../src/src/kv/KeyValue.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAEpG,KAAK,sBAAsB,CAAC,CAAC,IAAI;IAC7B,YAAY,CAAC,EAAE,CAAC,CAAC;IACjB,eAAe,CAAC,EAAE,KAAK,CAAC;CAC3B,CAAC;AAEF,KAAK,qBAAqB,CAAC,CAAC,IAAI;IAC5B,YAAY,EAAE,CAAC,CAAC;IAChB,eAAe,CAAC,EAAE,KAAK,CAAC;CAC3B,CAAC;AAEF,KAAK,mBAAmB,CAAC,CAAC,IAAI;IAC1B,eAAe,EAAE,IAAI,CAAC;CACzB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,IAClB,sBAAsB,CAAC,CAAC,CAAC,GACzB,qBAAqB,CAAC,CAAC,CAAC,GACxB,mBAAmB,CAAC,CAAC,CAAC,CAAC;AAE7B;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACrB;;;;;;;;OAQG;IACH,GAAG,CAAC,CAAC,GAAG,GAAG,EACP,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EACtB,OAAO,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC,GAC3D,OAAO,CAAC,CAAC,CAAC,CAAC;IACd,GAAG,CAAC,CAAC,GAAG,GAAG,EACP,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EACtB,OAAO,CAAC,EAAE,sBAAsB,CAAC,CAAC,CAAC,GACpC,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IAC1B,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IAEtF;;;;;;OAMG;IACH,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExD;;;;;;OAMG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAEzE;;;;;OAKG;IACH,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAElD;;;;OAIG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACjD;AAED;;;;;;GAMG;AACH,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,WAAW,GAAG,gBAAgB,CAAC;AAE3E;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC7B,KAAK,EAAE,aAAa,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAChC,KAAK,EAAE,OAAO,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;CAChD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,kBAAkB,GAAG,qBAAqB,CAAC,GAAG;IACnE,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,SAAS,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B;;;;;OAKG;IACH,EAAE,CAAC,OAAO,EAAE,SAAS,GAAG,QAAQ,CAAC;IAEjC;;;;OAIG;IACH,OAAO,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACjD"}
@@ -2,12 +2,8 @@ import { DestroyOptions, KeyValue, KeyValueProvider, KVOptions } from '../KeyVal
2
2
  export declare class MemoryKeyValueProvider implements KeyValueProvider {
3
3
  private executionKv;
4
4
  private projectKv;
5
- private workspaceKv;
6
- private organizationKv;
7
- private userKv;
8
5
  kv(options: KVOptions): KeyValue;
9
6
  destroy(options: DestroyOptions): Promise<void>;
10
7
  private getExecutionKv;
11
- private getUserKv;
12
8
  }
13
9
  //# sourceMappingURL=MemoryKeyValueProvider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MemoryKeyValueProvider.d.ts","sourceRoot":"","sources":["../../../../src/src/kv/memory/MemoryKeyValueProvider.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAGvF,qBAAa,sBAAuB,YAAW,gBAAgB;IAC3D,OAAO,CAAC,WAAW,CAAoC;IACvD,OAAO,CAAC,SAAS,CAAkC;IACnD,OAAO,CAAC,WAAW,CAAkC;IACrD,OAAO,CAAC,cAAc,CAAkC;IACxD,OAAO,CAAC,MAAM,CAAoC;IAElD,EAAE,CAAC,OAAO,EAAE,SAAS,GAAG,QAAQ;IAyBhC,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAgC/C,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,SAAS;CAUpB"}
1
+ {"version":3,"file":"MemoryKeyValueProvider.d.ts","sourceRoot":"","sources":["../../../../src/src/kv/memory/MemoryKeyValueProvider.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAGvF,qBAAa,sBAAuB,YAAW,gBAAgB;IAC3D,OAAO,CAAC,WAAW,CAAoC;IAEvD,OAAO,CAAC,SAAS,CAAkC;IAEnD,EAAE,CAAC,OAAO,EAAE,SAAS,GAAG,QAAQ;IAehC,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAe/C,OAAO,CAAC,cAAc;CAUzB"}
@@ -25,24 +25,6 @@ export class MemoryKeyValueProvider {
25
25
  writable: true,
26
26
  value: new MemoryKeyValue()
27
27
  });
28
- Object.defineProperty(this, "workspaceKv", {
29
- enumerable: true,
30
- configurable: true,
31
- writable: true,
32
- value: new MemoryKeyValue()
33
- });
34
- Object.defineProperty(this, "organizationKv", {
35
- enumerable: true,
36
- configurable: true,
37
- writable: true,
38
- value: new MemoryKeyValue()
39
- });
40
- Object.defineProperty(this, "userKv", {
41
- enumerable: true,
42
- configurable: true,
43
- writable: true,
44
- value: new Map()
45
- });
46
28
  }
47
29
  kv(options) {
48
30
  switch (options.scope) {
@@ -53,15 +35,6 @@ export class MemoryKeyValueProvider {
53
35
  return this.getExecutionKv(options.executionId);
54
36
  case ':project:':
55
37
  return this.projectKv;
56
- case ':workspace:':
57
- return this.workspaceKv;
58
- case ':organization:':
59
- return this.organizationKv;
60
- case ':user:':
61
- if (typeof options.externalUserId === 'undefined') {
62
- throw new Error('externalUserId is required when scope is :user:');
63
- }
64
- return this.getUserKv(options.externalUserId);
65
38
  default:
66
39
  throw new Error(`Unsupported scope: ${options.scope}`);
67
40
  }
@@ -74,21 +47,6 @@ export class MemoryKeyValueProvider {
74
47
  }
75
48
  this.executionKv.delete(options.executionId);
76
49
  return Promise.resolve();
77
- case ':project:':
78
- this.projectKv = new MemoryKeyValue();
79
- return Promise.resolve();
80
- case ':workspace:':
81
- this.workspaceKv = new MemoryKeyValue();
82
- return Promise.resolve();
83
- case ':organization:':
84
- this.organizationKv = new MemoryKeyValue();
85
- return Promise.resolve();
86
- case ':user:':
87
- if (typeof options.externalUserId === 'undefined') {
88
- throw new Error('externalUserId is required when scope is :user:');
89
- }
90
- this.userKv.delete(options.externalUserId);
91
- return Promise.resolve();
92
50
  default:
93
51
  return Promise.resolve();
94
52
  }
@@ -101,12 +59,4 @@ export class MemoryKeyValueProvider {
101
59
  }
102
60
  return kv;
103
61
  }
104
- getUserKv(externalUserId) {
105
- let kv = this.userKv.get(externalUserId);
106
- if (!kv) {
107
- kv = new MemoryKeyValue();
108
- this.userKv.set(externalUserId, kv);
109
- }
110
- return kv;
111
- }
112
62
  }
@@ -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;AAGxH,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;IAyB1B,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA6CrD,OAAO,CAAC,aAAa;CAsBxB"}
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,7 +13,6 @@
13
13
  import { JetStreamApiCodes, JetStreamApiError } from '../../../deps/jsr.io/@nats-io/jetstream/3.3.1/src/mod.js';
14
14
  import { Kvm } from '../../../deps/jsr.io/@nats-io/kv/3.3.1/src/mod.js';
15
15
  import { connect, credsAuthenticator } from '../../../deps/jsr.io/@nats-io/transport-deno/3.3.1/src/mod.js';
16
- import { fingerprintExternalUserId } from '../fingerprintExternalUserId.js';
17
16
  import { isKVOptionsExecution } from '../isKVOptionsExecution.js';
18
17
  import { NatsKeyValue } from './NatsKeyValue.js';
19
18
  function getOptionsFromEnv() {
@@ -126,10 +125,6 @@ export class NatsKeyValueProvider {
126
125
  return new NatsKeyValue(this.kvOrgScope, this.subjectPrefix(options));
127
126
  case ':project:':
128
127
  return new NatsKeyValue(this.kvProjectScope, this.subjectPrefix(options));
129
- case ':workspace:':
130
- return new NatsKeyValue(this.kvProjectScope, this.subjectPrefix(options));
131
- case ':user:':
132
- return new NatsKeyValue(this.kvProjectScope, this.subjectPrefix(options));
133
128
  case ':execution:':
134
129
  if (!isKVOptionsExecution(options)) {
135
130
  throw new Error('invalid KV options, executionId is required for :execution: scope');
@@ -180,17 +175,8 @@ export class NatsKeyValueProvider {
180
175
  return `${this.opts.organizationId}`;
181
176
  case ':project:':
182
177
  return `${this.opts.organizationId}.${this.opts.projectId}.${this.opts.environment}${activationSuffix}`;
183
- case ':workspace:':
184
- return `${this.opts.organizationId}.${this.opts.projectId}.${this.opts.environment}`;
185
- case ':user:':
186
- if (typeof options.externalUserId === 'undefined') {
187
- throw new Error('externalUserId is required when scope is :user:');
188
- }
189
- return `${this.opts.organizationId}.${this.opts.projectId}.${this.opts.environment}.${fingerprintExternalUserId(options.externalUserId)}`;
190
178
  case ':execution:':
191
179
  return `${this.opts.organizationId}.${this.opts.projectId}.${this.opts.environment}.${options.executionId}${activationSuffix}`;
192
- default:
193
- throw new Error(`Unsupported scope for subjectPrefix: ${options.scope}`);
194
180
  }
195
181
  }
196
182
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SDKKeyValueProvider.d.ts","sourceRoot":"","sources":["../../../../src/src/kv/sdk/SDKKeyValueProvider.ts"],"names":[],"mappings":"AAmBA,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;IAyB1B,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA6CrD,OAAO,CAAC,aAAa;CAoBxB"}
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"}
@@ -12,7 +12,6 @@
12
12
  */
13
13
  import { KvOperationsService } from '../../dsl/http/versori/kvapi/services/KvOperationsService.js';
14
14
  import { StoresService } from '../../dsl/http/versori/kvapi/services/StoresService.js';
15
- import { fingerprintExternalUserId } from '../fingerprintExternalUserId.js';
16
15
  import { isKVOptionsExecution } from '../isKVOptionsExecution.js';
17
16
  import { SDKKeyValue } from './SDKKeyValue.js';
18
17
  function getOptionsFromEnv() {
@@ -105,10 +104,6 @@ export class SDKKeyValueProvider {
105
104
  return new SDKKeyValue(this.kvOrgScope, this.subjectPrefix(options));
106
105
  case ':project:':
107
106
  return new SDKKeyValue(this.kvProjectScope, this.subjectPrefix(options));
108
- case ':workspace:':
109
- return new SDKKeyValue(this.kvProjectScope, this.subjectPrefix(options));
110
- case ':user:':
111
- return new SDKKeyValue(this.kvProjectScope, this.subjectPrefix(options));
112
107
  case ':execution:':
113
108
  if (!isKVOptionsExecution(options)) {
114
109
  throw new Error('invalid KV options, executionId is required for :execution: scope');
@@ -155,13 +150,6 @@ export class SDKKeyValueProvider {
155
150
  return `${this.opts.organizationId}/${this.opts.projectId}/${this.opts.environment}${activationSuffix}`;
156
151
  case ':execution:':
157
152
  return `${this.opts.organizationId}/${this.opts.projectId}/${this.opts.environment}/${options.executionId}${activationSuffix}`;
158
- case ':workspace:':
159
- return `${this.opts.organizationId}/${this.opts.projectId}/${this.opts.environment}`;
160
- case ':user:':
161
- if (typeof options.externalUserId === 'undefined') {
162
- throw new Error('externalUserId is required when scope is :user:');
163
- }
164
- return `${this.opts.organizationId}/${this.opts.projectId}/${this.opts.environment}/${fingerprintExternalUserId(options.externalUserId)}`;
165
153
  }
166
154
  }
167
155
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ConsoleLogger.d.ts","sourceRoot":"","sources":["../../../../src/src/observability/logging/ConsoleLogger.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,GAAG,MAAM,+CAA+C,CAAC;AACrE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAmN/C;;;;;GAKG;AACH,qBAAa,aAAc,YAAW,MAAM;IACxC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC;IAEhB,KAAK,EAAE,QAAQ,CAAC;IAEhB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAEpB,KAAK,GAAE,QAAqD,EAAE,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;IAO9G,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAO9D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAO7D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAO7D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAC3E,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAsB9D,KAAK,CAAC,MAAM,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAAG,aAAa;IAOvD,QAAQ,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;CAIlC"}
1
+ {"version":3,"file":"ConsoleLogger.d.ts","sourceRoot":"","sources":["../../../../src/src/observability/logging/ConsoleLogger.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,GAAG,MAAM,+CAA+C,CAAC;AACrE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAkN/C;;;;;GAKG;AACH,qBAAa,aAAc,YAAW,MAAM;IACxC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC;IAEhB,KAAK,EAAE,QAAQ,CAAC;IAEhB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAEpB,KAAK,GAAE,QAAqD,EAAE,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;IAO9G,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAO9D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAO7D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAO7D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAC3E,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAsB9D,KAAK,CAAC,MAAM,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAAG,aAAa;IAOvD,QAAQ,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;CAIlC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@versori/run",
3
- "version": "0.5.10",
3
+ "version": "0.6.0-alpha.1",
4
4
  "description": "Versori Run",
5
5
  "homepage": "https://github.com/versori/versori-run#readme",
6
6
  "repository": {
@@ -27,9 +27,11 @@
27
27
  "@connectrpc/connect": "^2.0.4",
28
28
  "@connectrpc/connect-node": "^2.0.4",
29
29
  "@opentelemetry/api": "^1.9.0",
30
+ "@opentelemetry/core": "^2.1.0",
30
31
  "@opentelemetry/exporter-trace-otlp-proto": "^0.200.0",
31
32
  "@opentelemetry/resources": "^2.0.0",
32
33
  "@opentelemetry/sdk-node": "^0.200.0",
34
+ "@opentelemetry/sdk-trace-node": "^2.0.0",
33
35
  "cors": "^2.8.5",
34
36
  "express": "^4.21.2",
35
37
  "express-xml-bodyparser": "^0.3.0",
@@ -47,7 +47,7 @@ class CredentialHolder {
47
47
  this.refresh();
48
48
  return __classPrivateFieldGet(this, _CredentialHolder_value, "f");
49
49
  }
50
- // if this.refresh returns a rejected promise we are stuck with it until a restart.
50
+ // if this.refresh returns a rejected promise we are stuck with it until a restart.
51
51
  // the try/catch bellow just keeps on trying to refresh the token if this.#value is rejected.
52
52
  //
53
53
  // We might have to change this because if credentials has an issue we might just make that issue worse by pamming more requests