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

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 (207) hide show
  1. package/README.md +104 -16
  2. package/REFERENCE.md +486 -57
  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-ai-runtime.d.ts +1 -1
  8. package/dist/agent/agent-live-ai-runtime.js +1 -1
  9. package/dist/agent/agent-live-budget.d.ts +1 -1
  10. package/dist/agent/agent-live-budget.js +1 -1
  11. package/dist/agent/agent-live-read-runtime.d.ts +13 -2
  12. package/dist/agent/agent-live-read-runtime.d.ts.map +1 -1
  13. package/dist/agent/agent-live-read-runtime.js +6 -5
  14. package/dist/agent/agent-live-read-runtime.js.map +1 -1
  15. package/dist/browser/browser-admission.d.ts +47 -0
  16. package/dist/browser/browser-admission.d.ts.map +1 -0
  17. package/dist/browser/browser-admission.js +200 -0
  18. package/dist/browser/browser-admission.js.map +1 -0
  19. package/dist/browser/browser-server.d.ts +171 -1
  20. package/dist/browser/browser-server.d.ts.map +1 -1
  21. package/dist/browser/browser-server.js +1027 -303
  22. package/dist/browser/browser-server.js.map +1 -1
  23. package/dist/browser/durable-subscription-bindings.d.ts +5 -0
  24. package/dist/browser/durable-subscription-bindings.d.ts.map +1 -1
  25. package/dist/browser/durable-subscription-bindings.js +226 -38
  26. package/dist/browser/durable-subscription-bindings.js.map +1 -1
  27. package/dist/browser/index.d.ts +1 -1
  28. package/dist/browser/index.d.ts.map +1 -1
  29. package/dist/browser/options.d.ts +53 -2
  30. package/dist/browser/options.d.ts.map +1 -1
  31. package/dist/bus/command-bus.d.ts +9 -1
  32. package/dist/bus/command-bus.d.ts.map +1 -1
  33. package/dist/bus/command-bus.js +75 -10
  34. package/dist/bus/command-bus.js.map +1 -1
  35. package/dist/bus/command-errors.d.ts +20 -4
  36. package/dist/bus/command-errors.d.ts.map +1 -1
  37. package/dist/bus/command-errors.js +47 -7
  38. package/dist/bus/command-errors.js.map +1 -1
  39. package/dist/bus/event-bus.d.ts +9 -1
  40. package/dist/bus/event-bus.d.ts.map +1 -1
  41. package/dist/bus/event-bus.js +136 -9
  42. package/dist/bus/event-bus.js.map +1 -1
  43. package/dist/context/bounded-context.d.ts +59 -39
  44. package/dist/context/bounded-context.d.ts.map +1 -1
  45. package/dist/context/bounded-context.js +277 -262
  46. package/dist/context/bounded-context.js.map +1 -1
  47. package/dist/context/entity-inbox.d.ts +12 -17
  48. package/dist/context/entity-inbox.d.ts.map +1 -1
  49. package/dist/context/entity-inbox.js +106 -119
  50. package/dist/context/entity-inbox.js.map +1 -1
  51. package/dist/context/local-inbox-handoff.d.ts +13 -13
  52. package/dist/context/local-inbox-handoff.d.ts.map +1 -1
  53. package/dist/context/local-inbox-handoff.js +60 -32
  54. package/dist/context/local-inbox-handoff.js.map +1 -1
  55. package/dist/context/persistent-tenant-index.d.ts +81 -0
  56. package/dist/context/persistent-tenant-index.d.ts.map +1 -0
  57. package/dist/context/persistent-tenant-index.js +270 -0
  58. package/dist/context/persistent-tenant-index.js.map +1 -0
  59. package/dist/context/projection-handoff.d.ts +9 -9
  60. package/dist/context/projection-handoff.d.ts.map +1 -1
  61. package/dist/context/projection-handoff.js +31 -23
  62. package/dist/context/projection-handoff.js.map +1 -1
  63. package/dist/context/tenant-index.d.ts +7 -6
  64. package/dist/context/tenant-index.d.ts.map +1 -1
  65. package/dist/context/tenant-index.js +2 -188
  66. package/dist/context/tenant-index.js.map +1 -1
  67. package/dist/context/tenant-unknown-error.d.ts +2 -2
  68. package/dist/context/tenant-unknown-error.d.ts.map +1 -1
  69. package/dist/context/tenant-unknown-error.js +4 -1
  70. package/dist/context/tenant-unknown-error.js.map +1 -1
  71. package/dist/delivery/delivery-supervisor.d.ts.map +1 -1
  72. package/dist/delivery/delivery-supervisor.js +12 -3
  73. package/dist/delivery/delivery-supervisor.js.map +1 -1
  74. package/dist/delivery/delivery.d.ts +4 -3
  75. package/dist/delivery/delivery.d.ts.map +1 -1
  76. package/dist/delivery/delivery.js +82 -34
  77. package/dist/delivery/delivery.js.map +1 -1
  78. package/dist/delivery/reception-observation.d.ts +3 -3
  79. package/dist/delivery/reception-observation.js +2 -2
  80. package/dist/entity/entity.d.ts +59 -0
  81. package/dist/entity/entity.d.ts.map +1 -1
  82. package/dist/entity/entity.js +60 -0
  83. package/dist/entity/entity.js.map +1 -1
  84. package/dist/handler/app-query-handler.d.ts +60 -0
  85. package/dist/handler/app-query-handler.d.ts.map +1 -0
  86. package/dist/handler/app-query-handler.js +23 -0
  87. package/dist/handler/app-query-handler.js.map +1 -0
  88. package/dist/handler/generated-registry-discovery.d.ts +6 -0
  89. package/dist/handler/generated-registry-discovery.d.ts.map +1 -1
  90. package/dist/handler/generated-registry-discovery.js +71 -2
  91. package/dist/handler/generated-registry-discovery.js.map +1 -1
  92. package/dist/handler/handler-decorators.d.ts +8 -29
  93. package/dist/handler/handler-decorators.d.ts.map +1 -1
  94. package/dist/handler/handler-decorators.js +33 -210
  95. package/dist/handler/handler-decorators.js.map +1 -1
  96. package/dist/handler/spine-metadata-inventory.d.ts +99 -0
  97. package/dist/handler/spine-metadata-inventory.d.ts.map +1 -0
  98. package/dist/handler/spine-metadata-inventory.js +162 -0
  99. package/dist/handler/spine-metadata-inventory.js.map +1 -0
  100. package/dist/index.d.ts +9 -4
  101. package/dist/index.d.ts.map +1 -1
  102. package/dist/index.js +6 -2
  103. package/dist/index.js.map +1 -1
  104. package/dist/repository/command-routing.d.ts +1 -1
  105. package/dist/repository/command-routing.js +1 -1
  106. package/dist/repository/event-routing.d.ts +1 -1
  107. package/dist/repository/event-routing.js +1 -1
  108. package/dist/repository/repository.d.ts +61 -26
  109. package/dist/repository/repository.d.ts.map +1 -1
  110. package/dist/repository/repository.js +612 -306
  111. package/dist/repository/repository.js.map +1 -1
  112. package/dist/repository/state-update-routing.d.ts +1 -1
  113. package/dist/repository/state-update-routing.js +1 -1
  114. package/dist/runtime/signal-publisher.d.ts +23 -8
  115. package/dist/runtime/signal-publisher.d.ts.map +1 -1
  116. package/dist/runtime/signal-publisher.js +11 -8
  117. package/dist/runtime/signal-publisher.js.map +1 -1
  118. package/dist/server/managed-server-application.d.ts +12 -11
  119. package/dist/server/managed-server-application.d.ts.map +1 -1
  120. package/dist/server/managed-server-application.js +41 -25
  121. package/dist/server/managed-server-application.js.map +1 -1
  122. package/dist/server/node-coordinator.d.ts +18 -5
  123. package/dist/server/node-coordinator.d.ts.map +1 -1
  124. package/dist/server/node-coordinator.js +744 -108
  125. package/dist/server/node-coordinator.js.map +1 -1
  126. package/dist/server/reserved-spine-rpc-paths.json +1 -0
  127. package/dist/server/server-environment.d.ts +23 -5
  128. package/dist/server/server-environment.d.ts.map +1 -1
  129. package/dist/server/server-environment.js +89 -24
  130. package/dist/server/server-environment.js.map +1 -1
  131. package/dist/server/server.d.ts +45 -0
  132. package/dist/server/server.d.ts.map +1 -1
  133. package/dist/server/server.js +112 -3
  134. package/dist/server/server.js.map +1 -1
  135. package/dist/services/app-query-execution.d.ts +53 -0
  136. package/dist/services/app-query-execution.d.ts.map +1 -0
  137. package/dist/services/app-query-execution.js +408 -0
  138. package/dist/services/app-query-execution.js.map +1 -0
  139. package/dist/services/native-operation.d.ts +34 -0
  140. package/dist/services/native-operation.d.ts.map +1 -0
  141. package/dist/services/native-operation.js +77 -0
  142. package/dist/services/native-operation.js.map +1 -0
  143. package/dist/services/query-reader.d.ts +32 -7
  144. package/dist/services/query-reader.d.ts.map +1 -1
  145. package/dist/services/query-reader.js +22 -2
  146. package/dist/services/query-reader.js.map +1 -1
  147. package/dist/services/read-request-status.d.ts +65 -0
  148. package/dist/services/read-request-status.d.ts.map +1 -0
  149. package/dist/services/read-request-status.js +151 -0
  150. package/dist/services/read-request-status.js.map +1 -0
  151. package/dist/services/spine-services.d.ts +42 -7
  152. package/dist/services/spine-services.d.ts.map +1 -1
  153. package/dist/services/spine-services.js +1005 -175
  154. package/dist/services/spine-services.js.map +1 -1
  155. package/dist/services/trusted-reader-ingress.d.ts +110 -0
  156. package/dist/services/trusted-reader-ingress.d.ts.map +1 -0
  157. package/dist/services/trusted-reader-ingress.js +102 -0
  158. package/dist/services/trusted-reader-ingress.js.map +1 -0
  159. package/dist/spi/handler-registry.d.ts +2 -0
  160. package/dist/spi/handler-registry.d.ts.map +1 -1
  161. package/dist/spi/handler-registry.js +1 -1
  162. package/dist/spi/handler-registry.js.map +1 -1
  163. package/dist/stand/read-side-filter-engine.d.ts +46 -0
  164. package/dist/stand/read-side-filter-engine.d.ts.map +1 -0
  165. package/dist/stand/read-side-filter-engine.js +356 -0
  166. package/dist/stand/read-side-filter-engine.js.map +1 -0
  167. package/dist/stand/read-side-filter.d.ts +247 -0
  168. package/dist/stand/read-side-filter.d.ts.map +1 -0
  169. package/dist/stand/read-side-filter.js +39 -0
  170. package/dist/stand/read-side-filter.js.map +1 -0
  171. package/dist/stand/read-side-message.d.ts +66 -0
  172. package/dist/stand/read-side-message.d.ts.map +1 -0
  173. package/dist/stand/read-side-message.js +167 -0
  174. package/dist/stand/read-side-message.js.map +1 -0
  175. package/dist/stand/stand-direct-delivery.d.ts +161 -0
  176. package/dist/stand/stand-direct-delivery.d.ts.map +1 -0
  177. package/dist/stand/stand-direct-delivery.js +210 -0
  178. package/dist/stand/stand-direct-delivery.js.map +1 -0
  179. package/dist/stand/stand.d.ts +81 -43
  180. package/dist/stand/stand.d.ts.map +1 -1
  181. package/dist/stand/stand.js +411 -55
  182. package/dist/stand/stand.js.map +1 -1
  183. package/dist/stand/subscription-observer.d.ts.map +1 -1
  184. package/dist/stand/subscription-observer.js +103 -0
  185. package/dist/stand/subscription-observer.js.map +1 -1
  186. package/dist/stand/subscription-read-filters.d.ts +40 -0
  187. package/dist/stand/subscription-read-filters.d.ts.map +1 -0
  188. package/dist/stand/subscription-read-filters.js +91 -0
  189. package/dist/stand/subscription-read-filters.js.map +1 -0
  190. package/dist/stand/subscription-reader-binding.d.ts +20 -0
  191. package/dist/stand/subscription-reader-binding.d.ts.map +1 -0
  192. package/dist/stand/subscription-reader-binding.js +56 -0
  193. package/dist/stand/subscription-reader-binding.js.map +1 -0
  194. package/dist/stand/subscription-records.d.ts +30 -3
  195. package/dist/stand/subscription-records.d.ts.map +1 -1
  196. package/dist/stand/subscription-records.js +61 -16
  197. package/dist/stand/subscription-records.js.map +1 -1
  198. package/dist/stand/subscription-registry.d.ts +49 -14
  199. package/dist/stand/subscription-registry.d.ts.map +1 -1
  200. package/dist/stand/subscription-registry.js +150 -31
  201. package/dist/stand/subscription-registry.js.map +1 -1
  202. package/dist/stand/subscription-runtime.d.ts +7 -2
  203. package/dist/stand/subscription-runtime.d.ts.map +1 -1
  204. package/dist/stand/subscription-runtime.js +131 -25
  205. package/dist/stand/subscription-runtime.js.map +1 -1
  206. package/dist/tsconfig.tsbuildinfo +1 -1
  207. package/package.json +16 -14
@@ -12,12 +12,26 @@
12
12
  * the License.
13
13
  */
14
14
  import { Time } from "@spine-event-engine/core/time";
15
+ import { createHash } from "node:crypto";
16
+ import { ReaderIdentities } from "@spine-event-engine/core/spi/trusted-reader";
15
17
  import { clone, ScalarType, toBinary } from "@bufbuild/protobuf";
16
18
  import { SUBSCRIPTION_ACTIVATION_HANDSHAKE_MS } from "@spine-event-engine/core/spi/subscription-lifecycle";
19
+ import { TenantIdSchema } from "@spine-event-engine/proto";
17
20
  import { SubscriptionIdSchema, SubscriptionSchema, SubscriptionStatus, } from "@spine-event-engine/proto/client";
18
- import { ColumnTypes, RecordColumn, RecordSpec, } from "@spine-event-engine/storage";
21
+ import { ColumnTypes, RecordColumn, RecordSpec, StorageGroup, } from "@spine-event-engine/storage";
22
+ import { StoragePreparations, } from "@spine-event-engine/storage/provider";
19
23
  import { StandSubscriptionRecords } from "./subscription-records.js";
20
24
  const cleanupPageSize = 25;
25
+ /**
26
+ * Maps a logical Bounded Context name to one provider-safe durable record family.
27
+ *
28
+ * @param contextName Logical Bounded Context name.
29
+ * @returns A stable physical StorageGroup.
30
+ */
31
+ export const subscriptionRecordGroup = (contextName) => {
32
+ const digest = createHash("sha256").update(contextName, "utf8").digest("hex").slice(0, 40);
33
+ return new StorageGroup(`sub_${digest}`);
34
+ };
21
35
  /**
22
36
  * Exact durable subscription layout shared by the registry and preparation.
23
37
  */
@@ -65,14 +79,16 @@ export class InMemorySubscriptionRegistry {
65
79
  *
66
80
  * @param subscription Provides the definition to create.
67
81
  * @returns Resolves to the creation outcome.
82
+ * @param reader The verified reader facts for this operation.
68
83
  */
69
- async create(subscription) {
84
+ async create(subscription, reader) {
70
85
  await Promise.resolve();
71
86
  this.#open();
72
87
  const id = subscriptionId(subscription);
73
88
  const existing = this.#entries.get(id);
74
89
  if (existing !== undefined) {
75
- if (!sameSubscription(existing.subscription, subscription))
90
+ if (!sameSubscription(existing.subscription, subscription) ||
91
+ !ReaderIdentities.same(existing.reader, reader))
76
92
  throw new StandConflictError(id);
77
93
  return Promise.resolve({ kind: "existing", entry: copy(existing) });
78
94
  }
@@ -82,6 +98,7 @@ export class InMemorySubscriptionRegistry {
82
98
  phase: "pending",
83
99
  createdAt,
84
100
  pendingUntil: createdAt + SUBSCRIPTION_ACTIVATION_HANDSHAKE_MS,
101
+ ...(reader === undefined ? {} : { reader }),
85
102
  });
86
103
  this.#entries.set(id, entry);
87
104
  return Promise.resolve({ kind: "created", entry: copy(entry) });
@@ -91,14 +108,17 @@ export class InMemorySubscriptionRegistry {
91
108
  *
92
109
  * @param value Identifies the definition to activate.
93
110
  * @returns Resolves to the activation outcome.
111
+ * @param reader The verified reader facts for this operation.
94
112
  */
95
- async activate(value) {
113
+ async activate(value, reader) {
96
114
  await Promise.resolve();
97
115
  this.#open();
98
116
  const id = idValue(value);
99
117
  const entry = this.#entries.get(id);
100
118
  if (entry === undefined)
101
119
  return Promise.resolve({ kind: "missing" });
120
+ if (reader !== undefined && !ReaderIdentities.matches(entry.reader, reader))
121
+ return { kind: "denied" };
102
122
  if (entry.phase === "active")
103
123
  return Promise.resolve({ kind: "active", entry: copy(entry) });
104
124
  if (expiresAt(entry) <= Time.currentTimeMillis()) {
@@ -109,6 +129,7 @@ export class InMemorySubscriptionRegistry {
109
129
  subscription: entry.subscription,
110
130
  phase: "active",
111
131
  createdAt: entry.createdAt,
132
+ ...(entry.reader === undefined ? {} : { reader: entry.reader }),
112
133
  });
113
134
  this.#entries.set(id, active);
114
135
  return Promise.resolve({ kind: "activated", entry: copy(active) });
@@ -118,11 +139,19 @@ export class InMemorySubscriptionRegistry {
118
139
  *
119
140
  * @param value Identifies the definition to delete.
120
141
  * @returns Resolves to the deletion outcome.
142
+ * @param reader The verified reader facts for this operation.
121
143
  */
122
- async delete(value) {
144
+ async delete(value, reader) {
123
145
  await Promise.resolve();
124
146
  this.#open();
125
- return Promise.resolve(this.#entries.delete(idValue(value)) ? "deleted" : "missing");
147
+ const id = idValue(value);
148
+ const entry = this.#entries.get(id);
149
+ if (entry === undefined)
150
+ return "missing";
151
+ if (reader !== undefined && !ReaderIdentities.matches(entry.reader, reader))
152
+ return "denied";
153
+ this.#entries.delete(id);
154
+ return "deleted";
126
155
  }
127
156
  /**
128
157
  * Gets an isolated in-memory definition, when present.
@@ -184,7 +213,9 @@ export class InMemorySubscriptionRegistry {
184
213
  this.#entries.clear();
185
214
  return Promise.resolve();
186
215
  }
187
- #open() {
216
+ /**
217
+ * Opens the configured boundary after lifecycle preflight.
218
+ */ #open() {
188
219
  if (this.#closed)
189
220
  throw new Error("Stand subscription registry is closed.");
190
221
  }
@@ -195,31 +226,53 @@ export class InMemorySubscriptionRegistry {
195
226
  export class StorageSubscriptionRegistry {
196
227
  // prettier-ignore
197
228
  /**
198
- * Indicates that the backing storage owns durable definitions.
229
+ * Indicates that the backing storage retains durable definitions.
199
230
  */
200
231
  persistent = true;
232
+ /**
233
+ * Physical record family selected from the logical Bounded Context name.
234
+ */
235
+ #storageGroup;
236
+ #context;
237
+ #storageFactory;
201
238
  #storage;
202
239
  #closed = false;
203
240
  /**
204
241
  * Creates a registry backed by one compare-and-set-capable record handle.
205
242
  *
206
- * @param context Identifies the storage namespace.
243
+ * @param context Identifies the storage context.
207
244
  * @param storageFactory Creates the registry record handle.
245
+ * @param storageGroup Selects the physical subscription record family.
208
246
  */
209
- constructor(context, storageFactory) {
210
- this.#storage = storageFactory.createRecordStorage(context, subscriptionRecordSpec);
247
+ constructor(context, storageFactory, storageGroup) {
248
+ this.#context = context.multitenant
249
+ ? { name: context.name, multitenant: true, tenantId: clone(TenantIdSchema, context.tenantId) }
250
+ : { name: context.name, multitenant: false };
251
+ this.#storageFactory = storageFactory;
252
+ this.#storageGroup = storageGroup;
253
+ this.#storage = storageFactory.createRecordStorage(this.#context, subscriptionRecordSpec, this.#storageGroup);
211
254
  if (!this.#storage.atomicCompareAndSet) {
212
255
  this.#storage.close();
213
256
  throw new Error("Stand subscription storage must support atomic compare-and-set.");
214
257
  }
215
258
  }
259
+ /**
260
+ * Prepares this registry's captured factory, context, and physical group.
261
+ *
262
+ * @param mode Required preparation mode.
263
+ * @returns Completion of storage preparation.
264
+ */
265
+ prepare(mode) {
266
+ return StoragePreparations.for(this.#storageFactory).prepareRecord(this.#context, subscriptionRecordSpec, this.#storageGroup, mode);
267
+ }
216
268
  /**
217
269
  * Creates a pending durable definition or finds its identical predecessor.
218
270
  *
219
271
  * @param subscription Provides the definition to create.
220
272
  * @returns Resolves to the creation outcome.
273
+ * @param reader The verified reader facts for this operation.
221
274
  */
222
- async create(subscription) {
275
+ async create(subscription, reader) {
223
276
  this.#open();
224
277
  const value = subscriptionId(subscription);
225
278
  const recordId = subscription.id;
@@ -229,7 +282,8 @@ export class StorageSubscriptionRegistry {
229
282
  const current = await this.#storage.read(recordId);
230
283
  if (current !== undefined) {
231
284
  const entry = StandSubscriptionRecords.read(current, value);
232
- if (!sameSubscription(entry.subscription, subscription))
285
+ if (!sameSubscription(entry.subscription, subscription) ||
286
+ !ReaderIdentities.same(entry.reader, reader))
233
287
  throw new StandConflictError(value);
234
288
  return { kind: "existing", entry: copy(entry) };
235
289
  }
@@ -239,6 +293,7 @@ export class StorageSubscriptionRegistry {
239
293
  phase: "pending",
240
294
  createdAt,
241
295
  pendingUntil: createdAt + SUBSCRIPTION_ACTIVATION_HANDSHAKE_MS,
296
+ ...(reader === undefined ? {} : { reader }),
242
297
  });
243
298
  const next = StandSubscriptionRecords.write(entry);
244
299
  try {
@@ -246,23 +301,38 @@ export class StorageSubscriptionRegistry {
246
301
  return { kind: "created", entry: copy(entry) };
247
302
  }
248
303
  catch (error) {
249
- const observed = await this.#storage.read(recordId);
250
- if (observed !== undefined) {
251
- const observedEntry = StandSubscriptionRecords.read(observed, value);
252
- if (sameSubscription(observedEntry.subscription, subscription))
253
- return { kind: "created", entry: copy(observedEntry) };
254
- }
255
- throw error;
304
+ return this.#recoverCreate(recordId, value, subscription, reader, error);
256
305
  }
257
306
  }
258
307
  }
308
+ /**
309
+ * Distinguishes a committed ambiguous write from a failed record write.
310
+ *
311
+ * @param recordId The durable record identifier.
312
+ * @param value Serialized record bytes returned by storage.
313
+ * @param subscription The subscription definition being processed.
314
+ * @param reader The verified reader facts for this operation.
315
+ * @param error The failure being classified or propagated.
316
+ * @returns The recovered created definition.
317
+ */
318
+ async #recoverCreate(recordId, value, subscription, reader, error) {
319
+ const observed = await this.#storage.read(recordId);
320
+ if (observed !== undefined) {
321
+ const observedEntry = StandSubscriptionRecords.read(observed, value);
322
+ if (sameSubscription(observedEntry.subscription, subscription) &&
323
+ ReaderIdentities.same(observedEntry.reader, reader))
324
+ return { kind: "created", entry: copy(observedEntry) };
325
+ }
326
+ throw error;
327
+ }
259
328
  /**
260
329
  * Activates an unexpired durable pending definition.
261
330
  *
262
331
  * @param value Identifies the definition to activate.
263
332
  * @returns Resolves to the activation outcome.
333
+ * @param reader The verified reader facts for this operation.
264
334
  */
265
- async activate(value) {
335
+ async activate(value, reader) {
266
336
  this.#open();
267
337
  const id = idValue(value);
268
338
  for (;;) {
@@ -270,6 +340,8 @@ export class StorageSubscriptionRegistry {
270
340
  if (current === undefined)
271
341
  return { kind: "missing" };
272
342
  const entry = StandSubscriptionRecords.read(current, id);
343
+ if (reader !== undefined && !ReaderIdentities.matches(entry.reader, reader))
344
+ return { kind: "denied" };
273
345
  if (entry.phase === "active")
274
346
  return { kind: "active", entry: copy(entry) };
275
347
  if (expiresAt(entry) <= Time.currentTimeMillis()) {
@@ -281,6 +353,7 @@ export class StorageSubscriptionRegistry {
281
353
  subscription: entry.subscription,
282
354
  phase: "active",
283
355
  createdAt: entry.createdAt,
356
+ ...(entry.reader === undefined ? {} : { reader: entry.reader }),
284
357
  });
285
358
  if (await this.#storage.compareAndSet(value, current, StandSubscriptionRecords.write(active)))
286
359
  return { kind: "activated", entry: copy(active) };
@@ -291,13 +364,17 @@ export class StorageSubscriptionRegistry {
291
364
  *
292
365
  * @param value Identifies the definition to delete.
293
366
  * @returns Resolves to the deletion outcome.
367
+ * @param reader The verified reader facts for this operation.
294
368
  */
295
- async delete(value) {
369
+ async delete(value, reader) {
296
370
  this.#open();
297
371
  for (;;) {
298
372
  const current = await this.#storage.read(value);
299
373
  if (current === undefined)
300
374
  return "missing";
375
+ if (reader !== undefined &&
376
+ !ReaderIdentities.matches(StandSubscriptionRecords.read(current, idValue(value)).reader, reader))
377
+ return "denied";
301
378
  if (await this.#storage.compareAndSet(value, current, undefined))
302
379
  return "deleted";
303
380
  }
@@ -366,43 +443,85 @@ export class StorageSubscriptionRegistry {
366
443
  this.#storage.close();
367
444
  }
368
445
  }
369
- #open() {
446
+ /**
447
+ * Opens the configured boundary after lifecycle preflight.
448
+ */ #open() {
370
449
  if (this.#closed)
371
450
  throw new Error("Stand subscription registry is closed.");
372
451
  }
373
452
  }
374
- function idValue(id) {
453
+ /**
454
+ * Reads a nonblank subscription ID from a Proto identifier.
455
+ *
456
+ * @param id The stable identifier for this record.
457
+ * @returns The validated subscription ID.
458
+ */ function idValue(id) {
375
459
  if (typeof id.value !== "string" || id.value.trim() === "")
376
460
  throw new TypeError("Stand subscription ID must be non-blank.");
377
461
  return id.value;
378
462
  }
379
- function subscriptionId(subscription) {
463
+ /**
464
+ * Reads the validated opaque ID from a subscription definition.
465
+ *
466
+ * @param subscription The subscription definition being processed.
467
+ * @returns The subscription ID.
468
+ */ function subscriptionId(subscription) {
380
469
  const topicId = subscription.topic?.id?.value;
381
470
  if (subscription.id === undefined || typeof topicId !== "string" || topicId.trim() === "")
382
471
  throw new TypeError("Stand subscription ID and topic ID must be non-blank.");
383
472
  return idValue(subscription.id);
384
473
  }
385
- function expiresAt(entry) {
474
+ /**
475
+ * Reads the expiry timestamp from a pending subscription record.
476
+ *
477
+ * @param entry Retained subscription entry.
478
+ * @returns The stored expiry timestamp.
479
+ */ function expiresAt(entry) {
386
480
  if (entry.phase !== "pending")
387
481
  throw new Error("Stand subscription record is invalid.");
388
482
  return entry.pendingUntil;
389
483
  }
390
- function copy(entry) {
484
+ /**
485
+ * Clones a retained subscription entry before returning it.
486
+ *
487
+ * @param entry Retained subscription entry.
488
+ * @returns The detached subscription entry.
489
+ */ function copy(entry) {
391
490
  return freeze({ ...entry, subscription: clone(SubscriptionSchema, entry.subscription) });
392
491
  }
393
- function freeze(entry) {
492
+ /**
493
+ * Prevents mutation of a returned subscription entry.
494
+ *
495
+ * @param entry Retained subscription entry.
496
+ * @returns The frozen entry.
497
+ */ function freeze(entry) {
394
498
  return Object.freeze(entry);
395
499
  }
396
- function sameSubscription(left, right) {
500
+ /**
501
+ * Compares canonical bytes of two subscription definitions.
502
+ *
503
+ * @param left First value being compared.
504
+ * @param right Second value being compared.
505
+ * @returns Whether the definitions are equal.
506
+ */ function sameSubscription(left, right) {
397
507
  const leftBytes = toBinary(SubscriptionSchema, left);
398
508
  const rightBytes = toBinary(SubscriptionSchema, right);
399
509
  return (leftBytes.length === rightBytes.length &&
400
510
  leftBytes.every((value, index) => value === rightBytes[index]));
401
511
  }
402
- function time(value) {
512
+ /**
513
+ * Converts a Proto timestamp to epoch milliseconds.
514
+ *
515
+ * @param value Stored Proto timestamp.
516
+ * @returns The timestamp in milliseconds.
517
+ */ function time(value) {
403
518
  return Number(value.seconds) * 1000 + Math.floor(value.nanos / 1_000_000);
404
519
  }
405
- function fail(message) {
520
+ /**
521
+ * Raises an invalid-record error with the supplied reason.
522
+ *
523
+ * @param message Public validation or error message.
524
+ */ function fail(message) {
406
525
  throw new Error(message);
407
526
  }
408
527
  //# sourceMappingURL=subscription-registry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"subscription-registry.js","sourceRoot":"","sources":["../../src/stand/subscription-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subscription-registry.js","sourceRoot":"","sources":["../../src/stand/subscription-registry.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,10 @@ import type { ILogLayer } from "loglayer";
2
2
  import { type SubscriptionUpdate } from "@spine-event-engine/proto/client";
3
3
  import type { EventBus } from "../bus/event-bus.js";
4
4
  import { type Stand, type StandSubscription } from "./stand.js";
5
- import type { StandSubscriptionRegistry } from "./subscription-registry.js";
5
+ import type { StandSubscriptionEntry, StandSubscriptionRegistry } from "./subscription-registry.js";
6
+ /**
7
+ * Framework hooks for logger and subscription runtime coordination.
8
+ */
6
9
  interface SubscriptionRuntimeAccess {
7
10
  /**
8
11
  * Registers the server logger for this runtime.
@@ -61,9 +64,11 @@ export declare class SubscriptionRuntime {
61
64
  *
62
65
  * @param id Identifies the durable subscription definition.
63
66
  * @param onUpdate Receives rendered subscription updates.
67
+ * @param onInvalidated Closes this consumer when its retained entry changes or disappears.
68
+ * @param expected Admitted entry that must still be current before delivery.
64
69
  * @returns Resolves to the consumer removal handle.
65
70
  */
66
- consume(id: string, onUpdate: (update: SubscriptionUpdate) => void): Promise<StandSubscription>;
71
+ consume(id: string, onUpdate: (update: SubscriptionUpdate) => void, onInvalidated?: () => void, expected?: StandSubscriptionEntry): Promise<StandSubscription>;
67
72
  /**
68
73
  * Updates local attachments from one complete registry snapshot.
69
74
  *
@@ -1 +1 @@
1
- {"version":3,"file":"subscription-runtime.d.ts","sourceRoot":"","sources":["../../src/stand/subscription-runtime.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAGL,KAAK,kBAAkB,EACxB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAGpD,OAAO,EAAe,KAAK,KAAK,EAAE,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC7E,OAAO,KAAK,EAA0B,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAWpG,UAAU,yBAAyB;IACjC;;;;;;OAMG;IACH,aAAa,CAAC,OAAO,EAAE,mBAAmB,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3F;;;;OAIG;IACH,WAAW,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAEhD;;;;;OAKG;IACH,SAAS,CAAC,OAAO,EAAE,mBAAmB,GAAG,SAAS,CAAC;CACpD;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,mBAAmB;;IA6B9B;;;;;;;;OAQG;gBAED,WAAW,EAAE,KAAK,EAClB,WAAW,EAAE,KAAK,EAClB,cAAc,EAAE,QAAQ,EACxB,cAAc,EAAE,QAAQ,EACxB,QAAQ,EAAE,yBAAyB;IAUrC;;;OAGG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA4BtB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAgB/F;;;;OAIG;IACH,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAyD1B;;;;OAIG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAwBxB;;;;OAIG;IACH,QAAQ,IAAI,yBAAyB;IAIrC;;OAEG;IACH,UAAU,IAAI,IAAI;IAKlB;;;;OAIG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAejC;;;;OAIG;IACH,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAqB5B;;;;OAIG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB;;;;OAIG;IACH,UAAU,IAAI,IAAI;CA8GnB;AAED;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,EAAE,yBAwCtC,CAAC"}
1
+ {"version":3,"file":"subscription-runtime.d.ts","sourceRoot":"","sources":["../../src/stand/subscription-runtime.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAGL,KAAK,kBAAkB,EACxB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAGpD,OAAO,EAAe,KAAK,KAAK,EAAE,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC7E,OAAO,KAAK,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAcpG;;GAEG;AACH,UAAU,yBAAyB;IACjC;;;;;;OAMG;IACH,aAAa,CAAC,OAAO,EAAE,mBAAmB,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3F;;;;OAIG;IACH,WAAW,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAEhD;;;;;OAKG;IACH,SAAS,CAAC,OAAO,EAAE,mBAAmB,GAAG,SAAS,CAAC;CACpD;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,mBAAmB;;IA6B9B;;;;;;;;OAQG;gBAED,WAAW,EAAE,KAAK,EAClB,WAAW,EAAE,KAAK,EAClB,cAAc,EAAE,QAAQ,EACxB,cAAc,EAAE,QAAQ,EACxB,QAAQ,EAAE,yBAAyB;IAUrC;;;OAGG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA4BtB;;;;;;;;OAQG;IACH,OAAO,CACL,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,EAC9C,aAAa,CAAC,EAAE,MAAM,IAAI,EAC1B,QAAQ,CAAC,EAAE,sBAAsB,GAChC,OAAO,CAAC,iBAAiB,CAAC;IAuB7B;;;;OAIG;IACH,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IA+D1B;;;;OAIG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IA2CxB;;;;OAIG;IACH,QAAQ,IAAI,yBAAyB;IAIrC;;OAEG;IACH,UAAU,IAAI,IAAI;IAOlB;;;;OAIG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAcjC;;;;OAIG;IACH,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAwB5B;;;;OAIG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB;;;;OAIG;IACH,UAAU,IAAI,IAAI;CAwLnB;AAED;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,EAAE,yBAwCtC,CAAC"}