@zlink-systems/framework 0.20.0 → 0.22.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 (487) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/contracts/Common/ZLinkMessage.js +5 -5
  3. package/dist/contracts/Configuration/CodecContentType.js +5 -7
  4. package/dist/contracts/Configuration/DiagnosticsValidation.js +1 -6
  5. package/dist/contracts/Configuration/EndpointNotation.js +4 -8
  6. package/dist/contracts/Configuration/Registration.js +14 -11
  7. package/dist/contracts/Configuration/RegistrationBuilders.js +32 -25
  8. package/dist/contracts/Configuration/RegistrationNormalizers.js +25 -26
  9. package/dist/contracts/Configuration/RegistrationValidators.js +36 -38
  10. package/dist/contracts/Configuration/SendTimeoutValidation.js +4 -4
  11. package/dist/contracts/Configuration/TimerRegistrationValidator.js +7 -7
  12. package/dist/contracts/Handlers/JsonContract.js +23 -11
  13. package/dist/contracts/Spots/SpotKind.js +16 -8
  14. package/dist/location-store-integration.js +16 -16
  15. package/dist/nest-integration.js +17 -11
  16. package/dist/runtime/abort.js +9 -5
  17. package/dist/runtime/actors/actor-authority-payload-codec.js +12 -16
  18. package/dist/runtime/actors/actor-authority-publication.js +18 -17
  19. package/dist/runtime/actors/actor-client.js +83 -63
  20. package/dist/runtime/actors/actor-context.js +24 -18
  21. package/dist/runtime/actors/actor-creation.js +4 -3
  22. package/dist/runtime/actors/actor-handoff.js +89 -92
  23. package/dist/runtime/actors/actor-local-native-join.js +18 -19
  24. package/dist/runtime/actors/actor-mailbox.js +1 -1
  25. package/dist/runtime/actors/actor-message-follow-context.js +24 -21
  26. package/dist/runtime/actors/actor-packet-relay-wire.js +1 -3
  27. package/dist/runtime/actors/actor-remote-joiner.js +20 -17
  28. package/dist/runtime/actors/actor-remote-wire.js +6 -7
  29. package/dist/runtime/actors/actor-runtime-state.js +87 -81
  30. package/dist/runtime/actors/actor-transfer-registry.js +3 -5
  31. package/dist/runtime/actors/bound-session-wire.js +14 -9
  32. package/dist/runtime/actors/deferred-join-accepted-journal.js +158 -124
  33. package/dist/runtime/actors/index.js +2 -5
  34. package/dist/runtime/actors/post-commit-actor-binder.js +3 -6
  35. package/dist/runtime/actors/post-commit-actor-location.js +1 -1
  36. package/dist/runtime/actors/spot-actor-dispatch.js +5 -5
  37. package/dist/runtime/actors/transferred-actor-rollback.js +4 -4
  38. package/dist/runtime/admission.js +2 -6
  39. package/dist/runtime/application-jobs/application-ingress-record-owner.js +2 -6
  40. package/dist/runtime/application-jobs/receive-flow-controller.js +11 -12
  41. package/dist/runtime/backend/mesh-completion-table.js +1 -3
  42. package/dist/runtime/backend/mesh-dispatch-pump.js +12 -16
  43. package/dist/runtime/backend/node/node-backend-adapter-factory.js +1 -3
  44. package/dist/runtime/backend/node/node-backend-adapter-support.js +26 -17
  45. package/dist/runtime/backend/node/node-mesh-backend-adapter.js +4 -3
  46. package/dist/runtime/backend/node/node-raw-binding-port.js +7 -6
  47. package/dist/runtime/backend/node/node-raw-mesh-backend.js +116 -113
  48. package/dist/runtime/backend/node/node-socket-backend-adapter.js +12 -13
  49. package/dist/runtime/backend/runtime-message.js +3 -3
  50. package/dist/runtime/backend/runtime-values.d.ts +2 -2
  51. package/dist/runtime/backend/runtime-values.js +4 -5
  52. package/dist/runtime/channels/channel-clients.js +27 -24
  53. package/dist/runtime/channels/channel-dispatch-pipeline.js +10 -18
  54. package/dist/runtime/channels/channel-dispatch-services.js +7 -4
  55. package/dist/runtime/channels/channel-dispatchers.js +9 -9
  56. package/dist/runtime/channels/channel-envelope-inspection.js +16 -13
  57. package/dist/runtime/channels/channel-envelope.js +83 -47
  58. package/dist/runtime/channels/channel-outbound-operations.js +8 -8
  59. package/dist/runtime/channels/channel-receive-loops.js +20 -22
  60. package/dist/runtime/channels/channel-receive-task-tracker.js +1 -1
  61. package/dist/runtime/channels/channel-runtime-lifecycle.js +61 -56
  62. package/dist/runtime/channels/channel-runtime-manager.js +18 -9
  63. package/dist/runtime/channels/channel-socket-registry.js +126 -123
  64. package/dist/runtime/channels/channel-transports.js +43 -33
  65. package/dist/runtime/channels/client-server-location-runtime.js +32 -40
  66. package/dist/runtime/channels/client-server-service-wire.js +29 -22
  67. package/dist/runtime/channels/dispatch-error-reporter.js +9 -7
  68. package/dist/runtime/channels/fanout-location-runtime.js +34 -47
  69. package/dist/runtime/channels/fanout-service-wire.js +3 -5
  70. package/dist/runtime/channels/local-spot-route-transport.js +7 -1
  71. package/dist/runtime/channels/route-member-snapshot.js +3 -3
  72. package/dist/runtime/channels/source-spot-router.js +6 -2
  73. package/dist/runtime/channels/spot-route-bridge-transport.js +5 -2
  74. package/dist/runtime/channels/spot-route-dispatch-strategy.js +2 -2
  75. package/dist/runtime/channels/spot-route-target-resolver.js +6 -6
  76. package/dist/runtime/diagnostics/index.js +38 -10
  77. package/dist/runtime/diagnostics/message-flow.js +47 -39
  78. package/dist/runtime/diagnostics/runtime-metrics.js +18 -9
  79. package/dist/runtime/diagnostics/runtime-observation-queue.js +8 -10
  80. package/dist/runtime/diagnostics/topology-runtime-projections.js +17 -10
  81. package/dist/runtime/execution/index.js +7 -6
  82. package/dist/runtime/execution/serial-execution-queue.js +12 -18
  83. package/dist/runtime/execution/state-lane.js +2 -2
  84. package/dist/runtime/foundation/actor-join-recovery-codec.js +31 -23
  85. package/dist/runtime/foundation/event-loop-resources.js +4 -4
  86. package/dist/runtime/foundation/message-follow-suppression-registry.js +4 -4
  87. package/dist/runtime/foundation/raw-service-mesh-runtime.js +136 -136
  88. package/dist/runtime/foundation/route-mesh-connection-policy.js +4 -4
  89. package/dist/runtime/foundation/runtime-state-projections.js +22 -11
  90. package/dist/runtime/foundation/service-authority-payload-codec.js +13 -15
  91. package/dist/runtime/foundation/service-discovery-registry.js +35 -33
  92. package/dist/runtime/foundation/service-instance-activation-recovery-codec.js +20 -22
  93. package/dist/runtime/foundation/service-liveness-registry.js +16 -12
  94. package/dist/runtime/foundation/service-maintenance-runtime.js +2 -4
  95. package/dist/runtime/foundation/service-relocation-aggregate-committer.js +24 -24
  96. package/dist/runtime/foundation/service-relocation-object-owner.js +6 -6
  97. package/dist/runtime/foundation/service-relocation-runtime.js +137 -94
  98. package/dist/runtime/foundation/service-runtime-contracts.js +5 -5
  99. package/dist/runtime/foundation/service-stateful-registry.js +24 -23
  100. package/dist/runtime/foundation/service-stateful-runtime.js +416 -438
  101. package/dist/runtime/foundation/service-stateful-wire-codec.js +95 -98
  102. package/dist/runtime/foundation/service-topology-registry.js +96 -95
  103. package/dist/runtime/foundation/service-weighted-selection.js +6 -11
  104. package/dist/runtime/foundation/service-wire-binary-primitives.js +5 -6
  105. package/dist/runtime/foundation/service-wire-m6a-codec.js +46 -35
  106. package/dist/runtime/framework-errors-internal.js +7 -10
  107. package/dist/runtime/handlers/handler-instance-scope.js +4 -5
  108. package/dist/runtime/handlers/index.js +3 -1
  109. package/dist/runtime/host/actor-packet-relay.js +74 -70
  110. package/dist/runtime/host/actor-placement-coordinator.js +29 -31
  111. package/dist/runtime/host/actor-runtime-options-factory.js +12 -14
  112. package/dist/runtime/host/actor-transfer-authority-runtime.js +7 -9
  113. package/dist/runtime/host/actor-transfer-runtime.js +176 -153
  114. package/dist/runtime/host/application-job-queue.js +18 -22
  115. package/dist/runtime/host/bound-session-relay.js +3 -1
  116. package/dist/runtime/host/channel-runtime-options-factory.js +31 -14
  117. package/dist/runtime/host/host-capacity-status.js +8 -4
  118. package/dist/runtime/host/index.js +244 -227
  119. package/dist/runtime/host/instance-activation-authority.js +93 -96
  120. package/dist/runtime/host/location-runtime-owner.js +16 -14
  121. package/dist/runtime/host/mesh-router-resolver.js +11 -13
  122. package/dist/runtime/host/relocation-direct-transfer.js +10 -9
  123. package/dist/runtime/host/remote-actor-join-receiver.js +20 -15
  124. package/dist/runtime/host/remote-actor-packet-target-store.js +18 -22
  125. package/dist/runtime/host/remote-bound-session-relay.js +97 -73
  126. package/dist/runtime/host/route-mesh-runtime.js +64 -69
  127. package/dist/runtime/host/runtime-shutdown.js +1 -2
  128. package/dist/runtime/host/service-relocation-host-runtime.js +586 -511
  129. package/dist/runtime/host/spot-address-transport.js +69 -71
  130. package/dist/runtime/host/spot-runtime-options-factory.js +30 -29
  131. package/dist/runtime/host/stateful-authority-route-runtime.js +65 -68
  132. package/dist/runtime/host/user-spot-creation-coordinator.js +61 -67
  133. package/dist/runtime/locations/actor-location-claims.js +26 -20
  134. package/dist/runtime/locations/aggregate-inventory-store.js +72 -75
  135. package/dist/runtime/locations/authority-key-codec.js +7 -7
  136. package/dist/runtime/locations/auto-connect-loop.js +3 -3
  137. package/dist/runtime/locations/auto-connect-planner.js +25 -19
  138. package/dist/runtime/locations/auto-connect-reconciler.js +51 -31
  139. package/dist/runtime/locations/in-memory-authority-store.js +128 -118
  140. package/dist/runtime/locations/in-memory-location-store.js +195 -168
  141. package/dist/runtime/locations/in-memory-provider-location-store.js +8 -10
  142. package/dist/runtime/locations/key-codec.js +1 -1
  143. package/dist/runtime/locations/lease-tracker.js +23 -21
  144. package/dist/runtime/locations/lifecycle.js +4 -5
  145. package/dist/runtime/locations/location-store-repository.js +368 -324
  146. package/dist/runtime/locations/opaque-record-key.js +2 -2
  147. package/dist/runtime/locations/resolvers.js +73 -82
  148. package/dist/runtime/locations/runtime.js +68 -63
  149. package/dist/runtime/locations/spot-location-claims.js +39 -35
  150. package/dist/runtime/messaging/framework-json-v1.js +7 -7
  151. package/dist/runtime/messaging/packet-name.js +7 -6
  152. package/dist/runtime/messaging/payload-codec.js +21 -18
  153. package/dist/runtime/protocol/service_wire_codec.generated.d.ts +30 -2
  154. package/dist/runtime/protocol/service_wire_codec.generated.js +1671 -234
  155. package/dist/runtime/routing-id.js +3 -5
  156. package/dist/runtime/spots/formal-remote-actor-admission-registry.js +35 -31
  157. package/dist/runtime/spots/formal-remote-actor-transfer-registry.js +1 -2
  158. package/dist/runtime/spots/index.js +208 -219
  159. package/dist/runtime/spots/spot-activation-registry.js +15 -14
  160. package/dist/runtime/spots/spot-activation-state.js +17 -15
  161. package/dist/runtime/spots/spot-activation.js +33 -16
  162. package/dist/runtime/spots/spot-actor-admission-coordinator.js +18 -15
  163. package/dist/runtime/spots/spot-actor-membership.js +1 -3
  164. package/dist/runtime/spots/spot-actor-packet-dispatch.js +23 -20
  165. package/dist/runtime/spots/spot-actor-packet-drain.js +12 -10
  166. package/dist/runtime/spots/spot-actor-packet-relay-dispatch.js +10 -6
  167. package/dist/runtime/spots/spot-closing.js +3 -7
  168. package/dist/runtime/spots/spot-context.js +2 -2
  169. package/dist/runtime/spots/spot-entry-activation.js +13 -14
  170. package/dist/runtime/spots/spot-handle.js +6 -3
  171. package/dist/runtime/spots/spot-handler-registry.js +12 -12
  172. package/dist/runtime/spots/spot-manager-public.js +5 -6
  173. package/dist/runtime/spots/spot-native-actor-join-admission.js +4 -3
  174. package/dist/runtime/spots/spot-node-autoconnect.js +15 -18
  175. package/dist/runtime/spots/spot-node-runtime-manager.js +74 -85
  176. package/dist/runtime/spots/spot-outbound.js +10 -14
  177. package/dist/runtime/spots/spot-remote-codec.js +22 -26
  178. package/dist/runtime/spots/spot-remote-route-codec.js +5 -7
  179. package/dist/runtime/spots/spot-route-packet-dispatch.js +16 -14
  180. package/dist/runtime/spots/spot-route-replies.js +4 -6
  181. package/dist/runtime/spots/spot-routed-actor-admission.js +9 -7
  182. package/dist/runtime/spots/spot-routed-bound-session-dispatch.js +1 -2
  183. package/dist/runtime/spots/spot-routed-frame-dispatch.js +5 -5
  184. package/dist/runtime/spots/spot-routed-spot-packet-dispatch.js +14 -10
  185. package/dist/runtime/spots/spot-serial-executor.js +5 -8
  186. package/dist/runtime/spots/spot-serial-turn-executor.js +4 -6
  187. package/dist/runtime/spots/spot-subscription-dispatch.js +5 -5
  188. package/dist/runtime/spots/spot-timer.js +25 -29
  189. package/dist/runtime/streams/actor-session-binding-registry.js +98 -107
  190. package/dist/runtime/streams/actor-session-lifecycle-coordinator.js +3 -1
  191. package/dist/runtime/streams/bound-actor-relay-sender.js +18 -16
  192. package/dist/runtime/streams/bound-session-service.js +8 -9
  193. package/dist/runtime/streams/index.js +20 -19
  194. package/dist/runtime/streams/managed-stream.js +32 -30
  195. package/dist/runtime/streams/native-fallback-bound-session.js +21 -17
  196. package/dist/runtime/streams/protocol.js +29 -18
  197. package/dist/runtime/streams/session-actor-coordinator.js +34 -37
  198. package/dist/runtime/streams/session-context.js +30 -28
  199. package/dist/runtime/streams/session-provider.js +2 -2
  200. package/dist/runtime/streams/session-serial-executor.js +1 -2
  201. package/dist/runtime/streams/stream-frame-factory.js +11 -5
  202. package/dist/runtime/streams/stream-session-runtime.js +70 -66
  203. package/dist/runtime/workers/index.js +15 -4
  204. package/package.json +2 -2
  205. package/src/contracts/Channels/RouteCalls.ts +6 -1
  206. package/src/contracts/Common/ZLinkMessage.ts +5 -5
  207. package/src/contracts/Common/ZLinkMessageMetadata.ts +4 -3
  208. package/src/contracts/Configuration/Builders.ts +14 -14
  209. package/src/contracts/Configuration/CodecContentType.ts +8 -10
  210. package/src/contracts/Configuration/DiagnosticsValidation.ts +1 -6
  211. package/src/contracts/Configuration/EndpointNotation.ts +11 -11
  212. package/src/contracts/Configuration/ObjectRoles.ts +1 -3
  213. package/src/contracts/Configuration/Registration.ts +46 -17
  214. package/src/contracts/Configuration/RegistrationBuilderPolicy.ts +10 -8
  215. package/src/contracts/Configuration/RegistrationBuilders.ts +107 -96
  216. package/src/contracts/Configuration/RegistrationCodecRegistry.ts +9 -3
  217. package/src/contracts/Configuration/RegistrationNormalizers.ts +116 -84
  218. package/src/contracts/Configuration/RegistrationTypes.ts +21 -25
  219. package/src/contracts/Configuration/RegistrationValidators.ts +122 -73
  220. package/src/contracts/Configuration/RouteChannelInternalState.ts +1 -4
  221. package/src/contracts/Configuration/RuntimeEndpointConnections.ts +4 -1
  222. package/src/contracts/Configuration/SendTimeoutValidation.ts +6 -4
  223. package/src/contracts/Configuration/TimerRegistrationValidator.ts +8 -13
  224. package/src/contracts/Dispatch/ZLinkDispatchOptions.ts +1 -6
  225. package/src/contracts/Errors/index.ts +1 -4
  226. package/src/contracts/Handlers/Attributes.ts +15 -9
  227. package/src/contracts/Handlers/IZLinkChannelHandlers.ts +24 -4
  228. package/src/contracts/Handlers/JsonContract.ts +53 -19
  229. package/src/contracts/Locations/ActorTransfer.ts +1 -5
  230. package/src/contracts/Locations/Authority.ts +4 -11
  231. package/src/contracts/Locations/Keys.ts +6 -1
  232. package/src/contracts/Locations/Options.ts +3 -2
  233. package/src/contracts/Locations/RelocationStore.ts +1 -4
  234. package/src/contracts/Locations/Resolvers.ts +5 -5
  235. package/src/contracts/Locations/RuntimeQuery.ts +6 -2
  236. package/src/contracts/Locations/Stores.ts +1 -2
  237. package/src/contracts/Locations/index.ts +2 -8
  238. package/src/contracts/RouteMesh/Contracts.ts +1 -7
  239. package/src/contracts/RouteMesh/RuntimeTopology.ts +1 -4
  240. package/src/contracts/Spots/Contracts.ts +2 -8
  241. package/src/contracts/Spots/SpotKind.ts +16 -8
  242. package/src/contracts/Spots/ZLinkSpot.ts +8 -11
  243. package/src/contracts/Streams/IZLinkSession.ts +0 -1
  244. package/src/contracts/Streams/IZLinkSessionActor.ts +5 -1
  245. package/src/contracts/Streams/IZLinkSessionPacketHandler.ts +5 -1
  246. package/src/internal.ts +5 -4
  247. package/src/location-store-integration.ts +24 -16
  248. package/src/nest-integration.ts +40 -25
  249. package/src/runtime/abort.ts +10 -4
  250. package/src/runtime/actors/actor-authority-payload-codec.ts +20 -29
  251. package/src/runtime/actors/actor-authority-publication.ts +92 -77
  252. package/src/runtime/actors/actor-client.ts +162 -133
  253. package/src/runtime/actors/actor-context.ts +138 -130
  254. package/src/runtime/actors/actor-creation.ts +47 -44
  255. package/src/runtime/actors/actor-execution-context.ts +6 -4
  256. package/src/runtime/actors/actor-handoff.ts +269 -293
  257. package/src/runtime/actors/actor-join-deferred-scope.ts +5 -4
  258. package/src/runtime/actors/actor-lifecycle-snapshot.ts +5 -8
  259. package/src/runtime/actors/actor-local-native-join.ts +131 -159
  260. package/src/runtime/actors/actor-mailbox.ts +16 -19
  261. package/src/runtime/actors/actor-message-follow-context.ts +46 -36
  262. package/src/runtime/actors/actor-packet-relay-wire.ts +32 -21
  263. package/src/runtime/actors/actor-remote-joiner.ts +50 -54
  264. package/src/runtime/actors/actor-remote-wire.ts +9 -13
  265. package/src/runtime/actors/actor-routed-join-transport.ts +10 -2
  266. package/src/runtime/actors/actor-runtime-contracts.ts +2 -5
  267. package/src/runtime/actors/actor-runtime-state.ts +127 -124
  268. package/src/runtime/actors/actor-transfer-registry.ts +9 -14
  269. package/src/runtime/actors/actor-transport-delivery-gate.ts +4 -6
  270. package/src/runtime/actors/bound-session-wire.ts +37 -17
  271. package/src/runtime/actors/deferred-join-accepted-journal.ts +351 -320
  272. package/src/runtime/actors/index.ts +43 -86
  273. package/src/runtime/actors/post-commit-actor-binder.ts +10 -10
  274. package/src/runtime/actors/post-commit-actor-location.ts +30 -23
  275. package/src/runtime/actors/spot-actor-dispatch.ts +78 -53
  276. package/src/runtime/actors/transferred-actor-rollback.ts +18 -13
  277. package/src/runtime/admission.ts +9 -9
  278. package/src/runtime/application-jobs/application-ingress-record-owner.ts +5 -15
  279. package/src/runtime/application-jobs/application-job-queue-handler-start-gate.ts +3 -2
  280. package/src/runtime/application-jobs/receive-flow-controller.ts +17 -14
  281. package/src/runtime/backend/contracts/index.ts +73 -52
  282. package/src/runtime/backend/mesh-actor-session-node-adapter.ts +4 -14
  283. package/src/runtime/backend/mesh-completion-table.ts +6 -9
  284. package/src/runtime/backend/mesh-dispatch-pump.ts +38 -30
  285. package/src/runtime/backend/node/node-backend-adapter-factory.ts +23 -21
  286. package/src/runtime/backend/node/node-backend-adapter-support.ts +36 -22
  287. package/src/runtime/backend/node/node-dealer-channel-client-transport.ts +59 -58
  288. package/src/runtime/backend/node/node-event-loop-poller.ts +2 -10
  289. package/src/runtime/backend/node/node-mesh-backend-adapter.ts +12 -5
  290. package/src/runtime/backend/node/node-monitor-backend-adapter.ts +4 -3
  291. package/src/runtime/backend/node/node-raw-binding-port.ts +29 -29
  292. package/src/runtime/backend/node/node-raw-mesh-backend.ts +335 -383
  293. package/src/runtime/backend/node/node-socket-backend-adapter.ts +101 -54
  294. package/src/runtime/backend/runtime-message.ts +5 -3
  295. package/src/runtime/backend/runtime-values.ts +10 -7
  296. package/src/runtime/channels/channel-autoconnect.ts +1 -4
  297. package/src/runtime/channels/channel-clients.ts +93 -73
  298. package/src/runtime/channels/channel-dispatch-pipeline.ts +40 -42
  299. package/src/runtime/channels/channel-dispatch-services.ts +51 -49
  300. package/src/runtime/channels/channel-dispatchers.ts +152 -96
  301. package/src/runtime/channels/channel-envelope-inspection.ts +20 -16
  302. package/src/runtime/channels/channel-envelope.ts +256 -150
  303. package/src/runtime/channels/channel-multipart.ts +13 -5
  304. package/src/runtime/channels/channel-outbound-operations.ts +37 -41
  305. package/src/runtime/channels/channel-receive-loops.ts +102 -98
  306. package/src/runtime/channels/channel-receive-task-tracker.ts +1 -1
  307. package/src/runtime/channels/channel-runtime-lifecycle.ts +248 -190
  308. package/src/runtime/channels/channel-runtime-manager.ts +63 -37
  309. package/src/runtime/channels/channel-socket-options.ts +3 -10
  310. package/src/runtime/channels/channel-socket-registry.ts +331 -273
  311. package/src/runtime/channels/channel-transports.ts +215 -197
  312. package/src/runtime/channels/client-server-location-runtime.ts +116 -100
  313. package/src/runtime/channels/client-server-service-wire.ts +37 -36
  314. package/src/runtime/channels/dispatch-error-reporter.ts +11 -8
  315. package/src/runtime/channels/fanout-location-runtime.ts +91 -94
  316. package/src/runtime/channels/fanout-service-wire.ts +5 -12
  317. package/src/runtime/channels/handler-filter-scope.ts +1 -4
  318. package/src/runtime/channels/index.ts +1 -4
  319. package/src/runtime/channels/local-spot-route-transport.ts +20 -5
  320. package/src/runtime/channels/route-member-snapshot.ts +11 -5
  321. package/src/runtime/channels/router-socket-spot-route-transport.ts +1 -7
  322. package/src/runtime/channels/source-spot-router.ts +26 -22
  323. package/src/runtime/channels/spot-direct-envelope.ts +10 -8
  324. package/src/runtime/channels/spot-node-route-transport.ts +13 -16
  325. package/src/runtime/channels/spot-route-bridge-transport.ts +26 -9
  326. package/src/runtime/channels/spot-route-dispatch-strategy.ts +40 -13
  327. package/src/runtime/channels/spot-route-target-resolver.ts +18 -9
  328. package/src/runtime/codecs/index.ts +3 -2
  329. package/src/runtime/diagnostics/flow-context.ts +12 -3
  330. package/src/runtime/diagnostics/index.ts +96 -61
  331. package/src/runtime/diagnostics/internal-event-contracts.ts +87 -33
  332. package/src/runtime/diagnostics/message-flow.ts +95 -76
  333. package/src/runtime/diagnostics/runtime-metrics.ts +46 -24
  334. package/src/runtime/diagnostics/runtime-observation-queue.ts +17 -28
  335. package/src/runtime/diagnostics/topology-runtime-projections.ts +62 -43
  336. package/src/runtime/execution/index.ts +18 -26
  337. package/src/runtime/execution/serial-execution-queue.ts +31 -40
  338. package/src/runtime/execution/state-lane.ts +2 -2
  339. package/src/runtime/foundation/actor-join-recovery-codec.ts +69 -51
  340. package/src/runtime/foundation/event-loop-resources.ts +8 -4
  341. package/src/runtime/foundation/message-follow-suppression-registry.ts +7 -14
  342. package/src/runtime/foundation/operation-identity.ts +1 -2
  343. package/src/runtime/foundation/operation-registry.ts +8 -2
  344. package/src/runtime/foundation/raw-service-mesh-runtime.ts +312 -385
  345. package/src/runtime/foundation/route-mesh-connection-policy.ts +7 -8
  346. package/src/runtime/foundation/runtime-state-projections.ts +24 -23
  347. package/src/runtime/foundation/service-authority-payload-codec.ts +54 -57
  348. package/src/runtime/foundation/service-discovery-registry.ts +67 -59
  349. package/src/runtime/foundation/service-instance-activation-recovery-codec.ts +28 -29
  350. package/src/runtime/foundation/service-liveness-registry.ts +18 -13
  351. package/src/runtime/foundation/service-mailbox.ts +14 -14
  352. package/src/runtime/foundation/service-maintenance-runtime.ts +22 -21
  353. package/src/runtime/foundation/service-metadata-codec.ts +2 -9
  354. package/src/runtime/foundation/service-relocation-aggregate-committer.ts +39 -36
  355. package/src/runtime/foundation/service-relocation-coordinator.ts +1 -4
  356. package/src/runtime/foundation/service-relocation-object-owner.ts +40 -58
  357. package/src/runtime/foundation/service-relocation-runtime.ts +292 -216
  358. package/src/runtime/foundation/service-runtime-contracts.ts +8 -8
  359. package/src/runtime/foundation/service-session-binding-ingress-port.ts +1 -4
  360. package/src/runtime/foundation/service-stateful-registry.ts +69 -59
  361. package/src/runtime/foundation/service-stateful-runtime.ts +1174 -1112
  362. package/src/runtime/foundation/service-stateful-wire-codec.ts +318 -270
  363. package/src/runtime/foundation/service-topology-registry.ts +157 -159
  364. package/src/runtime/foundation/service-weighted-selection.ts +9 -15
  365. package/src/runtime/foundation/service-wire-binary-primitives.ts +6 -12
  366. package/src/runtime/foundation/service-wire-m6a-codec.ts +69 -47
  367. package/src/runtime/framework-errors-internal.ts +31 -30
  368. package/src/runtime/handlers/handler-instance-scope.ts +18 -29
  369. package/src/runtime/handlers/index.ts +18 -8
  370. package/src/runtime/host/actor-packet-relay.ts +290 -261
  371. package/src/runtime/host/actor-placement-coordinator.ts +165 -150
  372. package/src/runtime/host/actor-runtime-options-factory.ts +89 -87
  373. package/src/runtime/host/actor-transfer-authority-runtime.ts +46 -38
  374. package/src/runtime/host/actor-transfer-runtime.ts +391 -395
  375. package/src/runtime/host/application-job-queue.ts +32 -48
  376. package/src/runtime/host/bound-session-relay.ts +7 -9
  377. package/src/runtime/host/channel-runtime-options-factory.ts +75 -35
  378. package/src/runtime/host/host-capacity-status.ts +10 -9
  379. package/src/runtime/host/index.ts +861 -789
  380. package/src/runtime/host/instance-activation-authority.ts +125 -143
  381. package/src/runtime/host/location-runtime-owner.ts +38 -26
  382. package/src/runtime/host/mesh-router-resolver.ts +30 -23
  383. package/src/runtime/host/relocation-direct-transfer.ts +15 -15
  384. package/src/runtime/host/relocation-integrity-fault-gate.ts +3 -2
  385. package/src/runtime/host/remote-actor-join-receiver.ts +43 -34
  386. package/src/runtime/host/remote-actor-packet-target-store.ts +54 -52
  387. package/src/runtime/host/remote-bound-session-relay.ts +274 -247
  388. package/src/runtime/host/route-mesh-runtime-options.ts +1 -3
  389. package/src/runtime/host/route-mesh-runtime.ts +227 -181
  390. package/src/runtime/host/runtime-shutdown.ts +4 -3
  391. package/src/runtime/host/service-relocation-control.ts +14 -5
  392. package/src/runtime/host/service-relocation-host-runtime.ts +1388 -1165
  393. package/src/runtime/host/spot-address-transport.ts +284 -237
  394. package/src/runtime/host/spot-node-runtime-options-factory.ts +14 -8
  395. package/src/runtime/host/spot-runtime-options-factory.ts +71 -62
  396. package/src/runtime/host/stateful-authority-route-runtime.ts +117 -116
  397. package/src/runtime/host/user-spot-creation-coordinator.ts +225 -220
  398. package/src/runtime/locations/actor-location-claims.ts +61 -49
  399. package/src/runtime/locations/actor-session-route-claims.ts +1 -4
  400. package/src/runtime/locations/aggregate-inventory-store.ts +105 -134
  401. package/src/runtime/locations/authority-key-codec.ts +13 -10
  402. package/src/runtime/locations/auto-connect-loop.ts +14 -11
  403. package/src/runtime/locations/auto-connect-planner.ts +42 -31
  404. package/src/runtime/locations/auto-connect-reconciler.ts +106 -63
  405. package/src/runtime/locations/canonical-codec.ts +3 -1
  406. package/src/runtime/locations/creation-operation-id.ts +4 -3
  407. package/src/runtime/locations/domain-store-contract.ts +13 -7
  408. package/src/runtime/locations/in-memory-authority-store.ts +232 -199
  409. package/src/runtime/locations/in-memory-location-store.ts +432 -250
  410. package/src/runtime/locations/in-memory-provider-location-store.ts +16 -17
  411. package/src/runtime/locations/internal-store-contracts.ts +95 -38
  412. package/src/runtime/locations/key-codec.ts +3 -4
  413. package/src/runtime/locations/lease-tracker.ts +36 -27
  414. package/src/runtime/locations/lifecycle-runtime.ts +15 -3
  415. package/src/runtime/locations/lifecycle.ts +33 -28
  416. package/src/runtime/locations/location-store-repository.ts +1329 -1185
  417. package/src/runtime/locations/opaque-record-key.ts +4 -9
  418. package/src/runtime/locations/resolvers.ts +201 -178
  419. package/src/runtime/locations/runtime.ts +251 -159
  420. package/src/runtime/locations/spot-location-claims.ts +110 -112
  421. package/src/runtime/messaging/creation-payload-codec.ts +4 -1
  422. package/src/runtime/messaging/framework-json-v1.ts +34 -15
  423. package/src/runtime/messaging/packet-name.ts +8 -6
  424. package/src/runtime/messaging/payload-codec.ts +70 -50
  425. package/src/runtime/messaging/submission-result.ts +6 -9
  426. package/src/runtime/protocol/service_wire_codec.generated.ts +1376 -159
  427. package/src/runtime/protocol/service_wire_pilot_codec.generated.ts +1 -1
  428. package/src/runtime/routing-id.ts +10 -7
  429. package/src/runtime/spots/formal-remote-actor-admission-registry.ts +56 -62
  430. package/src/runtime/spots/formal-remote-actor-transfer-registry.ts +23 -20
  431. package/src/runtime/spots/index.ts +593 -563
  432. package/src/runtime/spots/spot-activation-registry.ts +38 -34
  433. package/src/runtime/spots/spot-activation-state.ts +43 -51
  434. package/src/runtime/spots/spot-activation.ts +179 -116
  435. package/src/runtime/spots/spot-actor-admission-coordinator.ts +110 -78
  436. package/src/runtime/spots/spot-actor-join-dispatch.ts +57 -41
  437. package/src/runtime/spots/spot-actor-lifecycle-drain.ts +5 -7
  438. package/src/runtime/spots/spot-actor-membership.ts +25 -27
  439. package/src/runtime/spots/spot-actor-packet-dispatch.ts +184 -153
  440. package/src/runtime/spots/spot-actor-packet-drain.ts +54 -42
  441. package/src/runtime/spots/spot-actor-packet-relay-dispatch.ts +37 -39
  442. package/src/runtime/spots/spot-closing.ts +11 -12
  443. package/src/runtime/spots/spot-context.ts +46 -26
  444. package/src/runtime/spots/spot-entry-activation.ts +84 -65
  445. package/src/runtime/spots/spot-handle.ts +17 -15
  446. package/src/runtime/spots/spot-handler-registry.ts +44 -31
  447. package/src/runtime/spots/spot-location-claim.ts +5 -4
  448. package/src/runtime/spots/spot-manager-public.ts +62 -82
  449. package/src/runtime/spots/spot-native-actor-join-admission.ts +20 -16
  450. package/src/runtime/spots/spot-node-autoconnect.ts +54 -61
  451. package/src/runtime/spots/spot-node-runtime-manager.ts +230 -221
  452. package/src/runtime/spots/spot-outbound.ts +47 -59
  453. package/src/runtime/spots/spot-publisher-transport.ts +5 -4
  454. package/src/runtime/spots/spot-remote-codec.ts +66 -65
  455. package/src/runtime/spots/spot-remote-route-codec.ts +61 -41
  456. package/src/runtime/spots/spot-route-packet-dispatch.ts +128 -95
  457. package/src/runtime/spots/spot-route-replies.ts +23 -24
  458. package/src/runtime/spots/spot-route-reply-wire.ts +3 -2
  459. package/src/runtime/spots/spot-routed-actor-admission.ts +37 -27
  460. package/src/runtime/spots/spot-routed-bound-session-dispatch.ts +11 -17
  461. package/src/runtime/spots/spot-routed-frame-dispatch.ts +18 -15
  462. package/src/runtime/spots/spot-routed-spot-packet-dispatch.ts +35 -26
  463. package/src/runtime/spots/spot-routing-internal.ts +1 -4
  464. package/src/runtime/spots/spot-runtime-ports.ts +5 -5
  465. package/src/runtime/spots/spot-serial-executor.ts +5 -9
  466. package/src/runtime/spots/spot-serial-turn-executor.ts +19 -26
  467. package/src/runtime/spots/spot-subscription-dispatch.ts +56 -46
  468. package/src/runtime/spots/spot-timer.ts +98 -91
  469. package/src/runtime/streams/actor-session-binding-registry.ts +277 -235
  470. package/src/runtime/streams/actor-session-binding-runtime-owner.ts +7 -4
  471. package/src/runtime/streams/actor-session-lifecycle-coordinator.ts +3 -1
  472. package/src/runtime/streams/bound-actor-relay-sender.ts +53 -51
  473. package/src/runtime/streams/bound-session-response-target.ts +29 -8
  474. package/src/runtime/streams/bound-session-service.ts +39 -39
  475. package/src/runtime/streams/index.ts +176 -100
  476. package/src/runtime/streams/managed-stream.ts +98 -87
  477. package/src/runtime/streams/native-fallback-bound-session.ts +57 -52
  478. package/src/runtime/streams/protocol.ts +73 -43
  479. package/src/runtime/streams/session-actor-coordinator.ts +97 -89
  480. package/src/runtime/streams/session-calls.ts +2 -8
  481. package/src/runtime/streams/session-context.ts +66 -48
  482. package/src/runtime/streams/session-provider.ts +5 -7
  483. package/src/runtime/streams/session-serial-executor.ts +7 -6
  484. package/src/runtime/streams/stream-binding-runtime-ports.ts +79 -29
  485. package/src/runtime/streams/stream-frame-factory.ts +55 -38
  486. package/src/runtime/streams/stream-session-runtime.ts +268 -210
  487. package/src/runtime/workers/index.ts +68 -29
@@ -52,14 +52,18 @@ export function defineZLinkPacketJsonContract(
52
52
  const contracts = packetJsonContracts();
53
53
  const current = contracts.get(packetName);
54
54
  if (current !== undefined && canonicalContract(current) !== canonicalContract(normalized)) {
55
- throw new TypeError(`ZLink packet '${packetName}' has conflicting JSON contracts in one process.`);
55
+ throw new TypeError(
56
+ `ZLink packet '${packetName}' has conflicting JSON contracts in one process.`
57
+ );
56
58
  }
57
59
  if (current !== undefined) return current;
58
60
  contracts.set(packetName, normalized);
59
61
  return normalized;
60
62
  }
61
63
 
62
- export function readZLinkPacketJsonContract(packetName: string): ZLinkPacketJsonContract | undefined {
64
+ export function readZLinkPacketJsonContract(
65
+ packetName: string
66
+ ): ZLinkPacketJsonContract | undefined {
63
67
  return packetJsonContracts().get(packetName);
64
68
  }
65
69
 
@@ -72,10 +76,13 @@ function normalizeJsonSchema(
72
76
  // the TypeScript signature describes the accepted shape.
73
77
  const runtimeSchema: unknown = schema;
74
78
  if (typeof runtimeSchema !== 'object' || runtimeSchema === null || depth > 64) {
75
- throw new TypeError('ZLink packet JSON schema must be an acyclic object with at most 64 levels.');
79
+ throw new TypeError(
80
+ 'ZLink packet JSON schema must be an acyclic object with at most 64 levels.'
81
+ );
76
82
  }
77
83
  const normalizedSchema = runtimeSchema as ZLinkJsonSchema;
78
- if (parents.has(normalizedSchema)) throw new TypeError('ZLink packet JSON schema must not contain a cycle.');
84
+ if (parents.has(normalizedSchema))
85
+ throw new TypeError('ZLink packet JSON schema must not contain a cycle.');
79
86
  const nextParents = new Set(parents).add(normalizedSchema);
80
87
  switch (normalizedSchema.type) {
81
88
  case 'boolean':
@@ -88,9 +95,11 @@ function normalizeJsonSchema(
88
95
  case 'bytes':
89
96
  return Object.freeze({ type: normalizedSchema.type });
90
97
  case 'enum': {
91
- if (!Array.isArray(normalizedSchema.names)
92
- || normalizedSchema.names.length === 0
93
- || normalizedSchema.names.some((name) => typeof name !== 'string' || name.length === 0)) {
98
+ if (
99
+ !Array.isArray(normalizedSchema.names) ||
100
+ normalizedSchema.names.length === 0 ||
101
+ normalizedSchema.names.some((name) => typeof name !== 'string' || name.length === 0)
102
+ ) {
94
103
  throw new TypeError('ZLink packet enum schema requires non-empty string names.');
95
104
  }
96
105
  if (new Set(normalizedSchema.names).size !== normalizedSchema.names.length) {
@@ -99,25 +108,45 @@ function normalizeJsonSchema(
99
108
  return Object.freeze({ type: 'enum', names: Object.freeze([...normalizedSchema.names]) });
100
109
  }
101
110
  case 'nullable':
102
- return Object.freeze({ type: 'nullable', value: normalizeJsonSchema(normalizedSchema.value, nextParents, depth + 1) });
111
+ return Object.freeze({
112
+ type: 'nullable',
113
+ value: normalizeJsonSchema(normalizedSchema.value, nextParents, depth + 1)
114
+ });
103
115
  case 'array':
104
- return Object.freeze({ type: 'array', items: normalizeJsonSchema(normalizedSchema.items, nextParents, depth + 1) });
116
+ return Object.freeze({
117
+ type: 'array',
118
+ items: normalizeJsonSchema(normalizedSchema.items, nextParents, depth + 1)
119
+ });
105
120
  case 'record':
106
- return Object.freeze({ type: 'record', values: normalizeJsonSchema(normalizedSchema.values, nextParents, depth + 1) });
121
+ return Object.freeze({
122
+ type: 'record',
123
+ values: normalizeJsonSchema(normalizedSchema.values, nextParents, depth + 1)
124
+ });
107
125
  case 'object': {
108
126
  const runtimeProperties: unknown = normalizedSchema.properties;
109
- if (typeof runtimeProperties !== 'object' || runtimeProperties === null || Array.isArray(runtimeProperties)) {
127
+ if (
128
+ typeof runtimeProperties !== 'object' ||
129
+ runtimeProperties === null ||
130
+ Array.isArray(runtimeProperties)
131
+ ) {
110
132
  throw new TypeError('ZLink packet object schema properties must be an object.');
111
133
  }
112
- if (!Array.isArray(normalizedSchema.required)
113
- || normalizedSchema.required.some((name) => typeof name !== 'string' || name.length === 0)) {
134
+ if (
135
+ !Array.isArray(normalizedSchema.required) ||
136
+ normalizedSchema.required.some((name) => typeof name !== 'string' || name.length === 0)
137
+ ) {
114
138
  throw new TypeError('ZLink packet object schema required must contain property names.');
115
139
  }
116
- if (normalizedSchema.additionalProperties !== undefined && typeof normalizedSchema.additionalProperties !== 'boolean') {
140
+ if (
141
+ normalizedSchema.additionalProperties !== undefined &&
142
+ typeof normalizedSchema.additionalProperties !== 'boolean'
143
+ ) {
117
144
  throw new TypeError('ZLink packet object schema additionalProperties must be boolean.');
118
145
  }
119
146
  const properties: Record<string, ZLinkJsonSchema> = {};
120
- for (const [name, property] of Object.entries(runtimeProperties as Record<string, ZLinkJsonSchema>)) {
147
+ for (const [name, property] of Object.entries(
148
+ runtimeProperties as Record<string, ZLinkJsonSchema>
149
+ )) {
121
150
  if (name === '__proto__' || name === 'prototype' || name === 'constructor') {
122
151
  throw new TypeError(`ZLink packet JSON property '${name}' is not allowed.`);
123
152
  }
@@ -131,7 +160,9 @@ function normalizeJsonSchema(
131
160
  throw new TypeError(`ZLink packet JSON property '${name}' is not allowed.`);
132
161
  }
133
162
  if (!Object.prototype.hasOwnProperty.call(properties, name)) {
134
- throw new TypeError(`ZLink packet JSON required property '${name}' has no property schema.`);
163
+ throw new TypeError(
164
+ `ZLink packet JSON required property '${name}' has no property schema.`
165
+ );
135
166
  }
136
167
  }
137
168
  return Object.freeze({
@@ -144,12 +175,15 @@ function normalizeJsonSchema(
144
175
  });
145
176
  }
146
177
  }
147
- throw new TypeError(`ZLink packet JSON schema type '${String((normalizedSchema as { type?: unknown }).type)}' is not supported.`);
178
+ throw new TypeError(
179
+ `ZLink packet JSON schema type '${String((normalizedSchema as { type?: unknown }).type)}' is not supported.`
180
+ );
148
181
  }
149
182
 
150
183
  function packetJsonContracts(): Map<string, ZLinkPacketJsonContract> {
151
184
  const root = globalThis as typeof globalThis & Record<symbol, unknown>;
152
- let contracts = root[ZLINK_PACKET_JSON_CONTRACTS] as Map<string, ZLinkPacketJsonContract> | undefined;
185
+ let contracts = root[ZLINK_PACKET_JSON_CONTRACTS] as
186
+ Map<string, ZLinkPacketJsonContract> | undefined;
153
187
  if (contracts === undefined) {
154
188
  contracts = new Map();
155
189
  Object.defineProperty(root, ZLINK_PACKET_JSON_CONTRACTS, {
@@ -166,7 +200,7 @@ function canonicalContract(value: unknown): string {
166
200
  if (Array.isArray(value)) return `[${value.map(canonicalContract).join(',')}]`;
167
201
  if (typeof value !== 'object' || value === null) return JSON.stringify(value);
168
202
  return `{${Object.entries(value as Record<string, unknown>)
169
- .sort(([left], [right]) => left < right ? -1 : left > right ? 1 : 0)
203
+ .sort(([left], [right]) => (left < right ? -1 : left > right ? 1 : 0))
170
204
  .map(([key, item]) => `${JSON.stringify(key)}:${canonicalContract(item)}`)
171
205
  .join(',')}}`;
172
206
  }
@@ -3,11 +3,7 @@ import type { ActorRef, RoutingId } from '../Common';
3
3
  export type ZLinkActorTransferState = 'prepared' | 'committed' | 'activated' | 'aborted';
4
4
 
5
5
  export type ZLinkActorTransferWriteStatus =
6
- | 'stored'
7
- | 'notFound'
8
- | 'ignoredStale'
9
- | 'rejectedConflict'
10
- | 'invalidState';
6
+ 'stored' | 'notFound' | 'ignoredStale' | 'rejectedConflict' | 'invalidState';
11
7
 
12
8
  export interface ZLinkActorTransferRecord {
13
9
  readonly meshName: string;
@@ -64,8 +64,7 @@ export interface ZLinkAuthoritySnapshot {
64
64
  }
65
65
 
66
66
  export type ZLinkAuthorityReadResult =
67
- | { readonly kind: 'missing'; readonly storeNow: Date }
68
- | ZLinkAuthoritySnapshot;
67
+ { readonly kind: 'missing'; readonly storeNow: Date } | ZLinkAuthoritySnapshot;
69
68
 
70
69
  export type ZLinkAuthorityMutation =
71
70
  | {
@@ -120,9 +119,7 @@ export interface ZLinkAuthorityPage {
120
119
  readonly nextCursor?: ZLinkAuthorityScanCursor;
121
120
  }
122
121
 
123
- export type ZLinkAuthorityScanResult =
124
- | ZLinkAuthorityPage
125
- | { readonly kind: 'scanExpired' };
122
+ export type ZLinkAuthorityScanResult = ZLinkAuthorityPage | { readonly kind: 'scanExpired' };
126
123
 
127
124
  export interface ZLinkObjectCreationKey {
128
125
  readonly kind: ZLinkPlacementObjectKind;
@@ -249,9 +246,7 @@ export interface ZLinkObjectAbortRequest {
249
246
  }
250
247
 
251
248
  export type ZLinkObjectAbortResult =
252
- | { readonly kind: 'aborted' }
253
- | { readonly kind: 'alreadyAborted' }
254
- | { readonly kind: 'stale' };
249
+ { readonly kind: 'aborted' } | { readonly kind: 'alreadyAborted' } | { readonly kind: 'stale' };
255
250
 
256
251
  export interface ZLinkAggregateId {
257
252
  readonly value: string;
@@ -296,6 +291,4 @@ export type ZLinkAggregateCommitResult =
296
291
  | { readonly kind: 'generationExhausted' };
297
292
 
298
293
  export type ZLinkAggregateAbortResult =
299
- | { readonly kind: 'aborted' }
300
- | { readonly kind: 'alreadyAborted' }
301
- | { readonly kind: 'stale' };
294
+ { readonly kind: 'aborted' } | { readonly kind: 'alreadyAborted' } | { readonly kind: 'stale' };
@@ -1,6 +1,11 @@
1
1
  import type { RoutingId, SpotId } from '../Common';
2
2
  import type { ZLinkSpotKind } from '../Spots';
3
- import type { ZLinkLocationAutoConnectType, ZLinkLocationKind, ZLinkLocationRole, ZLinkRouteKind } from './Values';
3
+ import type {
4
+ ZLinkLocationAutoConnectType,
5
+ ZLinkLocationKind,
6
+ ZLinkLocationRole,
7
+ ZLinkRouteKind
8
+ } from './Values';
4
9
 
5
10
  /**
6
11
  * Peer identity is the full five-component tuple. Missing optional components
@@ -16,8 +16,9 @@ export interface ZLinkLocationOptions {
16
16
  relocationNodeInFlightPayloadBudgetBytes(value: number): this;
17
17
  }
18
18
 
19
- export type ZLinkLocationOptionOverrides =
20
- Partial<ZLinkLocationOptionValues> & { readonly listPageSize?: number };
19
+ export type ZLinkLocationOptionOverrides = Partial<ZLinkLocationOptionValues> & {
20
+ readonly listPageSize?: number;
21
+ };
21
22
 
22
23
  export const zlinkRuntimeDefaultLocationOptions: Readonly<
23
24
  ZLinkLocationOptionValues & { readonly listPageSize: number }
@@ -37,10 +37,7 @@ export interface ZLinkRelocationStore {
37
37
  retentionMs: number,
38
38
  signal?: AbortSignal
39
39
  ): Promise<ZLinkBlobPutResult>;
40
- read(
41
- reference: ZLinkBlobReference,
42
- signal?: AbortSignal
43
- ): Promise<ZLinkBlobReadResult>;
40
+ read(reference: ZLinkBlobReference, signal?: AbortSignal): Promise<ZLinkBlobReadResult>;
44
41
  renew(
45
42
  reference: ZLinkBlobReference,
46
43
  retentionMs: number,
@@ -1,8 +1,8 @@
1
- import type {
2
- ZLinkPeerLocation,
3
- ZLinkPeerLocationFilter,
4
- } from './Models';
1
+ import type { ZLinkPeerLocation, ZLinkPeerLocationFilter } from './Models';
5
2
 
6
3
  export interface ZLinkPeerLocationResolver {
7
- listLivePeers(filter: ZLinkPeerLocationFilter, signal?: AbortSignal): Promise<readonly ZLinkPeerLocation[]>;
4
+ listLivePeers(
5
+ filter: ZLinkPeerLocationFilter,
6
+ signal?: AbortSignal
7
+ ): Promise<readonly ZLinkPeerLocation[]>;
8
8
  }
@@ -6,7 +6,7 @@ import type {
6
6
  ZLinkLocationTopologyEntry,
7
7
  ZLinkLocationTopologyFilter,
8
8
  ZLinkMeshNodeDescriptor,
9
- ZLinkPageRequest,
9
+ ZLinkPageRequest
10
10
  } from './Models';
11
11
  import type { ZLinkPlacementObjectKind } from './Authority';
12
12
 
@@ -52,5 +52,9 @@ export interface ZLinkLocationRuntimeQuery {
52
52
  spotId: import('../Common').SpotId,
53
53
  signal?: AbortSignal
54
54
  ): Promise<ZLinkLocationObjectEntry | undefined>;
55
- listObjectLocations(filter: ZLinkLocationObjectFilter, page?: ZLinkPageRequest, signal?: AbortSignal): Promise<ZLinkLocationPage<ZLinkLocationObjectEntry>>;
55
+ listObjectLocations(
56
+ filter: ZLinkLocationObjectFilter,
57
+ page?: ZLinkPageRequest,
58
+ signal?: AbortSignal
59
+ ): Promise<ZLinkLocationPage<ZLinkLocationObjectEntry>>;
56
60
  }
@@ -81,8 +81,7 @@ export interface ZLinkStoreScanPage {
81
81
  }
82
82
 
83
83
  export type ZLinkStoreScanResult =
84
- | { readonly kind: 'page'; readonly value: ZLinkStoreScanPage }
85
- | { readonly kind: 'expired' };
84
+ { readonly kind: 'page'; readonly value: ZLinkStoreScanPage } | { readonly kind: 'expired' };
86
85
 
87
86
  export interface ZLinkLocationStore {
88
87
  read(key: ZLinkStoreKey, signal?: AbortSignal): Promise<ZLinkStoreReadResult>;
@@ -17,14 +17,8 @@ export type {
17
17
  ZLinkStoreWriteRequest,
18
18
  ZLinkStoreWriteResult
19
19
  } from './Stores';
20
- export {
21
- ZLinkLocationKind,
22
- ZLinkLocationRole
23
- } from './Values';
24
- export {
25
- ZLinkFrameworkRuntimeState,
26
- ZLinkObjectRole
27
- } from './Rows';
20
+ export { ZLinkLocationKind, ZLinkLocationRole } from './Values';
21
+ export { ZLinkFrameworkRuntimeState, ZLinkObjectRole } from './Rows';
28
22
  export type {
29
23
  ZLinkClientServerServerDescriptor,
30
24
  ZLinkFanoutPublisherDescriptor,
@@ -33,13 +33,7 @@ export type ZLinkMessageSurface =
33
33
  | 'classic_fanout'
34
34
  | 'actor_transfer';
35
35
 
36
- export type ZLinkMessageKind =
37
- | 'send'
38
- | 'request'
39
- | 'response'
40
- | 'error'
41
- | 'publish'
42
- | 'control';
36
+ export type ZLinkMessageKind = 'send' | 'request' | 'response' | 'error' | 'publish' | 'control';
43
37
 
44
38
  export type ZLinkRequestFailureReason = 'timeout' | 'cancelled' | 'shutdown';
45
39
 
@@ -1,8 +1,5 @@
1
1
  import type { RoutingId } from '../Common';
2
- import type {
3
- ZLinkApplicationJobQueueProfile,
4
- ZLinkCoreHwmProfile
5
- } from '../Dispatch';
2
+ import type { ZLinkApplicationJobQueueProfile, ZLinkCoreHwmProfile } from '../Dispatch';
6
3
  import type {
7
4
  ZLinkPeerState,
8
5
  ZLinkTopologyReason,
@@ -1,11 +1,6 @@
1
1
  import type { ZLinkActor } from '../Actors';
2
2
  import type { ZLinkChannelRequestCall, ZLinkPublishCall, ZLinkSendCall } from '../Channels';
3
- import type {
4
- RoutingId,
5
- SpotId,
6
- Type,
7
- ZLinkMessageMetadata
8
- } from '../Common';
3
+ import type { RoutingId, SpotId, Type, ZLinkMessageMetadata } from '../Common';
9
4
  import type { ZLinkSpotTimerHandler } from '../Handlers';
10
5
  import type { ZLinkTimer, ZLinkTimerOptions } from '../Timers';
11
6
  import type {
@@ -67,8 +62,7 @@ export interface ZLinkSpotContext<
67
62
  close(signal?: AbortSignal): Promise<boolean>;
68
63
  }
69
64
 
70
- export interface ZLinkInstanceSpotContext
71
- extends ZLinkSpotCommonContext<ZLinkInstanceSpot> {
65
+ export interface ZLinkInstanceSpotContext extends ZLinkSpotCommonContext<ZLinkInstanceSpot> {
72
66
  readonly handlers: ZLinkInstanceSpotHandlerRegistry;
73
67
  close(signal?: AbortSignal): Promise<boolean>;
74
68
  }
@@ -7,18 +7,26 @@ export enum ZLinkSpotKind {
7
7
 
8
8
  export function zlinkSpotKindToWire(kind: ZLinkSpotKind): number {
9
9
  switch (kind) {
10
- case ZLinkSpotKind.Entry: return 1;
11
- case ZLinkSpotKind.User: return 2;
12
- case ZLinkSpotKind.Instance: return 3;
13
- default: return 0;
10
+ case ZLinkSpotKind.Entry:
11
+ return 1;
12
+ case ZLinkSpotKind.User:
13
+ return 2;
14
+ case ZLinkSpotKind.Instance:
15
+ return 3;
16
+ default:
17
+ return 0;
14
18
  }
15
19
  }
16
20
 
17
21
  export function zlinkSpotKindFromWire(value: number): ZLinkSpotKind {
18
22
  switch (value) {
19
- case 1: return ZLinkSpotKind.Entry;
20
- case 2: return ZLinkSpotKind.User;
21
- case 3: return ZLinkSpotKind.Instance;
22
- default: return ZLinkSpotKind.Invalid;
23
+ case 1:
24
+ return ZLinkSpotKind.Entry;
25
+ case 2:
26
+ return ZLinkSpotKind.User;
27
+ case 3:
28
+ return ZLinkSpotKind.Instance;
29
+ default:
30
+ return ZLinkSpotKind.Invalid;
23
31
  }
24
32
  }
@@ -41,9 +41,7 @@ export interface ZLinkSpotRelocationReadyCall {
41
41
  defer(): void;
42
42
  }
43
43
 
44
- export interface ZLinkSpotActorMembershipLifecycle<
45
- TActor extends ZLinkActor = ZLinkActor
46
- > {
44
+ export interface ZLinkSpotActorMembershipLifecycle<TActor extends ZLinkActor = ZLinkActor> {
47
45
  onJoinedActor(actor: TActor): Promise<void>;
48
46
  onLeaveActor(actor: TActor): Promise<void>;
49
47
  onDisconnectActor?(actor: TActor): Promise<void>;
@@ -58,8 +56,9 @@ export interface ZLinkUserSpotActorLifecycle<
58
56
  onActorJoin(actorId: string, request: ZLinkMessage): Promise<ZLinkSpotActorJoinResult>;
59
57
  }
60
58
 
61
- export interface ZLinkSpot<TActor extends ZLinkActor = ZLinkActor>
62
- extends ZLinkUserSpotActorLifecycle<TActor> {
59
+ export interface ZLinkSpot<
60
+ TActor extends ZLinkActor = ZLinkActor
61
+ > extends ZLinkUserSpotActorLifecycle<TActor> {
63
62
  readonly context: ZLinkSpotContext<TActor>;
64
63
  configure?(): void;
65
64
  onCreate?(request: ZLinkMessage): Promise<ZLinkSpotCreateResponse>;
@@ -75,14 +74,12 @@ export interface ZLinkInstanceSpot {
75
74
  onClosing?(context: ZLinkSpotClosingContext, cleanupSignal: AbortSignal): Promise<void>;
76
75
  }
77
76
 
78
- export interface ZLinkEntrySpot<TActor extends ZLinkActor = ZLinkActor>
79
- extends ZLinkSpotActorMembershipLifecycle<TActor> {
77
+ export interface ZLinkEntrySpot<
78
+ TActor extends ZLinkActor = ZLinkActor
79
+ > extends ZLinkSpotActorMembershipLifecycle<TActor> {
80
80
  readonly context: ZLinkEntrySpotContext<TActor>;
81
81
  configure?(): void;
82
82
  onInitialize?(): Promise<void>;
83
83
  onClosing?(context: ZLinkSpotClosingContext, cleanupSignal: AbortSignal): Promise<void>;
84
- onCreateActor?(
85
- actor: TActor,
86
- createRequest: ZLinkMessage
87
- ): Promise<ZLinkActorCreateResponse>;
84
+ onCreateActor?(actor: TActor, createRequest: ZLinkMessage): Promise<ZLinkActorCreateResponse>;
88
85
  }
@@ -18,7 +18,6 @@ export interface ZLinkSessionDispatchContext {
18
18
  readonly canReply: boolean;
19
19
  }
20
20
 
21
-
22
21
  export interface ZLinkSessionFactory<TSession extends ZLinkSession = ZLinkSession> {
23
22
  create(context: ZLinkSessionContext): Promise<TSession>;
24
23
  }
@@ -12,6 +12,10 @@ export interface ZLinkSessionActor {
12
12
  readonly actorId: string;
13
13
  readonly ref: ActorRef;
14
14
  relay(payload: ZLinkMessage, signal?: AbortSignal): Promise<void>;
15
- relay(dispatch: ZLinkSessionDispatchContext, payload: ZLinkMessage, signal?: AbortSignal): Promise<void>;
15
+ relay(
16
+ dispatch: ZLinkSessionDispatchContext,
17
+ payload: ZLinkMessage,
18
+ signal?: AbortSignal
19
+ ): Promise<void>;
16
20
  notifyDisconnected(signal?: AbortSignal): Promise<void>;
17
21
  }
@@ -2,7 +2,11 @@ import type { Type, ZLinkMessage } from '../Common';
2
2
  import type { ZLinkSessionDispatchContext } from './IZLinkSession';
3
3
 
4
4
  export interface ZLinkSessionPacketHandler<TSessionContext, TMessage = ZLinkMessage> {
5
- handle(context: TSessionContext, dispatch: ZLinkSessionDispatchContext, message: TMessage): Promise<void>;
5
+ handle(
6
+ context: TSessionContext,
7
+ dispatch: ZLinkSessionDispatchContext,
8
+ message: TMessage
9
+ ): Promise<void>;
6
10
  }
7
11
 
8
12
  export interface ZLinkSessionHandlerRegistry {
package/src/internal.ts CHANGED
@@ -12,11 +12,12 @@ export * from './runtime/configuration';
12
12
  export * from './runtime/locations';
13
13
  export * from './runtime/locations/key-codec';
14
14
  export * from './runtime/locations/canonical-codec';
15
- export { ZLinkLocationAutoConnectType, ZLinkLocationKind, ZLinkRouteKind } from './contracts/Locations/Values';
16
15
  export {
17
- ZLinkLocationWriteIntent,
18
- ZLinkLocationWriteStatus
19
- } from './contracts/Locations/Writes';
16
+ ZLinkLocationAutoConnectType,
17
+ ZLinkLocationKind,
18
+ ZLinkRouteKind
19
+ } from './contracts/Locations/Values';
20
+ export { ZLinkLocationWriteIntent, ZLinkLocationWriteStatus } from './contracts/Locations/Writes';
20
21
  export * from './runtime/channels';
21
22
  export * from './runtime/backend';
22
23
  export * from './runtime/codecs';
@@ -14,38 +14,46 @@ export function matchesPeerLocation(
14
14
  row: ZLinkPeerLocation,
15
15
  filter: ZLinkPeerLocationFilter
16
16
  ): boolean {
17
- return (filter.autoConnectType === undefined || row.autoConnectType === filter.autoConnectType)
18
- && (filter.meshName === undefined || row.meshName === filter.meshName)
19
- && (filter.role === undefined || row.role === filter.role)
20
- && (filter.nodeRid === undefined || routingIdsEqual(row.nodeRid, filter.nodeRid))
21
- && (filter.endpoint === undefined || row.endpoint === filter.endpoint);
17
+ return (
18
+ (filter.autoConnectType === undefined || row.autoConnectType === filter.autoConnectType) &&
19
+ (filter.meshName === undefined || row.meshName === filter.meshName) &&
20
+ (filter.role === undefined || row.role === filter.role) &&
21
+ (filter.nodeRid === undefined || routingIdsEqual(row.nodeRid, filter.nodeRid)) &&
22
+ (filter.endpoint === undefined || row.endpoint === filter.endpoint)
23
+ );
22
24
  }
23
25
 
24
26
  export function matchesSpotLocation(
25
27
  row: ZLinkSpotLocation,
26
28
  filter: ZLinkSpotLocationFilter
27
29
  ): boolean {
28
- return (filter.meshName === undefined || row.meshName === filter.meshName)
29
- && (filter.spotType === undefined || row.spotType === filter.spotType)
30
- && (filter.nodeRid === undefined || routingIdsEqual(row.ownerNodeRid, filter.nodeRid))
31
- && (filter.spotKind === undefined || row.spotKind === filter.spotKind);
30
+ return (
31
+ (filter.meshName === undefined || row.meshName === filter.meshName) &&
32
+ (filter.spotType === undefined || row.spotType === filter.spotType) &&
33
+ (filter.nodeRid === undefined || routingIdsEqual(row.ownerNodeRid, filter.nodeRid)) &&
34
+ (filter.spotKind === undefined || row.spotKind === filter.spotKind)
35
+ );
32
36
  }
33
37
 
34
38
  export function matchesActorLocation(
35
39
  row: ZLinkActorLocation,
36
40
  filter: ZLinkActorLocationFilter
37
41
  ): boolean {
38
- return (filter.actorType === undefined || row.actorType === filter.actorType)
39
- && (filter.nodeRid === undefined || routingIdsEqual(row.ownerNodeRid, filter.nodeRid))
40
- && (filter.spotId === undefined || row.spotId === filter.spotId)
41
- && (filter.locationKind === undefined || row.spotKind === filter.locationKind);
42
+ return (
43
+ (filter.actorType === undefined || row.actorType === filter.actorType) &&
44
+ (filter.nodeRid === undefined || routingIdsEqual(row.ownerNodeRid, filter.nodeRid)) &&
45
+ (filter.spotId === undefined || row.spotId === filter.spotId) &&
46
+ (filter.locationKind === undefined || row.spotKind === filter.locationKind)
47
+ );
42
48
  }
43
49
 
44
50
  export function matchesRouteLocation(
45
51
  row: ZLinkRouteLocation,
46
52
  filter: ZLinkRouteLocationFilter
47
53
  ): boolean {
48
- return (filter.routeKind === undefined || row.routeKind === filter.routeKind)
49
- && (filter.ownerNodeRid === undefined || routingIdsEqual(row.ownerNodeRid, filter.ownerNodeRid))
50
- && (filter.ownerId === undefined || row.ownerId === filter.ownerId);
54
+ return (
55
+ (filter.routeKind === undefined || row.routeKind === filter.routeKind) &&
56
+ (filter.ownerNodeRid === undefined || routingIdsEqual(row.ownerNodeRid, filter.ownerNodeRid)) &&
57
+ (filter.ownerId === undefined || row.ownerId === filter.ownerId)
58
+ );
51
59
  }