@zlink-systems/framework 0.26.0 → 0.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (561) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/contracts/Actors/ZLinkActorClient.d.ts +1 -1
  3. package/dist/contracts/Channels/Calls.d.ts +1 -1
  4. package/dist/contracts/Common/CoreTypes.d.ts +6 -0
  5. package/dist/contracts/Common/CoreTypes.js +7 -0
  6. package/dist/contracts/Common/index.d.ts +1 -1
  7. package/dist/contracts/Common/index.js +0 -1
  8. package/dist/contracts/Configuration/Builders.d.ts +0 -1
  9. package/dist/contracts/Configuration/Configs.d.ts +0 -1
  10. package/dist/contracts/Configuration/InternalDefaults.d.ts +8 -0
  11. package/dist/contracts/Configuration/InternalDefaults.js +9 -1
  12. package/dist/contracts/Configuration/Registration.d.ts +13 -2
  13. package/dist/contracts/Configuration/Registration.js +58 -36
  14. package/dist/contracts/Configuration/RegistrationBuilderPolicy.d.ts +13 -1
  15. package/dist/contracts/Configuration/RegistrationBuilderPolicy.js +38 -1
  16. package/dist/contracts/Configuration/RegistrationBuilders.d.ts +2 -3
  17. package/dist/contracts/Configuration/RegistrationBuilders.js +27 -32
  18. package/dist/contracts/Configuration/RegistrationTypes.d.ts +1 -5
  19. package/dist/contracts/Configuration/RegistrationValidators.js +15 -14
  20. package/dist/contracts/Configuration/TimerRegistrationValidator.js +3 -2
  21. package/dist/contracts/Dispatch/ZLinkDispatchOptions.d.ts +1 -1
  22. package/dist/contracts/Handlers/JsonContract.js +10 -4
  23. package/dist/contracts/Locations/Authority.d.ts +1 -1
  24. package/dist/contracts/Locations/Authority.js +3 -2
  25. package/dist/contracts/Locations/Options.js +1 -1
  26. package/dist/contracts/Locations/Stores.d.ts +12 -0
  27. package/dist/contracts/Locations/Stores.js +9 -0
  28. package/dist/contracts/Spots/Contracts.d.ts +2 -2
  29. package/dist/contracts/Streams/BoundSessionContracts.d.ts +1 -1
  30. package/dist/contracts/Streams/IZLinkSession.d.ts +2 -3
  31. package/dist/contracts/Streams/IZLinkSessionActor.d.ts +2 -2
  32. package/dist/internal.d.ts +4 -0
  33. package/dist/internal.js +15 -1
  34. package/dist/nest-integration.d.ts +4 -2
  35. package/dist/nest-integration.js +14 -4
  36. package/dist/runtime/abort.d.ts +1 -0
  37. package/dist/runtime/abort.js +8 -5
  38. package/dist/runtime/activation-admission.d.ts +1 -2
  39. package/dist/runtime/activation-admission.js +2 -6
  40. package/dist/runtime/actors/actor-authority-payload-codec.d.ts +1 -2
  41. package/dist/runtime/actors/actor-authority-payload-codec.js +34 -18
  42. package/dist/runtime/actors/actor-client.d.ts +2 -2
  43. package/dist/runtime/actors/actor-client.js +49 -153
  44. package/dist/runtime/actors/actor-context.d.ts +3 -5
  45. package/dist/runtime/actors/actor-context.js +13 -11
  46. package/dist/runtime/actors/actor-handoff.d.ts +4 -4
  47. package/dist/runtime/actors/actor-handoff.js +8 -8
  48. package/dist/runtime/actors/actor-lifecycle-snapshot.js +2 -1
  49. package/dist/runtime/actors/actor-local-native-join.d.ts +11 -6
  50. package/dist/runtime/actors/actor-local-native-join.js +83 -105
  51. package/dist/runtime/actors/actor-native-lookup.js +2 -8
  52. package/dist/runtime/actors/actor-packet-relay-wire.d.ts +3 -3
  53. package/dist/runtime/actors/actor-packet-relay-wire.js +5 -3
  54. package/dist/runtime/actors/actor-remote-joiner.d.ts +1 -1
  55. package/dist/runtime/actors/actor-remote-joiner.js +5 -9
  56. package/dist/runtime/actors/actor-remote-wire.js +5 -3
  57. package/dist/runtime/actors/actor-request-deadline.d.ts +1 -0
  58. package/dist/runtime/actors/actor-request-deadline.js +6 -0
  59. package/dist/runtime/actors/actor-retry-delay.js +2 -1
  60. package/dist/runtime/actors/actor-routed-join-transport.d.ts +2 -3
  61. package/dist/runtime/actors/actor-runtime-state.d.ts +9 -21
  62. package/dist/runtime/actors/actor-runtime-state.js +70 -187
  63. package/dist/runtime/actors/bound-session-wire.js +2 -7
  64. package/dist/runtime/actors/deferred-join-completion.d.ts +11 -6
  65. package/dist/runtime/actors/deferred-join-completion.js +1 -0
  66. package/dist/runtime/actors/index.d.ts +9 -7
  67. package/dist/runtime/actors/index.js +87 -69
  68. package/dist/runtime/actors/spot-actor-dispatch.d.ts +3 -3
  69. package/dist/runtime/actors/spot-actor-dispatch.js +25 -10
  70. package/dist/runtime/actors/transferred-actor-rollback.d.ts +3 -5
  71. package/dist/runtime/actors/transferred-actor-rollback.js +9 -42
  72. package/dist/runtime/admission.d.ts +2 -0
  73. package/dist/runtime/admission.js +7 -1
  74. package/dist/runtime/application-jobs/application-job-queue-scope.d.ts +1 -1
  75. package/dist/runtime/application-jobs/application-job-queue-scope.js +1 -1
  76. package/dist/runtime/backend/contracts/index.d.ts +7 -27
  77. package/dist/runtime/backend/mesh-actor-session-node-adapter.js +1 -17
  78. package/dist/runtime/backend/mesh-dispatch-pump.d.ts +1 -2
  79. package/dist/runtime/backend/mesh-dispatch-pump.js +95 -107
  80. package/dist/runtime/backend/node/node-backend-adapter-support.d.ts +3 -1
  81. package/dist/runtime/backend/node/node-backend-adapter-support.js +51 -10
  82. package/dist/runtime/backend/node/node-dealer-channel-client-transport.d.ts +1 -1
  83. package/dist/runtime/backend/node/node-dealer-channel-client-transport.js +1 -2
  84. package/dist/runtime/backend/node/node-event-loop-poller.d.ts +2 -2
  85. package/dist/runtime/backend/node/node-event-loop-poller.js +6 -7
  86. package/dist/runtime/backend/node/node-monitor-backend-adapter.js +1 -0
  87. package/dist/runtime/backend/node/node-raw-binding-port.js +41 -34
  88. package/dist/runtime/backend/node/node-raw-mesh-backend.d.ts +14 -15
  89. package/dist/runtime/backend/node/node-raw-mesh-backend.js +146 -118
  90. package/dist/runtime/backend/node/node-socket-backend-adapter.js +4 -3
  91. package/dist/runtime/backend/raw-binding-port.d.ts +1 -1
  92. package/dist/runtime/backend/runtime-values.d.ts +4 -1
  93. package/dist/runtime/backend/runtime-values.js +2 -0
  94. package/dist/runtime/channels/channel-clients.d.ts +20 -8
  95. package/dist/runtime/channels/channel-clients.js +73 -59
  96. package/dist/runtime/channels/channel-envelope-inspection.js +2 -1
  97. package/dist/runtime/channels/channel-envelope.d.ts +1 -1
  98. package/dist/runtime/channels/channel-envelope.js +51 -39
  99. package/dist/runtime/channels/channel-outbound-operations.d.ts +5 -2
  100. package/dist/runtime/channels/channel-outbound-operations.js +25 -42
  101. package/dist/runtime/channels/channel-receive-loops.d.ts +8 -3
  102. package/dist/runtime/channels/channel-receive-loops.js +27 -6
  103. package/dist/runtime/channels/channel-runtime-lifecycle.d.ts +12 -1
  104. package/dist/runtime/channels/channel-runtime-lifecycle.js +48 -28
  105. package/dist/runtime/channels/channel-runtime-manager.d.ts +4 -4
  106. package/dist/runtime/channels/channel-runtime-manager.js +13 -10
  107. package/dist/runtime/channels/channel-socket-options.js +3 -12
  108. package/dist/runtime/channels/channel-socket-registry.d.ts +14 -29
  109. package/dist/runtime/channels/channel-socket-registry.js +240 -177
  110. package/dist/runtime/channels/channel-transports.d.ts +21 -31
  111. package/dist/runtime/channels/channel-transports.js +80 -62
  112. package/dist/runtime/channels/client-server-location-runtime.d.ts +1 -1
  113. package/dist/runtime/channels/client-server-location-runtime.js +10 -11
  114. package/dist/runtime/channels/client-server-service-wire.d.ts +7 -2
  115. package/dist/runtime/channels/client-server-service-wire.js +32 -11
  116. package/dist/runtime/channels/dispatch-error-reporter.d.ts +1 -2
  117. package/dist/runtime/channels/dispatch-error-reporter.js +2 -1
  118. package/dist/runtime/channels/fanout-location-runtime.d.ts +16 -3
  119. package/dist/runtime/channels/fanout-location-runtime.js +130 -72
  120. package/dist/runtime/channels/local-spot-route-transport.d.ts +1 -1
  121. package/dist/runtime/channels/local-spot-route-transport.js +1 -3
  122. package/dist/runtime/channels/router-socket-spot-route-transport.d.ts +1 -1
  123. package/dist/runtime/channels/router-socket-spot-route-transport.js +2 -2
  124. package/dist/runtime/channels/source-spot-router.d.ts +1 -1
  125. package/dist/runtime/channels/source-spot-router.js +2 -4
  126. package/dist/runtime/channels/spot-direct-envelope.d.ts +1 -0
  127. package/dist/runtime/channels/spot-direct-envelope.js +4 -3
  128. package/dist/runtime/channels/spot-node-route-transport.d.ts +1 -1
  129. package/dist/runtime/channels/spot-node-route-transport.js +5 -5
  130. package/dist/runtime/channels/spot-route-bridge-transport.d.ts +1 -1
  131. package/dist/runtime/channels/spot-route-bridge-transport.js +2 -2
  132. package/dist/runtime/channels/spot-route-dispatch-strategy.d.ts +2 -4
  133. package/dist/runtime/channels/spot-route-dispatch-strategy.js +11 -12
  134. package/dist/runtime/diagnostics/diagnostic-text.d.ts +2 -0
  135. package/dist/runtime/diagnostics/diagnostic-text.js +7 -0
  136. package/dist/runtime/diagnostics/dispatch-error-details.d.ts +3 -0
  137. package/dist/runtime/diagnostics/dispatch-error-details.js +30 -2
  138. package/dist/runtime/diagnostics/flow-context.d.ts +6 -0
  139. package/dist/runtime/diagnostics/flow-context.js +16 -2
  140. package/dist/runtime/diagnostics/index.d.ts +4 -2
  141. package/dist/runtime/diagnostics/index.js +14 -4
  142. package/dist/runtime/diagnostics/message-flow.d.ts +1 -1
  143. package/dist/runtime/diagnostics/message-flow.js +10 -19
  144. package/dist/runtime/diagnostics/runtime-metrics.d.ts +94 -31
  145. package/dist/runtime/diagnostics/runtime-metrics.js +168 -105
  146. package/dist/runtime/diagnostics/runtime-observation-queue.js +3 -2
  147. package/dist/runtime/diagnostics/topology-runtime-projections.d.ts +2 -4
  148. package/dist/runtime/diagnostics/topology-runtime-projections.js +135 -154
  149. package/dist/runtime/disposal.d.ts +5 -0
  150. package/dist/runtime/disposal.js +22 -0
  151. package/dist/runtime/execution/index.d.ts +12 -9
  152. package/dist/runtime/execution/index.js +58 -14
  153. package/dist/runtime/execution/serial-execution-queue.d.ts +8 -2
  154. package/dist/runtime/execution/serial-execution-queue.js +54 -15
  155. package/dist/runtime/execution/state-lane.d.ts +8 -1
  156. package/dist/runtime/execution/state-lane.js +118 -3
  157. package/dist/runtime/foundation/actor-join-recovery-codec.d.ts +3 -0
  158. package/dist/runtime/foundation/actor-join-recovery-codec.js +15 -11
  159. package/dist/runtime/foundation/event-loop-resources.d.ts +2 -24
  160. package/dist/runtime/foundation/event-loop-resources.js +6 -119
  161. package/dist/runtime/foundation/operation-identity.d.ts +2 -0
  162. package/dist/runtime/foundation/operation-identity.js +9 -5
  163. package/dist/runtime/foundation/operation-registry.d.ts +5 -7
  164. package/dist/runtime/foundation/operation-registry.js +34 -44
  165. package/dist/runtime/foundation/raw-service-mesh-runtime.d.ts +8 -5
  166. package/dist/runtime/foundation/raw-service-mesh-runtime.js +79 -94
  167. package/dist/runtime/foundation/runtime-state-projections.d.ts +3 -1
  168. package/dist/runtime/foundation/runtime-state-projections.js +8 -0
  169. package/dist/runtime/foundation/service-authority-payload-codec.js +22 -12
  170. package/dist/runtime/foundation/service-discovery-registry.d.ts +4 -0
  171. package/dist/runtime/foundation/service-discovery-registry.js +22 -3
  172. package/dist/runtime/foundation/service-instance-activation-recovery-codec.js +8 -4
  173. package/dist/runtime/foundation/service-liveness-registry.js +2 -1
  174. package/dist/runtime/foundation/service-maintenance-runtime.d.ts +0 -1
  175. package/dist/runtime/foundation/service-maintenance-runtime.js +0 -6
  176. package/dist/runtime/foundation/service-metadata-codec.js +3 -3
  177. package/dist/runtime/foundation/service-relocation-aggregate-committer.d.ts +2 -5
  178. package/dist/runtime/foundation/service-relocation-aggregate-committer.js +1 -48
  179. package/dist/runtime/foundation/service-relocation-object-owner.js +3 -2
  180. package/dist/runtime/foundation/service-relocation-runtime.js +43 -32
  181. package/dist/runtime/foundation/service-runtime-contracts.d.ts +40 -8
  182. package/dist/runtime/foundation/service-runtime-contracts.js +25 -1
  183. package/dist/runtime/foundation/service-session-binding-ingress-port.d.ts +0 -12
  184. package/dist/runtime/foundation/service-stateful-registry.d.ts +2 -0
  185. package/dist/runtime/foundation/service-stateful-registry.js +10 -2
  186. package/dist/runtime/foundation/service-stateful-runtime.d.ts +26 -25
  187. package/dist/runtime/foundation/service-stateful-runtime.js +217 -204
  188. package/dist/runtime/foundation/service-stateful-wire-codec.d.ts +3 -3
  189. package/dist/runtime/foundation/service-stateful-wire-codec.js +89 -55
  190. package/dist/runtime/foundation/service-topology-registry.d.ts +0 -1
  191. package/dist/runtime/foundation/service-topology-registry.js +17 -32
  192. package/dist/runtime/foundation/service-wire-binary-primitives.d.ts +5 -0
  193. package/dist/runtime/foundation/service-wire-binary-primitives.js +6 -0
  194. package/dist/runtime/foundation/service-wire-codec.js +10 -8
  195. package/dist/runtime/foundation/service-wire-constants.generated.d.ts +1 -0
  196. package/dist/runtime/foundation/service-wire-constants.generated.js +2 -1
  197. package/dist/runtime/foundation/service-wire-m6a-codec.d.ts +2 -0
  198. package/dist/runtime/foundation/service-wire-m6a-codec.js +23 -13
  199. package/dist/runtime/framework-errors-internal.d.ts +2 -1
  200. package/dist/runtime/framework-errors-internal.js +343 -122
  201. package/dist/runtime/handlers/handler-instance-scope.d.ts +3 -1
  202. package/dist/runtime/handlers/handler-instance-scope.js +61 -74
  203. package/dist/runtime/host/actor-packet-relay.d.ts +11 -8
  204. package/dist/runtime/host/actor-packet-relay.js +54 -99
  205. package/dist/runtime/host/actor-placement-coordinator.js +7 -5
  206. package/dist/runtime/host/actor-runtime-options-factory.d.ts +2 -0
  207. package/dist/runtime/host/actor-runtime-options-factory.js +17 -4
  208. package/dist/runtime/host/actor-transfer-runtime.d.ts +16 -18
  209. package/dist/runtime/host/actor-transfer-runtime.js +143 -176
  210. package/dist/runtime/host/application-job-queue.js +16 -33
  211. package/dist/runtime/host/bound-session-relay.js +1 -1
  212. package/dist/runtime/host/channel-runtime-options-factory.js +1 -1
  213. package/dist/runtime/host/index.d.ts +14 -13
  214. package/dist/runtime/host/index.js +190 -171
  215. package/dist/runtime/host/instance-activation-authority.d.ts +2 -3
  216. package/dist/runtime/host/instance-activation-authority.js +17 -45
  217. package/dist/runtime/host/location-runtime-owner.d.ts +1 -1
  218. package/dist/runtime/host/location-runtime-owner.js +2 -2
  219. package/dist/runtime/host/remote-actor-join-receiver.d.ts +2 -2
  220. package/dist/runtime/host/remote-actor-join-receiver.js +1 -14
  221. package/dist/runtime/host/remote-actor-packet-target-store.d.ts +3 -2
  222. package/dist/runtime/host/remote-actor-packet-target-store.js +8 -47
  223. package/dist/runtime/host/remote-bound-session-relay.d.ts +2 -3
  224. package/dist/runtime/host/remote-bound-session-relay.js +15 -28
  225. package/dist/runtime/host/route-mesh-runtime.d.ts +13 -11
  226. package/dist/runtime/host/route-mesh-runtime.js +171 -252
  227. package/dist/runtime/host/runtime-shutdown.d.ts +2 -0
  228. package/dist/runtime/host/runtime-shutdown.js +18 -21
  229. package/dist/runtime/host/service-relocation-control.js +6 -1
  230. package/dist/runtime/host/service-relocation-host-runtime.d.ts +21 -30
  231. package/dist/runtime/host/service-relocation-host-runtime.js +508 -416
  232. package/dist/runtime/host/spot-address-transport.d.ts +3 -12
  233. package/dist/runtime/host/spot-address-transport.js +78 -220
  234. package/dist/runtime/host/spot-node-runtime-options-factory.d.ts +1 -1
  235. package/dist/runtime/host/spot-node-runtime-options-factory.js +3 -2
  236. package/dist/runtime/host/spot-runtime-options-factory.d.ts +4 -10
  237. package/dist/runtime/host/spot-runtime-options-factory.js +50 -14
  238. package/dist/runtime/host/user-spot-creation-coordinator.d.ts +3 -3
  239. package/dist/runtime/host/user-spot-creation-coordinator.js +11 -8
  240. package/dist/runtime/locations/aggregate-inventory-store.js +13 -10
  241. package/dist/runtime/locations/authority-key-codec.js +4 -3
  242. package/dist/runtime/locations/auto-connect-reconciler.d.ts +4 -0
  243. package/dist/runtime/locations/auto-connect-reconciler.js +37 -25
  244. package/dist/runtime/locations/creation-operation-id.js +6 -4
  245. package/dist/runtime/locations/domain-store-contract.d.ts +3 -3
  246. package/dist/runtime/locations/in-memory-authority-store.js +31 -15
  247. package/dist/runtime/locations/in-memory-location-store.d.ts +2 -2
  248. package/dist/runtime/locations/in-memory-location-store.js +17 -14
  249. package/dist/runtime/locations/in-memory-provider-location-store.d.ts +1 -0
  250. package/dist/runtime/locations/in-memory-provider-location-store.js +72 -22
  251. package/dist/runtime/locations/key-codec.js +3 -2
  252. package/dist/runtime/locations/lease-tracker.d.ts +3 -5
  253. package/dist/runtime/locations/lease-tracker.js +7 -11
  254. package/dist/runtime/locations/lifecycle.d.ts +4 -9
  255. package/dist/runtime/locations/lifecycle.js +2 -31
  256. package/dist/runtime/locations/location-store-failure.d.ts +2 -0
  257. package/dist/runtime/locations/location-store-failure.js +7 -0
  258. package/dist/runtime/locations/location-store-pages.d.ts +3 -0
  259. package/dist/runtime/locations/location-store-pages.js +13 -0
  260. package/dist/runtime/locations/location-store-repository.d.ts +5 -7
  261. package/dist/runtime/locations/location-store-repository.js +309 -336
  262. package/dist/runtime/locations/relocation-blob.js +18 -5
  263. package/dist/runtime/locations/resolvers.d.ts +5 -5
  264. package/dist/runtime/locations/resolvers.js +37 -28
  265. package/dist/runtime/locations/runtime.d.ts +5 -4
  266. package/dist/runtime/locations/runtime.js +123 -92
  267. package/dist/runtime/locations/spot-location-claims.d.ts +6 -0
  268. package/dist/runtime/locations/spot-location-claims.js +42 -1
  269. package/dist/runtime/messaging/payload-codec.js +26 -20
  270. package/dist/runtime/messaging/request-deadline.d.ts +3 -0
  271. package/dist/runtime/messaging/request-deadline.js +39 -0
  272. package/dist/runtime/messaging/submission-result.d.ts +4 -0
  273. package/dist/runtime/messaging/submission-result.js +56 -1
  274. package/dist/runtime/protocol/service_wire_codec.generated.d.ts +1 -0
  275. package/dist/runtime/protocol/service_wire_codec.generated.js +12 -7
  276. package/dist/runtime/spots/formal-remote-actor-transfer-registry.d.ts +4 -1
  277. package/dist/runtime/spots/index.d.ts +14 -20
  278. package/dist/runtime/spots/index.js +302 -176
  279. package/dist/runtime/spots/spot-activation-registry.d.ts +3 -5
  280. package/dist/runtime/spots/spot-activation-registry.js +14 -50
  281. package/dist/runtime/spots/spot-activation-state.d.ts +1 -1
  282. package/dist/runtime/spots/spot-activation-state.js +2 -2
  283. package/dist/runtime/spots/spot-activation.d.ts +3 -4
  284. package/dist/runtime/spots/spot-activation.js +49 -32
  285. package/dist/runtime/spots/spot-actor-admission-coordinator.d.ts +1 -2
  286. package/dist/runtime/spots/spot-actor-admission-coordinator.js +3 -40
  287. package/dist/runtime/spots/spot-actor-join-dispatch.d.ts +10 -18
  288. package/dist/runtime/spots/spot-actor-join-dispatch.js +4 -52
  289. package/dist/runtime/spots/spot-actor-membership.d.ts +4 -6
  290. package/dist/runtime/spots/spot-actor-membership.js +22 -45
  291. package/dist/runtime/spots/spot-actor-packet-dispatch.d.ts +0 -1
  292. package/dist/runtime/spots/spot-actor-packet-dispatch.js +0 -9
  293. package/dist/runtime/spots/spot-actor-packet-relay-dispatch.d.ts +2 -2
  294. package/dist/runtime/spots/spot-actor-packet-relay-dispatch.js +1 -7
  295. package/dist/runtime/spots/spot-context.d.ts +2 -2
  296. package/dist/runtime/spots/spot-entry-activation.d.ts +2 -2
  297. package/dist/runtime/spots/spot-entry-activation.js +9 -20
  298. package/dist/runtime/spots/spot-lifecycle-metrics.js +3 -2
  299. package/dist/runtime/spots/spot-manager-public.d.ts +5 -6
  300. package/dist/runtime/spots/spot-manager-public.js +5 -4
  301. package/dist/runtime/spots/spot-node-autoconnect.js +22 -31
  302. package/dist/runtime/spots/spot-node-runtime-manager.d.ts +19 -18
  303. package/dist/runtime/spots/spot-node-runtime-manager.js +67 -72
  304. package/dist/runtime/spots/spot-outbound.d.ts +7 -8
  305. package/dist/runtime/spots/spot-outbound.js +21 -23
  306. package/dist/runtime/spots/spot-remote-codec.js +5 -3
  307. package/dist/runtime/spots/spot-route-packet-dispatch.d.ts +2 -2
  308. package/dist/runtime/spots/spot-route-packet-dispatch.js +8 -8
  309. package/dist/runtime/spots/spot-route-replies.d.ts +2 -2
  310. package/dist/runtime/spots/spot-route-replies.js +3 -1
  311. package/dist/runtime/spots/spot-routed-actor-admission.d.ts +3 -3
  312. package/dist/runtime/spots/spot-routed-actor-admission.js +3 -12
  313. package/dist/runtime/spots/spot-routed-frame-dispatch.d.ts +1 -2
  314. package/dist/runtime/spots/spot-routed-frame-dispatch.js +0 -1
  315. package/dist/runtime/spots/spot-routed-spot-packet-dispatch.d.ts +4 -0
  316. package/dist/runtime/spots/spot-routed-spot-packet-dispatch.js +65 -15
  317. package/dist/runtime/spots/spot-runtime-ports.d.ts +2 -16
  318. package/dist/runtime/spots/spot-serial-executor.js +2 -2
  319. package/dist/runtime/spots/spot-serial-turn-executor.d.ts +27 -7
  320. package/dist/runtime/spots/spot-serial-turn-executor.js +83 -11
  321. package/dist/runtime/spots/spot-timer.d.ts +3 -2
  322. package/dist/runtime/streams/actor-session-binding-registry.d.ts +16 -29
  323. package/dist/runtime/streams/actor-session-binding-registry.js +142 -212
  324. package/dist/runtime/streams/actor-session-binding-runtime-owner.d.ts +1 -4
  325. package/dist/runtime/streams/bound-actor-relay-sender.d.ts +8 -4
  326. package/dist/runtime/streams/bound-actor-relay-sender.js +65 -41
  327. package/dist/runtime/streams/bound-session-service.d.ts +7 -0
  328. package/dist/runtime/streams/bound-session-service.js +12 -2
  329. package/dist/runtime/streams/index.d.ts +16 -17
  330. package/dist/runtime/streams/index.js +22 -23
  331. package/dist/runtime/streams/managed-stream.d.ts +5 -2
  332. package/dist/runtime/streams/managed-stream.js +20 -13
  333. package/dist/runtime/streams/native-fallback-bound-session.js +14 -19
  334. package/dist/runtime/streams/protocol.d.ts +6 -33
  335. package/dist/runtime/streams/protocol.js +38 -110
  336. package/dist/runtime/streams/session-actor-coordinator.d.ts +2 -3
  337. package/dist/runtime/streams/session-actor-coordinator.js +12 -4
  338. package/dist/runtime/streams/session-calls.d.ts +6 -8
  339. package/dist/runtime/streams/session-calls.js +6 -22
  340. package/dist/runtime/streams/session-context.d.ts +10 -10
  341. package/dist/runtime/streams/session-context.js +25 -10
  342. package/dist/runtime/streams/session-requests.js +2 -1
  343. package/dist/runtime/streams/stream-binding-runtime-ports.d.ts +16 -1
  344. package/dist/runtime/streams/stream-frame-factory.js +2 -2
  345. package/dist/runtime/streams/stream-session-runtime.d.ts +10 -11
  346. package/dist/runtime/streams/stream-session-runtime.js +25 -33
  347. package/dist/runtime/workers/index.d.ts +2 -2
  348. package/dist/runtime/workers/index.js +5 -4
  349. package/package.json +3 -3
  350. package/src/contracts/Actors/ZLinkActorClient.ts +1 -1
  351. package/src/contracts/Channels/Calls.ts +1 -1
  352. package/src/contracts/Common/CoreTypes.ts +7 -0
  353. package/src/contracts/Common/index.ts +1 -1
  354. package/src/contracts/Configuration/Builders.ts +0 -1
  355. package/src/contracts/Configuration/Configs.ts +0 -1
  356. package/src/contracts/Configuration/InternalDefaults.ts +12 -0
  357. package/src/contracts/Configuration/Registration.ts +92 -48
  358. package/src/contracts/Configuration/RegistrationBuilderPolicy.ts +44 -2
  359. package/src/contracts/Configuration/RegistrationBuilders.ts +77 -71
  360. package/src/contracts/Configuration/RegistrationTypes.ts +1 -5
  361. package/src/contracts/Configuration/RegistrationValidators.ts +19 -17
  362. package/src/contracts/Configuration/TimerRegistrationValidator.ts +4 -2
  363. package/src/contracts/Dispatch/ZLinkDispatchOptions.ts +1 -0
  364. package/src/contracts/Handlers/JsonContract.ts +14 -4
  365. package/src/contracts/Locations/Authority.ts +7 -3
  366. package/src/contracts/Locations/Options.ts +1 -1
  367. package/src/contracts/Locations/Stores.ts +14 -0
  368. package/src/contracts/Spots/Contracts.ts +2 -2
  369. package/src/contracts/Streams/BoundSessionContracts.ts +1 -1
  370. package/src/contracts/Streams/IZLinkSession.ts +2 -3
  371. package/src/contracts/Streams/IZLinkSessionActor.ts +2 -6
  372. package/src/internal.ts +14 -0
  373. package/src/nest-integration.ts +28 -10
  374. package/src/runtime/abort.ts +6 -5
  375. package/src/runtime/activation-admission.ts +2 -8
  376. package/src/runtime/actors/actor-authority-payload-codec.ts +58 -20
  377. package/src/runtime/actors/actor-client.ts +85 -218
  378. package/src/runtime/actors/actor-context.ts +39 -33
  379. package/src/runtime/actors/actor-handoff.ts +24 -22
  380. package/src/runtime/actors/actor-lifecycle-snapshot.ts +2 -1
  381. package/src/runtime/actors/actor-local-native-join.ts +172 -174
  382. package/src/runtime/actors/actor-native-lookup.ts +2 -9
  383. package/src/runtime/actors/actor-packet-relay-wire.ts +18 -12
  384. package/src/runtime/actors/actor-remote-joiner.ts +9 -11
  385. package/src/runtime/actors/actor-remote-wire.ts +5 -3
  386. package/src/runtime/actors/actor-request-deadline.ts +4 -0
  387. package/src/runtime/actors/actor-retry-delay.ts +2 -1
  388. package/src/runtime/actors/actor-routed-join-transport.ts +3 -5
  389. package/src/runtime/actors/actor-runtime-state.ts +85 -247
  390. package/src/runtime/actors/bound-session-wire.ts +2 -8
  391. package/src/runtime/actors/deferred-join-completion.ts +10 -6
  392. package/src/runtime/actors/index.ts +100 -79
  393. package/src/runtime/actors/spot-actor-dispatch.ts +60 -29
  394. package/src/runtime/actors/transferred-actor-rollback.ts +11 -62
  395. package/src/runtime/admission.ts +8 -1
  396. package/src/runtime/application-jobs/application-job-queue-scope.ts +4 -4
  397. package/src/runtime/backend/contracts/index.ts +14 -37
  398. package/src/runtime/backend/mesh-actor-session-node-adapter.ts +2 -18
  399. package/src/runtime/backend/mesh-dispatch-pump.ts +111 -117
  400. package/src/runtime/backend/node/node-backend-adapter-support.ts +67 -10
  401. package/src/runtime/backend/node/node-dealer-channel-client-transport.ts +0 -2
  402. package/src/runtime/backend/node/node-event-loop-poller.ts +8 -12
  403. package/src/runtime/backend/node/node-monitor-backend-adapter.ts +1 -0
  404. package/src/runtime/backend/node/node-raw-binding-port.ts +44 -49
  405. package/src/runtime/backend/node/node-raw-mesh-backend.ts +227 -170
  406. package/src/runtime/backend/node/node-socket-backend-adapter.ts +4 -3
  407. package/src/runtime/backend/raw-binding-port.ts +1 -1
  408. package/src/runtime/backend/runtime-values.ts +4 -1
  409. package/src/runtime/channels/channel-clients.ts +139 -102
  410. package/src/runtime/channels/channel-envelope-inspection.ts +2 -1
  411. package/src/runtime/channels/channel-envelope.ts +74 -57
  412. package/src/runtime/channels/channel-outbound-operations.ts +40 -55
  413. package/src/runtime/channels/channel-receive-loops.ts +39 -7
  414. package/src/runtime/channels/channel-runtime-lifecycle.ts +60 -27
  415. package/src/runtime/channels/channel-runtime-manager.ts +12 -30
  416. package/src/runtime/channels/channel-socket-options.ts +8 -15
  417. package/src/runtime/channels/channel-socket-registry.ts +291 -196
  418. package/src/runtime/channels/channel-transports.ts +168 -145
  419. package/src/runtime/channels/client-server-location-runtime.ts +17 -17
  420. package/src/runtime/channels/client-server-service-wire.ts +40 -12
  421. package/src/runtime/channels/dispatch-error-reporter.ts +7 -5
  422. package/src/runtime/channels/fanout-location-runtime.ts +172 -91
  423. package/src/runtime/channels/local-spot-route-transport.ts +1 -5
  424. package/src/runtime/channels/router-socket-spot-route-transport.ts +2 -6
  425. package/src/runtime/channels/source-spot-router.ts +2 -9
  426. package/src/runtime/channels/spot-direct-envelope.ts +1 -1
  427. package/src/runtime/channels/spot-node-route-transport.ts +7 -9
  428. package/src/runtime/channels/spot-route-bridge-transport.ts +5 -12
  429. package/src/runtime/channels/spot-route-dispatch-strategy.ts +11 -30
  430. package/src/runtime/diagnostics/diagnostic-text.ts +4 -0
  431. package/src/runtime/diagnostics/dispatch-error-details.ts +36 -1
  432. package/src/runtime/diagnostics/flow-context.ts +16 -2
  433. package/src/runtime/diagnostics/index.ts +27 -17
  434. package/src/runtime/diagnostics/message-flow.ts +15 -25
  435. package/src/runtime/diagnostics/runtime-metrics.ts +181 -113
  436. package/src/runtime/diagnostics/runtime-observation-queue.ts +3 -2
  437. package/src/runtime/diagnostics/topology-runtime-projections.ts +194 -162
  438. package/src/runtime/disposal.ts +19 -0
  439. package/src/runtime/execution/index.ts +60 -20
  440. package/src/runtime/execution/serial-execution-queue.ts +131 -18
  441. package/src/runtime/execution/state-lane.ts +142 -4
  442. package/src/runtime/foundation/actor-join-recovery-codec.ts +13 -8
  443. package/src/runtime/foundation/event-loop-resources.ts +5 -122
  444. package/src/runtime/foundation/operation-identity.ts +11 -5
  445. package/src/runtime/foundation/operation-registry.ts +33 -50
  446. package/src/runtime/foundation/raw-service-mesh-runtime.ts +127 -125
  447. package/src/runtime/foundation/runtime-state-projections.ts +9 -1
  448. package/src/runtime/foundation/service-authority-payload-codec.ts +31 -13
  449. package/src/runtime/foundation/service-discovery-registry.ts +32 -3
  450. package/src/runtime/foundation/service-instance-activation-recovery-codec.ts +12 -4
  451. package/src/runtime/foundation/service-liveness-registry.ts +2 -1
  452. package/src/runtime/foundation/service-maintenance-runtime.ts +0 -10
  453. package/src/runtime/foundation/service-metadata-codec.ts +2 -2
  454. package/src/runtime/foundation/service-relocation-aggregate-committer.ts +3 -66
  455. package/src/runtime/foundation/service-relocation-object-owner.ts +5 -2
  456. package/src/runtime/foundation/service-relocation-runtime.ts +57 -35
  457. package/src/runtime/foundation/service-runtime-contracts.ts +46 -10
  458. package/src/runtime/foundation/service-session-binding-ingress-port.ts +0 -17
  459. package/src/runtime/foundation/service-stateful-registry.ts +14 -2
  460. package/src/runtime/foundation/service-stateful-runtime.ts +322 -276
  461. package/src/runtime/foundation/service-stateful-wire-codec.ts +128 -80
  462. package/src/runtime/foundation/service-topology-registry.ts +23 -32
  463. package/src/runtime/foundation/service-wire-binary-primitives.ts +6 -0
  464. package/src/runtime/foundation/service-wire-codec.ts +15 -8
  465. package/src/runtime/foundation/service-wire-constants.generated.ts +1 -0
  466. package/src/runtime/foundation/service-wire-m6a-codec.ts +29 -15
  467. package/src/runtime/framework-errors-internal.ts +380 -134
  468. package/src/runtime/handlers/handler-instance-scope.ts +68 -95
  469. package/src/runtime/host/actor-packet-relay.ts +63 -160
  470. package/src/runtime/host/actor-placement-coordinator.ts +8 -5
  471. package/src/runtime/host/actor-runtime-options-factory.ts +27 -8
  472. package/src/runtime/host/actor-transfer-runtime.ts +180 -260
  473. package/src/runtime/host/application-job-queue.ts +28 -34
  474. package/src/runtime/host/bound-session-relay.ts +1 -2
  475. package/src/runtime/host/channel-runtime-options-factory.ts +1 -2
  476. package/src/runtime/host/index.ts +327 -320
  477. package/src/runtime/host/instance-activation-authority.ts +89 -109
  478. package/src/runtime/host/location-runtime-owner.ts +4 -2
  479. package/src/runtime/host/remote-actor-join-receiver.ts +3 -31
  480. package/src/runtime/host/remote-actor-packet-target-store.ts +17 -58
  481. package/src/runtime/host/remote-bound-session-relay.ts +16 -57
  482. package/src/runtime/host/route-mesh-runtime.ts +228 -271
  483. package/src/runtime/host/runtime-shutdown.ts +17 -21
  484. package/src/runtime/host/service-relocation-control.ts +14 -1
  485. package/src/runtime/host/service-relocation-host-runtime.ts +699 -561
  486. package/src/runtime/host/spot-address-transport.ts +175 -356
  487. package/src/runtime/host/spot-node-runtime-options-factory.ts +6 -3
  488. package/src/runtime/host/spot-runtime-options-factory.ts +73 -22
  489. package/src/runtime/host/user-spot-creation-coordinator.ts +36 -22
  490. package/src/runtime/locations/aggregate-inventory-store.ts +16 -13
  491. package/src/runtime/locations/authority-key-codec.ts +7 -3
  492. package/src/runtime/locations/auto-connect-reconciler.ts +39 -26
  493. package/src/runtime/locations/creation-operation-id.ts +6 -3
  494. package/src/runtime/locations/domain-store-contract.ts +12 -3
  495. package/src/runtime/locations/in-memory-authority-store.ts +44 -15
  496. package/src/runtime/locations/in-memory-location-store.ts +50 -39
  497. package/src/runtime/locations/in-memory-provider-location-store.ts +100 -25
  498. package/src/runtime/locations/key-codec.ts +3 -2
  499. package/src/runtime/locations/lease-tracker.ts +8 -14
  500. package/src/runtime/locations/lifecycle.ts +13 -43
  501. package/src/runtime/locations/location-store-failure.ts +4 -0
  502. package/src/runtime/locations/location-store-pages.ts +18 -0
  503. package/src/runtime/locations/location-store-repository.ts +457 -482
  504. package/src/runtime/locations/relocation-blob.ts +17 -6
  505. package/src/runtime/locations/resolvers.ts +75 -49
  506. package/src/runtime/locations/runtime.ts +220 -110
  507. package/src/runtime/locations/spot-location-claims.ts +58 -1
  508. package/src/runtime/messaging/payload-codec.ts +35 -24
  509. package/src/runtime/messaging/request-deadline.ts +58 -0
  510. package/src/runtime/messaging/submission-result.ts +72 -2
  511. package/src/runtime/protocol/service_wire_codec.generated.ts +18 -8
  512. package/src/runtime/protocol/service_wire_pilot_codec.generated.ts +1 -1
  513. package/src/runtime/spots/formal-remote-actor-transfer-registry.ts +4 -1
  514. package/src/runtime/spots/index.ts +433 -229
  515. package/src/runtime/spots/spot-activation-registry.ts +30 -69
  516. package/src/runtime/spots/spot-activation-state.ts +2 -2
  517. package/src/runtime/spots/spot-activation.ts +67 -37
  518. package/src/runtime/spots/spot-actor-admission-coordinator.ts +5 -57
  519. package/src/runtime/spots/spot-actor-join-dispatch.ts +24 -77
  520. package/src/runtime/spots/spot-actor-membership.ts +40 -72
  521. package/src/runtime/spots/spot-actor-packet-dispatch.ts +0 -16
  522. package/src/runtime/spots/spot-actor-packet-relay-dispatch.ts +3 -15
  523. package/src/runtime/spots/spot-context.ts +3 -3
  524. package/src/runtime/spots/spot-entry-activation.ts +13 -30
  525. package/src/runtime/spots/spot-lifecycle-metrics.ts +3 -2
  526. package/src/runtime/spots/spot-manager-public.ts +21 -17
  527. package/src/runtime/spots/spot-node-autoconnect.ts +20 -26
  528. package/src/runtime/spots/spot-node-runtime-manager.ts +136 -125
  529. package/src/runtime/spots/spot-outbound.ts +59 -47
  530. package/src/runtime/spots/spot-remote-codec.ts +7 -3
  531. package/src/runtime/spots/spot-route-packet-dispatch.ts +25 -24
  532. package/src/runtime/spots/spot-route-replies.ts +6 -4
  533. package/src/runtime/spots/spot-routed-actor-admission.ts +13 -26
  534. package/src/runtime/spots/spot-routed-frame-dispatch.ts +2 -3
  535. package/src/runtime/spots/spot-routed-spot-packet-dispatch.ts +95 -22
  536. package/src/runtime/spots/spot-runtime-ports.ts +5 -27
  537. package/src/runtime/spots/spot-serial-executor.ts +2 -2
  538. package/src/runtime/spots/spot-serial-turn-executor.ts +112 -11
  539. package/src/runtime/spots/spot-timer.ts +3 -2
  540. package/src/runtime/streams/actor-session-binding-registry.ts +179 -269
  541. package/src/runtime/streams/actor-session-binding-runtime-owner.ts +0 -8
  542. package/src/runtime/streams/bound-actor-relay-sender.ts +98 -66
  543. package/src/runtime/streams/bound-session-service.ts +22 -2
  544. package/src/runtime/streams/index.ts +78 -68
  545. package/src/runtime/streams/managed-stream.ts +32 -23
  546. package/src/runtime/streams/native-fallback-bound-session.ts +14 -28
  547. package/src/runtime/streams/protocol.ts +34 -88
  548. package/src/runtime/streams/session-actor-coordinator.ts +17 -5
  549. package/src/runtime/streams/session-calls.ts +11 -36
  550. package/src/runtime/streams/session-context.ts +60 -25
  551. package/src/runtime/streams/session-requests.ts +2 -1
  552. package/src/runtime/streams/stream-binding-runtime-ports.ts +22 -1
  553. package/src/runtime/streams/stream-frame-factory.ts +2 -3
  554. package/src/runtime/streams/stream-session-runtime.ts +57 -59
  555. package/src/runtime/workers/index.ts +13 -12
  556. package/dist/runtime/actors/post-commit-actor-location.d.ts +0 -19
  557. package/dist/runtime/actors/post-commit-actor-location.js +0 -72
  558. package/dist/runtime/spots/spot-native-actor-join-admission.d.ts +0 -26
  559. package/dist/runtime/spots/spot-native-actor-join-admission.js +0 -106
  560. package/src/runtime/actors/post-commit-actor-location.ts +0 -121
  561. package/src/runtime/spots/spot-native-actor-join-admission.ts +0 -155
@@ -0,0 +1,3 @@
1
+ export declare function remainingRequestTimeout(operation: string, deadlineMs: number | undefined): number | undefined;
2
+ /** Bounds caller waiting across outbound admission and reply; late completions stay observed. */
3
+ export declare function waitRequestReply<T>(reply: Promise<T>, operation: string, deadlineMs: number | undefined, signal?: AbortSignal, endWait?: () => void, discardLateReply?: (reply: T) => void): Promise<T>;
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.remainingRequestTimeout = remainingRequestTimeout;
4
+ exports.waitRequestReply = waitRequestReply;
5
+ const abort_1 = require("../abort");
6
+ const framework_errors_internal_1 = require("../framework-errors-internal");
7
+ function remainingRequestTimeout(operation, deadlineMs) {
8
+ if (deadlineMs === undefined)
9
+ return undefined;
10
+ const remaining = deadlineMs - performance.now();
11
+ if (remaining <= 0) {
12
+ throw (0, framework_errors_internal_1.createInternalFrameworkException)(framework_errors_internal_1.ZLinkFrameworkInternalErrorKind.DeadlineExceeded, `${operation} exceeded its deadline.`);
13
+ }
14
+ return Math.max(1, Math.ceil(remaining));
15
+ }
16
+ /** Bounds caller waiting across outbound admission and reply; late completions stay observed. */
17
+ async function waitRequestReply(reply, operation, deadlineMs, signal, endWait, discardLateReply) {
18
+ let timer;
19
+ let waiting = reply;
20
+ if (deadlineMs !== undefined) {
21
+ const timeout = new Promise((_resolve, reject) => {
22
+ const remaining = remainingRequestTimeout(operation, deadlineMs);
23
+ timer = setTimeout(() => reject((0, framework_errors_internal_1.createInternalFrameworkException)(framework_errors_internal_1.ZLinkFrameworkInternalErrorKind.DeadlineExceeded, `${operation} exceeded its deadline.`)), remaining);
24
+ });
25
+ waiting = Promise.race([reply, timeout]);
26
+ }
27
+ try {
28
+ return await (0, abort_1.awaitWithAbort)(waiting, signal);
29
+ }
30
+ catch (error) {
31
+ endWait?.();
32
+ if (discardLateReply !== undefined)
33
+ void reply.then(discardLateReply, () => undefined);
34
+ throw error;
35
+ }
36
+ finally {
37
+ clearTimeout(timer);
38
+ }
39
+ }
@@ -10,6 +10,10 @@ export declare enum ZLinkSubmitStatus {
10
10
  export interface ZLinkSubmitResult {
11
11
  readonly status: ZLinkSubmitStatus;
12
12
  }
13
+ /** Projects immediate refusal and pending admission failure from their Core phase. */
14
+ export declare function submitToRequestResult(result: number, phase: 'submit' | 'completion'): number;
15
+ export declare function classifySubmitResult(result: number, operation: string, phase?: 'submit' | 'completion'): ZLinkSubmitResult;
13
16
  export declare function requireOneWayCompletion(result: ZLinkSubmitResult, operation: string, notFoundKind?: ZLinkFrameworkInternalErrorKind): void;
14
17
  export declare function requirePublishCompletion(result: ZLinkSubmitResult, operation: string): void;
18
+ export declare function requireClassicFanoutCompletion(result: ZLinkSubmitResult, operation: string): void;
15
19
  export declare function throwAlreadySubmitted(operation: string): never;
@@ -1,10 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ZLinkSubmitStatus = void 0;
4
+ exports.submitToRequestResult = submitToRequestResult;
5
+ exports.classifySubmitResult = classifySubmitResult;
4
6
  exports.requireOneWayCompletion = requireOneWayCompletion;
5
7
  exports.requirePublishCompletion = requirePublishCompletion;
8
+ exports.requireClassicFanoutCompletion = requireClassicFanoutCompletion;
6
9
  exports.throwAlreadySubmitted = throwAlreadySubmitted;
7
10
  const framework_errors_internal_1 = require("../framework-errors-internal");
11
+ const contracts_1 = require("../../contracts");
12
+ const runtime_values_1 = require("../backend/runtime-values");
8
13
  var ZLinkSubmitStatus;
9
14
  (function (ZLinkSubmitStatus) {
10
15
  ZLinkSubmitStatus["Submitted"] = "submitted";
@@ -14,13 +19,58 @@ var ZLinkSubmitStatus;
14
19
  ZLinkSubmitStatus["RouteNotConnected"] = "routeNotConnected";
15
20
  ZLinkSubmitStatus["Shutdown"] = "shutdown";
16
21
  })(ZLinkSubmitStatus || (exports.ZLinkSubmitStatus = ZLinkSubmitStatus = {}));
22
+ /** Projects immediate refusal and pending admission failure from their Core phase. */
23
+ function submitToRequestResult(result, phase) {
24
+ switch (result) {
25
+ case runtime_values_1.SubmitResult.Ok:
26
+ return runtime_values_1.RequestResult.Ok;
27
+ case runtime_values_1.SubmitResult.Backpressured:
28
+ return phase === 'submit' ? runtime_values_1.RequestResult.NotConnected : runtime_values_1.RequestResult.TimedOut;
29
+ case runtime_values_1.SubmitResult.NotConnected:
30
+ return runtime_values_1.RequestResult.NotConnected;
31
+ case runtime_values_1.SubmitResult.NotFound:
32
+ return phase === 'submit' ? runtime_values_1.RequestResult.NotFound : runtime_values_1.RequestResult.NotConnected;
33
+ case runtime_values_1.SubmitResult.NotAdmitted:
34
+ return runtime_values_1.RequestResult.Rejected;
35
+ case runtime_values_1.SubmitResult.InvalidHandle:
36
+ case runtime_values_1.SubmitResult.InvalidArgument:
37
+ case runtime_values_1.SubmitResult.ThreadViolation:
38
+ return runtime_values_1.RequestResult.InvalidArgument;
39
+ case runtime_values_1.SubmitResult.InvalidState:
40
+ return runtime_values_1.RequestResult.InvalidState;
41
+ case runtime_values_1.SubmitResult.NotSupported:
42
+ return runtime_values_1.RequestResult.NotSupported;
43
+ case runtime_values_1.SubmitResult.Terminated:
44
+ return runtime_values_1.RequestResult.Terminated;
45
+ default:
46
+ return runtime_values_1.RequestResult.InternalError;
47
+ }
48
+ }
49
+ function classifySubmitResult(result, operation, phase = 'submit') {
50
+ const terminal = submitToRequestResult(result, phase);
51
+ switch (terminal) {
52
+ case runtime_values_1.RequestResult.Ok:
53
+ return { status: ZLinkSubmitStatus.Submitted };
54
+ case runtime_values_1.RequestResult.TimedOut:
55
+ return { status: ZLinkSubmitStatus.TimedOut };
56
+ case runtime_values_1.RequestResult.NotFound:
57
+ return { status: ZLinkSubmitStatus.TargetNotFound };
58
+ case runtime_values_1.RequestResult.NotConnected:
59
+ return { status: ZLinkSubmitStatus.RouteNotConnected };
60
+ case runtime_values_1.RequestResult.Terminated:
61
+ return { status: ZLinkSubmitStatus.Shutdown };
62
+ default:
63
+ throw new contracts_1.ZLinkFrameworkException((0, framework_errors_internal_1.requestResultToPublicErrorKind)(terminal), `${operation} failed with submit result ${result}.`);
64
+ }
65
+ }
17
66
  function requireOneWayCompletion(result, operation, notFoundKind = framework_errors_internal_1.ZLinkFrameworkInternalErrorKind.RequestTargetNotFound) {
18
67
  switch (result.status) {
19
68
  case ZLinkSubmitStatus.Submitted:
20
69
  return;
21
70
  case ZLinkSubmitStatus.TimedOut:
22
- case ZLinkSubmitStatus.Backpressured:
23
71
  throw (0, framework_errors_internal_1.createInternalFrameworkException)(framework_errors_internal_1.ZLinkFrameworkInternalErrorKind.DeadlineExceeded, `${operation} did not obtain admission before its deadline.`, true);
72
+ case ZLinkSubmitStatus.Backpressured:
73
+ throw (0, framework_errors_internal_1.createInternalFrameworkException)(framework_errors_internal_1.ZLinkFrameworkInternalErrorKind.RouteNotConnected, `${operation} has no admission wait token.`, true);
24
74
  case ZLinkSubmitStatus.TargetNotFound:
25
75
  throw (0, framework_errors_internal_1.createInternalFrameworkException)(notFoundKind, `${operation} target was not found.`);
26
76
  case ZLinkSubmitStatus.RouteNotConnected:
@@ -32,6 +82,11 @@ function requireOneWayCompletion(result, operation, notFoundKind = framework_err
32
82
  function requirePublishCompletion(result, operation) {
33
83
  requireOneWayCompletion(result, operation);
34
84
  }
85
+ function requireClassicFanoutCompletion(result, operation) {
86
+ requireOneWayCompletion(result.status === ZLinkSubmitStatus.Backpressured
87
+ ? { status: ZLinkSubmitStatus.TimedOut }
88
+ : result, operation);
89
+ }
35
90
  function throwAlreadySubmitted(operation) {
36
91
  throw (0, framework_errors_internal_1.createInternalFrameworkException)(framework_errors_internal_1.ZLinkFrameworkInternalErrorKind.AlreadySubmitted, `${operation} has already been submitted.`);
37
92
  }
@@ -1004,6 +1004,7 @@ export type InstanceRouteV1 = {
1004
1004
  readonly targetNodeGeneration: NonzeroU64;
1005
1005
  readonly targetSpotId: Text8;
1006
1006
  readonly authority: AuthorityGenerationFence;
1007
+ readonly instanceIntent: Bool8;
1007
1008
  } | {
1008
1009
  readonly routeKind: "coldActivation";
1009
1010
  readonly targetNodeRid: Rid;
@@ -5401,7 +5401,7 @@ function readChannelEntry(reader, context, enclosing, flags) {
5401
5401
  const value = {};
5402
5402
  value["channelName"] = readText8(reader, context, value, flags);
5403
5403
  value["weight"] = readU32(reader, context, value, flags);
5404
- if (numeric(value["weight"]) < 0n || numeric(value["weight"]) > 100n)
5404
+ if (numeric(value["weight"]) < 0n || numeric(value["weight"]) > 10000n)
5405
5405
  fail("weight constraint");
5406
5406
  return value;
5407
5407
  }
@@ -5415,7 +5415,7 @@ function writeChannelEntry(input, writer, context, enclosing, flags) {
5415
5415
  writeText8(value["channelName"], writer, context, value, flags);
5416
5416
  if (value["weight"] === undefined)
5417
5417
  fail("weight required");
5418
- if (numeric(value["weight"]) < 0n || numeric(value["weight"]) > 100n)
5418
+ if (numeric(value["weight"]) < 0n || numeric(value["weight"]) > 10000n)
5419
5419
  fail("weight constraint");
5420
5420
  writeU32(value["weight"], writer, context, value, flags);
5421
5421
  }
@@ -5669,7 +5669,7 @@ function readDescriptorExtension(reader, context, enclosing, flags) {
5669
5669
  if (value["placementWeight"] !== undefined)
5670
5670
  fail("descriptor-extension duplicate");
5671
5671
  value["placementWeight"] = readU32(item, context, value, flags);
5672
- if (numeric(value["placementWeight"]) < 0n || numeric(value["placementWeight"]) > 100n)
5672
+ if (numeric(value["placementWeight"]) < 0n || numeric(value["placementWeight"]) > 10000n)
5673
5673
  fail("placementWeight constraint");
5674
5674
  item.done("placementWeight");
5675
5675
  break;
@@ -5778,7 +5778,7 @@ function writeDescriptorExtension(input, writer, context, enclosing, flags) {
5778
5778
  body.put(itemBytes);
5779
5779
  }
5780
5780
  if (value["placementWeight"] !== undefined) {
5781
- if (numeric(value["placementWeight"]) < 0n || numeric(value["placementWeight"]) > 100n)
5781
+ if (numeric(value["placementWeight"]) < 0n || numeric(value["placementWeight"]) > 10000n)
5782
5782
  fail("placementWeight constraint");
5783
5783
  const item = new Writer();
5784
5784
  writeU32(value["placementWeight"], item, context, value, flags);
@@ -5894,7 +5894,7 @@ function readClientServerAdmission(reader, context, enclosing, flags) {
5894
5894
  value["lifecycleGeneration"] = readNonzeroU64(body, context, value, flags);
5895
5895
  value["descriptorRevision"] = readNonzeroU64(body, context, value, flags);
5896
5896
  value["weight"] = readU32(body, context, value, flags);
5897
- if (numeric(value["weight"]) < 0n || numeric(value["weight"]) > 100n)
5897
+ if (numeric(value["weight"]) < 0n || numeric(value["weight"]) > 10000n)
5898
5898
  fail("weight constraint");
5899
5899
  value["runtimeState"] = readRuntimeState(body, context, value, flags);
5900
5900
  value["securityIdentity"] = readText8(body, context, value, flags);
@@ -5951,7 +5951,7 @@ function writeClientServerAdmission(input, writer, context, enclosing, flags) {
5951
5951
  writeNonzeroU64(numeric(value["descriptorRevision"]), body, context, value, flags);
5952
5952
  if (value["weight"] === undefined)
5953
5953
  fail("weight required");
5954
- if (numeric(value["weight"]) < 0n || numeric(value["weight"]) > 100n)
5954
+ if (numeric(value["weight"]) < 0n || numeric(value["weight"]) > 10000n)
5955
5955
  fail("weight constraint");
5956
5956
  writeU32(value["weight"], body, context, value, flags);
5957
5957
  if (value["runtimeState"] === undefined)
@@ -7309,6 +7309,7 @@ function readInstanceRouteV1(reader, context, enclosing, flags) {
7309
7309
  value["targetNodeGeneration"] = readNonzeroU64(body, context, value, flags);
7310
7310
  value["targetSpotId"] = readText8(body, context, value, flags);
7311
7311
  value["authority"] = readAuthorityGenerationFence(body, context, value, flags);
7312
+ value["instanceIntent"] = readBool8(body, context, value, flags);
7312
7313
  }
7313
7314
  else if (same(value["routeKind"], "coldActivation")) {
7314
7315
  value["targetNodeRid"] = readRid(body, context, value, flags);
@@ -7336,6 +7337,7 @@ function* readIncrementalInstanceRouteV1(reader, context, enclosing, flags) {
7336
7337
  value["targetNodeGeneration"] = yield* readIncrementalNonzeroU64(body, context, value, flags);
7337
7338
  value["targetSpotId"] = yield* readIncrementalText8(body, context, value, flags);
7338
7339
  value["authority"] = yield* readIncrementalAuthorityGenerationFence(body, context, value, flags);
7340
+ value["instanceIntent"] = yield* readIncrementalBool8(body, context, value, flags);
7339
7341
  }
7340
7342
  else if (same(value["routeKind"], "coldActivation")) {
7341
7343
  value["targetNodeRid"] = yield* readIncrementalRid(body, context, value, flags);
@@ -7373,9 +7375,12 @@ function writeInstanceRouteV1(input, writer, context, enclosing, flags) {
7373
7375
  if (value["authority"] === undefined)
7374
7376
  fail("authority required");
7375
7377
  writeAuthorityGenerationFence(value["authority"], body, context, value, flags);
7378
+ if (value["instanceIntent"] === undefined)
7379
+ fail("instanceIntent required");
7380
+ writeBool8(value["instanceIntent"], body, context, value, flags);
7376
7381
  }
7377
7382
  else if (same(value["routeKind"], "coldActivation")) {
7378
- if (value["authority"] !== undefined)
7383
+ if (value["authority"] !== undefined || value["instanceIntent"] !== undefined)
7379
7384
  fail("instance-route-v1 discriminator agreement");
7380
7385
  if (value["targetNodeRid"] === undefined)
7381
7386
  fail("targetNodeRid required");
@@ -1,5 +1,5 @@
1
1
  import type { RoutingId, ZLinkActor } from '../../contracts';
2
- import type { ZLinkDeferredJoinCompletion } from '../actors';
2
+ import type { ZLinkDeferredJoinCompletion, ZLinkRemoteBoundSessionTarget } from '../actors';
3
3
  import type { ZLinkActorHandoffPacket } from '../actors/actor-handoff';
4
4
  export interface ZLinkFormalRemoteActorTransfer {
5
5
  readonly actor: ZLinkActor;
@@ -7,6 +7,8 @@ export interface ZLinkFormalRemoteActorTransfer {
7
7
  readonly transferId: string;
8
8
  readonly handoffBacklog: readonly ZLinkActorHandoffPacket[];
9
9
  readonly deferredJoinCompletion?: ZLinkDeferredJoinCompletion;
10
+ /** The Session seal this relocation carries until it publishes command 44. */
11
+ readonly sealedSession?: ZLinkRemoteBoundSessionTarget;
10
12
  readonly targetLifecycleCompleted: Promise<void>;
11
13
  readonly sourceLeaveSubmitted: Promise<boolean>;
12
14
  }
@@ -24,6 +26,7 @@ export declare class ZLinkFormalRemoteActorTransferRegistry {
24
26
  readonly transferId: string;
25
27
  readonly handoffBacklog: readonly ZLinkActorHandoffPacket[];
26
28
  readonly deferredJoinCompletion?: ZLinkDeferredJoinCompletion;
29
+ readonly sealedSession?: ZLinkRemoteBoundSessionTarget;
27
30
  }): ZLinkFormalRemoteActorTransfer;
28
31
  delete(actorId: string): void;
29
32
  completeTargetLifecycle(actorId: string, transferId: string): boolean;
@@ -8,7 +8,7 @@ export { ZLinkSpotActorAdmissionCoordinator } from './spot-actor-admission-coord
8
8
  import type { ZLinkSpotRouteResolver, ZLinkSpotRouteTarget } from './spot-routing-internal';
9
9
  import type { Message } from '../../contracts/Common/Message';
10
10
  import type { ZLinkMessageFollowOrigin } from '../foundation/service-runtime-contracts';
11
- import { ZLinkMessage } from '../../contracts';
11
+ import { ZLinkMessage, ZLinkFrameworkRuntimeState } from '../../contracts';
12
12
  import { type ZLinkRuntimeEventPublisher } from '../diagnostics';
13
13
  import { type ReadyRecord, type ReceiveRecord } from '../foundation/service-runtime-contracts';
14
14
  import type { ZLinkBackendSpot, ZLinkBackendSpotNode } from '../backend/contracts';
@@ -27,7 +27,6 @@ export { DefaultZLinkSpotHandlerRegistry, type ZLinkSpotHandlerRegistration } fr
27
27
  export { ZLinkRuntimeSpotPublisherTransport } from './spot-publisher-transport';
28
28
  import type { ZLinkSpotActivation } from './spot-activation-state';
29
29
  import { type ZLinkNativeSpotAuthority } from './spot-activation';
30
- import { type ZLinkActorJoinRollback } from './spot-actor-membership';
31
30
  import type { ZLinkSpotActorHandoffRuntime, ZLinkSpotActorTransferRuntime, ZLinkSpotBoundSessionRuntime } from './spot-runtime-ports';
32
31
  import type { ZLinkRuntimeAdmissionGate } from '../admission';
33
32
  import type { ZLinkActivationAdmission } from '../activation-admission';
@@ -62,6 +61,7 @@ export interface ZLinkSpotManagerOptions {
62
61
  * stateful reply has committed Core membership.
63
62
  */
64
63
  readonly dispatchEntryActorJoin?: (meshName: string, actor: ZLinkActor, handoffBacklog?: readonly ZLinkActorHandoffPacket[]) => Promise<void>;
64
+ readonly executeEntryActor?: <T>(meshName: string, actorId: string, operation: () => Promise<T>) => Promise<T>;
65
65
  readonly actorCountProvider?: (spotId: RoutingId) => number;
66
66
  readonly userSpotExecutionMode?: (meshName: string, spotType: Type<ZLinkSpot>) => import('../../contracts').ZLinkUserSpotExecutionMode;
67
67
  readonly userSpotRelocationCoordinationMode?: (meshName: string, spotType: Type<ZLinkSpot>) => import('../../contracts').ZLinkSpotRelocationCoordinationMode;
@@ -69,7 +69,6 @@ export interface ZLinkSpotManagerOptions {
69
69
  readonly actorRef?: ActorRef;
70
70
  readonly spotId?: RoutingId;
71
71
  };
72
- readonly actorBindingGenerationObserver?: (actorId: string, generation: bigint) => void;
73
72
  readonly channelClient?: ZLinkChannelClient;
74
73
  readonly fanoutClient?: ZLinkFanoutClient;
75
74
  readonly spotPublisherClient?: ZLinkSpotPublisherClient;
@@ -77,7 +76,6 @@ export interface ZLinkSpotManagerOptions {
77
76
  readonly routedTransport?: ZLinkSpotRoutedTransport;
78
77
  readonly addressTransport?: import('./spot-outbound').ZLinkSpotAddressTransport;
79
78
  readonly spotRouterChannelIdForMesh?: (meshName: string) => string;
80
- readonly channelMeshNameForChannel?: (channelName: string) => string | undefined;
81
79
  readonly providerResolver?: ZLinkProviderResolver;
82
80
  readonly dispatchErrors?: ZLinkDispatchErrorReporter;
83
81
  readonly closeErrorSink?: import('../diagnostics/dispatch-error-port').ZLinkDispatchErrorSink;
@@ -86,16 +84,10 @@ export interface ZLinkSpotManagerOptions {
86
84
  readonly messageSerializers?: ReadonlyMap<string, ZLinkMessageSerializer>;
87
85
  readonly locationLifecycle?: ZLinkLocationLifecycle;
88
86
  readonly releaseInstanceAuthority?: (meshName: string, spotId: RoutingId, objectGeneration: bigint) => Promise<void>;
89
- readonly beginInstanceIdleClosingAuthority?: (meshName: string, spotId: RoutingId, onCommitted: () => void) => Promise<{
90
- release(): Promise<void>;
91
- } | undefined>;
92
- readonly beginInstanceClosingAuthority?: (meshName: string, spotId: RoutingId, onCommitted: () => void) => Promise<{
93
- release(): Promise<void>;
94
- } | undefined>;
87
+ readonly beginInstanceIdleClosingAuthority?: (meshName: string, spotId: RoutingId, onCommitted: () => void) => Promise<import('../locations/spot-location-claims').ZLinkInstanceClosingAuthority | undefined>;
88
+ readonly beginInstanceClosingAuthority?: (meshName: string, spotId: RoutingId, onCommitted: () => void, objectGeneration: bigint) => Promise<import('../locations/spot-location-claims').ZLinkInstanceClosingAuthority | undefined>;
95
89
  /** Moves a local User Spot incarnation's authority to Closing for a context Close. */
96
- readonly beginUserClosingAuthority?: (meshName: string, spotId: RoutingId, objectGeneration: bigint, onCommitted: () => void) => Promise<{
97
- release(): Promise<void>;
98
- } | undefined>;
90
+ readonly beginUserClosingAuthority?: (meshName: string, spotId: RoutingId, objectGeneration: bigint, onCommitted: () => void) => Promise<import('../locations/spot-location-claims').ZLinkInstanceClosingAuthority | undefined>;
99
91
  readonly instanceSpotApplicationTargetProvider?: (meshName: string, spotId: RoutingId) => {
100
92
  readonly stableType: string;
101
93
  readonly objectGeneration: bigint;
@@ -116,13 +108,16 @@ export interface ZLinkSpotManagerOptions {
116
108
  readonly actorType: string;
117
109
  }>;
118
110
  readonly actorLifecycleResolver?: (actorId: string) => ZLinkActor | undefined;
119
- readonly detachedTaskRunner?: ZLinkDetachedTaskRunner;
111
+ readonly detachedTaskRunner: ZLinkDetachedTaskRunner;
120
112
  readonly actorTransferRuntime?: ZLinkSpotActorTransferRuntime;
121
113
  readonly boundSessionRuntime?: ZLinkSpotBoundSessionRuntime;
122
114
  readonly actorHandoffRuntime?: ZLinkSpotActorHandoffRuntime;
123
115
  readonly metrics?: import('../diagnostics').ZLinkRuntimeMetrics;
124
116
  readonly admission?: ZLinkRuntimeAdmissionGate;
125
- readonly statefulExecutionAllowed?: () => boolean;
117
+ readonly statefulExecution?: {
118
+ readonly admissionOpen: () => boolean;
119
+ readonly hostState: () => ZLinkFrameworkRuntimeState;
120
+ };
126
121
  readonly activationAdmission?: ZLinkActivationAdmission;
127
122
  }
128
123
  export declare class DefaultZLinkSpotManager {
@@ -156,10 +151,10 @@ export declare class DefaultZLinkSpotManager {
156
151
  materializeInstance(meshName: string, instanceType: string, spotId: RoutingId, objectGeneration: bigint, signal?: AbortSignal): Promise<void>;
157
152
  private materializeInstanceCore;
158
153
  isInstanceMaterialized(meshName: string, instanceType: string, spotId: RoutingId): boolean;
154
+ private resolveApplicationActivation;
159
155
  isInstanceMaterializing(meshName: string, spotId: RoutingId): boolean;
160
156
  isSpotClosing(meshName: string, spotId: RoutingId): boolean;
161
157
  pendingSpotCloseDecision(meshName: string, spotId: RoutingId): Promise<void> | undefined;
162
- isInstanceClosing(meshName: string, spotId: RoutingId): boolean;
163
158
  discardInstance(meshName: string, spotId: RoutingId): Promise<void>;
164
159
  isInstanceSpotIdleEvicting(meshName: string, spotId: RoutingId): boolean;
165
160
  beginInstanceSpotIdleEviction(meshName: string, spotId: RoutingId): boolean;
@@ -184,9 +179,7 @@ export declare class DefaultZLinkSpotManager {
184
179
  list(meshName: string): Promise<readonly ZLinkSpotInfo[]>;
185
180
  drainForShutdown(meshName: string, signal?: AbortSignal, deadline?: Date): Promise<void>;
186
181
  close(meshName: string, spotId: RoutingId, signal?: AbortSignal): Promise<boolean>;
187
- closeUserWithAuthority(meshName: string, spotId: RoutingId, beginAuthority: (onCommitted: () => void) => Promise<{
188
- release(): Promise<void>;
189
- }>, signal?: AbortSignal): Promise<boolean>;
182
+ closeUserWithAuthority(meshName: string, spotId: RoutingId, beginAuthority: (onCommitted: () => void) => Promise<import('../locations/spot-location-claims').ZLinkInstanceClosingAuthority>, signal?: AbortSignal): Promise<boolean>;
190
183
  private closeFromContext;
191
184
  private closeWithReason;
192
185
  private runCloseOperation;
@@ -197,7 +190,7 @@ export declare class DefaultZLinkSpotManager {
197
190
  publishUserSpot(meshName: string, spotId: RoutingId): void;
198
191
  abortUserSpotPublication(meshName: string, spotId: RoutingId): void;
199
192
  resolveLocalSpotRoute(spotId: RoutingId): ZLinkSpotRouteTarget | undefined;
200
- admitActorJoin(spotId: RoutingId, actor: ZLinkActor, request: Message, commit: (spot: ZLinkSpot) => Promise<ZLinkActorJoinRollback | void> | ZLinkActorJoinRollback | void, signal?: AbortSignal, leaveSource?: () => Promise<void>, contentType?: string): Promise<ZLinkSpotActorJoinResult>;
193
+ admitActorJoin(spotId: RoutingId, actor: ZLinkActor, request: Message, commit: (spot: ZLinkSpot) => Promise<void> | void, signal?: AbortSignal, leaveSource?: () => Promise<void>, contentType?: string): Promise<ZLinkSpotActorJoinResult>;
201
194
  leaveActor(spotId: RoutingId, actor: ZLinkActor, signal?: AbortSignal): Promise<void>;
202
195
  leaveActorInMesh(meshName: string, spotId: RoutingId, actor: ZLinkActor, signal?: AbortSignal): Promise<void>;
203
196
  notifyActorLeftAfterTransfer(spotId: RoutingId, actor: ZLinkActor, signal?: AbortSignal): Promise<void>;
@@ -225,6 +218,7 @@ export declare class DefaultZLinkSpotManager {
225
218
  dispatchMeshSpot(meshName: string, owner: ReadyRecord, record: ReceiveRecord): Promise<void>;
226
219
  private ensureInstanceApplicationActivation;
227
220
  dispatchMeshInstance(meshName: string, owner: ReadyRecord, record: ReceiveRecord): Promise<void>;
221
+ private reportInstanceDispatchFailure;
228
222
  private traceInstanceMessage;
229
223
  dispatchMeshActor(meshName: string, owner: ReadyRecord, record: ReceiveRecord): Promise<void>;
230
224
  dispatchMeshActorJoin(meshName: string, owner: ReadyRecord, record: ReceiveRecord): Promise<void>;