@adonis-agora/durable 0.58.3 → 0.59.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (163) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/dist/assets/spa/assets/index-Co0ef3-q.css +1 -0
  3. package/dist/assets/spa/assets/index-DmgfShPp.js +16 -0
  4. package/dist/assets/spa/assets/index-DmgfShPp.js.map +1 -0
  5. package/dist/assets/spa/index.html +2 -2
  6. package/dist/commands/lifecycle_republish.d.ts +23 -0
  7. package/dist/commands/lifecycle_republish.d.ts.map +1 -0
  8. package/dist/commands/lifecycle_republish.js +64 -0
  9. package/dist/commands/lifecycle_republish.js.map +1 -0
  10. package/dist/commands/main.d.ts +4 -3
  11. package/dist/commands/main.d.ts.map +1 -1
  12. package/dist/commands/main.js +3 -1
  13. package/dist/commands/main.js.map +1 -1
  14. package/dist/providers/dashboard_provider.d.ts +2 -0
  15. package/dist/providers/dashboard_provider.d.ts.map +1 -1
  16. package/dist/providers/dashboard_provider.js +9 -1
  17. package/dist/providers/dashboard_provider.js.map +1 -1
  18. package/dist/src/commands/index.d.ts +1 -1
  19. package/dist/src/commands/index.d.ts.map +1 -1
  20. package/dist/src/commands/index.js +1 -1
  21. package/dist/src/commands/index.js.map +1 -1
  22. package/dist/src/commands/runs.d.ts +24 -1
  23. package/dist/src/commands/runs.d.ts.map +1 -1
  24. package/dist/src/commands/runs.js +50 -0
  25. package/dist/src/commands/runs.js.map +1 -1
  26. package/dist/src/commands/worker.d.ts.map +1 -1
  27. package/dist/src/commands/worker.js +3 -0
  28. package/dist/src/commands/worker.js.map +1 -1
  29. package/dist/src/dashboard/gateway-adapter.d.ts +5 -0
  30. package/dist/src/dashboard/gateway-adapter.d.ts.map +1 -1
  31. package/dist/src/dashboard/gateway-adapter.js +20 -0
  32. package/dist/src/dashboard/gateway-adapter.js.map +1 -1
  33. package/dist/src/dashboard/handlers.d.ts +29 -1
  34. package/dist/src/dashboard/handlers.d.ts.map +1 -1
  35. package/dist/src/dashboard/handlers.js +103 -0
  36. package/dist/src/dashboard/handlers.js.map +1 -1
  37. package/dist/src/dashboard/index.d.ts +2 -2
  38. package/dist/src/dashboard/index.d.ts.map +1 -1
  39. package/dist/src/dashboard/index.js +2 -2
  40. package/dist/src/dashboard/index.js.map +1 -1
  41. package/dist/src/dashboard/openapi.d.ts.map +1 -1
  42. package/dist/src/dashboard/openapi.js +39 -0
  43. package/dist/src/dashboard/openapi.js.map +1 -1
  44. package/dist/src/diagnostics-bridge.d.ts +5 -1
  45. package/dist/src/diagnostics-bridge.d.ts.map +1 -1
  46. package/dist/src/diagnostics-bridge.js +16 -2
  47. package/dist/src/diagnostics-bridge.js.map +1 -1
  48. package/dist/src/engine.d.ts +351 -5
  49. package/dist/src/engine.d.ts.map +1 -1
  50. package/dist/src/engine.js +1437 -74
  51. package/dist/src/engine.js.map +1 -1
  52. package/dist/src/event-accumulators.d.ts +28 -5
  53. package/dist/src/event-accumulators.d.ts.map +1 -1
  54. package/dist/src/event-accumulators.js +102 -21
  55. package/dist/src/event-accumulators.js.map +1 -1
  56. package/dist/src/events.d.ts +25 -0
  57. package/dist/src/events.d.ts.map +1 -1
  58. package/dist/src/events.js +24 -0
  59. package/dist/src/events.js.map +1 -1
  60. package/dist/src/handshake/announced.d.ts +6 -0
  61. package/dist/src/handshake/announced.d.ts.map +1 -1
  62. package/dist/src/handshake/announced.js +20 -0
  63. package/dist/src/handshake/announced.js.map +1 -1
  64. package/dist/src/handshake/descriptor.d.ts +6 -0
  65. package/dist/src/handshake/descriptor.d.ts.map +1 -1
  66. package/dist/src/handshake/descriptor.js +1 -0
  67. package/dist/src/handshake/descriptor.js.map +1 -1
  68. package/dist/src/index.d.ts +3 -2
  69. package/dist/src/index.d.ts.map +1 -1
  70. package/dist/src/index.js +3 -2
  71. package/dist/src/index.js.map +1 -1
  72. package/dist/src/interfaces.d.ts +45 -2
  73. package/dist/src/interfaces.d.ts.map +1 -1
  74. package/dist/src/interfaces.js.map +1 -1
  75. package/dist/src/lifecycle-events.d.ts +372 -0
  76. package/dist/src/lifecycle-events.d.ts.map +1 -0
  77. package/dist/src/lifecycle-events.js +383 -0
  78. package/dist/src/lifecycle-events.js.map +1 -0
  79. package/dist/src/metrics.d.ts +15 -0
  80. package/dist/src/metrics.d.ts.map +1 -1
  81. package/dist/src/metrics.js +36 -1
  82. package/dist/src/metrics.js.map +1 -1
  83. package/dist/src/otel/durable-metrics.d.ts +9 -0
  84. package/dist/src/otel/durable-metrics.d.ts.map +1 -1
  85. package/dist/src/otel/durable-metrics.js +17 -0
  86. package/dist/src/otel/durable-metrics.js.map +1 -1
  87. package/dist/src/otel/durable-otel.d.ts +7 -0
  88. package/dist/src/otel/durable-otel.d.ts.map +1 -1
  89. package/dist/src/otel/durable-otel.js +69 -3
  90. package/dist/src/otel/durable-otel.js.map +1 -1
  91. package/dist/src/run-detail-summary.d.ts +48 -1
  92. package/dist/src/run-detail-summary.d.ts.map +1 -1
  93. package/dist/src/run-detail-summary.js +30 -2
  94. package/dist/src/run-detail-summary.js.map +1 -1
  95. package/dist/src/run-gateway/interface.d.ts +16 -0
  96. package/dist/src/run-gateway/interface.d.ts.map +1 -1
  97. package/dist/src/run-gateway/proxy-run-gateway.d.ts +31 -1
  98. package/dist/src/run-gateway/proxy-run-gateway.d.ts.map +1 -1
  99. package/dist/src/run-gateway/proxy-run-gateway.js +59 -7
  100. package/dist/src/run-gateway/proxy-run-gateway.js.map +1 -1
  101. package/dist/src/run-gateway/run-request-responder.d.ts +4 -29
  102. package/dist/src/run-gateway/run-request-responder.d.ts.map +1 -1
  103. package/dist/src/run-gateway/run-request-responder.js +183 -6
  104. package/dist/src/run-gateway/run-request-responder.js.map +1 -1
  105. package/dist/src/run-gateway/store-run-gateway.d.ts +9 -0
  106. package/dist/src/run-gateway/store-run-gateway.d.ts.map +1 -1
  107. package/dist/src/run-gateway/store-run-gateway.js +8 -0
  108. package/dist/src/run-gateway/store-run-gateway.js.map +1 -1
  109. package/dist/src/run-waiting.d.ts +1 -0
  110. package/dist/src/run-waiting.d.ts.map +1 -1
  111. package/dist/src/run-waiting.js +6 -1
  112. package/dist/src/run-waiting.js.map +1 -1
  113. package/dist/src/stores/lucid.d.ts.map +1 -1
  114. package/dist/src/stores/lucid.js +4 -0
  115. package/dist/src/stores/lucid.js.map +1 -1
  116. package/dist/src/telescope/dashboard.d.ts.map +1 -1
  117. package/dist/src/telescope/dashboard.js +50 -0
  118. package/dist/src/telescope/dashboard.js.map +1 -1
  119. package/dist/src/telescope/data-providers.d.ts +19 -0
  120. package/dist/src/telescope/data-providers.d.ts.map +1 -1
  121. package/dist/src/telescope/data-providers.js +128 -2
  122. package/dist/src/telescope/data-providers.js.map +1 -1
  123. package/dist/src/telescope/extension.d.ts.map +1 -1
  124. package/dist/src/telescope/extension.js +4 -1
  125. package/dist/src/telescope/extension.js.map +1 -1
  126. package/dist/src/telescope/index.d.ts +3 -2
  127. package/dist/src/telescope/index.d.ts.map +1 -1
  128. package/dist/src/telescope/index.js +2 -1
  129. package/dist/src/telescope/index.js.map +1 -1
  130. package/dist/src/telescope/telescope-sdk.d.ts +16 -0
  131. package/dist/src/telescope/telescope-sdk.d.ts.map +1 -1
  132. package/dist/src/telescope/watcher.d.ts +66 -0
  133. package/dist/src/telescope/watcher.d.ts.map +1 -0
  134. package/dist/src/telescope/watcher.js +185 -0
  135. package/dist/src/telescope/watcher.js.map +1 -0
  136. package/dist/src/testing/in-memory-state-store.d.ts.map +1 -1
  137. package/dist/src/testing/in-memory-state-store.js +8 -0
  138. package/dist/src/testing/in-memory-state-store.js.map +1 -1
  139. package/dist/src/testing-kit/harness.d.ts +1 -1
  140. package/dist/src/testing-kit/harness.d.ts.map +1 -1
  141. package/dist/src/testing-kit/harness.js +3 -1
  142. package/dist/src/testing-kit/harness.js.map +1 -1
  143. package/dist/src/testing-kit/state-store-conformance.d.ts.map +1 -1
  144. package/dist/src/testing-kit/state-store-conformance.js +59 -0
  145. package/dist/src/testing-kit/state-store-conformance.js.map +1 -1
  146. package/dist/src/workflow-ctx.d.ts.map +1 -1
  147. package/dist/src/workflow-ctx.js +62 -0
  148. package/dist/src/workflow-ctx.js.map +1 -1
  149. package/dist/src/workflow-discovery.d.ts.map +1 -1
  150. package/dist/src/workflow-discovery.js +1 -0
  151. package/dist/src/workflow-discovery.js.map +1 -1
  152. package/dist/src/workflow-events.d.ts +101 -0
  153. package/dist/src/workflow-events.d.ts.map +1 -1
  154. package/dist/src/workflow-events.js +79 -1
  155. package/dist/src/workflow-events.js.map +1 -1
  156. package/dist/src/workflow-ref.d.ts +17 -2
  157. package/dist/src/workflow-ref.d.ts.map +1 -1
  158. package/dist/src/workflow-ref.js.map +1 -1
  159. package/package.json +4 -4
  160. package/skills/durable-cluster/SKILL.md +4 -2
  161. package/dist/assets/spa/assets/index-6nmSTfT7.css +0 -1
  162. package/dist/assets/spa/assets/index-Dj0X-IAu.js +0 -16
  163. package/dist/assets/spa/assets/index-Dj0X-IAu.js.map +0 -1
@@ -1,12 +1,18 @@
1
1
  import type { WorkflowCtx } from './interfaces.js';
2
- /** How `onEvent` triggers are coalesced into fewer runs (see the `onEvent` `debounce`/`batch` config). */
2
+ /**
3
+ * How `onEvent` triggers are coalesced into fewer runs (see the `onEvent` `debounce`/`batch` config).
4
+ * `key`, computed from the subscriber's input (after its subscription's `input` mapping), gives each
5
+ * distinct key its own accumulator, so events coalesce per key instead of per workflow.
6
+ */
3
7
  export type EventBatchConfig = {
4
8
  mode: 'debounce';
5
9
  windowMs: number;
10
+ key?: ((input: unknown) => string) | undefined;
6
11
  } | {
7
12
  mode: 'batch';
8
13
  maxSize: number;
9
14
  windowMs: number;
15
+ key?: ((input: unknown) => string) | undefined;
10
16
  };
11
17
  /** The slice of the engine the accumulators need (so they stay a standalone module). */
12
18
  export interface AccumulatorHost {
@@ -20,6 +26,12 @@ export interface AccumulatorHost {
20
26
  runId: string;
21
27
  }>;
22
28
  }
29
+ /**
30
+ * The accumulator run id, which is also its signal token: `__evtacc__:<target>` without a key, and
31
+ * `__evtacc__:<target>#<key>` with one, the key percent-encoded (`~` too, which marks a
32
+ * continue-as-new run id) so any key string makes a safe id.
33
+ */
34
+ export declare function accumulatorRunId(target: string, key?: string): string;
23
35
  /**
24
36
  * Built-in workflows that coalesce `onEvent` triggers. Each is a long-lived per-target accumulator
25
37
  * fed by `signalWithStart`: it collects payloads then starts the target once, and `continueAsNew`s to
@@ -29,13 +41,24 @@ export interface AccumulatorHost {
29
41
  export declare class EventAccumulators {
30
42
  private readonly host;
31
43
  constructor(host: AccumulatorHost);
32
- /** Route an `onEvent` payload into its target's debounce/batch accumulator. */
33
- route(target: string, config: EventBatchConfig, payload: unknown): Promise<{
44
+ /**
45
+ * Route an `onEvent` payload into its target's debounce/batch accumulator (the one for its key).
46
+ * `dedupeId` names the event for this target (a lifecycle event: its source run and subscriber), so
47
+ * the accumulator drops a second route of the same event instead of counting it twice.
48
+ */
49
+ route(target: string, config: EventBatchConfig, payload: unknown, dedupeId?: string): Promise<{
34
50
  runId: string;
35
51
  }>;
36
- /** Fire the target with the LAST payload once events have been quiet for `windowMs`. */
52
+ /**
53
+ * Fire the target with the LAST payload once events have been quiet for `windowMs`. An event it
54
+ * already took (same dedupe id, in this burst or the {@link SEEN_CAP} before) is dropped: it never
55
+ * becomes the payload, nor starts a burst.
56
+ */
37
57
  private debounce;
38
- /** Fire the target with all payloads (`{ events }`) once `maxSize` or `windowMs` from the first. */
58
+ /**
59
+ * Fire the target with all payloads (`{ events }`) once `maxSize` or `windowMs` from the first. An
60
+ * event it already took (same dedupe id, in this burst or the {@link SEEN_CAP} before) is dropped.
61
+ */
39
62
  private batch;
40
63
  }
41
64
  //# sourceMappingURL=event-accumulators.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"event-accumulators.d.ts","sourceRoot":"","sources":["../../src/event-accumulators.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAGnD,0GAA0G;AAC1G,MAAM,MAAM,gBAAgB,GACxB;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACtC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzD,wFAAwF;AACxF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CACN,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,EAAE,EAAE,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,EAC1D,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,GACrC,IAAI,CAAC;IACR,eAAe,CACb,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,MAAM,EACb,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,GAC3C,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC/B;AAID;;;;;GAKG;AACH,qBAAa,iBAAiB;IAChB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,eAAe,EAIjD;IAED,+EAA+E;IAC/E,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAY5F;IAED,wFAAwF;YAC1E,QAAQ;IAgBtB,oGAAoG;YACtF,KAAK;CAsBpB"}
1
+ {"version":3,"file":"event-accumulators.d.ts","sourceRoot":"","sources":["../../src/event-accumulators.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAGnD;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GACxB;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,CAAC,GAAG,SAAS,CAAA;CAAE,GACtF;IACE,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,CAAC,GAAG,SAAS,CAAC;CAChD,CAAC;AAEN,wFAAwF;AACxF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CACN,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,EAAE,EAAE,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,EAC1D,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,GACrC,IAAI,CAAC;IACR,eAAe,CACb,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,MAAM,EACb,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,GAC3C,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC/B;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAGrE;AAED;;;;;GAKG;AACH,qBAAa,iBAAiB;IAChB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,eAAe,EAIjD;IAED;;;;OAIG;IACH,KAAK,CACH,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,OAAO,EAChB,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAgB5B;IAED;;;;OAIG;YACW,QAAQ;IA8BtB;;;OAGG;YACW,KAAK;CA+BpB"}
@@ -1,6 +1,14 @@
1
1
  import { SignalTimeoutError } from './errors.js';
2
2
  import { PACKAGE_ORIGIN } from './package-origin.js';
3
- const accToken = (target) => `__evtacc__:${target}`;
3
+ /**
4
+ * The accumulator run id, which is also its signal token: `__evtacc__:<target>` without a key, and
5
+ * `__evtacc__:<target>#<key>` with one, the key percent-encoded (`~` too, which marks a
6
+ * continue-as-new run id) so any key string makes a safe id.
7
+ */
8
+ export function accumulatorRunId(target, key) {
9
+ const base = `__evtacc__:${target}`;
10
+ return key === undefined ? base : `${base}#${encodeURIComponent(key).replace(/~/g, '%7E')}`;
11
+ }
4
12
  /**
5
13
  * Built-in workflows that coalesce `onEvent` triggers. Each is a long-lived per-target accumulator
6
14
  * fed by `signalWithStart`: it collects payloads then starts the target once, and `continueAsNew`s to
@@ -15,27 +23,50 @@ export class EventAccumulators {
15
23
  host.register('__evt_debounce', '1', (ctx, input) => this.debounce(ctx, input), opts);
16
24
  host.register('__evt_batch', '1', (ctx, input) => this.batch(ctx, input), opts);
17
25
  }
18
- /** Route an `onEvent` payload into its target's debounce/batch accumulator. */
19
- route(target, config, payload) {
26
+ /**
27
+ * Route an `onEvent` payload into its target's debounce/batch accumulator (the one for its key).
28
+ * `dedupeId` names the event for this target (a lifecycle event: its source run and subscriber), so
29
+ * the accumulator drops a second route of the same event instead of counting it twice.
30
+ */
31
+ route(target, config, payload, dedupeId) {
32
+ const key = config.key ? config.key(payload) : undefined;
33
+ if (key !== undefined && typeof key !== 'string') {
34
+ throw new TypeError(`eventBatch key for ${target} returned ${typeof key}, expected a string`);
35
+ }
36
+ const keyed = key !== undefined ? { key } : {};
20
37
  const [workflow, input] = config.mode === 'debounce'
21
- ? ['__evt_debounce', { target, windowMs: config.windowMs }]
38
+ ? ['__evt_debounce', { target, windowMs: config.windowMs, ...keyed }]
22
39
  : [
23
40
  '__evt_batch',
24
- { target, maxSize: config.maxSize, windowMs: config.windowMs },
41
+ { target, maxSize: config.maxSize, windowMs: config.windowMs, ...keyed },
25
42
  ];
26
- return this.host.signalWithStart(workflow, input, accToken(target), {
27
- token: accToken(target),
28
- payload,
29
- });
43
+ const id = accumulatorRunId(target, key);
44
+ const signal = dedupeId !== undefined ? { [ROUTED_EVENT]: dedupeId, payload } : payload;
45
+ return this.host.signalWithStart(workflow, input, id, { token: id, payload: signal });
30
46
  }
31
- /** Fire the target with the LAST payload once events have been quiet for `windowMs`. */
47
+ /**
48
+ * Fire the target with the LAST payload once events have been quiet for `windowMs`. An event it
49
+ * already took (same dedupe id, in this burst or the {@link SEEN_CAP} before) is dropped: it never
50
+ * becomes the payload, nor starts a burst.
51
+ */
32
52
  async debounce(ctx, input) {
33
- const { target, windowMs } = input;
34
- const token = accToken(target);
35
- let last = await ctx.waitForSignal(token); // park for the first event of a burst
53
+ const { target, windowMs, key, seen } = input;
54
+ const token = accumulatorRunId(target, key);
55
+ const ids = new Seen(seen);
56
+ let last;
57
+ for (;;) {
58
+ const event = unwrap(await ctx.waitForSignal(token)); // park for the first event of a burst
59
+ if (!ids.take(event.id))
60
+ continue;
61
+ last = event.payload;
62
+ break;
63
+ }
36
64
  for (;;) {
37
65
  try {
38
- last = await ctx.waitForSignal(token, { timeoutMs: windowMs }); // extend on each event
66
+ // extend on each event
67
+ const event = unwrap(await ctx.waitForSignal(token, { timeoutMs: windowMs }));
68
+ if (ids.take(event.id))
69
+ last = event.payload;
39
70
  }
40
71
  catch (e) {
41
72
  if (e instanceof SignalTimeoutError)
@@ -44,20 +75,32 @@ export class EventAccumulators {
44
75
  }
45
76
  }
46
77
  await ctx.startChild(target, last);
47
- return ctx.continueAsNew(input); // re-arm
78
+ return ctx.continueAsNew(ids.carry(input)); // re-arm
48
79
  }
49
- /** Fire the target with all payloads (`{ events }`) once `maxSize` or `windowMs` from the first. */
80
+ /**
81
+ * Fire the target with all payloads (`{ events }`) once `maxSize` or `windowMs` from the first. An
82
+ * event it already took (same dedupe id, in this burst or the {@link SEEN_CAP} before) is dropped.
83
+ */
50
84
  async batch(ctx, input) {
51
- const { target, maxSize, windowMs } = input;
52
- const token = accToken(target);
53
- const events = [await ctx.waitForSignal(token)]; // park for the first
85
+ const { target, maxSize, windowMs, key, seen } = input;
86
+ const token = accumulatorRunId(target, key);
87
+ const ids = new Seen(seen);
88
+ const events = [];
89
+ // Park for the first.
90
+ while (events.length === 0) {
91
+ const event = unwrap(await ctx.waitForSignal(token));
92
+ if (ids.take(event.id))
93
+ events.push(event.payload);
94
+ }
54
95
  const deadline = (await ctx.now()) + windowMs;
55
96
  while (events.length < maxSize) {
56
97
  const remaining = deadline - (await ctx.now());
57
98
  if (remaining <= 0)
58
99
  break;
59
100
  try {
60
- events.push(await ctx.waitForSignal(token, { timeoutMs: remaining }));
101
+ const event = unwrap(await ctx.waitForSignal(token, { timeoutMs: remaining }));
102
+ if (ids.take(event.id))
103
+ events.push(event.payload);
61
104
  }
62
105
  catch (e) {
63
106
  if (e instanceof SignalTimeoutError)
@@ -66,7 +109,45 @@ export class EventAccumulators {
66
109
  }
67
110
  }
68
111
  await ctx.startChild(target, { events });
69
- return ctx.continueAsNew(input); // re-arm
112
+ return ctx.continueAsNew(ids.carry(input)); // re-arm
113
+ }
114
+ }
115
+ /** The key of a routed event's dedupe id in the signal payload (see {@link EventAccumulators.route}). */
116
+ const ROUTED_EVENT = '__durableRoutedEvent';
117
+ /** How many dedupe ids an accumulator carries into its next burst. */
118
+ const SEEN_CAP = 200;
119
+ /** A signal payload as routed: its dedupe id when it has one, and the subscriber's input. */
120
+ function unwrap(signal) {
121
+ if (signal && typeof signal === 'object' && ROUTED_EVENT in signal) {
122
+ const routed = signal;
123
+ const id = routed[ROUTED_EVENT];
124
+ if (typeof id === 'string')
125
+ return { id, payload: routed.payload };
126
+ }
127
+ return { payload: signal };
128
+ }
129
+ /** The dedupe ids an accumulator has taken: this burst's, and the last ones of earlier bursts. */
130
+ class Seen {
131
+ ids;
132
+ set;
133
+ constructor(carried) {
134
+ this.ids = [...(carried ?? [])];
135
+ this.set = new Set(this.ids);
136
+ }
137
+ /** Record `id`; false when it was already taken. An event without an id is always new. */
138
+ take(id) {
139
+ if (id === undefined)
140
+ return true;
141
+ if (this.set.has(id))
142
+ return false;
143
+ this.set.add(id);
144
+ this.ids.push(id);
145
+ return true;
146
+ }
147
+ /** `input` for the next burst, carrying the last {@link SEEN_CAP} ids. */
148
+ carry(input) {
149
+ const { seen: _seen, ...rest } = input;
150
+ return this.ids.length > 0 ? { ...rest, seen: this.ids.slice(-SEEN_CAP) } : rest;
70
151
  }
71
152
  }
72
153
  //# sourceMappingURL=event-accumulators.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"event-accumulators.js","sourceRoot":"","sources":["../../src/event-accumulators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event-accumulators.js","sourceRoot":"","sources":["../../src/event-accumulators.ts"],"names":[],"mappings":"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"}
@@ -22,4 +22,29 @@ export declare function eventToken(name: string, match: Record<string, unknown>
22
22
  export declare function eventMatchOf(token: string): Record<string, unknown>;
23
23
  /** Whether `payload` satisfies a waiter's `match`: every match key deep-equals the payload's value. */
24
24
  export declare function eventMatches(payload: unknown, match: Record<string, unknown>): boolean;
25
+ /**
26
+ * One `onEvent` subscription: the event name, plus an optional `where` that decides, per payload,
27
+ * whether this workflow starts, and an optional `input` that turns the payload into the started
28
+ * run's input. A bare string is shorthand for `{ event }`. Both functions run in the publishing
29
+ * process, so they only exist for subscriptions registered in TypeScript.
30
+ */
31
+ export interface EventSubscription {
32
+ event: string;
33
+ where?: ((payload: unknown) => boolean) | undefined;
34
+ /** The started run's input, built from the payload. Defaults to the payload itself. */
35
+ input?: ((payload: unknown) => unknown) | undefined;
36
+ }
37
+ /** An `onEvent` entry: an event name, or a {@link EventSubscription}. */
38
+ export type OnEventEntry = string | EventSubscription;
39
+ /** Normalize an `onEvent` entry to its {@link EventSubscription} form. */
40
+ export declare function toEventSubscription(entry: OnEventEntry): EventSubscription;
41
+ /**
42
+ * Which of one workflow's subscriptions to an event takes `payload`: the first whose `where`
43
+ * accepts it (a subscription without `where` accepts everything). A `where` that throws counts as
44
+ * a rejection, and its error is returned so the caller can report it instead of losing it.
45
+ */
46
+ export declare function acceptingSubscription(subscriptions: readonly EventSubscription[], payload: unknown): {
47
+ accepted?: EventSubscription;
48
+ errors: unknown[];
49
+ };
25
50
  //# sourceMappingURL=events.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/events.ts"],"names":[],"mappings":"AASA;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAE1C;;yEAEyE;AACzE,eAAO,MAAM,kBAAkB,WAAW,CAAC;AAE3C,iGAAiG;AACjG,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED,wGAAwG;AACxG,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED,iGAAiG;AACjG,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMjD;AAED,+FAA+F;AAC/F,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAC1C,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,GACV,MAAM,CAER;AAED,sGAAsG;AACtG,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAMnE;AAED,uGAAuG;AACvG,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAMtF"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/events.ts"],"names":[],"mappings":"AASA;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAE1C;;yEAEyE;AACzE,eAAO,MAAM,kBAAkB,WAAW,CAAC;AAE3C,iGAAiG;AACjG,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED,wGAAwG;AACxG,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED,iGAAiG;AACjG,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMjD;AAED,+FAA+F;AAC/F,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAC1C,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,GACV,MAAM,CAER;AAED,sGAAsG;AACtG,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAMnE;AAED,uGAAuG;AACvG,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAMtF;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,GAAG,SAAS,CAAC;IACpD,uFAAuF;IACvF,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,GAAG,SAAS,CAAC;CACrD;AAED,yEAAyE;AACzE,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,iBAAiB,CAAC;AAEtD,0EAA0E;AAC1E,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,YAAY,GAAG,iBAAiB,CAE1E;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CACnC,aAAa,EAAE,SAAS,iBAAiB,EAAE,EAC3C,OAAO,EAAE,OAAO,GACf;IAAE,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAAC,MAAM,EAAE,OAAO,EAAE,CAAA;CAAE,CAWrD"}
@@ -57,4 +57,28 @@ export function eventMatches(payload, match) {
57
57
  const p = payload;
58
58
  return keys.every((k) => JSON.stringify(p[k]) === JSON.stringify(match[k]));
59
59
  }
60
+ /** Normalize an `onEvent` entry to its {@link EventSubscription} form. */
61
+ export function toEventSubscription(entry) {
62
+ return typeof entry === 'string' ? { event: entry } : entry;
63
+ }
64
+ /**
65
+ * Which of one workflow's subscriptions to an event takes `payload`: the first whose `where`
66
+ * accepts it (a subscription without `where` accepts everything). A `where` that throws counts as
67
+ * a rejection, and its error is returned so the caller can report it instead of losing it.
68
+ */
69
+ export function acceptingSubscription(subscriptions, payload) {
70
+ const errors = [];
71
+ for (const subscription of subscriptions) {
72
+ if (!subscription.where)
73
+ return { accepted: subscription, errors };
74
+ try {
75
+ if (subscription.where(payload))
76
+ return { accepted: subscription, errors };
77
+ }
78
+ catch (error) {
79
+ errors.push(error);
80
+ }
81
+ }
82
+ return { errors };
83
+ }
60
84
  //# sourceMappingURL=events.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/events.ts"],"names":[],"mappings":"AAAA,iGAAiG;AACjG,gGAAgG;AAChG,oGAAoG;AACpG,qGAAqG;AACrG,sEAAsE;AAEtE,MAAM,GAAG,GAAG,CAAC,CAAS,EAAU,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AAC7E,MAAM,GAAG,GAAG,CAAC,CAAS,EAAU,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAE7E;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAE1C;;yEAEyE;AACzE,MAAM,CAAC,MAAM,kBAAkB,GAAG,QAAQ,CAAC;AAE3C,iGAAiG;AACjG,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,OAAO,GAAG,kBAAkB,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC;AAC9C,CAAC;AAED,wGAAwG;AACxG,MAAM,UAAU,YAAY,CAAC,KAAa;IACxC,OAAO,KAAK,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC;AAC9C,CAAC;AAED,iGAAiG;AACjG,MAAM,UAAU,WAAW,CAAC,KAAa;IACvC,IAAI,CAAC;QACH,OAAO,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,+FAA+F;AAC/F,MAAM,UAAU,UAAU,CACxB,IAAY,EACZ,KAA0C,EAC1C,KAAa,EACb,GAAW;IAEX,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,KAAK,IAAI,GAAG,EAAE,CAAC;AACnF,CAAC;AAED,sGAAsG;AACtG,MAAM,UAAU,YAAY,CAAC,KAAa;IACxC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAA4B,CAAC;IAC/E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,uGAAuG;AACvG,MAAM,UAAU,YAAY,CAAC,OAAgB,EAAE,KAA8B;IAC3E,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC,CAAC,iDAAiD;IACrF,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC1D,MAAM,CAAC,GAAG,OAAkC,CAAC;IAC7C,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9E,CAAC"}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/events.ts"],"names":[],"mappings":"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"}
@@ -91,6 +91,12 @@ export declare function announcementsOf(raw: RawWorkerDescriptor | WorkerDescrip
91
91
  * `instances` is a set, so it counts workers, not keys.
92
92
  */
93
93
  export declare function aggregateAnnouncements(descriptors: readonly (RawWorkerDescriptor | WorkerDescriptor)[]): AnnouncedWorkflow[];
94
+ /**
95
+ * Which workflows the live fleet announces as subscribers of each event: event name → subscriber
96
+ * workflow names, folded from every descriptor's {@link WorkflowRegistration.subscribes}. Pure, like
97
+ * {@link aggregateAnnouncements}.
98
+ */
99
+ export declare function announcedSubscriptions(descriptors: readonly (RawWorkerDescriptor | WorkerDescriptor)[]): Map<string, Set<string>>;
94
100
  /** One live worker heartbeat as {@link observedAnnouncements} reads it: the token and who beats. */
95
101
  export interface HeartbeatSighting {
96
102
  /** The routing token the beat was published under (already partition-suffixed when partitioned). */
@@ -1 +1 @@
1
- {"version":3,"file":"announced.d.ts","sourceRoot":"","sources":["../../../src/handshake/announced.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAGnG,0FAA0F;AAC1F,MAAM,WAAW,oBAAqB,SAAQ,oBAAoB;IAChE,2CAA2C;IAC3C,UAAU,EAAE,MAAM,CAAC;IACnB,qGAAqG;IACrG,OAAO,EAAE,MAAM,GAAG,QAAQ,CAAC;CAC5B;AAED;iGACiG;AACjG,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;IAClD,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,oBAAoB,GAAG,UAAU,GAAG,UAAU,CAAC;AAE3D,2FAA2F;AAC3F,MAAM,WAAW,iBAAiB;IAChC;;kFAE8E;IAC9E,QAAQ,EAAE,oBAAoB,CAAC;IAC/B,8FAA8F;IAC9F,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,6FAA6F;IAC7F,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;qGAEiG;IACjG,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,sFAAsF;IACtF,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB;sGACkG;IAClG,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC;IACrB;mGAC+F;IAC/F,OAAO,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,EAAE,EAAE,CAAC;IACjD;;iDAE6C;IAC7C,QAAQ,EAAE,CAAC,MAAM,GAAG,QAAQ,CAAC,EAAE,CAAC;IAChC;;sGAEkG;IAClG,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB;4FACwF;IACxF,aAAa,EAAE,YAAY,EAAE,CAAC;CAC/B;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,mBAAmB,GAAG,gBAAgB,GAC1C,oBAAoB,EAAE,CASxB;AAYD;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,SAAS,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,EAAE,GAC/D,iBAAiB,EAAE,CAkErB;AAED,oGAAoG;AACpG,MAAM,WAAW,iBAAiB;IAChC,oGAAoG;IACpG,KAAK,EAAE,MAAM,CAAC;IACd,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,SAAS,iBAAiB,EAAE,EACxC,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,GAC3B,iBAAiB,EAAE,CAsBrB;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAC3B,SAAS,EAAE,SAAS,iBAAiB,EAAE,EACvC,WAAW,EAAE,SAAS,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,EAAE,EAChE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GACjC,GAAG,CAAC,MAAM,CAAC,CAeb"}
1
+ {"version":3,"file":"announced.d.ts","sourceRoot":"","sources":["../../../src/handshake/announced.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAGnG,0FAA0F;AAC1F,MAAM,WAAW,oBAAqB,SAAQ,oBAAoB;IAChE,2CAA2C;IAC3C,UAAU,EAAE,MAAM,CAAC;IACnB,qGAAqG;IACrG,OAAO,EAAE,MAAM,GAAG,QAAQ,CAAC;CAC5B;AAED;iGACiG;AACjG,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;IAClD,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,oBAAoB,GAAG,UAAU,GAAG,UAAU,CAAC;AAE3D,2FAA2F;AAC3F,MAAM,WAAW,iBAAiB;IAChC;;kFAE8E;IAC9E,QAAQ,EAAE,oBAAoB,CAAC;IAC/B,8FAA8F;IAC9F,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,6FAA6F;IAC7F,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;qGAEiG;IACjG,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,sFAAsF;IACtF,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB;sGACkG;IAClG,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC;IACrB;mGAC+F;IAC/F,OAAO,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,EAAE,EAAE,CAAC;IACjD;;iDAE6C;IAC7C,QAAQ,EAAE,CAAC,MAAM,GAAG,QAAQ,CAAC,EAAE,CAAC;IAChC;;sGAEkG;IAClG,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB;4FACwF;IACxF,aAAa,EAAE,YAAY,EAAE,CAAC;CAC/B;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,mBAAmB,GAAG,gBAAgB,GAC1C,oBAAoB,EAAE,CASxB;AAYD;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,SAAS,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,EAAE,GAC/D,iBAAiB,EAAE,CAkErB;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,SAAS,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,EAAE,GAC/D,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAY1B;AAED,oGAAoG;AACpG,MAAM,WAAW,iBAAiB;IAChC,oGAAoG;IACpG,KAAK,EAAE,MAAM,CAAC;IACd,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,SAAS,iBAAiB,EAAE,EACxC,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,GAC3B,iBAAiB,EAAE,CAsBrB;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAC3B,SAAS,EAAE,SAAS,iBAAiB,EAAE,EACvC,WAAW,EAAE,SAAS,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,EAAE,EAChE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GACjC,GAAG,CAAC,MAAM,CAAC,CAeb"}
@@ -110,6 +110,26 @@ export function aggregateAnnouncements(descriptors) {
110
110
  }
111
111
  return out.sort((a, b) => a.key.localeCompare(b.key));
112
112
  }
113
+ /**
114
+ * Which workflows the live fleet announces as subscribers of each event: event name → subscriber
115
+ * workflow names, folded from every descriptor's {@link WorkflowRegistration.subscribes}. Pure, like
116
+ * {@link aggregateAnnouncements}.
117
+ */
118
+ export function announcedSubscriptions(descriptors) {
119
+ const byEvent = new Map();
120
+ for (const descriptor of descriptors) {
121
+ for (const announcement of announcementsOf(descriptor)) {
122
+ for (const event of announcement.subscribes ?? []) {
123
+ const subscribers = byEvent.get(event);
124
+ if (subscribers)
125
+ subscribers.add(announcement.name);
126
+ else
127
+ byEvent.set(event, new Set([announcement.name]));
128
+ }
129
+ }
130
+ }
131
+ return byEvent;
132
+ }
113
133
  /**
114
134
  * The weaker tier: one `'observed'` entry per live routing token that NO descriptor accounts for —
115
135
  * how a worker on an SDK too old to describe itself still appears. `covered` holds every token the
@@ -1 +1 @@
1
- {"version":3,"file":"announced.js","sourceRoot":"","sources":["../../../src/handshake/announced.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"announced.js","sourceRoot":"","sources":["../../../src/handshake/announced.ts"],"names":[],"mappings":"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"}
@@ -41,6 +41,12 @@ export interface WorkflowRegistration {
41
41
  code?: string;
42
42
  workflow: string;
43
43
  }[];
44
+ /**
45
+ * The `onEvent` event names this workflow subscribes to, lifecycle events (`run.completed:<wf>`,
46
+ * `run.failed:<wf>`) included. A settling engine reads them to know which subscribers a run owes
47
+ * its lifecycle event to, beyond the ones it registers itself. Absent = not stated.
48
+ */
49
+ subscribes?: string[];
44
50
  }
45
51
  /**
46
52
  * A worker's (or control-plane's) advertised identity, wire-protocol support, feature capabilities
@@ -1 +1 @@
1
- {"version":3,"file":"descriptor.d.ts","sourceRoot":"","sources":["../../../src/handshake/descriptor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,oBAAoB;IACnC,0EAA0E;IAC1E,IAAI,EAAE,MAAM,CAAC;IACb,2FAA2F;IAC3F,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;qGACiG;IACjG,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oGAAoG;IACpG,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB;sFACkF;IAClF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;OAKG;IACH,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACjD;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,6FAA6F;IAC7F,UAAU,EAAE,MAAM,CAAC;IACnB,mGAAmG;IACnG,OAAO,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC3B,8FAA8F;IAC9F,GAAG,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IACvC;;;;OAIG;IACH,QAAQ,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAC;IACvD;;4EAEwE;IACxE,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,sFAAsF;IACtF,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,kFAAkF;IAClF,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACvC,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oGAAoG;IACpG,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAE1C;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,gBAAgB,CAAC,UAAU,CAAiC,CAAC;AAE9F;;;;;;;;;GASG;AACH,eAAO,MAAM,sBAAsB,EAAE,SAAS,MAAM,EAYlD,CAAC;AAEH;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC,GAAG;IAC5F,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,GAAG,QAAQ,CAAC;CAC5B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,mBAAmB,GAAG,gBAAgB,GAAG,OAAO,CAEvF;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,mBAAmB,GAAG,gBAAgB,GAAG,gBAAgB,CAcjG;AAED;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,IAAI,GAAG,UAAU,GAAG,WAAW,GAAG,SAAS,CAAC;AAE1E;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,2BAA2B;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,gCAAgC;IAChC,MAAM,EAAE,eAAe,CAAC;IACxB,kEAAkE;IAClE,cAAc,EAAE,MAAM,CAAC;CACxB;AAwBD,oGAAoG;AACpG,wBAAgB,eAAe,CAC7B,MAAM,EAAE,SAAS;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,EAAE,GACrD;IAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,EAAE,CAS7C;AA8CD;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,mBAAmB,GAAG,gBAAgB,GAAG,MAAM,CAGzF;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,UAAU,EAAE,mBAAmB,GAAG,gBAAgB,EAClD,IAAI,GAAE;IAAE,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,eAAe,CAAA;CAAO,GACnD,eAAe,CAMjB"}
1
+ {"version":3,"file":"descriptor.d.ts","sourceRoot":"","sources":["../../../src/handshake/descriptor.ts"],"names":[],"mappings":"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"}
@@ -85,6 +85,7 @@ function canonicalizeRegistrations(regs) {
85
85
  origin: r.origin ?? null,
86
86
  // Conditional, so a registration that states no routes keeps the hash it had before routes existed.
87
87
  ...(r.onError !== undefined ? { onError: canonicalRoutes(r.onError) } : {}),
88
+ ...(r.subscribes !== undefined ? { subscribes: [...new Set(r.subscribes)].sort() } : {}),
88
89
  }));
89
90
  const byJson = new Map();
90
91
  for (const entry of canonical)
@@ -1 +1 @@
1
- {"version":3,"file":"descriptor.js","sourceRoot":"","sources":["../../../src/handshake/descriptor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAqFH;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC;AAE1C;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAiC,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;AAE9F;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAsB,MAAM,CAAC,MAAM,CAAC;IACrE,MAAM;IACN,SAAS;IACT,mBAAmB;IACnB,UAAU;IACV,UAAU;IACV,iBAAiB;IACjB,WAAW;IACX,WAAW;IACX,iBAAiB;IACjB,SAAS;IACT,cAAc;CACf,CAAC,CAAC;AAWH;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAA2C;IAC5E,OAAQ,GAAiC,CAAC,QAAQ,KAAK,SAAS,CAAC;AACnE,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAA2C;IAC7E,OAAO;QACL,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE;QACjD,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,EAAE,GAAG,kBAAkB,EAAE;QACnD,YAAY,EAAE,GAAG,CAAC,YAAY,IAAI,CAAC,GAAG,sBAAsB,CAAC;QAC7D,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,EAAE;QAC9B,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,EAAE;QACtB,GAAG,CAAC,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChF,GAAG,CAAC,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,GAAG,CAAC,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,CAAC;KAC9B,CAAC;AACJ,CAAC;AAuBD;;;;;;GAMG;AACH,SAAS,yBAAyB,CAAC,IAAqC;IACtE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACjC,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,IAAI;QAC1B,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,IAAI;QACtB,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI;QAC7D,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,IAAI;QACxB,oGAAoG;QACpG,GAAG,CAAC,CAAC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5E,CAAC,CAAC,CAAC;IACJ,MAAM,MAAM,GAAG,IAAI,GAAG,EAAmB,CAAC;IAC1C,KAAK,MAAM,KAAK,IAAI,SAAS;QAAE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;IACxE,OAAO,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED,oGAAoG;AACpG,MAAM,UAAU,eAAe,CAC7B,MAAsD;IAEtD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAqD,CAAC;IAC5E,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC7D,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;SACtB,IAAI,EAAE;SACN,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAA8C,CAAC,CAAC;AAC5E,CAAC;AAED;;qGAEqG;AACrG,SAAS,mBAAmB,CAAC,CAAmB;IAC9C,MAAM,GAAG,GAAG,CAAC,EAAY,EAAY,EAAE,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAChE,4FAA4F;IAC5F,wDAAwD;IACxD,OAAO;QACL,UAAU,EAAE,CAAC,CAAC,UAAU;QACxB,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE;QACjD,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;QAC5F,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC;QACjC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3B,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;QACnB,+FAA+F;QAC/F,GAAG,CAAC,CAAC,CAAC,aAAa,KAAK,SAAS;YAC/B,CAAC,CAAC,EAAE,aAAa,EAAE,yBAAyB,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE;YAC/D,CAAC,CAAC,EAAE,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,SAAS,IAAI,IAAI;QAC9B,SAAS,EAAE,CAAC,CAAC,SAAS,IAAI,IAAI;QAC9B,SAAS,EAAE,CAAC,CAAC,SAAS;KACvB,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,UAAU,CAAC,KAAa;IAC/B,MAAM,MAAM,GAAG,mBAAmB,CAAC;IACnC,MAAM,KAAK,GAAG,cAAc,CAAC;IAC7B,MAAM,IAAI,GAAG,mBAAmB,CAAC;IACjC,IAAI,IAAI,GAAG,MAAM,CAAC;IAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QAC3C,0FAA0F;QAC1F,IAAI,IAAI,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QAClD,IAAI,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC;IAC/B,CAAC;IACD,OAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;AAC7C,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc,CAAC,UAAkD;IAC/E,MAAM,SAAS,GAAG,mBAAmB,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAAC;IACvE,OAAO,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;AAC/C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAC7B,UAAkD,EAClD,IAAI,GAA8C,EAAE;IAEpD,OAAO;QACL,EAAE,EAAE,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE;QACzB,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI;QAC3B,cAAc,EAAE,cAAc,CAAC,UAAU,CAAC;KAC3C,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"descriptor.js","sourceRoot":"","sources":["../../../src/handshake/descriptor.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /** Keep in sync with this package's `version` in package.json. */
2
- export declare const VERSION = "0.58.3";
2
+ export declare const VERSION = "0.59.0";
3
3
  export { configure } from '../configure.js';
4
4
  export * from './admission.js';
5
5
  export type { AdmissionContext, AdmissionFactory, RedisAdmissionConfig, } from './admissions/factory.js';
@@ -33,6 +33,7 @@ export * from './handshake/directory.js';
33
33
  export * from './handshake/negotiate.js';
34
34
  export * from './handshake/routing.js';
35
35
  export * from './interfaces.js';
36
+ export * from './lifecycle-events.js';
36
37
  export * from './metrics.js';
37
38
  export { asHeartbeat, withScheduleOrigin } from './observability-scope.js';
38
39
  export * from './on-error.js';
@@ -44,7 +45,7 @@ export * from './remote-workflow-executor.js';
44
45
  export * from './run-detail-summary.js';
45
46
  export * from './run-facets.js';
46
47
  export type { DurableTopology, RunGateway, StartRunOptions } from './run-gateway/interface.js';
47
- export { ProxyRunGateway, type ProxyRunGatewayOptions, type ProxyTransport, } from './run-gateway/proxy-run-gateway.js';
48
+ export { ProxyRunGateway, type ProxyRunGatewayOptions, type ProxyTransport, RunGatewayError, type RunGatewayErrorCode, } from './run-gateway/proxy-run-gateway.js';
48
49
  export { type ResponderTransport, RunRequestResponder, type RunRequestResponderOptions, UNSUPPORTED_RUN_REQUEST, } from './run-gateway/run-request-responder.js';
49
50
  export { type RunGatewayEngine, StoreRunGateway, type StoreRunGatewayOptions, } from './run-gateway/store-run-gateway.js';
50
51
  export { hmacTenantVerifier, signTenantToken } from './run-gateway/tenant-auth.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/dist/src/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /** Keep in sync with this package's `version` in package.json. */
2
- export const VERSION = '0.58.3';
2
+ export const VERSION = '0.59.0';
3
3
  // Re-export the configure hook from the package root so `node ace configure` finds it.
4
4
  // AdonisJS imports the package MAIN and reads `configure` off the module namespace —
5
5
  // the `./configure` subpath alone is never consulted.
@@ -40,6 +40,7 @@ export * from './handshake/directory.js';
40
40
  export * from './handshake/negotiate.js';
41
41
  export * from './handshake/routing.js';
42
42
  export * from './interfaces.js';
43
+ export * from './lifecycle-events.js';
43
44
  export * from './metrics.js';
44
45
  export { asHeartbeat, withScheduleOrigin } from './observability-scope.js';
45
46
  export * from './on-error.js';
@@ -50,7 +51,7 @@ export { isRemoteEvent } from './remote-event.js';
50
51
  export * from './remote-workflow-executor.js';
51
52
  export * from './run-detail-summary.js';
52
53
  export * from './run-facets.js';
53
- export { ProxyRunGateway, } from './run-gateway/proxy-run-gateway.js';
54
+ export { ProxyRunGateway, RunGatewayError, } from './run-gateway/proxy-run-gateway.js';
54
55
  export { RunRequestResponder, UNSUPPORTED_RUN_REQUEST, } from './run-gateway/run-request-responder.js';
55
56
  export { StoreRunGateway, } from './run-gateway/store-run-gateway.js';
56
57
  export { hmacTenantVerifier, signTenantToken } from './run-gateway/tenant-auth.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}