@zlink-systems/framework 0.21.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
@@ -66,8 +66,8 @@ class ZLinkSpotLocationClaims {
66
66
  if (tracked === undefined) {
67
67
  return;
68
68
  }
69
- if (expectedObjectGeneration !== undefined
70
- && (tracked.kind !== 'authority' || tracked.objectGeneration !== expectedObjectGeneration)) {
69
+ if (expectedObjectGeneration !== undefined &&
70
+ (tracked.kind !== 'authority' || tracked.objectGeneration !== expectedObjectGeneration)) {
71
71
  return;
72
72
  }
73
73
  if (tracked.kind === 'legacy') {
@@ -173,10 +173,10 @@ class ZLinkSpotLocationClaims {
173
173
  });
174
174
  if (this.spots.get(canonical) !== tracked)
175
175
  continue;
176
- if (current === undefined
177
- || current.ownerId !== owner.ownerId
178
- || (current.leaseGeneration !== tracked.row.leaseGeneration
179
- && current.leaseGeneration !== owner.leaseGeneration)) {
176
+ if (current === undefined ||
177
+ current.ownerId !== owner.ownerId ||
178
+ (current.leaseGeneration !== tracked.row.leaseGeneration &&
179
+ current.leaseGeneration !== owner.leaseGeneration)) {
180
180
  if (this.spots.get(canonical) !== tracked)
181
181
  continue;
182
182
  this.spots.delete(canonical);
@@ -211,9 +211,10 @@ class ZLinkSpotLocationClaims {
211
211
  const current = await this.authorityStore?.readAuthority(key);
212
212
  if (this.spots.get(canonical) !== tracked)
213
213
  continue;
214
- if (current === undefined || current.kind === 'missing'
215
- || !matchesTrackedAuthorityIdentity(current, tracked)
216
- || current.ownerId !== owner.ownerId) {
214
+ if (current === undefined ||
215
+ current.kind === 'missing' ||
216
+ !matchesTrackedAuthorityIdentity(current, tracked) ||
217
+ current.ownerId !== owner.ownerId) {
217
218
  if (this.spots.get(canonical) !== tracked)
218
219
  continue;
219
220
  this.spots.delete(canonical);
@@ -261,17 +262,20 @@ class ZLinkSpotLocationClaims {
261
262
  return;
262
263
  const key = (0, authority_key_codec_1.encodeAuthorityKey)('instance_spot', String(tracked.spotId));
263
264
  let result = await store.compareExchangeAuthority(key, { value: tracked.storeVersion }, { kind: 'delete' });
264
- if (result.kind === 'conflict'
265
- && result.current.kind === 'snapshot'
266
- && matchesTrackedAuthority(result.current, tracked)) {
267
- result = await store.compareExchangeAuthority(key, result.current.storeVersion, { kind: 'delete' });
265
+ if (result.kind === 'conflict' &&
266
+ result.current.kind === 'snapshot' &&
267
+ matchesTrackedAuthority(result.current, tracked)) {
268
+ result = await store.compareExchangeAuthority(key, result.current.storeVersion, {
269
+ kind: 'delete'
270
+ });
268
271
  }
269
- if (result.kind === 'conflict'
270
- && result.current.kind === 'snapshot'
271
- && !matchesTrackedAuthority(result.current, tracked)) {
272
+ if (result.kind === 'conflict' &&
273
+ result.current.kind === 'snapshot' &&
274
+ !matchesTrackedAuthority(result.current, tracked)) {
272
275
  return;
273
276
  }
274
- if (result.kind === 'deleted' || (result.kind === 'conflict' && result.current.kind === 'missing')) {
277
+ if (result.kind === 'deleted' ||
278
+ (result.kind === 'conflict' && result.current.kind === 'missing')) {
275
279
  return;
276
280
  }
277
281
  if (result.kind === 'generationExhausted') {
@@ -282,24 +286,24 @@ class ZLinkSpotLocationClaims {
282
286
  }
283
287
  exports.ZLinkSpotLocationClaims = ZLinkSpotLocationClaims;
284
288
  function matchesTrackedAuthority(snapshot, tracked) {
285
- return snapshot.objectGeneration === tracked.objectGeneration
286
- && snapshot.authorityOwnerGeneration === tracked.authorityOwnerGeneration
287
- && snapshot.ownerId === tracked.ownerId
288
- && snapshot.ownerLeaseGeneration === tracked.ownerLeaseGeneration
289
- && snapshot.allocation.state === 'active'
290
- && snapshot.allocation.objectKind === 'instance_spot'
291
- && snapshot.allocation.stableType === tracked.stableType
292
- && snapshot.allocation.descriptor.meshName === tracked.meshName
293
- && (0, routing_id_1.routingIdsEqual)(snapshot.allocation.descriptor.rid, tracked.nodeRid)
294
- && snapshot.allocation.descriptorLifecycleGeneration === tracked.nodeGeneration;
289
+ return (snapshot.objectGeneration === tracked.objectGeneration &&
290
+ snapshot.authorityOwnerGeneration === tracked.authorityOwnerGeneration &&
291
+ snapshot.ownerId === tracked.ownerId &&
292
+ snapshot.ownerLeaseGeneration === tracked.ownerLeaseGeneration &&
293
+ snapshot.allocation.state === 'active' &&
294
+ snapshot.allocation.objectKind === 'instance_spot' &&
295
+ snapshot.allocation.stableType === tracked.stableType &&
296
+ snapshot.allocation.descriptor.meshName === tracked.meshName &&
297
+ (0, routing_id_1.routingIdsEqual)(snapshot.allocation.descriptor.rid, tracked.nodeRid) &&
298
+ snapshot.allocation.descriptorLifecycleGeneration === tracked.nodeGeneration);
295
299
  }
296
300
  function matchesTrackedAuthorityIdentity(snapshot, tracked) {
297
- return snapshot.objectGeneration === tracked.objectGeneration
298
- && snapshot.authorityOwnerGeneration === tracked.authorityOwnerGeneration
299
- && snapshot.allocation.state === 'active'
300
- && snapshot.allocation.objectKind === 'instance_spot'
301
- && snapshot.allocation.stableType === tracked.stableType
302
- && snapshot.allocation.descriptor.meshName === tracked.meshName
303
- && (0, routing_id_1.routingIdsEqual)(snapshot.allocation.descriptor.rid, tracked.nodeRid)
304
- && snapshot.allocation.descriptorLifecycleGeneration === tracked.nodeGeneration;
301
+ return (snapshot.objectGeneration === tracked.objectGeneration &&
302
+ snapshot.authorityOwnerGeneration === tracked.authorityOwnerGeneration &&
303
+ snapshot.allocation.state === 'active' &&
304
+ snapshot.allocation.objectKind === 'instance_spot' &&
305
+ snapshot.allocation.stableType === tracked.stableType &&
306
+ snapshot.allocation.descriptor.meshName === tracked.meshName &&
307
+ (0, routing_id_1.routingIdsEqual)(snapshot.allocation.descriptor.rid, tracked.nodeRid) &&
308
+ snapshot.allocation.descriptorLifecycleGeneration === tracked.nodeGeneration);
305
309
  }
@@ -36,9 +36,9 @@ function frameworkJsonV1Replacer(key, item) {
36
36
  if (source instanceof Date) {
37
37
  throw new TypeError('framework-json-v1 does not implicitly encode Date values.');
38
38
  }
39
- if (typeof source === 'object'
40
- && source !== null
41
- && typeof source.toJSON === 'function') {
39
+ if (typeof source === 'object' &&
40
+ source !== null &&
41
+ typeof source.toJSON === 'function') {
42
42
  throw new TypeError('framework-json-v1 does not implicitly invoke custom toJSON methods.');
43
43
  }
44
44
  return item;
@@ -49,9 +49,7 @@ function parseFrameworkJsonV1(text, options = {}, schema) {
49
49
  }
50
50
  new JsonPropertyScanner(text, options).scan();
51
51
  const parsed = JSON.parse(text);
52
- return schema === undefined
53
- ? parsed
54
- : validateFrameworkJsonV1Value(parsed, schema, '$', true);
52
+ return schema === undefined ? parsed : validateFrameworkJsonV1Value(parsed, schema, '$', true);
55
53
  }
56
54
  // Sticky pattern shared across scans; matching happens synchronously so the
57
55
  // mutable lastIndex never crosses calls.
@@ -75,7 +73,9 @@ function validateFrameworkJsonV1Value(value, schema, path, decode) {
75
73
  schemaFailure(path, 'a finite number');
76
74
  return value;
77
75
  case 'int32':
78
- if (!Number.isInteger(value) || value < INT32_MIN || value > INT32_MAX) {
76
+ if (!Number.isInteger(value) ||
77
+ value < INT32_MIN ||
78
+ value > INT32_MAX) {
79
79
  schemaFailure(path, 'an int32 JSON number');
80
80
  }
81
81
  return value;
@@ -18,9 +18,9 @@ const STRUCTURAL_PAYLOAD_NAMES = new Set([
18
18
  'Date'
19
19
  ]);
20
20
  function resolveFrameworkPacketName(payload, explicitPacketName, surface) {
21
- const packetName = normalizePacketName(explicitPacketName)
22
- ?? tryDecoratorPacketName(payload)
23
- ?? tryConstructorPacketName(payload);
21
+ const packetName = normalizePacketName(explicitPacketName) ??
22
+ tryDecoratorPacketName(payload) ??
23
+ tryConstructorPacketName(payload);
24
24
  if (packetName === undefined) {
25
25
  throw new configuration_1.ZLinkConfigurationException(`${surface} packetName is required when the payload type cannot provide one.`);
26
26
  }
@@ -37,9 +37,10 @@ function resolveFrameworkPacketJsonContract(payload, explicitPacketName) {
37
37
  function readFrameworkPacketJsonContract(type, explicitPacketName) {
38
38
  const expectedPacketName = normalizePacketName(explicitPacketName);
39
39
  for (const metadata of (0, Attributes_1.readZLinkDecoratorMetadata)(type)) {
40
- if (metadata.kind === 'packet'
41
- && metadata.jsonContract !== undefined
42
- && (expectedPacketName === undefined || normalizePacketName(metadata.packetName) === expectedPacketName)) {
40
+ if (metadata.kind === 'packet' &&
41
+ metadata.jsonContract !== undefined &&
42
+ (expectedPacketName === undefined ||
43
+ normalizePacketName(metadata.packetName) === expectedPacketName)) {
43
44
  return metadata.jsonContract;
44
45
  }
45
46
  }
@@ -57,8 +57,8 @@ function encodeFrameworkPayload(payload, registry, packetName, contractPart = 'p
57
57
  };
58
58
  }
59
59
  return {
60
- message: rememberContentType(runtime_message_1.ZLinkBufferMessage.fromOwned(Buffer.from((0, framework_json_v1_1.stringifyFrameworkJsonV1)(payload, ((0, packet_name_1.resolveFrameworkPacketJsonContract)(payload, packetName)
61
- ?? (packetName === undefined ? undefined : (0, Attributes_1.readZLinkPacketJsonContract)(packetName)))?.[contractPart]))), JSON_CONTENT_TYPE),
60
+ message: rememberContentType(runtime_message_1.ZLinkBufferMessage.fromOwned(Buffer.from((0, framework_json_v1_1.stringifyFrameworkJsonV1)(payload, ((0, packet_name_1.resolveFrameworkPacketJsonContract)(payload, packetName) ??
61
+ (packetName === undefined ? undefined : (0, Attributes_1.readZLinkPacketJsonContract)(packetName)))?.[contractPart]))), JSON_CONTENT_TYPE),
62
62
  contentType: JSON_CONTENT_TYPE
63
63
  };
64
64
  }
@@ -118,10 +118,9 @@ function decodeFrameworkEncodedPayload(payload, registry, type, contentType, pac
118
118
  }
119
119
  }
120
120
  function schemaForDecode(type, packetName, contractPart) {
121
- const contract = type === undefined
122
- ? undefined
123
- : (0, packet_name_1.readFrameworkPacketJsonContract)(type, packetName);
124
- return (contract ?? (packetName === undefined ? undefined : (0, Attributes_1.readZLinkPacketJsonContract)(packetName)))?.[contractPart];
121
+ const contract = type === undefined ? undefined : (0, packet_name_1.readFrameworkPacketJsonContract)(type, packetName);
122
+ return (contract ??
123
+ (packetName === undefined ? undefined : (0, Attributes_1.readZLinkPacketJsonContract)(packetName)))?.[contractPart];
125
124
  }
126
125
  function selectDefaultSerializer(registry) {
127
126
  return serializerSelectionPlanOf(registry)?.defaultSerializer?.serializer;
@@ -182,17 +181,21 @@ function outboundBusinessType(value) {
182
181
  if (value === null || value === undefined)
183
182
  return undefined;
184
183
  switch (typeof value) {
185
- case 'string': return String;
186
- case 'number': return Number;
187
- case 'boolean': return Boolean;
188
- case 'bigint': return BigInt;
189
- case 'symbol': return Symbol;
190
- case 'function': return Function;
184
+ case 'string':
185
+ return String;
186
+ case 'number':
187
+ return Number;
188
+ case 'boolean':
189
+ return Boolean;
190
+ case 'bigint':
191
+ return BigInt;
192
+ case 'symbol':
193
+ return Symbol;
194
+ case 'function':
195
+ return Function;
191
196
  case 'object': {
192
197
  const constructor = value.constructor;
193
- return typeof constructor === 'function'
194
- ? constructor
195
- : Object;
198
+ return typeof constructor === 'function' ? constructor : Object;
196
199
  }
197
200
  }
198
201
  throw new TypeError('Unsupported payload type.');
@@ -231,9 +234,9 @@ function serializerMapOf(registry) {
231
234
  return 'serializers' in registry ? registry.serializers : registry;
232
235
  }
233
236
  function isMessage(value) {
234
- return typeof value === 'object'
235
- && value !== null
236
- && typeof value.data === 'function';
237
+ return (typeof value === 'object' &&
238
+ value !== null &&
239
+ typeof value.data === 'function');
237
240
  }
238
241
  function toRuntimeMessage(payload) {
239
242
  const owned = (0, encoded_payload_storage_1.borrowEncodedPayload)(payload);
@@ -1,11 +1,10 @@
1
- export type ServiceWireRuntimePredicate = (terminalResult: number, failureCode: number) => boolean;
2
1
  export type ServiceWireDecoderContext = Readonly<{
3
2
  originalOperationKind?: MeshOperationKind;
4
3
  durableRelocationPresent?: boolean;
5
4
  applicationSnapshotPresent?: boolean;
5
+ runtimePredicates?: Readonly<Record<string, unknown>>;
6
6
  readonly effectiveCompleteMessageBytesMinusActualEnvelopeOverhead?: number | bigint;
7
7
  readonly effectiveCompleteMessageBytes?: number | bigint;
8
- runtimePredicates: Readonly<Record<string, ServiceWireRuntimePredicate>>;
9
8
  }>;
10
9
  export type U8 = number;
11
10
  export declare function decodeU8(bytes: Uint8Array, context: ServiceWireDecoderContext): U8;
@@ -1668,5 +1667,34 @@ export declare function decodeRelocationDataChunkV1DurableFormat(bytes: Uint8Arr
1668
1667
  export declare function encodeRelocationDataChunkV1DurableFormat(value: RelocationDataChunkV1, context: ServiceWireDecoderContext): Uint8Array;
1669
1668
  export declare function decodeRelocationManifestV1DurableFormat(bytes: Uint8Array, context: ServiceWireDecoderContext): RelocationManifestV1;
1670
1669
  export declare function encodeRelocationManifestV1DurableFormat(value: RelocationManifestV1, context: ServiceWireDecoderContext): Uint8Array;
1670
+ export type RelocationEnvelopeV1LogicalDecodeStep = {
1671
+ readonly state: "needMore";
1672
+ readonly bufferedInputByteCount: number;
1673
+ readonly consumedByteCount: number;
1674
+ readonly continuationDepth: number;
1675
+ } | {
1676
+ readonly state: "complete";
1677
+ readonly value: RelocationEnvelopeV1;
1678
+ readonly consumedByteCount: number;
1679
+ readonly continuationDepth: number;
1680
+ };
1681
+ export type LogicalFailureKind = "truncated" | "trailing" | "capacity" | "limit" | "protocol";
1682
+ export declare class LogicalDecodeError extends RangeError {
1683
+ readonly kind: LogicalFailureKind;
1684
+ readonly offset: number;
1685
+ constructor(kind: LogicalFailureKind, offset: number, options?: ErrorOptions);
1686
+ }
1687
+ export declare class RelocationEnvelopeV1LogicalStreamDecoder {
1688
+ static readonly maximumContinuationDepth = 12;
1689
+ private readonly reader;
1690
+ private readonly machine;
1691
+ private state;
1692
+ private pendingValue;
1693
+ private totalInputByteCount;
1694
+ constructor(context: ServiceWireDecoderContext);
1695
+ setSyntheticPriorInputByteCountForTest(value: number): void;
1696
+ private logicalFailure;
1697
+ push(chunk: Uint8Array, finalChunk: boolean): RelocationEnvelopeV1LogicalDecodeStep;
1698
+ }
1671
1699
  export declare function decodeRelocationEnvelopeV1LogicalStream(bytes: Uint8Array, context: ServiceWireDecoderContext): RelocationEnvelopeV1;
1672
1700
  export declare function encodeRelocationEnvelopeV1LogicalStream(value: RelocationEnvelopeV1, context: ServiceWireDecoderContext): Uint8Array;