@spine-event-engine/server 2.0.0-snapshot.25 → 2.0.0-snapshot.26

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 (150) hide show
  1. package/README.md +49 -9
  2. package/REFERENCE.md +339 -22
  3. package/dist/agent/agent-history.d.ts +19 -3
  4. package/dist/agent/agent-history.d.ts.map +1 -1
  5. package/dist/agent/agent-history.js +41 -10
  6. package/dist/agent/agent-history.js.map +1 -1
  7. package/dist/agent/agent-live-read-runtime.d.ts +12 -1
  8. package/dist/agent/agent-live-read-runtime.d.ts.map +1 -1
  9. package/dist/agent/agent-live-read-runtime.js +5 -4
  10. package/dist/agent/agent-live-read-runtime.js.map +1 -1
  11. package/dist/browser/browser-server.d.ts +163 -0
  12. package/dist/browser/browser-server.d.ts.map +1 -1
  13. package/dist/browser/browser-server.js +579 -188
  14. package/dist/browser/browser-server.js.map +1 -1
  15. package/dist/browser/durable-subscription-bindings.d.ts +5 -0
  16. package/dist/browser/durable-subscription-bindings.d.ts.map +1 -1
  17. package/dist/browser/durable-subscription-bindings.js +226 -38
  18. package/dist/browser/durable-subscription-bindings.js.map +1 -1
  19. package/dist/browser/options.d.ts +5 -0
  20. package/dist/browser/options.d.ts.map +1 -1
  21. package/dist/bus/command-bus.d.ts +3 -0
  22. package/dist/bus/command-bus.d.ts.map +1 -1
  23. package/dist/bus/command-bus.js +69 -9
  24. package/dist/bus/command-bus.js.map +1 -1
  25. package/dist/bus/command-errors.d.ts +20 -4
  26. package/dist/bus/command-errors.d.ts.map +1 -1
  27. package/dist/bus/command-errors.js +47 -7
  28. package/dist/bus/command-errors.js.map +1 -1
  29. package/dist/bus/event-bus.d.ts +3 -0
  30. package/dist/bus/event-bus.d.ts.map +1 -1
  31. package/dist/bus/event-bus.js +130 -8
  32. package/dist/bus/event-bus.js.map +1 -1
  33. package/dist/context/bounded-context.d.ts +29 -11
  34. package/dist/context/bounded-context.d.ts.map +1 -1
  35. package/dist/context/bounded-context.js +147 -186
  36. package/dist/context/bounded-context.js.map +1 -1
  37. package/dist/entity/entity.d.ts +59 -0
  38. package/dist/entity/entity.d.ts.map +1 -1
  39. package/dist/entity/entity.js +60 -0
  40. package/dist/entity/entity.js.map +1 -1
  41. package/dist/handler/app-query-handler.d.ts +60 -0
  42. package/dist/handler/app-query-handler.d.ts.map +1 -0
  43. package/dist/handler/app-query-handler.js +23 -0
  44. package/dist/handler/app-query-handler.js.map +1 -0
  45. package/dist/handler/generated-registry-discovery.d.ts +6 -0
  46. package/dist/handler/generated-registry-discovery.d.ts.map +1 -1
  47. package/dist/handler/generated-registry-discovery.js +71 -2
  48. package/dist/handler/generated-registry-discovery.js.map +1 -1
  49. package/dist/handler/handler-decorators.d.ts +8 -29
  50. package/dist/handler/handler-decorators.d.ts.map +1 -1
  51. package/dist/handler/handler-decorators.js +33 -210
  52. package/dist/handler/handler-decorators.js.map +1 -1
  53. package/dist/handler/spine-metadata-inventory.d.ts +99 -0
  54. package/dist/handler/spine-metadata-inventory.d.ts.map +1 -0
  55. package/dist/handler/spine-metadata-inventory.js +162 -0
  56. package/dist/handler/spine-metadata-inventory.js.map +1 -0
  57. package/dist/index.d.ts +5 -3
  58. package/dist/index.d.ts.map +1 -1
  59. package/dist/index.js +4 -2
  60. package/dist/index.js.map +1 -1
  61. package/dist/repository/repository.d.ts +44 -1
  62. package/dist/repository/repository.d.ts.map +1 -1
  63. package/dist/repository/repository.js +368 -88
  64. package/dist/repository/repository.js.map +1 -1
  65. package/dist/server/managed-server-application.d.ts +12 -11
  66. package/dist/server/managed-server-application.d.ts.map +1 -1
  67. package/dist/server/managed-server-application.js +41 -25
  68. package/dist/server/managed-server-application.js.map +1 -1
  69. package/dist/server/node-coordinator.d.ts +18 -5
  70. package/dist/server/node-coordinator.d.ts.map +1 -1
  71. package/dist/server/node-coordinator.js +554 -84
  72. package/dist/server/node-coordinator.js.map +1 -1
  73. package/dist/server/reserved-spine-rpc-paths.json +1 -0
  74. package/dist/server/server-environment.d.ts +17 -0
  75. package/dist/server/server-environment.d.ts.map +1 -1
  76. package/dist/server/server-environment.js +77 -16
  77. package/dist/server/server-environment.js.map +1 -1
  78. package/dist/server/server.d.ts +45 -0
  79. package/dist/server/server.d.ts.map +1 -1
  80. package/dist/server/server.js +111 -3
  81. package/dist/server/server.js.map +1 -1
  82. package/dist/services/app-query-execution.d.ts +53 -0
  83. package/dist/services/app-query-execution.d.ts.map +1 -0
  84. package/dist/services/app-query-execution.js +408 -0
  85. package/dist/services/app-query-execution.js.map +1 -0
  86. package/dist/services/query-reader.d.ts +32 -7
  87. package/dist/services/query-reader.d.ts.map +1 -1
  88. package/dist/services/query-reader.js +22 -2
  89. package/dist/services/query-reader.js.map +1 -1
  90. package/dist/services/read-request-status.d.ts +65 -0
  91. package/dist/services/read-request-status.d.ts.map +1 -0
  92. package/dist/services/read-request-status.js +151 -0
  93. package/dist/services/read-request-status.js.map +1 -0
  94. package/dist/services/spine-services.d.ts +36 -7
  95. package/dist/services/spine-services.d.ts.map +1 -1
  96. package/dist/services/spine-services.js +900 -168
  97. package/dist/services/spine-services.js.map +1 -1
  98. package/dist/services/trusted-reader-ingress.d.ts +92 -0
  99. package/dist/services/trusted-reader-ingress.d.ts.map +1 -0
  100. package/dist/services/trusted-reader-ingress.js +89 -0
  101. package/dist/services/trusted-reader-ingress.js.map +1 -0
  102. package/dist/spi/handler-registry.d.ts +2 -0
  103. package/dist/spi/handler-registry.d.ts.map +1 -1
  104. package/dist/spi/handler-registry.js +1 -1
  105. package/dist/spi/handler-registry.js.map +1 -1
  106. package/dist/stand/read-side-filter-engine.d.ts +46 -0
  107. package/dist/stand/read-side-filter-engine.d.ts.map +1 -0
  108. package/dist/stand/read-side-filter-engine.js +356 -0
  109. package/dist/stand/read-side-filter-engine.js.map +1 -0
  110. package/dist/stand/read-side-filter.d.ts +247 -0
  111. package/dist/stand/read-side-filter.d.ts.map +1 -0
  112. package/dist/stand/read-side-filter.js +39 -0
  113. package/dist/stand/read-side-filter.js.map +1 -0
  114. package/dist/stand/read-side-message.d.ts +66 -0
  115. package/dist/stand/read-side-message.d.ts.map +1 -0
  116. package/dist/stand/read-side-message.js +167 -0
  117. package/dist/stand/read-side-message.js.map +1 -0
  118. package/dist/stand/stand-direct-delivery.d.ts +161 -0
  119. package/dist/stand/stand-direct-delivery.d.ts.map +1 -0
  120. package/dist/stand/stand-direct-delivery.js +210 -0
  121. package/dist/stand/stand-direct-delivery.js.map +1 -0
  122. package/dist/stand/stand.d.ts +80 -42
  123. package/dist/stand/stand.d.ts.map +1 -1
  124. package/dist/stand/stand.js +410 -54
  125. package/dist/stand/stand.js.map +1 -1
  126. package/dist/stand/subscription-observer.d.ts.map +1 -1
  127. package/dist/stand/subscription-observer.js +103 -0
  128. package/dist/stand/subscription-observer.js.map +1 -1
  129. package/dist/stand/subscription-read-filters.d.ts +40 -0
  130. package/dist/stand/subscription-read-filters.d.ts.map +1 -0
  131. package/dist/stand/subscription-read-filters.js +91 -0
  132. package/dist/stand/subscription-read-filters.js.map +1 -0
  133. package/dist/stand/subscription-reader-binding.d.ts +20 -0
  134. package/dist/stand/subscription-reader-binding.d.ts.map +1 -0
  135. package/dist/stand/subscription-reader-binding.js +56 -0
  136. package/dist/stand/subscription-reader-binding.js.map +1 -0
  137. package/dist/stand/subscription-records.d.ts +30 -3
  138. package/dist/stand/subscription-records.d.ts.map +1 -1
  139. package/dist/stand/subscription-records.js +61 -16
  140. package/dist/stand/subscription-records.js.map +1 -1
  141. package/dist/stand/subscription-registry.d.ts +49 -14
  142. package/dist/stand/subscription-registry.d.ts.map +1 -1
  143. package/dist/stand/subscription-registry.js +150 -31
  144. package/dist/stand/subscription-registry.js.map +1 -1
  145. package/dist/stand/subscription-runtime.d.ts +7 -2
  146. package/dist/stand/subscription-runtime.d.ts.map +1 -1
  147. package/dist/stand/subscription-runtime.js +131 -25
  148. package/dist/stand/subscription-runtime.js.map +1 -1
  149. package/dist/tsconfig.tsbuildinfo +1 -1
  150. package/package.json +14 -14
@@ -16,7 +16,9 @@ import { timestampFromMs } from "@bufbuild/protobuf/wkt";
16
16
  import { GatewayAuthenticatedSubscriptionSchema, } from "@spine-event-engine/proto/auth";
17
17
  import { SubscriptionIdSchema, SubscriptionSchema, TopicSchema, } from "@spine-event-engine/proto/client";
18
18
  import { TenantIdSchema } from "@spine-event-engine/proto";
19
+ import { ReaderIdentities } from "@spine-event-engine/core/spi/trusted-reader";
19
20
  import { ColumnTypes, RecordColumn, RecordSpec, } from "@spine-event-engine/storage";
21
+ import { SubscriptionReaderBindings } from "../stand/subscription-reader-binding.js";
20
22
  const expiryBatchSize = 25;
21
23
  const durableCleanupStates = new WeakMap();
22
24
  /**
@@ -35,6 +37,7 @@ export class DurableSubscriptionBindings {
35
37
  #nextId;
36
38
  #pending = new Map();
37
39
  #active = new Map();
40
+ #activeReaders = new Map();
38
41
  #limits;
39
42
  #queued = new Map();
40
43
  #running = new Set();
@@ -82,13 +85,19 @@ export class DurableSubscriptionBindings {
82
85
  }
83
86
  /**
84
87
  * Creates one inactive authenticated subscription from a trusted topic.
88
+ *
85
89
  * @param input Supplies the trusted topic and expiry.
86
90
  * @returns The stored public subscription definition.
87
91
  */
88
92
  create(input) {
89
93
  return this.#admit(() => this.#create(input));
90
94
  }
91
- async #create(input) {
95
+ /**
96
+ * Persists a new reader-bound subscription definition.
97
+ *
98
+ * @param input Durable operation parameters and verified reader state.
99
+ * @returns The created durable subscription.
100
+ */ async #create(input) {
92
101
  const id = this.#nextId();
93
102
  if (id.trim().length === 0)
94
103
  throw new Error("subscription ID must be non-blank");
@@ -103,7 +112,17 @@ export class DurableSubscriptionBindings {
103
112
  id: create(SubscriptionIdSchema, { value: id }),
104
113
  subscription: clone(SubscriptionSchema, subscription),
105
114
  whenExpires: timestampFromMs(input.whenExpires),
115
+ reader: SubscriptionReaderBindings.write(input.reader),
106
116
  });
117
+ return this.#storeCreated(record);
118
+ }
119
+ /**
120
+ * Persists a prepared reader-bound definition with ambiguous-write recovery.
121
+ *
122
+ * @param record The durable subscription record.
123
+ * @returns The stored reader-bound definition.
124
+ */
125
+ async #storeCreated(record) {
107
126
  DurableSubscriptionValues.validate(record);
108
127
  const recordId = record.id;
109
128
  if (recordId === undefined)
@@ -138,9 +157,9 @@ export class DurableSubscriptionBindings {
138
157
  const record = await this.#read(input.id);
139
158
  if (record === undefined ||
140
159
  this.#expired(record, input.nowMs) ||
141
- !DurableSubscriptionValues.owns(record, input.context))
160
+ !DurableSubscriptionValues.owns(record, input.context, input.reader))
142
161
  return { kind: "denied" };
143
- await this.#callbackForId(input.id, input.onDefinition, DurableSubscriptionValues.wire(record), input.signal, true);
162
+ await this.#callbackForId(input.id, input.onDefinition, DurableSubscriptionValues.wire(record), input.signal, true, input.reader);
144
163
  return { kind: "activated" };
145
164
  });
146
165
  }
@@ -151,13 +170,39 @@ export class DurableSubscriptionBindings {
151
170
  * @returns The cancellation outcome.
152
171
  */
153
172
  cancel(input) {
154
- this.#active.get(input.id)?.abort();
155
- return this.#forId(input.id, async () => {
173
+ const activeReader = this.#activeReaders.get(input.id);
174
+ if (activeReader !== undefined && !ReaderIdentities.matches(activeReader, input.reader))
175
+ return Promise.resolve({ kind: "denied" });
176
+ const observed = this.#read(input.id);
177
+ void observed.then((record) => {
178
+ if (record === undefined ||
179
+ !DurableSubscriptionValues.owns(record, input.context, input.reader))
180
+ return;
181
+ const activeReader = this.#activeReaders.get(input.id);
182
+ if (activeReader === undefined || ReaderIdentities.matches(activeReader, input.reader))
183
+ this.#active.get(input.id)?.abort();
184
+ }, () => undefined);
185
+ return this.#forId(input.id, () => this.#cancelAdmitted(input, observed));
186
+ }
187
+ /**
188
+ * Verifies current identity before aborting an active stream or queuing deletion.
189
+ *
190
+ * @param input Authenticated cancellation request.
191
+ * @returns Denial or completed cleanup.
192
+ * @param observation Current activation observation.
193
+ */
194
+ async #cancelAdmitted(input, observation) {
195
+ const observed = await observation;
196
+ if (observed === undefined)
197
+ return { kind: "closed" };
198
+ if (!DurableSubscriptionValues.owns(observed, input.context, input.reader))
199
+ return { kind: "denied" };
200
+ return (async () => {
156
201
  const record = await this.#read(input.id);
157
202
  if (record === undefined)
158
203
  return { kind: "closed" };
159
204
  if (this.#expired(record, input.nowMs) ||
160
- !DurableSubscriptionValues.owns(record, input.context))
205
+ !DurableSubscriptionValues.owns(record, input.context, input.reader))
161
206
  return { kind: "denied" };
162
207
  await this.#callbackForId(input.id, input.onDefinition, DurableSubscriptionValues.wire(record));
163
208
  const recordId = record.id;
@@ -168,7 +213,7 @@ export class DurableSubscriptionBindings {
168
213
  return (await this.#storage.read(recordId)) === undefined
169
214
  ? { kind: "closed" }
170
215
  : { kind: "denied" };
171
- });
216
+ })();
172
217
  }
173
218
  /**
174
219
  * Removes at most the earliest 25 expired definitions.
@@ -202,7 +247,11 @@ export class DurableSubscriptionBindings {
202
247
  });
203
248
  return task;
204
249
  }
205
- async #drainPurges() {
250
+ /**
251
+ * Serializes queued expiry purges through the storage boundary.
252
+ *
253
+ * @returns Completion after the operation settles.
254
+ */ async #drainPurges() {
206
255
  while (this.#purgeHorizon !== undefined) {
207
256
  const horizon = this.#purgeHorizon;
208
257
  this.#purgeHorizon = undefined;
@@ -215,7 +264,12 @@ export class DurableSubscriptionBindings {
215
264
  }
216
265
  }
217
266
  }
218
- async #purgeExpired(nowMs) {
267
+ /**
268
+ * Deletes expired durable subscriptions from storage.
269
+ *
270
+ * @param nowMs The current time in milliseconds.
271
+ * @returns Completion after the operation settles.
272
+ */ async #purgeExpired(nowMs) {
219
273
  const records = await this.#storage.queryEntries({
220
274
  sort: [{ field: "when_expires" }, { field: "id" }],
221
275
  limit: expiryBatchSize,
@@ -238,7 +292,12 @@ export class DurableSubscriptionBindings {
238
292
  recoverActive(input) {
239
293
  return this.#admit(() => this.#recoverActive(input));
240
294
  }
241
- async #recoverActive(input) {
295
+ /**
296
+ * Reloads active durable definitions and resumes their callbacks.
297
+ *
298
+ * @param input Durable operation parameters and verified reader state.
299
+ * @returns Completion after the operation settles.
300
+ */ async #recoverActive(input) {
242
301
  let after;
243
302
  for (;;) {
244
303
  const page = await this.#storage.queryEntries({
@@ -248,22 +307,36 @@ export class DurableSubscriptionBindings {
248
307
  });
249
308
  if (page.length === 0)
250
309
  return;
251
- for (const { id: slotId, record } of page) {
252
- DurableSubscriptionValues.validate(record, slotId);
253
- const id = slotId.value;
254
- await this.#forId(id, async () => {
255
- if (this.#expired(record, input.nowMs))
256
- await this.#removeExpired(record);
257
- else
258
- await input.onDefinition(DurableSubscriptionValues.wire(record), DurableSubscriptionValues.expiryMs(record.whenExpires));
259
- }, true);
260
- }
310
+ for (const { id: slotId, record } of page)
311
+ await this.#recoverRecord(slotId, record, input);
261
312
  const last = page.at(-1);
262
313
  if (last === undefined)
263
314
  throw new Error("Authenticated subscription recovery page is invalid.");
264
315
  after = { id: last.id, values: [{ field: "id", value: last.id }] };
265
316
  }
266
317
  }
318
+ /**
319
+ * Rehydrates a verified durable reader record under its ID serialization.
320
+ *
321
+ * @param slotId Subscription slot ID.
322
+ * @param record The paged durable subscription record used for slot validation.
323
+ * @param input Durable operation parameters and verified reader state.
324
+ * @returns Completion after the operation settles.
325
+ */
326
+ async #recoverRecord(slotId, record, input) {
327
+ DurableSubscriptionValues.validate(record, slotId);
328
+ await this.#forId(slotId.value, async () => {
329
+ const current = await this.#read(slotId.value);
330
+ if (current === undefined)
331
+ return;
332
+ if (SubscriptionReaderBindings.read(current.reader) === undefined)
333
+ return;
334
+ if (this.#expired(current, input.nowMs))
335
+ await this.#removeExpired(current);
336
+ else
337
+ await input.onDefinition(DurableSubscriptionValues.wire(current), DurableSubscriptionValues.expiryMs(current.whenExpires));
338
+ }, true);
339
+ }
267
340
  /**
268
341
  * Stops local operations while leaving durable rows for the next Gateway.
269
342
  *
@@ -273,7 +346,11 @@ export class DurableSubscriptionBindings {
273
346
  this.#closing ??= this.#close();
274
347
  return this.#closing;
275
348
  }
276
- async #close() {
349
+ /**
350
+ * Stops accepting work and drains the active lifecycle.
351
+ *
352
+ * @returns Completion after the operation settles.
353
+ */ async #close() {
277
354
  this.#closed = true;
278
355
  for (const controller of this.#active.values())
279
356
  controller.abort();
@@ -293,7 +370,12 @@ export class DurableSubscriptionBindings {
293
370
  this.#storage.close();
294
371
  }
295
372
  }
296
- async #removeExpired(record) {
373
+ /**
374
+ * Removes one expired durable record without claiming another reader.
375
+ *
376
+ * @param record The durable subscription record.
377
+ * @returns Completion after the operation settles.
378
+ */ async #removeExpired(record) {
297
379
  try {
298
380
  const id = record.id?.value;
299
381
  if (id === undefined)
@@ -306,7 +388,12 @@ export class DurableSubscriptionBindings {
306
388
  if (record.id !== undefined)
307
389
  await this.#storage.compareAndSet(record.id, record, undefined);
308
390
  }
309
- async #read(id) {
391
+ /**
392
+ * Routes a validated read request to its registered Entity state source.
393
+ *
394
+ * @param id The stable identifier for this record.
395
+ * @returns The read response.
396
+ */ async #read(id) {
310
397
  if (id.length === 0)
311
398
  return undefined;
312
399
  const record = await this.#storage.read(create(SubscriptionIdSchema, { value: id }));
@@ -314,11 +401,25 @@ export class DurableSubscriptionBindings {
314
401
  DurableSubscriptionValues.validate(record, create(SubscriptionIdSchema, { value: id }));
315
402
  return record;
316
403
  }
317
- #expired(record, nowMs) {
404
+ /**
405
+ * Checks whether a durable record has passed its stored expiry.
406
+ *
407
+ * @param record The durable subscription record.
408
+ * @param nowMs The current time in milliseconds.
409
+ * @returns Whether the record has expired.
410
+ */ #expired(record, nowMs) {
318
411
  DurableSubscriptionValues.validate(record);
319
412
  return DurableSubscriptionValues.expiryMs(record.whenExpires) <= nowMs;
320
413
  }
321
- async #forId(id, operation, admitted = false) {
414
+ /**
415
+ * Runs a serialized durable operation for one subscription ID.
416
+ *
417
+ * @param id The stable identifier for this record.
418
+ * @param operation Accepted asynchronous operation.
419
+ * @param admitted Verified reader and request state.
420
+ * @returns The operation result for that ID.
421
+ * @typeParam T Result type of the admitted operation.
422
+ */ async #forId(id, operation, admitted = false) {
322
423
  if (!admitted)
323
424
  this.#open();
324
425
  const previous = this.#pending.get(id) ?? Promise.resolve();
@@ -349,7 +450,13 @@ export class DurableSubscriptionBindings {
349
450
  this.#pending.delete(id);
350
451
  }
351
452
  }
352
- #admit(operation) {
453
+ /**
454
+ * Rejects new durable work after close and tracks accepted operations.
455
+ *
456
+ * @param operation Asynchronous storage operation to admit.
457
+ * @returns Tracked operation result.
458
+ * @typeParam T Result of the admitted storage operation.
459
+ */ #admit(operation) {
353
460
  try {
354
461
  this.#open();
355
462
  }
@@ -360,7 +467,11 @@ export class DurableSubscriptionBindings {
360
467
  this.#track(task);
361
468
  return task;
362
469
  }
363
- #track(task) {
470
+ /**
471
+ * Keeps an accepted storage operation visible to close until settled.
472
+ *
473
+ * @param task Accepted operation promise.
474
+ */ #track(task) {
364
475
  this.#running.add(task);
365
476
  void task.then(() => {
366
477
  this.#running.delete(task);
@@ -368,11 +479,20 @@ export class DurableSubscriptionBindings {
368
479
  this.#running.delete(task);
369
480
  });
370
481
  }
371
- #open() {
482
+ /**
483
+ * Requires the durable store to remain open for new operations.
484
+ */ #open() {
372
485
  if (this.#closed)
373
486
  throw new Error("authenticated subscription store is closed");
374
487
  }
375
- async #callback(callback, wire, controller) {
488
+ /**
489
+ * Invokes a retained subscription callback after reader admission.
490
+ *
491
+ * @param callback Definition or lifecycle callback.
492
+ * @param wire Canonical serialized subscription bytes.
493
+ * @param controller Abort controller for the active operation.
494
+ * @returns Completion after the operation settles.
495
+ */ async #callback(callback, wire, controller) {
376
496
  let rejectTimeout = () => undefined;
377
497
  const timeout = new Promise((_, onReject) => {
378
498
  rejectTimeout = onReject;
@@ -388,7 +508,17 @@ export class DurableSubscriptionBindings {
388
508
  clearTimeout(timer);
389
509
  }
390
510
  }
391
- async #callbackForId(id, callback, wire, signal, active = false) {
511
+ /**
512
+ * Finds the retained definition and invokes its callback by ID.
513
+ *
514
+ * @param id The stable identifier for this record.
515
+ * @param callback Definition or lifecycle callback.
516
+ * @param wire Canonical serialized subscription bytes.
517
+ * @param signal The cancellation signal for this operation.
518
+ * @param active Active retained binding state.
519
+ * @param reader The verified reader facts for this operation.
520
+ * @returns Completion after the operation settles.
521
+ */ async #callbackForId(id, callback, wire, signal, active = false, reader) {
392
522
  const controller = new AbortController();
393
523
  const abort = () => {
394
524
  controller.abort();
@@ -397,6 +527,8 @@ export class DurableSubscriptionBindings {
397
527
  if (signal?.aborted)
398
528
  controller.abort();
399
529
  this.#active.set(id, controller);
530
+ if (reader !== undefined)
531
+ this.#activeReaders.set(id, reader);
400
532
  try {
401
533
  if (active)
402
534
  await this.#runActiveCallback(callback, wire, controller);
@@ -407,9 +539,18 @@ export class DurableSubscriptionBindings {
407
539
  signal?.removeEventListener("abort", abort);
408
540
  if (this.#active.get(id) === controller)
409
541
  this.#active.delete(id);
542
+ if (this.#activeReaders.get(id) === reader)
543
+ this.#activeReaders.delete(id);
410
544
  }
411
545
  }
412
- async #runActiveCallback(callback, wire, controller) {
546
+ /**
547
+ * Invokes an active durable definition callback with cancellation tracking.
548
+ *
549
+ * @param callback Definition or lifecycle callback.
550
+ * @param wire Canonical serialized subscription bytes.
551
+ * @param controller Abort controller for the active operation.
552
+ * @returns Completion after the operation settles.
553
+ */ async #runActiveCallback(callback, wire, controller) {
413
554
  let observeAbort = () => undefined;
414
555
  const aborted = new Promise((resolve) => {
415
556
  observeAbort = () => {
@@ -454,7 +595,12 @@ export function attachDurableSubscriptionCleanup(bindings, cleanup) {
454
595
  throw new Error("Authenticated subscription cleanup is already attached.");
455
596
  state.backend = cleanup;
456
597
  }
457
- function durableCleanupFor(bindings) {
598
+ /**
599
+ * Returns the cleanup state associated with a durable binding instance.
600
+ *
601
+ * @param bindings The durable subscription binding port.
602
+ * @returns The durable cleanup state.
603
+ */ function durableCleanupFor(bindings) {
458
604
  const state = durableCleanupStates.get(bindings);
459
605
  if (state === undefined)
460
606
  throw new Error("Authenticated subscription cleanup state is unavailable.");
@@ -465,7 +611,12 @@ function durableCleanupFor(bindings) {
465
611
  };
466
612
  }
467
613
  const DurableSubscriptionValues = Object.freeze({
468
- expiryMs(timestamp) {
614
+ /**
615
+ * Converts a Proto expiry timestamp to milliseconds.
616
+ *
617
+ * @param timestamp Stored Proto timestamp.
618
+ * @returns The expiry time in milliseconds.
619
+ */ expiryMs(timestamp) {
469
620
  if (timestamp === undefined)
470
621
  return Number.NEGATIVE_INFINITY;
471
622
  const seconds = Number(timestamp.seconds);
@@ -479,27 +630,58 @@ const DurableSubscriptionValues = Object.freeze({
479
630
  ? milliseconds
480
631
  : Number.NEGATIVE_INFINITY;
481
632
  },
482
- wire(record) {
633
+ /**
634
+ * Serializes a retained subscription to canonical wire bytes.
635
+ *
636
+ * @param record The durable subscription record.
637
+ * @returns The serialized subscription bytes.
638
+ */ wire(record) {
483
639
  if (record.subscription === undefined)
484
640
  throw new Error("Authenticated subscription has no definition.");
641
+ const binding = SubscriptionReaderBindings.read(record.reader);
485
642
  return {
486
643
  kind: "public-subscription",
487
644
  bytes: toBinary(SubscriptionSchema, record.subscription),
645
+ ...(binding === undefined
646
+ ? {}
647
+ : {
648
+ reader: binding.kind === "anonymous" ? {} : { principal: { id: binding.id } },
649
+ }),
488
650
  };
489
651
  },
490
- same(left, right) {
652
+ /**
653
+ * Compares retained subscription records including reader binding.
654
+ *
655
+ * @param left First value being compared.
656
+ * @param right Second value being compared.
657
+ * @returns Whether the records match.
658
+ */ same(left, right) {
491
659
  const first = toBinary(GatewayAuthenticatedSubscriptionSchema, left);
492
660
  const second = toBinary(GatewayAuthenticatedSubscriptionSchema, right);
493
661
  return (first.byteLength === second.byteLength &&
494
662
  first.every((value, index) => value === second[index]));
495
663
  },
496
- owns(record, context) {
664
+ /**
665
+ * Checks whether a durable record matches the admitted reader.
666
+ *
667
+ * @param record The durable subscription record.
668
+ * @param context The trusted context for this operation.
669
+ * @param reader The verified reader facts for this operation.
670
+ * @returns Whether the reader matches the stored binding.
671
+ */ owns(record, context, reader) {
497
672
  const retained = record.subscription?.topic?.context;
498
673
  return (retained !== undefined &&
674
+ ReaderIdentities.matches(SubscriptionReaderBindings.read(record.reader), reader) &&
499
675
  retained.actor?.value === context.actor?.value &&
500
676
  DurableSubscriptionValues.tenantsEqual(retained.tenantId, context.tenantId));
501
677
  },
502
- tenantsEqual(left, right) {
678
+ /**
679
+ * Compares two optional tenant identifiers.
680
+ *
681
+ * @param left First value being compared.
682
+ * @param right Second value being compared.
683
+ * @returns Whether the tenant identifiers match.
684
+ */ tenantsEqual(left, right) {
503
685
  if (left === undefined || right === undefined)
504
686
  return left === right;
505
687
  const first = toBinary(TenantIdSchema, left);
@@ -507,11 +689,17 @@ const DurableSubscriptionValues = Object.freeze({
507
689
  return (first.byteLength === second.byteLength &&
508
690
  first.every((value, index) => value === second[index]));
509
691
  },
510
- validate(record, slotId) {
692
+ /**
693
+ * Checks a retained subscription record before use.
694
+ *
695
+ * @param record The durable subscription record.
696
+ * @param slotId Subscription slot ID.
697
+ */ validate(record, slotId) {
511
698
  const id = record.id?.value;
512
699
  const nestedId = record.subscription?.id?.value;
513
700
  const context = record.subscription?.topic?.context;
514
701
  const expires = record.whenExpires;
702
+ SubscriptionReaderBindings.read(record.reader);
515
703
  if (id === undefined ||
516
704
  id.length === 0 ||
517
705
  (slotId !== undefined && slotId.value !== id) ||
@@ -1 +1 @@
1
- {"version":3,"file":"durable-subscription-bindings.js","sourceRoot":"","sources":["../../src/browser/durable-subscription-bindings.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACrF,OAAO,EAAE,eAAe,EAAkB,MAAM,wBAAwB,CAAC;AACzE,OAAO,EACL,sCAAsC,GAEvC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,WAAW,GAEZ,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAqB,MAAM,2BAA2B,CAAC;AAS9E,OAAO,EACL,WAAW,EACX,YAAY,EACZ,UAAU,GAGX,MAAM,6BAA6B,CAAC;AAErC,MAAM,eAAe,GAAG,EAAE,CAAC;AAK3B,MAAM,oBAAoB,GAAG,IAAI,OAAO,EAAoD,CAAC;AAuC7F;;;;;GAKG;AACH,MAAM,OAAO,2BAA2B;IACtC,kBAAkB;IAElB;;OAEG;IACM,SAAS,CAAS;IAClB,QAAQ,CAAkE;IAC1E,OAAO,CAAe;IACtB,QAAQ,GAAG,IAAI,GAAG,EAA4B,CAAC;IAC/C,OAAO,GAAG,IAAI,GAAG,EAA2B,CAAC;IAC7C,OAAO,CAKd;IACO,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;IACpC,QAAQ,GAAG,IAAI,GAAG,EAAoB,CAAC;IAChD,aAAa,CAAqB;IAClC,mBAAmB,CAAqB;IACxC,QAAQ,CAA4B;IACpC,OAAO,GAAG,KAAK,CAAC;IAChB,QAAQ,CAA4B;IAEpC;;;;OAIG;IACH,YAAY,OAA2C;QACrD,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC1D,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,oBAAoB,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;QAChF,IAAI,CAAC,OAAO,GAAG;YACb,qBAAqB,EAAE,CAAC;YACxB,kBAAkB,EAAE,MAAM;YAC1B,iBAAiB,EAAE,KAAK;YACxB,GAAG,OAAO,CAAC,MAAM;SAClB,CAAC;QACF,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;YAC7C,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC;gBAC5C,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QAC1E,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,mBAAmB,CACxD,EAAE,IAAI,EAAE,cAAc,OAAO,CAAC,SAAS,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,EAC/D,IAAI,UAAU,CAAC;YACb,UAAU,EAAE,sCAAsC;YAClD,QAAQ,EAAE,oBAAoB;YAC9B,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE;gBACpB,IAAI,MAAM,CAAC,EAAE,KAAK,SAAS;oBAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;gBACtF,OAAO,MAAM,CAAC,EAAE,CAAC;YACnB,CAAC;YACD,OAAO,EAAE;gBACP,IAAI,YAAY,CAAC,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAChF,yBAAyB,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,CACvD;aACF;SACF,CAAC,CACH,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,mBAAmB,EAAE,CAAC;YACvC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAC;QACzF,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,KAGN;QACC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,KAGb;QACC,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC1B,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACjF,MAAM,KAAK,GAAG,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACzD,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS;YAC7B,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;QAC9E,MAAM,YAAY,GAAG,MAAM,CAAC,kBAAkB,EAAE;YAC9C,EAAE,EAAE,MAAM,CAAC,oBAAoB,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;YAC/C,KAAK;SACN,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,CAAC,sCAAsC,EAAE;YAC5D,EAAE,EAAE,MAAM,CAAC,oBAAoB,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;YAC/C,YAAY,EAAE,KAAK,CAAC,kBAAkB,EAAE,YAAY,CAAC;YACrD,WAAW,EAAE,eAAe,CAAC,KAAK,CAAC,WAAW,CAAC;SAChD,CAAC,CAAC;QACH,yBAAyB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC;QAC3B,IAAI,QAAQ,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QACrF,IAAI,OAAgB,CAAC;QACrB,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAC3E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACnD,IAAI,OAAO,KAAK,SAAS,IAAI,yBAAyB,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC;gBAC1E,OAAO,yBAAyB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAChD,MAAM,KAAK,CAAC;QACd,CAAC;QACD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACnD,IAAI,OAAO,KAAK,SAAS,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC;gBAC3E,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,yBAAyB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChD,CAAC;IAED;;;;;OAKG;IACH,QAAQ,CAAC,KAMR;QACC,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,IAAI,EAAE;YACtC,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO;gBAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;YACpD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC1C,IACE,MAAM,KAAK,SAAS;gBACpB,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC;gBAClC,CAAC,yBAAyB,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC;gBAEtD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;YAC5B,MAAM,IAAI,CAAC,cAAc,CACvB,KAAK,CAAC,EAAE,EACR,KAAK,CAAC,YAAY,EAClB,yBAAyB,CAAC,IAAI,CAAC,MAAM,CAAC,EACtC,KAAK,CAAC,MAAM,EACZ,IAAI,CACL,CAAC;YACF,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,KAKN;QACC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;QACpC,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,IAAI,EAAE;YACtC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC1C,IAAI,MAAM,KAAK,SAAS;gBAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;YACpD,IACE,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC;gBAClC,CAAC,yBAAyB,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC;gBAEtD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;YAC5B,MAAM,IAAI,CAAC,cAAc,CACvB,KAAK,CAAC,EAAE,EACR,KAAK,CAAC,YAAY,EAClB,yBAAyB,CAAC,IAAI,CAAC,MAAM,CAAC,CACvC,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC;YAC3B,IAAI,QAAQ,KAAK,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;YACrF,IAAI,MAAM,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC;gBAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;YAC9F,OAAO,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,SAAS;gBACvD,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACpB,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,YAAY,CAAC,KAAa;QACxB,IAAI,CAAC;YACH,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC,CAAC;QACjF,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAC7B,IAAI,CAAC,mBAAmB,IAAI,MAAM,CAAC,iBAAiB,EACpD,IAAI,CAAC,aAAa,IAAI,MAAM,CAAC,iBAAiB,CAC/C,CAAC;YACF,IAAI,KAAK,GAAG,cAAc;gBAAE,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;YACvD,OAAO,IAAI,CAAC,QAAQ,CAAC;QACvB,CAAC;QACD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,IAAI,KAAK,EAAE,KAAK,CAAC,CAAC;QAClE,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAClB,KAAK,IAAI,CAAC,IAAI,CACZ,GAAG,EAAE;YACH,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI;gBAAE,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;QACxD,CAAC,EACD,GAAG,EAAE;YACH,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI;gBAAE,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;QACxD,CAAC,CACF,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,OAAO,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACxC,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC;YACnC,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;YAC/B,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC;YACnC,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YACpC,CAAC;oBAAS,CAAC;gBACT,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;YACvC,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,KAAa;QAC/B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;YAC/C,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;YAClD,KAAK,EAAE,eAAe;SACvB,CAAC,CAAC;QACH,KAAK,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;YAC7C,yBAAyB,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACnD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC;gBAAE,MAAM;YACzC,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC;YACxB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;YAC9B,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,aAAa,CAAC,KAMb;QACC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,KAMpB;QACC,IAAI,KAKS,CAAC;QACd,SAAS,CAAC;YACR,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;gBAC5C,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;gBACvB,KAAK,EAAE,eAAe;gBACtB,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;aAC1C,CAAC,CAAC;YACH,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO;YAC9B,KAAK,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;gBAC1C,yBAAyB,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBACnD,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC;gBACxB,MAAM,IAAI,CAAC,MAAM,CACf,EAAE,EACF,KAAK,IAAI,EAAE;oBACT,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC;wBAAE,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;;wBAExE,MAAM,KAAK,CAAC,YAAY,CACtB,yBAAyB,CAAC,IAAI,CAAC,MAAM,CAAC,EACtC,yBAAyB,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,CACvD,CAAC;gBACN,CAAC,EACD,IAAI,CACL,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACzB,IAAI,IAAI,KAAK,SAAS;gBACpB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;YAC1E,KAAK,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;QACrE,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK;QACH,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;YAAE,UAAU,CAAC,KAAK,EAAE,CAAC;QACnE,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;QACtD,IAAI,aAAa,GAA2B,GAAG,EAAE,CAAC,SAAS,CAAC;QAC5D,MAAM,KAAK,GAAG,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,QAAgC,EAAE,EAAE;YACvE,aAAa,GAAG,QAAQ,CAAC;QAC3B,CAAC,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YAC9B,aAAa,CAAC,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC,CAAC;QAC9D,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QACnC,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;QACtC,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,OAAO,CAAC,CAAC;YACtB,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACxB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,MAAwC;QAC3D,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC;YAC5B,IAAI,EAAE,KAAK,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;YAC/E,MAAM,IAAI,CAAC,cAAc,CACvB,EAAE,EACF,iBAAiB,CAAC,IAAI,CAAC,EACvB,yBAAyB,CAAC,IAAI,CAAC,MAAM,CAAC,CACvC,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;QACT,CAAC;QACD,IAAI,MAAM,CAAC,EAAE,KAAK,SAAS;YAAE,MAAM,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;IAC/F,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,EAAU;QACpB,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QACtC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,oBAAoB,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QACrF,IAAI,MAAM,KAAK,SAAS;YACtB,yBAAyB,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,oBAAoB,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QAC1F,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,QAAQ,CAAC,MAAwC,EAAE,KAAa;QAC9D,yBAAyB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC3C,OAAO,yBAAyB,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC;IACzE,CAAC;IAED,KAAK,CAAC,MAAM,CAAI,EAAU,EAAE,SAA2B,EAAE,QAAQ,GAAG,KAAK;QACvE,IAAI,CAAC,QAAQ;YAAE,IAAI,CAAC,KAAK,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QAC5D,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpC,IAAI,KAAK,IAAI,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,qBAAqB;YAAE,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;QAC3F,IAAI,KAAK;YAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,GAAG,EAAE;YACjB,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;gBAClD,IAAI,SAAS,KAAK,CAAC;oBAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;;oBACxC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;YACvC,CAAC;YACD,OAAO,SAAS,EAAE,CAAC;QACrB,CAAC,CAAC;QACF,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACzC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAClB,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC;QACpB,CAAC;gBAAS,CAAC;YACT,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,IAAI;gBAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED,MAAM,CAAI,SAA2B;QACnC,IAAI,CAAC;YACH,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC,CAAC;QACjF,CAAC;QACD,MAAM,IAAI,GAAG,SAAS,EAAE,CAAC;QACzB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,IAAsB;QAC3B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACxB,KAAK,IAAI,CAAC,IAAI,CACZ,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC,EACD,GAAG,EAAE;YACH,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAClF,CAAC;IAED,KAAK,CAAC,SAAS,CACb,QAAkC,EAClC,IAA4B,EAC5B,UAA2B;QAE3B,IAAI,aAAa,GAA2B,GAAG,EAAE,CAAC,SAAS,CAAC;QAC5D,MAAM,OAAO,GAAG,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,QAAgC,EAAE,EAAE;YACzE,aAAa,GAAG,QAAQ,CAAC;QAC3B,CAAC,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,UAAU,CAAC,KAAK,EAAE,CAAC;YACnB,aAAa,CAAC,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC,CAAC;QAC/D,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QACpC,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;QACnE,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,EAAU,EACV,QAAkC,EAClC,IAA4B,EAC5B,MAAoB,EACpB,MAAM,GAAG,KAAK;QAEd,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,GAAG,EAAE;YACjB,UAAU,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC,CAAC;QACF,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACzD,IAAI,MAAM,EAAE,OAAO;YAAE,UAAU,CAAC,KAAK,EAAE,CAAC;QACxC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QACjC,IAAI,CAAC;YACH,IAAI,MAAM;gBAAE,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;;gBACjE,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;QACxD,CAAC;gBAAS,CAAC;YACT,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC5C,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,UAAU;gBAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,QAAkC,EAClC,IAA4B,EAC5B,UAA2B;QAE3B,IAAI,YAAY,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC;QACnC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAY,CAAC,OAAO,EAAE,EAAE;YACjD,YAAY,GAAG,GAAG,EAAE;gBAClB,OAAO,CAAC,SAAS,CAAC,CAAC;YACrB,CAAC,CAAC;YACF,UAAU,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5E,CAAC,CAAC,CAAC;QACH,IAAI,CAAC;YACH,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO;gBAAE,OAAO;YACtC,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;YACjD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAkB,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;YACpF,IAAI,MAAM,KAAK,SAAS;gBAAE,OAAO;QACnC,CAAC;gBAAS,CAAC;YACT,UAAU,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,UAAU,6BAA6B,CAC3C,QAA0C;IAE1C,OAAO,QAAQ,YAAY,2BAA2B,CAAC;AACzD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gCAAgC,CAC9C,QAAqC,EACrC,OAAiC;IAEjC,MAAM,KAAK,GAAG,oBAAoB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,KAAK,KAAK,SAAS;QACrB,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC9E,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS;QAC7B,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC7E,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;AAC1B,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAqC;IAC9D,MAAM,KAAK,GAAG,oBAAoB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,KAAK,KAAK,SAAS;QACrB,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC9E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE;QAClC,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS;YAAE,MAAM,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QACzE,MAAM,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IACzC,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,yBAAyB,GAAG,MAAM,CAAC,MAAM,CAAC;IAC9C,QAAQ,CAAC,SAAgC;QACvC,IAAI,SAAS,KAAK,SAAS;YAAE,OAAO,MAAM,CAAC,iBAAiB,CAAC;QAC7D,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC1C,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;QAC9B,MAAM,YAAY,GAAG,OAAO,GAAG,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC;QACrE,OAAO,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC;YAClC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC;YACvB,KAAK,IAAI,CAAC;YACV,KAAK,GAAG,aAAa;YACrB,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC;YAClC,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC;IAC/B,CAAC;IACD,IAAI,CAAC,MAAwC;QAC3C,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS;YACnC,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QACnE,OAAO;YACL,IAAI,EAAE,qBAAqB;YAC3B,KAAK,EAAE,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC,YAAY,CAAC;SACzD,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,IAAsC,EAAE,KAAuC;QAClF,MAAM,KAAK,GAAG,QAAQ,CAAC,sCAAsC,EAAE,IAAI,CAAC,CAAC;QACrE,MAAM,MAAM,GAAG,QAAQ,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC;QACvE,OAAO,CACL,KAAK,CAAC,UAAU,KAAK,MAAM,CAAC,UAAU;YACtC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK,CAAC,CAAC,CACvD,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,MAAwC,EAAE,OAAqB;QAClE,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,EAAE,KAAK,EAAE,OAAO,CAAC;QACrD,OAAO,CACL,QAAQ,KAAK,SAAS;YACtB,QAAQ,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC,KAAK,EAAE,KAAK;YAC9C,yBAAyB,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAC5E,CAAC;IACJ,CAAC;IACD,YAAY,CAAC,IAA8B,EAAE,KAA+B;QAC1E,IAAI,IAAI,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,IAAI,KAAK,KAAK,CAAC;QACrE,MAAM,KAAK,GAAG,QAAQ,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,QAAQ,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;QAC/C,OAAO,CACL,KAAK,CAAC,UAAU,KAAK,MAAM,CAAC,UAAU;YACtC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK,CAAC,CAAC,CACvD,CAAC;IACJ,CAAC;IACD,QAAQ,CAAC,MAAwC,EAAE,MAAuB;QACxE,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC;QAC5B,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,EAAE,EAAE,EAAE,KAAK,CAAC;QAChD,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,EAAE,KAAK,EAAE,OAAO,CAAC;QACpD,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC;QACnC,IACE,EAAE,KAAK,SAAS;YAChB,EAAE,CAAC,MAAM,KAAK,CAAC;YACf,CAAC,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,KAAK,EAAE,CAAC;YAC7C,QAAQ,KAAK,EAAE;YACf,OAAO,EAAE,KAAK,EAAE,KAAK,KAAK,SAAS;YACnC,yBAAyB,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,MAAM,CAAC,iBAAiB;YAExE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACrE,CAAC;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"durable-subscription-bindings.js","sourceRoot":"","sources":["../../src/browser/durable-subscription-bindings.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import type { AuthorizationPolicy, Clock, ContextResolver, OpaqueSessionCookies, SessionResolver, SubscriptionBindings } from "@spine-event-engine/auth";
2
2
  import type { TypeRegistryLookup } from "@spine-event-engine/core";
3
+ import type { ReaderProofIssuer } from "@spine-event-engine/core/spi/reader-forwarding";
3
4
  import type { NodeDiscovery } from "@spine-event-engine/deployment";
4
5
  /**
5
6
  * Selects exactly one admission mode and binding ownership for a browser host.
@@ -69,6 +70,10 @@ export interface BrowserServerCollaborators {
69
70
  * Maximum accepted request bytes; defaults to 4 MiB.
70
71
  */
71
72
  readonly readMaxBytes?: number;
73
+ /**
74
+ * Produces operation-bound reader assertions for the configured application node.
75
+ */
76
+ readonly forwardingProof?: ReaderProofIssuer;
72
77
  /**
73
78
  * Maximum emitted response or auth callback bytes; defaults to 4 MiB.
74
79
  */
@@ -1 +1 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/browser/options.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/browser/options.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,9 @@
1
1
  import { type Command } from "@spine-event-engine/proto";
2
2
  import type { ServerEnvironment } from "../server/server-environment.js";
3
3
  import type { CommandDispatcher } from "./command-dispatcher.js";
4
+ /**
5
+ * Framework-only operations for coordinating a CommandBus with its runtime and environment.
6
+ */
4
7
  interface CommandBusAccess {
5
8
  /**
6
9
  * Binds this context bus's private runtime to its captured environment.
@@ -1 +1 @@
1
- {"version":3,"file":"command-bus.d.ts","sourceRoot":"","sources":["../../src/bus/command-bus.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAiB,KAAK,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAOxE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAIzE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAYjE,UAAU,gBAAgB;IACxB;;;;OAIG;IACH,eAAe,CAAC,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAE9E;;;;;OAKG;IACH,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAEzF;;;;;;OAMG;IACH,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtE;;;;;;OAMG;IACH,oBAAoB,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9E;;;;OAIG;IACH,UAAU,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IAEzC;;;;;OAKG;IACH,KAAK,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7C;;;;;OAKG;IACH,WAAW,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnD;;;;OAIG;IACH,UAAU,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IAEzC;;;;;OAKG;IACH,iBAAiB,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,CAAC;CACnD;AAID;;;;;GAKG;AACH,qBAAa,UAAU;;IAarB;;;;OAIG;gBACS,WAAW,GAAE,QAAQ,CAAC,iBAAiB,CAAM;IAsBzD;;;;;;OAMG;IACH,QAAQ,CAAC,UAAU,SAAS,iBAAiB,EAAE,UAAU,EAAE,UAAU,GAAG,UAAU;IAKlF;;;;OAIG;IACH,oBAAoB,IAAI,SAAS,MAAM,EAAE;IAIzC;;;;;OAKG;IACH,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAUrC;;;;;;;;OAQG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAoGvB;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE,gBA2F7B,CAAC"}
1
+ {"version":3,"file":"command-bus.d.ts","sourceRoot":"","sources":["../../src/bus/command-bus.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAiB,KAAK,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAOxE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAIzE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAYjE;;GAEG;AACH,UAAU,gBAAgB;IACxB;;;;OAIG;IACH,eAAe,CAAC,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAE9E;;;;;OAKG;IACH,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAEzF;;;;;;OAMG;IACH,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtE;;;;;;OAMG;IACH,oBAAoB,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9E;;;;OAIG;IACH,UAAU,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IAEzC;;;;;OAKG;IACH,KAAK,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7C;;;;;OAKG;IACH,WAAW,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnD;;;;OAIG;IACH,UAAU,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IAEzC;;;;;OAKG;IACH,iBAAiB,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,CAAC;CACnD;AAOD;;;;;GAKG;AACH,qBAAa,UAAU;;IAarB;;;;OAIG;gBACS,WAAW,GAAE,QAAQ,CAAC,iBAAiB,CAAM;IAsBzD;;;;;;OAMG;IACH,QAAQ,CAAC,UAAU,SAAS,iBAAiB,EAAE,UAAU,EAAE,UAAU,GAAG,UAAU;IAKlF;;;;OAIG;IACH,oBAAoB,IAAI,SAAS,MAAM,EAAE;IAIzC;;;;;OAKG;IACH,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAUrC;;;;;;;;OAQG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CA6IvB;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE,gBAiH7B,CAAC"}