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

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 (300) hide show
  1. package/README.md +38 -11
  2. package/REFERENCE.md +278 -141
  3. package/dist/agent/agent-acceptance-receipts.d.ts +69 -0
  4. package/dist/agent/agent-acceptance-receipts.d.ts.map +1 -0
  5. package/dist/agent/agent-acceptance-receipts.js +198 -0
  6. package/dist/agent/agent-acceptance-receipts.js.map +1 -0
  7. package/dist/agent/agent-execution-capacity.d.ts +37 -9
  8. package/dist/agent/agent-execution-capacity.d.ts.map +1 -1
  9. package/dist/agent/agent-execution-capacity.js +73 -15
  10. package/dist/agent/agent-execution-capacity.js.map +1 -1
  11. package/dist/agent/agent-history.d.ts +15 -10
  12. package/dist/agent/agent-history.d.ts.map +1 -1
  13. package/dist/agent/agent-history.js +26 -14
  14. package/dist/agent/agent-history.js.map +1 -1
  15. package/dist/agent/agent-live-ai-audit.d.ts +95 -0
  16. package/dist/agent/agent-live-ai-audit.d.ts.map +1 -0
  17. package/dist/agent/agent-live-ai-audit.js +290 -0
  18. package/dist/agent/agent-live-ai-audit.js.map +1 -0
  19. package/dist/agent/agent-live-ai-runtime.d.ts +300 -0
  20. package/dist/agent/agent-live-ai-runtime.d.ts.map +1 -0
  21. package/dist/agent/agent-live-ai-runtime.js +611 -0
  22. package/dist/agent/agent-live-ai-runtime.js.map +1 -0
  23. package/dist/agent/agent-live-audit.d.ts +67 -0
  24. package/dist/agent/agent-live-audit.d.ts.map +1 -0
  25. package/dist/agent/agent-live-audit.js +121 -0
  26. package/dist/agent/agent-live-audit.js.map +1 -0
  27. package/dist/agent/agent-live-budget.d.ts +84 -0
  28. package/dist/agent/agent-live-budget.d.ts.map +1 -0
  29. package/dist/agent/agent-live-budget.js +161 -0
  30. package/dist/agent/agent-live-budget.js.map +1 -0
  31. package/dist/agent/agent-live-fault.d.ts +18 -0
  32. package/dist/agent/agent-live-fault.d.ts.map +1 -0
  33. package/dist/agent/{agent-execution-fault.js → agent-live-fault.js} +7 -7
  34. package/dist/agent/agent-live-fault.js.map +1 -0
  35. package/dist/agent/agent-live-inputs.d.ts +74 -0
  36. package/dist/agent/agent-live-inputs.d.ts.map +1 -0
  37. package/dist/agent/agent-live-inputs.js +15 -0
  38. package/dist/agent/agent-live-inputs.js.map +1 -0
  39. package/dist/agent/agent-live-interaction-events.d.ts +46 -0
  40. package/dist/agent/agent-live-interaction-events.d.ts.map +1 -0
  41. package/dist/agent/agent-live-interaction-events.js +104 -0
  42. package/dist/agent/agent-live-interaction-events.js.map +1 -0
  43. package/dist/agent/agent-live-mcp-controls.d.ts +129 -0
  44. package/dist/agent/agent-live-mcp-controls.d.ts.map +1 -0
  45. package/dist/agent/agent-live-mcp-controls.js +228 -0
  46. package/dist/agent/agent-live-mcp-controls.js.map +1 -0
  47. package/dist/agent/agent-live-mcp-host.d.ts +88 -0
  48. package/dist/agent/agent-live-mcp-host.d.ts.map +1 -0
  49. package/dist/agent/{agent-mcp-host.js → agent-live-mcp-host.js} +1 -1
  50. package/dist/agent/agent-live-mcp-host.js.map +1 -0
  51. package/dist/agent/{agent-mcp-runtime.d.ts → agent-live-mcp-runtime.d.ts} +6 -6
  52. package/dist/agent/agent-live-mcp-runtime.d.ts.map +1 -0
  53. package/dist/agent/{agent-mcp-runtime.js → agent-live-mcp-runtime.js} +13 -42
  54. package/dist/agent/agent-live-mcp-runtime.js.map +1 -0
  55. package/dist/agent/agent-live-read-runtime.d.ts +61 -0
  56. package/dist/agent/agent-live-read-runtime.d.ts.map +1 -0
  57. package/dist/agent/agent-live-read-runtime.js +121 -0
  58. package/dist/agent/agent-live-read-runtime.js.map +1 -0
  59. package/dist/agent/agent-model-selection.d.ts +21 -34
  60. package/dist/agent/agent-model-selection.d.ts.map +1 -1
  61. package/dist/agent/agent-model-selection.js +61 -78
  62. package/dist/agent/agent-model-selection.js.map +1 -1
  63. package/dist/bus/command-bus.d.ts +14 -18
  64. package/dist/bus/command-bus.d.ts.map +1 -1
  65. package/dist/bus/command-bus.js +31 -48
  66. package/dist/bus/command-bus.js.map +1 -1
  67. package/dist/bus/event-bus.d.ts +82 -104
  68. package/dist/bus/event-bus.d.ts.map +1 -1
  69. package/dist/bus/event-bus.js +87 -127
  70. package/dist/bus/event-bus.js.map +1 -1
  71. package/dist/context/bounded-context.d.ts +143 -91
  72. package/dist/context/bounded-context.d.ts.map +1 -1
  73. package/dist/context/bounded-context.js +753 -359
  74. package/dist/context/bounded-context.js.map +1 -1
  75. package/dist/context/entity-inbox.d.ts +7 -2
  76. package/dist/context/entity-inbox.d.ts.map +1 -1
  77. package/dist/context/entity-inbox.js +43 -20
  78. package/dist/context/entity-inbox.js.map +1 -1
  79. package/dist/context/local-inbox-handoff.d.ts +35 -34
  80. package/dist/context/local-inbox-handoff.d.ts.map +1 -1
  81. package/dist/context/local-inbox-handoff.js +123 -135
  82. package/dist/context/local-inbox-handoff.js.map +1 -1
  83. package/dist/context/projection-handoff.d.ts +2 -2
  84. package/dist/context/projection-handoff.d.ts.map +1 -1
  85. package/dist/context/projection-handoff.js +12 -8
  86. package/dist/context/projection-handoff.js.map +1 -1
  87. package/dist/context/tenant-index.d.ts +36 -31
  88. package/dist/context/tenant-index.d.ts.map +1 -1
  89. package/dist/context/tenant-index.js +123 -125
  90. package/dist/context/tenant-index.js.map +1 -1
  91. package/dist/context/tenant-unknown-error.d.ts +33 -0
  92. package/dist/context/tenant-unknown-error.d.ts.map +1 -0
  93. package/dist/context/tenant-unknown-error.js +75 -0
  94. package/dist/context/tenant-unknown-error.js.map +1 -0
  95. package/dist/delivery/agent-delivery-scope.d.ts +66 -0
  96. package/dist/delivery/agent-delivery-scope.d.ts.map +1 -0
  97. package/dist/delivery/agent-delivery-scope.js +44 -0
  98. package/dist/delivery/agent-delivery-scope.js.map +1 -0
  99. package/dist/delivery/delivery-builder.d.ts +25 -1
  100. package/dist/delivery/delivery-builder.d.ts.map +1 -1
  101. package/dist/delivery/delivery-builder.js +89 -0
  102. package/dist/delivery/delivery-builder.js.map +1 -1
  103. package/dist/delivery/delivery-monitor.d.ts +12 -9
  104. package/dist/delivery/delivery-monitor.d.ts.map +1 -1
  105. package/dist/delivery/delivery-monitor.js +15 -9
  106. package/dist/delivery/delivery-monitor.js.map +1 -1
  107. package/dist/delivery/delivery-ports.d.ts +6 -13
  108. package/dist/delivery/delivery-ports.d.ts.map +1 -1
  109. package/dist/delivery/delivery-run-control.d.ts +21 -0
  110. package/dist/delivery/delivery-run-control.d.ts.map +1 -1
  111. package/dist/delivery/delivery-run-control.js +10 -0
  112. package/dist/delivery/delivery-run-control.js.map +1 -1
  113. package/dist/delivery/delivery-supervisor.d.ts +33 -5
  114. package/dist/delivery/delivery-supervisor.d.ts.map +1 -1
  115. package/dist/delivery/delivery-supervisor.js +178 -26
  116. package/dist/delivery/delivery-supervisor.js.map +1 -1
  117. package/dist/delivery/delivery-tenant.d.ts +17 -0
  118. package/dist/delivery/delivery-tenant.d.ts.map +1 -0
  119. package/dist/delivery/delivery-tenant.js +50 -0
  120. package/dist/delivery/delivery-tenant.js.map +1 -0
  121. package/dist/delivery/delivery.d.ts +96 -2
  122. package/dist/delivery/delivery.d.ts.map +1 -1
  123. package/dist/delivery/delivery.js +803 -89
  124. package/dist/delivery/delivery.js.map +1 -1
  125. package/dist/delivery/inbox-records.d.ts.map +1 -1
  126. package/dist/delivery/inbox-records.js +9 -16
  127. package/dist/delivery/inbox-records.js.map +1 -1
  128. package/dist/delivery/inbox-storage.d.ts +14 -11
  129. package/dist/delivery/inbox-storage.d.ts.map +1 -1
  130. package/dist/delivery/inbox-storage.js +72 -78
  131. package/dist/delivery/inbox-storage.js.map +1 -1
  132. package/dist/delivery/inbox.d.ts +9 -12
  133. package/dist/delivery/inbox.d.ts.map +1 -1
  134. package/dist/delivery/inbox.js +13 -15
  135. package/dist/delivery/inbox.js.map +1 -1
  136. package/dist/delivery/reception-observation.d.ts +64 -0
  137. package/dist/delivery/reception-observation.d.ts.map +1 -0
  138. package/dist/delivery/reception-observation.js +78 -0
  139. package/dist/delivery/reception-observation.js.map +1 -0
  140. package/dist/delivery/sharded-work-registry.d.ts +6 -0
  141. package/dist/delivery/sharded-work-registry.d.ts.map +1 -1
  142. package/dist/delivery/sharded-work-registry.js +41 -4
  143. package/dist/delivery/sharded-work-registry.js.map +1 -1
  144. package/dist/entity/entity-storage-descriptor.d.ts.map +1 -1
  145. package/dist/entity/entity-storage-descriptor.js +7 -4
  146. package/dist/entity/entity-storage-descriptor.js.map +1 -1
  147. package/dist/index.d.ts +4 -2
  148. package/dist/index.d.ts.map +1 -1
  149. package/dist/index.js +2 -1
  150. package/dist/index.js.map +1 -1
  151. package/dist/integration/external-messages.d.ts.map +1 -1
  152. package/dist/integration/external-messages.js +9 -15
  153. package/dist/integration/external-messages.js.map +1 -1
  154. package/dist/integration/integration-broker.d.ts.map +1 -1
  155. package/dist/integration/integration-broker.js +112 -6
  156. package/dist/integration/integration-broker.js.map +1 -1
  157. package/dist/integration/third-party-context.d.ts.map +1 -1
  158. package/dist/integration/third-party-context.js +7 -10
  159. package/dist/integration/third-party-context.js.map +1 -1
  160. package/dist/repository/primitive-id.js +26 -11
  161. package/dist/repository/primitive-id.js.map +1 -1
  162. package/dist/repository/repository.d.ts +33 -62
  163. package/dist/repository/repository.d.ts.map +1 -1
  164. package/dist/repository/repository.js +1475 -1827
  165. package/dist/repository/repository.js.map +1 -1
  166. package/dist/runtime/runtime.d.ts +24 -0
  167. package/dist/runtime/runtime.d.ts.map +1 -1
  168. package/dist/runtime/runtime.js +31 -0
  169. package/dist/runtime/runtime.js.map +1 -1
  170. package/dist/runtime/signal-metadata.d.ts.map +1 -1
  171. package/dist/runtime/signal-metadata.js +8 -15
  172. package/dist/runtime/signal-metadata.js.map +1 -1
  173. package/dist/runtime/signal-publisher.d.ts +8 -36
  174. package/dist/runtime/signal-publisher.d.ts.map +1 -1
  175. package/dist/runtime/signal-publisher.js +68 -61
  176. package/dist/runtime/signal-publisher.js.map +1 -1
  177. package/dist/runtime/standalone-handler-runtime.d.ts +0 -7
  178. package/dist/runtime/standalone-handler-runtime.d.ts.map +1 -1
  179. package/dist/runtime/standalone-handler-runtime.js +14 -130
  180. package/dist/runtime/standalone-handler-runtime.js.map +1 -1
  181. package/dist/server/managed-delivery-gate.d.ts +34 -0
  182. package/dist/server/managed-delivery-gate.d.ts.map +1 -0
  183. package/dist/server/managed-delivery-gate.js +70 -0
  184. package/dist/server/managed-delivery-gate.js.map +1 -0
  185. package/dist/server/managed-server-application.d.ts +2 -2
  186. package/dist/server/managed-server-application.d.ts.map +1 -1
  187. package/dist/server/managed-server-application.js +471 -178
  188. package/dist/server/managed-server-application.js.map +1 -1
  189. package/dist/server/node-coordinator.d.ts +14 -0
  190. package/dist/server/node-coordinator.d.ts.map +1 -1
  191. package/dist/server/node-coordinator.js +266 -45
  192. package/dist/server/node-coordinator.js.map +1 -1
  193. package/dist/server/server-environment.d.ts +203 -25
  194. package/dist/server/server-environment.d.ts.map +1 -1
  195. package/dist/server/server-environment.js +661 -133
  196. package/dist/server/server-environment.js.map +1 -1
  197. package/dist/server/server-log.d.ts +7 -0
  198. package/dist/server/server-log.d.ts.map +1 -1
  199. package/dist/server/server-log.js +18 -1
  200. package/dist/server/server-log.js.map +1 -1
  201. package/dist/server/server.d.ts +18 -32
  202. package/dist/server/server.d.ts.map +1 -1
  203. package/dist/server/server.js +62 -203
  204. package/dist/server/server.js.map +1 -1
  205. package/dist/services/spine-services.d.ts +1 -1
  206. package/dist/services/spine-services.d.ts.map +1 -1
  207. package/dist/services/spine-services.js +399 -370
  208. package/dist/services/spine-services.js.map +1 -1
  209. package/dist/stand/event-origin-filter.d.ts +16 -0
  210. package/dist/stand/event-origin-filter.d.ts.map +1 -0
  211. package/dist/stand/event-origin-filter.js +124 -0
  212. package/dist/stand/event-origin-filter.js.map +1 -0
  213. package/dist/stand/stand.d.ts +14 -0
  214. package/dist/stand/stand.d.ts.map +1 -1
  215. package/dist/stand/stand.js +53 -9
  216. package/dist/stand/stand.js.map +1 -1
  217. package/dist/stand/subscription-observer.d.ts.map +1 -1
  218. package/dist/stand/subscription-observer.js +61 -40
  219. package/dist/stand/subscription-observer.js.map +1 -1
  220. package/dist/stand/subscription-registry.d.ts +6 -2
  221. package/dist/stand/subscription-registry.d.ts.map +1 -1
  222. package/dist/stand/subscription-registry.js +15 -11
  223. package/dist/stand/subscription-registry.js.map +1 -1
  224. package/dist/stand/subscription-runtime.d.ts +23 -4
  225. package/dist/stand/subscription-runtime.d.ts.map +1 -1
  226. package/dist/stand/subscription-runtime.js +84 -13
  227. package/dist/stand/subscription-runtime.js.map +1 -1
  228. package/dist/testing/index.d.ts.map +1 -1
  229. package/dist/testing/index.js +3 -2
  230. package/dist/testing/index.js.map +1 -1
  231. package/dist/tsconfig.tsbuildinfo +1 -1
  232. package/package.json +15 -15
  233. package/dist/agent/agent-admission.d.ts +0 -80
  234. package/dist/agent/agent-admission.d.ts.map +0 -1
  235. package/dist/agent/agent-admission.js +0 -127
  236. package/dist/agent/agent-admission.js.map +0 -1
  237. package/dist/agent/agent-ai-runtime.d.ts +0 -76
  238. package/dist/agent/agent-ai-runtime.d.ts.map +0 -1
  239. package/dist/agent/agent-ai-runtime.js +0 -1269
  240. package/dist/agent/agent-ai-runtime.js.map +0 -1
  241. package/dist/agent/agent-execution-fault.d.ts +0 -18
  242. package/dist/agent/agent-execution-fault.d.ts.map +0 -1
  243. package/dist/agent/agent-execution-fault.js.map +0 -1
  244. package/dist/agent/agent-execution-session.d.ts +0 -103
  245. package/dist/agent/agent-execution-session.d.ts.map +0 -1
  246. package/dist/agent/agent-execution-session.js +0 -238
  247. package/dist/agent/agent-execution-session.js.map +0 -1
  248. package/dist/agent/agent-interaction-audit.d.ts +0 -58
  249. package/dist/agent/agent-interaction-audit.d.ts.map +0 -1
  250. package/dist/agent/agent-interaction-audit.js +0 -114
  251. package/dist/agent/agent-interaction-audit.js.map +0 -1
  252. package/dist/agent/agent-interaction-events.d.ts +0 -40
  253. package/dist/agent/agent-interaction-events.d.ts.map +0 -1
  254. package/dist/agent/agent-interaction-events.js +0 -129
  255. package/dist/agent/agent-interaction-events.js.map +0 -1
  256. package/dist/agent/agent-mcp-budget.d.ts +0 -125
  257. package/dist/agent/agent-mcp-budget.d.ts.map +0 -1
  258. package/dist/agent/agent-mcp-budget.js +0 -566
  259. package/dist/agent/agent-mcp-budget.js.map +0 -1
  260. package/dist/agent/agent-mcp-host.d.ts +0 -125
  261. package/dist/agent/agent-mcp-host.d.ts.map +0 -1
  262. package/dist/agent/agent-mcp-host.js.map +0 -1
  263. package/dist/agent/agent-mcp-runtime.d.ts.map +0 -1
  264. package/dist/agent/agent-mcp-runtime.js.map +0 -1
  265. package/dist/agent/agent-read-runtime.d.ts +0 -70
  266. package/dist/agent/agent-read-runtime.d.ts.map +0 -1
  267. package/dist/agent/agent-read-runtime.js +0 -320
  268. package/dist/agent/agent-read-runtime.js.map +0 -1
  269. package/dist/agent/agent-revisions.d.ts +0 -35
  270. package/dist/agent/agent-revisions.d.ts.map +0 -1
  271. package/dist/agent/agent-revisions.js +0 -133
  272. package/dist/agent/agent-revisions.js.map +0 -1
  273. package/dist/agent/agent-scheduler.d.ts +0 -99
  274. package/dist/agent/agent-scheduler.d.ts.map +0 -1
  275. package/dist/agent/agent-scheduler.js +0 -398
  276. package/dist/agent/agent-scheduler.js.map +0 -1
  277. package/dist/bus/saved-dispatcher-binding.d.ts +0 -96
  278. package/dist/bus/saved-dispatcher-binding.d.ts.map +0 -1
  279. package/dist/bus/saved-dispatcher-binding.js +0 -35
  280. package/dist/bus/saved-dispatcher-binding.js.map +0 -1
  281. package/dist/delivery/delivery-run-coordinator.d.ts +0 -218
  282. package/dist/delivery/delivery-run-coordinator.d.ts.map +0 -1
  283. package/dist/delivery/delivery-run-coordinator.js +0 -609
  284. package/dist/delivery/delivery-run-coordinator.js.map +0 -1
  285. package/dist/delivery/parked-delivery-obligations.d.ts +0 -182
  286. package/dist/delivery/parked-delivery-obligations.d.ts.map +0 -1
  287. package/dist/delivery/parked-delivery-obligations.js +0 -390
  288. package/dist/delivery/parked-delivery-obligations.js.map +0 -1
  289. package/dist/server/environment-attachment.d.ts +0 -356
  290. package/dist/server/environment-attachment.d.ts.map +0 -1
  291. package/dist/server/environment-attachment.js +0 -2062
  292. package/dist/server/environment-attachment.js.map +0 -1
  293. package/dist/server/environment-delivery-records.d.ts +0 -77
  294. package/dist/server/environment-delivery-records.d.ts.map +0 -1
  295. package/dist/server/environment-delivery-records.js +0 -282
  296. package/dist/server/environment-delivery-records.js.map +0 -1
  297. package/dist/server/environment-delivery-worker.d.ts +0 -161
  298. package/dist/server/environment-delivery-worker.d.ts.map +0 -1
  299. package/dist/server/environment-delivery-worker.js +0 -673
  300. package/dist/server/environment-delivery-worker.js.map +0 -1
@@ -1,6 +1,7 @@
1
1
  import { type Delivery, type DeliveryResult, type DeliveryRunOptions } from "./delivery-builder.js";
2
2
  import type { ShardIndex } from "./shard-index.js";
3
3
  import type { InboxMessage } from "./inbox.js";
4
+ import type { DeliveryRun } from "./delivery.js";
4
5
  /**
5
6
  * Controls admission for one finite delivery run.
6
7
  */
@@ -12,6 +13,12 @@ export declare class DeliveryRunControl {
12
13
  * @param delivery The builder-created delivery to control.
13
14
  */
14
15
  constructor(delivery: Delivery);
16
+ /**
17
+ * Notifies another durable scan in the active shard run.
18
+ *
19
+ * @param shard Delivery shard identifier.
20
+ */
21
+ wake(shard: ShardIndex): void;
15
22
  /**
16
23
  * Executes one controlled delivery until it settles or its signal aborts.
17
24
  *
@@ -40,11 +47,25 @@ export interface DeliveryControlledRun extends DeliveryRunOptions {
40
47
  * @internal
41
48
  */
42
49
  readonly acceptMessage?: (message: InboxMessage) => boolean;
50
+ /**
51
+ * Completes one admitted message after its processing and selected action.
52
+ *
53
+ * @param message The message whose processing settled.
54
+ * @internal
55
+ */
56
+ readonly onMessageSettled?: (message: InboxMessage) => void;
43
57
  /**
44
58
  * Completes private admission cleanup when the controlled run settles before dispatch.
45
59
  *
46
60
  * @internal
47
61
  */
48
62
  readonly onRunSettled?: () => void;
63
+ /**
64
+ * Records the full finite drain result before reducing it to the public status.
65
+ *
66
+ * @param result Contains failure counts used for supervisor feedback control.
67
+ * @internal
68
+ */
69
+ readonly onDrainResult?: (result: DeliveryRun) => void;
49
70
  }
50
71
  //# sourceMappingURL=delivery-run-control.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"delivery-run-control.d.ts","sourceRoot":"","sources":["../../src/delivery/delivery-run-control.ts"],"names":[],"mappings":"AAcA,OAAO,EAEL,KAAK,QAAQ,EACb,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C;;GAEG;AACH,qBAAa,kBAAkB;;IAG7B;;;;OAIG;gBACS,QAAQ,EAAE,QAAQ;IAQ9B;;;;;OAKG;IACH,GAAG,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,cAAc,CAAC;CA6B7D;AAED;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,kBAAkB;IAG/D;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAE3B;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAE7B;;;;;;OAMG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,OAAO,CAAC;IAE5D;;;;OAIG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;CACpC"}
1
+ {"version":3,"file":"delivery-run-control.d.ts","sourceRoot":"","sources":["../../src/delivery/delivery-run-control.ts"],"names":[],"mappings":"AAcA,OAAO,EAEL,KAAK,QAAQ,EACb,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD;;GAEG;AACH,qBAAa,kBAAkB;;IAK7B;;;;OAIG;gBACS,QAAQ,EAAE,QAAQ;IAS9B;;;;OAIG;IACH,IAAI,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAI7B;;;;;OAKG;IACH,GAAG,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,cAAc,CAAC;CA6B7D;AAED;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,kBAAkB;IAG/D;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAE3B;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAE7B;;;;;;OAMG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,OAAO,CAAC;IAE5D;;;;;OAKG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,IAAI,CAAC;IAE5D;;;;OAIG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAEnC;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;CACxD"}
@@ -17,6 +17,7 @@ import { deliveryControls, } from "./delivery-builder.js";
17
17
  */
18
18
  export class DeliveryRunControl {
19
19
  #runControlled;
20
+ #wake;
20
21
  /**
21
22
  * Creates controlled admission for a builder-created delivery.
22
23
  *
@@ -28,6 +29,15 @@ export class DeliveryRunControl {
28
29
  throw new TypeError("DeliverySupervisor requires a Delivery built by DeliveryBuilder.");
29
30
  }
30
31
  this.#runControlled = runControlled;
32
+ this.#wake = deliveryControls.waker(delivery) ?? (() => undefined);
33
+ }
34
+ /**
35
+ * Notifies another durable scan in the active shard run.
36
+ *
37
+ * @param shard Delivery shard identifier.
38
+ */
39
+ wake(shard) {
40
+ this.#wake(shard);
31
41
  }
32
42
  /**
33
43
  * Executes one controlled delivery until it settles or its signal aborts.
@@ -1 +1 @@
1
- {"version":3,"file":"delivery-run-control.js","sourceRoot":"","sources":["../../src/delivery/delivery-run-control.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EACL,gBAAgB,GAIjB,MAAM,uBAAuB,CAAC;AAI/B;;GAEG;AACH,MAAM,OAAO,kBAAkB;IACpB,cAAc,CAA8D;IAErF;;;;OAIG;IACH,YAAY,QAAkB;QAC5B,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACxD,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,IAAI,SAAS,CAAC,kEAAkE,CAAC,CAAC;QAC1F,CAAC;QACD,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;IACtC,CAAC;IAED;;;;;OAKG;IACH,GAAG,CAAC,OAA8B;QAChC,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QACpF,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,OAA0B,CAAC;QAC/B,MAAM,KAAK,GAAG,GAAG,EAAE;YACjB,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC7C,CAAC,CAAC;QACF,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAChE,kEAAkE;QAClE,KAAK,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACpC,OAAO,OAAO;aACX,IAAI,CACH,CAAC,MAAM,EAAE,EAAE;YACT,IAAI,OAAO,KAAK,SAAS;gBAAE,MAAM,OAAO,CAAC;YACzC,OAAO,MAAM,CAAC;QAChB,CAAC,EACD,CAAC,KAAc,EAAE,EAAE;YACjB,MAAM,KAAK,CAAC;QACd,CAAC,CACF;aACA,OAAO,CAAC,GAAG,EAAE;YACZ,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACnD,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;QAC3B,CAAC,CAAC,CAAC;IACP,CAAC;IAED,WAAW,CAAC,MAAmB;QAC7B,OAAO,MAAM,CAAC,MAAM,YAAY,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;IACjG,CAAC;CACF"}
1
+ {"version":3,"file":"delivery-run-control.js","sourceRoot":"","sources":["../../src/delivery/delivery-run-control.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EACL,gBAAgB,GAIjB,MAAM,uBAAuB,CAAC;AAK/B;;GAEG;AACH,MAAM,OAAO,kBAAkB;IACpB,cAAc,CAA8D;IAE5E,KAAK,CAA8B;IAE5C;;;;OAIG;IACH,YAAY,QAAkB;QAC5B,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACxD,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,IAAI,SAAS,CAAC,kEAAkE,CAAC,CAAC;QAC1F,CAAC;QACD,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;QACpC,IAAI,CAAC,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IACrE,CAAC;IAED;;;;OAIG;IACH,IAAI,CAAC,KAAiB;QACpB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;IAED;;;;;OAKG;IACH,GAAG,CAAC,OAA8B;QAChC,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QACpF,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,OAA0B,CAAC;QAC/B,MAAM,KAAK,GAAG,GAAG,EAAE;YACjB,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC7C,CAAC,CAAC;QACF,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAChE,kEAAkE;QAClE,KAAK,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACpC,OAAO,OAAO;aACX,IAAI,CACH,CAAC,MAAM,EAAE,EAAE;YACT,IAAI,OAAO,KAAK,SAAS;gBAAE,MAAM,OAAO,CAAC;YACzC,OAAO,MAAM,CAAC;QAChB,CAAC,EACD,CAAC,KAAc,EAAE,EAAE;YACjB,MAAM,KAAK,CAAC;QACd,CAAC,CACF;aACA,OAAO,CAAC,GAAG,EAAE;YACZ,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACnD,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;QAC3B,CAAC,CAAC,CAAC;IACP,CAAC;IAED,WAAW,CAAC,MAAmB;QAC7B,OAAO,MAAM,CAAC,MAAM,YAAY,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;IACjG,CAAC;CACF"}
@@ -5,9 +5,35 @@ import type { DeliveryOperationOptions } from "./delivery-ports.js";
5
5
  import { ShardIndex } from "./shard-index.js";
6
6
  import type { ILogLayer } from "loglayer";
7
7
  interface DeliverySupervisorAccess {
8
+ /**
9
+ * Sets the supervisor's contained-failure logger.
10
+ * @param supervisor The target supervisor.
11
+ * @param logger Receives safe diagnostics.
12
+ */
8
13
  installLogger(supervisor: DeliverySupervisor, logger: ILogLayer): void;
14
+ /**
15
+ * Returns the installed logger.
16
+ * @param supervisor The target supervisor.
17
+ * @returns The installed logger.
18
+ */
9
19
  loggerFor(supervisor: DeliverySupervisor): ILogLayer;
20
+ /**
21
+ * Sets the callback that admits one pending message.
22
+ * @param supervisor The target supervisor.
23
+ * @param admission Tests one message for admission.
24
+ */
10
25
  installAdmission(supervisor: DeliverySupervisor, admission: (message: InboxMessage) => boolean): void;
26
+ /**
27
+ * Sets the callback invoked after one admitted message finishes processing.
28
+ * @param supervisor The target supervisor.
29
+ * @param onMessageSettled Releases the completed message's private route reservation.
30
+ */
31
+ installMessageSettled(supervisor: DeliverySupervisor, onMessageSettled: (message: InboxMessage) => void): void;
32
+ /**
33
+ * Sets a callback for settled shard runs.
34
+ * @param supervisor The target supervisor.
35
+ * @param onRunSettled Receives the settled shard.
36
+ */
11
37
  installFinalization(supervisor: DeliverySupervisor, onRunSettled: (shard: ShardIndex) => void): void;
12
38
  }
13
39
  /**
@@ -107,9 +133,10 @@ export declare class DeliverySupervisor {
107
133
  /**
108
134
  * Stops admission and source activity, waits one bounded active-work grace phase, then fences runs.
109
135
  * A separate release-cleanup phase uses the same bound. Cleanup failure takes precedence over
110
- * an active-work timeout; incomplete cleanup is retained for a later close retry.
136
+ * an active-work timeout; incomplete cleanup is retained for a later close retry. After both
137
+ * bounded phases, entered work may still keep close pending indefinitely.
111
138
  *
112
- * @param options The bounded close controls.
139
+ * @param options Close controls; `graceMs` defaults to 30000 milliseconds per phase.
113
140
  * @returns A promise that settles after close cleanup completes.
114
141
  */
115
142
  close(options?: DeliverySupervisorCloseOptions): Promise<void>;
@@ -145,7 +172,7 @@ export interface DeliverySupervisorOptions {
145
172
  */
146
173
  readonly pendingLimit?: number;
147
174
  /**
148
- * Positive safe-integer periodic recovery delay in milliseconds. Defaults to `30000`.
175
+ * Positive safe-integer periodic recovery delay in milliseconds. Defaults to `10000`.
149
176
  */
150
177
  readonly recoveryMs?: number;
151
178
  /**
@@ -163,12 +190,13 @@ export interface DeliverySupervisorOptions {
163
190
  readonly watchMaxBackoffMs?: number;
164
191
  }
165
192
  /**
166
- * Bounded close controls for {@link DeliverySupervisor}.
193
+ * Per-phase close controls for {@link DeliverySupervisor}.
167
194
  */
168
195
  export interface DeliverySupervisorCloseOptions {
169
196
  /**
170
197
  * Non-negative safe-integer bound used separately for active work and release cleanup.
171
- * Defaults to `30000` milliseconds. A zero value fences without waiting.
198
+ * Defaults to `30000` milliseconds. A zero value fences without waiting. Already-entered
199
+ * work may still keep close pending after both phases.
172
200
  */
173
201
  readonly graceMs?: number;
174
202
  }
@@ -1 +1 @@
1
- {"version":3,"file":"delivery-supervisor.d.ts","sourceRoot":"","sources":["../../src/delivery/delivery-supervisor.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAEpE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAY1C,UAAU,wBAAwB;IAChC,aAAa,CAAC,UAAU,EAAE,kBAAkB,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAAC;IACvE,SAAS,CAAC,UAAU,EAAE,kBAAkB,GAAG,SAAS,CAAC;IACrD,gBAAgB,CACd,UAAU,EAAE,kBAAkB,EAC9B,SAAS,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,OAAO,GAC5C,IAAI,CAAC;IACR,mBAAmB,CACjB,UAAU,EAAE,kBAAkB,EAC9B,YAAY,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GACxC,IAAI,CAAC;CACT;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAGlC;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAE3B;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,YAAY,CAAC;IAEzC;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAG7B;;;;;;OAMG;IACH,aAAa,CAAC,OAAO,CAAC,EAAE,wBAAwB,GAAG,OAAO,CAAC,SAAS,mBAAmB,EAAE,CAAC,CAAC;IAE3F;;;;;;OAMG;IACH,mBAAmB,CAAC,OAAO,CAAC,EAAE,wBAAwB,GAAG,aAAa,CAAC,mBAAmB,CAAC,CAAC;IAE5F;;;;;;;OAOG;IACH,cAAc,CACZ,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,SAAS,OAAO,EAAE,CAAC,CAAC;CAChC;AAED,YAAY,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAEpE;;GAEG;AACH,qBAAa,4BAA6B,SAAQ,KAAK;IAGrD;;OAEG;;CAKJ;AAED;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG,QAAQ,CAAC;AAE1C;;GAEG;AACH,qBAAa,kBAAkB;;IA4B7B;;;;OAIG;gBACS,OAAO,EAAE,yBAAyB;IAqC9C;;;;;OAKG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAS5B;;;;;OAKG;IACH,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAY/B;;;;;OAKG;IACH,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAUzB;;;;;;;OAOG;IACH,KAAK,CAAC,OAAO,GAAE,8BAAmC,GAAG,OAAO,CAAC,IAAI,CAAC;CA+QnE;AAED;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,EAAE,wBAwCrC,CAAC;AAEH;;GAEG;AACH,MAAM,WAAW,yBAAyB;IAGxC;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAEhC;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IAEtC;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC;IAEtC;;OAEG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAE9B;;OAEG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAE/B;;OAEG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAE7B;;OAEG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAExC;;;OAGG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAG7C;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B"}
1
+ {"version":3,"file":"delivery-supervisor.d.ts","sourceRoot":"","sources":["../../src/delivery/delivery-supervisor.ts"],"names":[],"mappings":"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"}
@@ -14,10 +14,11 @@
14
14
  var _a;
15
15
  import { DeliveryRunControl } from "./delivery-run-control.js";
16
16
  import { ShardIndex } from "./shard-index.js";
17
- import { emitServerWarning } from "../server/server-log.js";
17
+ import { emitServerError, emitServerWarning } from "../server/server-log.js";
18
18
  const deliverySupervisorLoggers = new WeakMap();
19
19
  const deliverySupervisorAdmissions = new WeakMap();
20
20
  const deliverySupervisorFinalizers = new WeakMap();
21
+ const deliverySupervisorMessageSettlers = new WeakMap();
21
22
  const deliverySupervisors = new WeakSet();
22
23
  /**
23
24
  * Raised when active delivery or release cleanup exceeds its bounded close phase.
@@ -36,31 +37,113 @@ export class DeliveryShutdownTimeoutError extends Error {
36
37
  * Admits bounded local delivery and observes remote shards.
37
38
  */
38
39
  export class DeliverySupervisor {
40
+ /**
41
+ * Remote source of sessions and shard notifications.
42
+ */
39
43
  #source;
44
+ /**
45
+ * Configured delivery runner.
46
+ */
40
47
  #runs;
48
+ /**
49
+ * Endpoint invoked for received messages.
50
+ */
41
51
  #onMessage;
52
+ /**
53
+ * Maximum concurrent shard runs.
54
+ */
42
55
  #concurrency;
56
+ /**
57
+ * Maximum retained pending shard notifications.
58
+ */
43
59
  #pendingLimit;
60
+ /**
61
+ * Delay between missed-notification rescans.
62
+ */
44
63
  #recoveryMs;
64
+ /**
65
+ * Separate stale-session age used during release.
66
+ */
45
67
  #staleMs;
68
+ /**
69
+ * Initial watch reconnect delay.
70
+ */
46
71
  #watchInitialBackoffMs;
72
+ /**
73
+ * Maximum watch reconnect delay.
74
+ */
47
75
  #watchMaxBackoffMs;
76
+ /**
77
+ * Shards waiting for a run slot.
78
+ */
48
79
  #pending = new Map();
80
+ /**
81
+ * Shards whose failed runs await the next periodic recovery before another observation.
82
+ */
83
+ #failedObserved = new Set();
84
+ /**
85
+ * Shards with an active run.
86
+ */
49
87
  #active = new Set();
88
+ /**
89
+ * Waiters for an empty active and pending set.
90
+ */
50
91
  #idle = new Set();
92
+ /**
93
+ * Cancels worker runs during close.
94
+ */
51
95
  #controller = new AbortController();
96
+ /**
97
+ * Cancels remote watch and recovery reads during close.
98
+ */
52
99
  #sourceController = new AbortController();
100
+ /**
101
+ * Whether startup began.
102
+ */
53
103
  #started = false;
104
+ /**
105
+ * Whether close stopped new admissions.
106
+ */
54
107
  #closing = false;
108
+ /**
109
+ * Whether all close phases completed.
110
+ */
55
111
  #closed = false;
112
+ /**
113
+ * Whether overflow requested another full rescan.
114
+ */
56
115
  #rescanRequired = false;
116
+ /**
117
+ * Shared in-progress recovery.
118
+ */
57
119
  #recovering;
120
+ /**
121
+ * Timer for the next periodic recovery.
122
+ */
58
123
  #recoveryTimer;
124
+ /**
125
+ * Timer for a watch reconnect.
126
+ */
59
127
  #watchTimer;
128
+ /**
129
+ * Current watch reconnect delay.
130
+ */
60
131
  #watchBackoffMs;
132
+ /**
133
+ * Whether a remote watch is active.
134
+ */
61
135
  #watching = false;
136
+ /**
137
+ * Whether close confirmed expired-session release.
138
+ */
62
139
  #releaseConfirmed = false;
140
+ /**
141
+ * Shared in-progress release call.
142
+ */
63
143
  #releaseAttempt;
144
+ /**
145
+ * Shared in-progress close call.
146
+ */
64
147
  #closeAttempt;
65
148
  /**
66
149
  * Creates a bounded delivery supervisor.
@@ -74,13 +157,12 @@ export class DeliverySupervisor {
74
157
  this.#onMessage = options.onMessage;
75
158
  this.#concurrency = _a.#requireBound("Delivery supervisor concurrency", options.concurrency ?? 1);
76
159
  this.#pendingLimit = _a.#requireBound("Delivery supervisor pending limit", options.pendingLimit ?? 100);
77
- this.#recoveryMs = _a.#requireBound("Delivery supervisor recovery interval", options.recoveryMs ?? 30_000);
160
+ this.#recoveryMs = _a.#requireBound("Delivery supervisor recovery interval", options.recoveryMs ?? 10_000);
78
161
  this.#staleMs = _a.#requireBound("Delivery supervisor stale session interval", options.staleMs ?? 60_000);
79
162
  this.#watchInitialBackoffMs = _a.#requireBound("Delivery supervisor watch initial backoff", options.watchInitialBackoffMs ?? 100);
80
163
  this.#watchMaxBackoffMs = _a.#requireBound("Delivery supervisor watch maximum backoff", options.watchMaxBackoffMs ?? 30_000);
81
- if (this.#watchMaxBackoffMs < this.#watchInitialBackoffMs) {
164
+ if (this.#watchMaxBackoffMs < this.#watchInitialBackoffMs)
82
165
  throw new Error("Delivery supervisor watch maximum backoff must not be smaller than initial backoff.");
83
- }
84
166
  this.#watchBackoffMs = this.#watchInitialBackoffMs;
85
167
  }
86
168
  /**
@@ -107,11 +189,37 @@ export class DeliverySupervisor {
107
189
  * @param shard The shard whose work may be scheduled.
108
190
  */
109
191
  notify(shard) {
192
+ this.#admit(shard, false);
193
+ }
194
+ /**
195
+ * Admits one source observation unless a failed run awaits periodic recovery.
196
+ *
197
+ * @param update Source update with status and pending count.
198
+ */
199
+ #notifyObserved(update) {
200
+ if (update.status !== "NOT_PICKED" || update.messages <= 0)
201
+ return;
202
+ if (this.#failedObserved.has(_a.#shardKey(update.shard)))
203
+ return;
204
+ this.#admit(update.shard, true);
205
+ }
206
+ /**
207
+ * Starts or retains one explicit or observed shard request.
208
+ *
209
+ * @param shard Shard selected for delivery.
210
+ * @param observed Distinguishes a remote status observation from an explicit notification.
211
+ */
212
+ #admit(shard, observed) {
110
213
  if (!this.#started || this.#closing || this.#closed)
111
214
  return;
112
215
  const key = _a.#shardKey(shard);
113
- if (this.#active.has(key) || this.#active.size >= this.#concurrency) {
114
- this.#queue(key, shard);
216
+ if (this.#active.has(key)) {
217
+ this.#runs.wake(shard);
218
+ this.#queue(key, shard, observed);
219
+ return;
220
+ }
221
+ if (this.#active.size >= this.#concurrency) {
222
+ this.#queue(key, shard, observed);
115
223
  return;
116
224
  }
117
225
  this.#active.add(key);
@@ -137,9 +245,10 @@ export class DeliverySupervisor {
137
245
  /**
138
246
  * Stops admission and source activity, waits one bounded active-work grace phase, then fences runs.
139
247
  * A separate release-cleanup phase uses the same bound. Cleanup failure takes precedence over
140
- * an active-work timeout; incomplete cleanup is retained for a later close retry.
248
+ * an active-work timeout; incomplete cleanup is retained for a later close retry. After both
249
+ * bounded phases, entered work may still keep close pending indefinitely.
141
250
  *
142
- * @param options The bounded close controls.
251
+ * @param options Close controls; `graceMs` defaults to 30000 milliseconds per phase.
143
252
  * @returns A promise that settles after close cleanup completes.
144
253
  */
145
254
  close(options = {}) {
@@ -177,10 +286,10 @@ export class DeliverySupervisor {
177
286
  catch (error) {
178
287
  releaseError = error;
179
288
  }
180
- if (releaseError !== undefined)
181
- throw _a.#releaseError(releaseError);
182
289
  if (this.#active.size > 0)
183
290
  await this.whenIdle();
291
+ if (releaseError !== undefined)
292
+ throw _a.#releaseError(releaseError);
184
293
  this.#closed = true;
185
294
  deliverySupervisorLoggers.delete(this);
186
295
  if (timedOut)
@@ -219,13 +328,16 @@ export class DeliverySupervisor {
219
328
  return attempt;
220
329
  }
221
330
  async #run(shard, key) {
331
+ let failed = true;
222
332
  try {
223
333
  const admission = deliverySupervisorAdmissions.get(this);
334
+ const messageSettled = deliverySupervisorMessageSettlers.get(this);
224
335
  const finalization = deliverySupervisorFinalizers.get(this);
225
- await this.#runs.run({
336
+ const result = await this.#runs.run({
226
337
  shard,
227
338
  onMessage: this.#onMessage,
228
339
  ...(admission === undefined ? {} : { acceptMessage: admission }),
340
+ ...(messageSettled === undefined ? {} : { onMessageSettled: messageSettled }),
229
341
  ...(finalization === undefined
230
342
  ? {}
231
343
  : {
@@ -233,15 +345,40 @@ export class DeliverySupervisor {
233
345
  finalization(shard);
234
346
  },
235
347
  }),
348
+ onDrainResult: (run) => {
349
+ failed = run.failed > 0;
350
+ },
236
351
  signal: this.#controller.signal,
237
352
  });
353
+ failed ||= result.status === "FAILED";
354
+ }
355
+ catch (error) {
356
+ this.#reportTerminalRunFailure();
357
+ throw error;
238
358
  }
239
359
  finally {
360
+ if (failed && !this.#closing)
361
+ this.#failedObserved.add(key);
240
362
  this.#active.delete(key);
241
363
  this.#startNext(key);
242
364
  this.#settleIdle();
243
365
  }
244
366
  }
367
+ /**
368
+ * Reports an escaping background run error without exposing its message.
369
+ *
370
+ */
371
+ #reportTerminalRunFailure() {
372
+ if (this.#closing || this.#controller.signal.aborted)
373
+ return;
374
+ const logger = deliverySupervisorLoggers.get(this);
375
+ if (logger === undefined)
376
+ return;
377
+ emitServerError(logger, "Delivery run failed.", {
378
+ operation: "delivery.run",
379
+ reasonCode: "failed",
380
+ });
381
+ }
245
382
  #settleIdle() {
246
383
  if (this.#active.size !== 0 || this.#pending.size !== 0)
247
384
  return;
@@ -265,10 +402,8 @@ export class DeliverySupervisor {
265
402
  // Release is a mutation: a rejection is not treated as a successful release.
266
403
  await this.#releaseExpired({ signal: this.#sourceController.signal });
267
404
  const shards = await this.#source.shardSnapshot({ signal: this.#sourceController.signal });
268
- for (const shard of shards) {
269
- if (shard.status === "NOT_PICKED" && shard.messages > 0)
270
- this.notify(shard.shard);
271
- }
405
+ for (const shard of shards)
406
+ this.#notifyObserved(shard);
272
407
  return true;
273
408
  // spine-log-boundary: server.delivery_recovery_failure
274
409
  }
@@ -296,6 +431,7 @@ export class DeliverySupervisor {
296
431
  return;
297
432
  this.#recoveryTimer = setTimeout(() => {
298
433
  this.#recoveryTimer = undefined;
434
+ this.#failedObserved.clear();
299
435
  void this.#recover().then((recovered) => {
300
436
  if (recovered)
301
437
  this.#startWatch();
@@ -319,8 +455,7 @@ export class DeliverySupervisor {
319
455
  if (this.#closing || this.#closed)
320
456
  return;
321
457
  this.#watchBackoffMs = this.#watchInitialBackoffMs;
322
- if (shard.status === "NOT_PICKED" && shard.messages > 0)
323
- this.notify(shard.shard);
458
+ this.#notifyObserved(shard);
324
459
  }
325
460
  failed = !this.#closing && !this.#closed;
326
461
  // spine-log-boundary: server.delivery_watch_failure
@@ -369,29 +504,40 @@ export class DeliverySupervisor {
369
504
  this.#recoveryTimer = undefined;
370
505
  this.#watchTimer = undefined;
371
506
  }
372
- #queue(key, shard) {
373
- if (this.#pending.has(key))
507
+ #queue(key, shard, observed) {
508
+ const pending = this.#pending.get(key);
509
+ if (pending !== undefined) {
510
+ if (!observed)
511
+ this.#pending.set(key, { shard, observed: false });
374
512
  return;
513
+ }
375
514
  if (this.#pending.size >= this.#pendingLimit) {
376
515
  this.#rescanRequired = true;
377
516
  return;
378
517
  }
379
- this.#pending.set(key, shard);
518
+ this.#pending.set(key, { shard, observed });
380
519
  }
520
+ /**
521
+ * Starts available pending shards after a run settles, retaining repeats for active shards.
522
+ *
523
+ * @param completed Key of the shard whose run settled.
524
+ */
381
525
  #startNext(completed) {
382
526
  if (this.#closing || this.#closed)
383
527
  return;
384
528
  const repeat = this.#pending.get(completed);
385
529
  if (repeat !== undefined) {
386
530
  this.#pending.delete(completed);
387
- this.notify(repeat);
531
+ if (!repeat.observed || !this.#failedObserved.has(completed))
532
+ this.#admit(repeat.shard, repeat.observed);
388
533
  }
389
- while (this.#active.size < this.#concurrency) {
390
- const next = this.#pending.entries().next().value;
391
- if (next === undefined)
534
+ for (const [key, request] of [...this.#pending]) {
535
+ if (this.#active.size >= this.#concurrency)
392
536
  break;
393
- this.#pending.delete(next[0]);
394
- this.notify(next[1]);
537
+ if (this.#active.has(key))
538
+ continue;
539
+ this.#pending.delete(key);
540
+ this.#admit(request.shard, request.observed);
395
541
  }
396
542
  if (this.#rescanRequired) {
397
543
  this.#rescanRequired = false;
@@ -459,6 +605,12 @@ export const deliverySupervisorAccess = Object.freeze({
459
605
  }
460
606
  deliverySupervisorAdmissions.set(supervisor, admission);
461
607
  },
608
+ installMessageSettled(supervisor, onMessageSettled) {
609
+ if (!deliverySupervisors.has(supervisor)) {
610
+ throw new TypeError("Delivery supervisor settlement requires a DeliverySupervisor instance.");
611
+ }
612
+ deliverySupervisorMessageSettlers.set(supervisor, onMessageSettled);
613
+ },
462
614
  installFinalization(supervisor, onRunSettled) {
463
615
  if (!deliverySupervisors.has(supervisor)) {
464
616
  throw new TypeError("Delivery supervisor finalization requires a DeliverySupervisor instance.");
@@ -1 +1 @@
1
- {"version":3,"file":"delivery-supervisor.js","sourceRoot":"","sources":["../../src/delivery/delivery-supervisor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"delivery-supervisor.js","sourceRoot":"","sources":["../../src/delivery/delivery-supervisor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { type TenantId } from "@spine-event-engine/proto";
2
+ import type { InboxMessage } from "./inbox.js";
3
+ /**
4
+ * Reads the captured tenant from the actual durable Command or Event envelope.
5
+ *
6
+ * @param message Durable Inbox row with its original packed signal.
7
+ * @returns Detached tenant ID, or the neutral single-tenant scope.
8
+ */
9
+ export declare function deliveryTenant(message: InboxMessage): TenantId | undefined;
10
+ /**
11
+ * Returns the complete canonical tenant boundary for a durable Inbox row.
12
+ *
13
+ * @param message Durable row carrying its original signal.
14
+ * @returns Stable tenant key, including the neutral single-tenant boundary.
15
+ */
16
+ export declare function deliveryTenantKey(message: InboxMessage): string;
17
+ //# sourceMappingURL=delivery-tenant.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delivery-tenant.d.ts","sourceRoot":"","sources":["../../src/delivery/delivery-tenant.ts"],"names":[],"mappings":"AAgBA,OAAO,EAIL,KAAK,QAAQ,EACd,MAAM,2BAA2B,CAAC;AAGnC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,YAAY,GAAG,QAAQ,GAAG,SAAS,CAW1E;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM,CAK/D"}