@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
@@ -56,8 +56,7 @@ function isZLinkBackendResultError(error) {
56
56
  }
57
57
  function isBackendNotConnectedError(error) {
58
58
  if (isZLinkBackendResultError(error)) {
59
- return error.result === exports.SubmitResult.NotConnected
60
- || error.result === exports.RequestResult.NotConnected;
59
+ return (error.result === exports.SubmitResult.NotConnected || error.result === exports.RequestResult.NotConnected);
61
60
  }
62
61
  if (typeof error !== 'object' || error === null || !('result' in error)) {
63
62
  return false;
@@ -66,7 +65,7 @@ function isBackendNotConnectedError(error) {
66
65
  return result === exports.SubmitResult.NotConnected || result === exports.RequestResult.NotConnected;
67
66
  }
68
67
  function isBackendRequestTimeoutError(error) {
69
- return isZLinkBackendResultError(error)
70
- && error.operation === 'request'
71
- && error.result === exports.RequestResult.TimedOut;
68
+ return (isZLinkBackendResultError(error) &&
69
+ error.operation === 'request' &&
70
+ error.result === exports.RequestResult.TimedOut);
72
71
  }
@@ -23,9 +23,9 @@ class DefaultZLinkChannelClient {
23
23
  return new DefaultZLinkRequestCall(() => this.requireChannel(channelName), (packetName, timeoutMs, metadata, signal) => this.requireTransport().request(channelName, packetName, request, timeoutMs, signal, metadata), this.defaultRequestTimeout(channelName));
24
24
  }
25
25
  defaultRequestTimeout(channelName) {
26
- return this.registration.channels.get(channelName)?.requestTimeoutMs
27
- ?? this.registration.requestTimeoutMs
28
- ?? 30_000;
26
+ return (this.registration.channels.get(channelName)?.requestTimeoutMs ??
27
+ this.registration.requestTimeoutMs ??
28
+ 30_000);
29
29
  }
30
30
  requireChannel(channelName) {
31
31
  const channel = this.registration.channels.get(channelName);
@@ -37,9 +37,7 @@ class DefaultZLinkChannelClient {
37
37
  }
38
38
  }
39
39
  requireTransport() {
40
- const transport = typeof this.transport === 'function'
41
- ? this.transport()
42
- : this.transport;
40
+ const transport = typeof this.transport === 'function' ? this.transport() : this.transport;
43
41
  if (transport === undefined) {
44
42
  throw new configuration_1.ZLinkConfigurationException('Channel runtime is not started.');
45
43
  }
@@ -80,9 +78,7 @@ class DefaultZLinkFanoutClient {
80
78
  }
81
79
  }
82
80
  requireTransport() {
83
- const transport = typeof this.transport === 'function'
84
- ? this.transport()
85
- : this.transport;
81
+ const transport = typeof this.transport === 'function' ? this.transport() : this.transport;
86
82
  if (transport === undefined) {
87
83
  throw new configuration_1.ZLinkConfigurationException('Channel runtime is not started.');
88
84
  }
@@ -106,19 +102,25 @@ class DefaultZLinkRouteClient {
106
102
  return new DefaultZLinkRequestCall(() => this.requireMesh(meshName), (packetName, timeoutMs, metadata, signal) => this.requireTransport().request(meshName, targetNodeRid, packetName, request, timeoutMs, signal, metadata), this.defaultRequestTimeout(meshName));
107
103
  }
108
104
  sendToChannel(channelName, message) {
109
- return new DefaultZLinkSendCall(() => { this.resolveMeshChannel(channelName); }, async (packetName, metadata, signal) => {
105
+ return new DefaultZLinkSendCall(() => {
106
+ this.resolveMeshChannel(channelName);
107
+ }, async (packetName, metadata, signal) => {
110
108
  const meshName = this.resolveMeshChannel(channelName);
111
109
  return normalizeSubmitResult(await this.requireTransport().submitToChannel(meshName, channelName, packetName, message, signal, metadata));
112
110
  });
113
111
  }
114
112
  requestToChannel(channelName, request) {
115
- return new DefaultZLinkRequestCall(() => { this.resolveMeshChannel(channelName); }, (packetName, timeoutMs, metadata, signal) => {
113
+ return new DefaultZLinkRequestCall(() => {
114
+ this.resolveMeshChannel(channelName);
115
+ }, (packetName, timeoutMs, metadata, signal) => {
116
116
  const meshName = this.resolveMeshChannel(channelName);
117
117
  return this.requireTransport().requestToChannel(meshName, channelName, packetName, request, timeoutMs, signal, metadata);
118
118
  }, this.defaultRequestTimeoutForChannel(channelName));
119
119
  }
120
120
  sendToSpot(spot, message) {
121
- return new DefaultZLinkSendCall(() => { this.requireSpotTransport(); }, async (_packetName, metadata, signal) => {
121
+ return new DefaultZLinkSendCall(() => {
122
+ this.requireSpotTransport();
123
+ }, async (_packetName, metadata, signal) => {
122
124
  await (0, spot_outbound_1.sendToSpotHandle)(this.requireSpotTransport(), spot, message, {
123
125
  signal,
124
126
  metadata,
@@ -128,7 +130,9 @@ class DefaultZLinkRouteClient {
128
130
  });
129
131
  }
130
132
  requestToSpot(spot, request) {
131
- return new DefaultZLinkRequestCall(() => { this.requireSpotTransport(); }, (_packetName, timeoutMs, metadata, signal) => (0, spot_outbound_1.requestToSpotHandle)(this.requireSpotTransport(), spot, request, {
133
+ return new DefaultZLinkRequestCall(() => {
134
+ this.requireSpotTransport();
135
+ }, (_packetName, timeoutMs, metadata, signal) => (0, spot_outbound_1.requestToSpotHandle)(this.requireSpotTransport(), spot, request, {
132
136
  timeoutMs,
133
137
  signal,
134
138
  metadata,
@@ -136,13 +140,14 @@ class DefaultZLinkRouteClient {
136
140
  }), this.registration.requestTimeoutMs ?? 30_000);
137
141
  }
138
142
  defaultRequestTimeout(meshName) {
139
- return this.registration.spotNodes.get(meshName)?.requestTimeoutMs
140
- ?? this.registration.routeChannelOptions.get(meshName)?.requestTimeoutMs
141
- ?? this.registration.requestTimeoutMs
142
- ?? 30_000;
143
+ return (this.registration.spotNodes.get(meshName)?.requestTimeoutMs ??
144
+ this.registration.routeChannelOptions.get(meshName)?.requestTimeoutMs ??
145
+ this.registration.requestTimeoutMs ??
146
+ 30_000);
143
147
  }
144
148
  requireMesh(meshName) {
145
- if (!this.registration.spotNodes.has(meshName) && !this.registration.routeChannels.has(meshName)) {
149
+ if (!this.registration.spotNodes.has(meshName) &&
150
+ !this.registration.routeChannels.has(meshName)) {
146
151
  throw new configuration_1.ZLinkConfigurationException(`RouteMesh '${meshName}' is not registered.`);
147
152
  }
148
153
  }
@@ -159,11 +164,8 @@ class DefaultZLinkRouteClient {
159
164
  return matches[0];
160
165
  }
161
166
  defaultRequestTimeoutForChannel(channelName) {
162
- const match = [...this.registration.spotNodes.entries()]
163
- .find(([, mesh]) => Object.prototype.hasOwnProperty.call(mesh.meshChannels ?? {}, channelName));
164
- return match?.[1].requestTimeoutMs
165
- ?? this.registration.requestTimeoutMs
166
- ?? 30_000;
167
+ const match = [...this.registration.spotNodes.entries()].find(([, mesh]) => Object.prototype.hasOwnProperty.call(mesh.meshChannels ?? {}, channelName));
168
+ return match?.[1].requestTimeoutMs ?? this.registration.requestTimeoutMs ?? 30_000;
167
169
  }
168
170
  requireTransport() {
169
171
  if (this.transport === undefined) {
@@ -192,7 +194,8 @@ class DefaultZLinkSpotPublisherClient {
192
194
  }
193
195
  requireMeshChannel(meshName, channelName) {
194
196
  const mesh = this.registration.spotNodes.get(meshName);
195
- if (mesh === undefined || !Object.prototype.hasOwnProperty.call(mesh.meshChannels ?? {}, channelName)) {
197
+ if (mesh === undefined ||
198
+ !Object.prototype.hasOwnProperty.call(mesh.meshChannels ?? {}, channelName)) {
196
199
  throw new configuration_1.ZLinkConfigurationException(`Channel '${channelName}' is not registered in RouteMesh '${meshName}'.`);
197
200
  }
198
201
  }
@@ -99,12 +99,10 @@ class ZLinkChannelDispatchPipeline {
99
99
  */
100
100
  async dispatchMalformed(input) {
101
101
  const { info } = input;
102
- const isRequest = info.kind === 1 /* ZLinkChannelMessageKind.Request */
103
- || (info.kind === undefined && input.transportRequest);
102
+ const isRequest = info.kind === 1 /* ZLinkChannelMessageKind.Request */ ||
103
+ (info.kind === undefined && input.transportRequest);
104
104
  let replied = false;
105
- if (isRequest
106
- && input.writeProtocolError !== undefined
107
- && info.correlationId !== undefined) {
105
+ if (isRequest && input.writeProtocolError !== undefined && info.correlationId !== undefined) {
108
106
  const protocolError = new contracts_1.ZLinkFrameworkException(contracts_1.ZLinkFrameworkErrorKind.ProtocolError, `Channel '${this.options.channelName}' received a malformed envelope.`);
109
107
  try {
110
108
  await input.writeProtocolError(protocolError);
@@ -150,9 +148,7 @@ class ZLinkChannelDispatchPipeline {
150
148
  createFilterContext(context, fields) {
151
149
  const dispatchKind = this.dispatchKind(context, fields);
152
150
  return {
153
- meshName: dispatchKind === contracts_1.ZLinkHandlerDispatchKind.ClassicFanout
154
- ? undefined
155
- : context.meshName,
151
+ meshName: dispatchKind === contracts_1.ZLinkHandlerDispatchKind.ClassicFanout ? undefined : context.meshName,
156
152
  channelName: context.channelName,
157
153
  packetName: context.packetName,
158
154
  contentType: context.contentType,
@@ -165,8 +161,8 @@ class ZLinkChannelDispatchPipeline {
165
161
  if (fields.messageKind === ZLinkDispatchOptions_1.ZLinkDispatchMessageKind.Publish) {
166
162
  return contracts_1.ZLinkHandlerDispatchKind.ClassicFanout;
167
163
  }
168
- const nodeDirect = this.options.surface === ZLinkDispatchOptions_1.ZLinkDispatchErrorSurface.RouteMeshChannel
169
- && context.channelName === undefined;
164
+ const nodeDirect = this.options.surface === ZLinkDispatchOptions_1.ZLinkDispatchErrorSurface.RouteMeshChannel &&
165
+ context.channelName === undefined;
170
166
  if (fields.messageKind === ZLinkDispatchOptions_1.ZLinkDispatchMessageKind.Request) {
171
167
  return nodeDirect
172
168
  ? contracts_1.ZLinkHandlerDispatchKind.NodeDirectRequest
@@ -179,12 +175,8 @@ class ZLinkChannelDispatchPipeline {
179
175
  report(fields, reason, action, error) {
180
176
  const classicFanout = fields.messageKind === ZLinkDispatchOptions_1.ZLinkDispatchMessageKind.Publish;
181
177
  this.options.dispatchErrors.report({
182
- surface: classicFanout
183
- ? ZLinkDispatchOptions_1.ZLinkDispatchErrorSurface.ClassicFanout
184
- : this.options.surface,
185
- messageKind: classicFanout
186
- ? ZLinkDispatchOptions_1.ZLinkDispatchMessageKind.Send
187
- : fields.messageKind,
178
+ surface: classicFanout ? ZLinkDispatchOptions_1.ZLinkDispatchErrorSurface.ClassicFanout : this.options.surface,
179
+ messageKind: classicFanout ? ZLinkDispatchOptions_1.ZLinkDispatchMessageKind.Send : fields.messageKind,
188
180
  reason,
189
181
  action,
190
182
  packetName: fields.packetName,
@@ -218,8 +210,8 @@ class ZLinkChannelDispatchPipeline {
218
210
  });
219
211
  }
220
212
  failureReason(error) {
221
- return error instanceof contracts_1.ZLinkFrameworkException
222
- && (0, framework_errors_internal_1.internalFrameworkErrorKind)(error) === framework_errors_internal_1.ZLinkFrameworkInternalErrorKind.PayloadDecodeFailed
213
+ return error instanceof contracts_1.ZLinkFrameworkException &&
214
+ (0, framework_errors_internal_1.internalFrameworkErrorKind)(error) === framework_errors_internal_1.ZLinkFrameworkInternalErrorKind.PayloadDecodeFailed
223
215
  ? ZLinkDispatchOptions_1.ZLinkRuntimeDispatchErrorReason.PayloadDecodeFailed
224
216
  : ZLinkDispatchOptions_1.ZLinkRuntimeDispatchErrorReason.HandlerException;
225
217
  }
@@ -41,9 +41,10 @@ class ZLinkChannelDispatchServices {
41
41
  if (this.handlerFiltersValue !== undefined) {
42
42
  return this.handlerFiltersValue;
43
43
  }
44
- this.handlerFiltersValue = this.registration.filterTypes.length === 0
45
- ? []
46
- : [{ invoke: (context, next, signal) => this.invokeHandlerFilters(context, next, signal) }];
44
+ this.handlerFiltersValue =
45
+ this.registration.filterTypes.length === 0
46
+ ? []
47
+ : [{ invoke: (context, next, signal) => this.invokeHandlerFilters(context, next, signal) }];
47
48
  return this.handlerFiltersValue;
48
49
  }
49
50
  channelRequestHandler(handlerType) {
@@ -125,7 +126,9 @@ class ZLinkChannelDispatchServices {
125
126
  return this.diagnosticsContextValue;
126
127
  }
127
128
  outboundFlow() {
128
- this.outboundFlowValue ??= new diagnostics_1.ZLinkMessageFlowTracer(this.diagnosticsContext(), { reportRuntimeTaskException() { } });
129
+ this.outboundFlowValue ??= new diagnostics_1.ZLinkMessageFlowTracer(this.diagnosticsContext(), {
130
+ reportRuntimeTaskException() { }
131
+ });
129
132
  return this.outboundFlowValue;
130
133
  }
131
134
  }
@@ -52,7 +52,7 @@ class ZLinkChannelRequestDispatcher {
52
52
  transportRequest: replyToken !== null,
53
53
  writeProtocolError: replyToken === null
54
54
  ? undefined
55
- : protocolError => this.submitReply((0, channel_multipart_1.appendParts)(router.reply(received.routingId, replyToken), (0, channel_envelope_1.encodeChannelErrorReplyParts)((0, channel_envelope_inspection_1.malformedProtocolErrorRequestHeader)(this.options.channelName, info), protocolError)), signal)
55
+ : (protocolError) => this.submitReply((0, channel_multipart_1.appendParts)(router.reply(received.routingId, replyToken), (0, channel_envelope_1.encodeChannelErrorReplyParts)((0, channel_envelope_inspection_1.malformedProtocolErrorRequestHeader)(this.options.channelName, info), protocolError)), signal)
56
56
  });
57
57
  return;
58
58
  }
@@ -120,8 +120,8 @@ class ZLinkChannelRequestDispatcher {
120
120
  context,
121
121
  signal,
122
122
  missingHandlerMessage: `No channel request handler is registered for '${this.options.channelName}:${packetName}'.`,
123
- writeReply: reply => this.submitReply((0, channel_multipart_1.appendParts)(router.reply(received.routingId, replyToken), (0, channel_envelope_1.encodeChannelReplyParts)(envelope.header, reply, this.options.codecs)), signal),
124
- writeError: error => this.submitReply((0, channel_multipart_1.appendParts)(router.reply(received.routingId, replyToken), (0, channel_envelope_1.encodeChannelErrorReplyParts)(envelope.header, error)), signal)
123
+ writeReply: (reply) => this.submitReply((0, channel_multipart_1.appendParts)(router.reply(received.routingId, replyToken), (0, channel_envelope_1.encodeChannelReplyParts)(envelope.header, reply, this.options.codecs)), signal),
124
+ writeError: (error) => this.submitReply((0, channel_multipart_1.appendParts)(router.reply(received.routingId, replyToken), (0, channel_envelope_1.encodeChannelErrorReplyParts)(envelope.header, error)), signal)
125
125
  });
126
126
  }
127
127
  async dispatchMesh(record, signal) {
@@ -345,9 +345,9 @@ class ZLinkRoutePacketDispatcher {
345
345
  }
346
346
  dispatchInfrastructure(received) {
347
347
  const channelHeader = (0, channel_envelope_inspection_1.tryDecodeChannelHeader)(received.parts, this.flowEnabled());
348
- if (this.spotRouteBridge !== undefined
349
- && channelHeader === undefined
350
- && this.spotRouteBridge.handleRouterReceived(this.routerChannelId, received.routingId, 0n, received.parts)) {
348
+ if (this.spotRouteBridge !== undefined &&
349
+ channelHeader === undefined &&
350
+ this.spotRouteBridge.handleRouterReceived(this.routerChannelId, received.routingId, 0n, received.parts)) {
351
351
  return true;
352
352
  }
353
353
  if (received.spotId !== null && received.spotId !== undefined) {
@@ -385,7 +385,7 @@ class ZLinkRoutePacketDispatcher {
385
385
  sourceRid: String(received.routingId),
386
386
  writeProtocolError: replyToken === null
387
387
  ? undefined
388
- : protocolError => this.submitReply((0, channel_multipart_1.appendParts)(router.reply(received.routingId, replyToken), (0, channel_envelope_1.encodeChannelErrorReplyParts)((0, channel_envelope_inspection_1.malformedProtocolErrorRequestHeader)(this.routerChannelId, info), protocolError)))
388
+ : (protocolError) => this.submitReply((0, channel_multipart_1.appendParts)(router.reply(received.routingId, replyToken), (0, channel_envelope_1.encodeChannelErrorReplyParts)((0, channel_envelope_inspection_1.malformedProtocolErrorRequestHeader)(this.routerChannelId, info), protocolError)))
389
389
  });
390
390
  return;
391
391
  }
@@ -448,8 +448,8 @@ class ZLinkRoutePacketDispatcher {
448
448
  context: this.createRouteContext(envelope, received.routingId),
449
449
  signal,
450
450
  missingHandlerMessage: `No routed request handler is registered for '${this.routerChannelId}:${packetName}'.`,
451
- writeReply: reply => this.submitReply((0, channel_multipart_1.appendParts)(router.reply(received.routingId, replyToken), (0, channel_envelope_1.encodeChannelReplyParts)(envelope.header, reply, codecs))),
452
- writeError: error => this.submitReply((0, channel_multipart_1.appendParts)(router.reply(received.routingId, replyToken), (0, channel_envelope_1.encodeChannelErrorReplyParts)(envelope.header, error)))
451
+ writeReply: (reply) => this.submitReply((0, channel_multipart_1.appendParts)(router.reply(received.routingId, replyToken), (0, channel_envelope_1.encodeChannelReplyParts)(envelope.header, reply, codecs))),
452
+ writeError: (error) => this.submitReply((0, channel_multipart_1.appendParts)(router.reply(received.routingId, replyToken), (0, channel_envelope_1.encodeChannelErrorReplyParts)(envelope.header, error)))
453
453
  });
454
454
  }
455
455
  async dispatchMesh(record, signal) {
@@ -66,11 +66,11 @@ function malformedProtocolErrorRequestHeader(channelName, info) {
66
66
  }
67
67
  const CHANNEL_FLOW_ID_PATTERN = /^[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/;
68
68
  function salvageChannelKind(value) {
69
- return value === 1 /* ZLinkChannelMessageKind.Request */
70
- || value === 2 /* ZLinkChannelMessageKind.Response */
71
- || value === 3 /* ZLinkChannelMessageKind.Command */
72
- || value === 4 /* ZLinkChannelMessageKind.Publish */
73
- || value === 5 /* ZLinkChannelMessageKind.Error */
69
+ return value === 1 /* ZLinkChannelMessageKind.Request */ ||
70
+ value === 2 /* ZLinkChannelMessageKind.Response */ ||
71
+ value === 3 /* ZLinkChannelMessageKind.Command */ ||
72
+ value === 4 /* ZLinkChannelMessageKind.Publish */ ||
73
+ value === 5 /* ZLinkChannelMessageKind.Error */
74
74
  ? value
75
75
  : undefined;
76
76
  }
@@ -81,16 +81,19 @@ function salvageCorrelationId(value) {
81
81
  if (typeof value !== 'string')
82
82
  return undefined;
83
83
  const byteLength = Buffer.byteLength(value, 'utf8');
84
- return byteLength >= 1 && byteLength <= 64 && /^[\x00-\x7f]*$/.test(value)
85
- ? value
86
- : undefined;
84
+ return byteLength >= 1 && byteLength <= 64 && /^[\x00-\x7f]*$/.test(value) ? value : undefined;
87
85
  }
88
86
  function salvageFlowOrigin(value) {
89
87
  switch (value) {
90
- case 1: return 'Inbound';
91
- case 2: return 'Timer';
92
- case 3: return 'Application';
93
- case 4: return 'Lifecycle';
94
- default: return undefined;
88
+ case 1:
89
+ return 'Inbound';
90
+ case 2:
91
+ return 'Timer';
92
+ case 3:
93
+ return 'Application';
94
+ case 4:
95
+ return 'Lifecycle';
96
+ default:
97
+ return undefined;
95
98
  }
96
99
  }
@@ -40,7 +40,10 @@ function encodeChannelEnvelopeParts(kind, channelName, packetName, payload, time
40
40
  const encoded = encodePayload(payload, (0, channel_framework_packets_1.codecsForFrameworkPacket)(messageName, codecs), messageName, 'payload');
41
41
  const flow = createFlow ? (0, flow_context_1.currentOrCreateFlow)('Application') : undefined;
42
42
  const envelopeCorrelationId = correlationIdForOutboundKind(kind, correlationId);
43
- return [encodeChannelHeader(kind, channelName, messageName, encoded.contentType, envelopeCorrelationId, timeoutMs === undefined ? null : new Date(Date.now() + timeoutMs).toISOString(), topic ?? null, null, null, undefined, applicationMetadataRecord(metadata), flow?.flowId, flow?.flowOrigin), encoded.message];
43
+ return [
44
+ encodeChannelHeader(kind, channelName, messageName, encoded.contentType, envelopeCorrelationId, timeoutMs === undefined ? null : new Date(Date.now() + timeoutMs).toISOString(), topic ?? null, null, null, undefined, applicationMetadataRecord(metadata), flow?.flowId, flow?.flowOrigin),
45
+ encoded.message
46
+ ];
44
47
  }
45
48
  /**
46
49
  * Encodes an outbound channel envelope with a deadline that was established
@@ -56,17 +59,26 @@ function encodeChannelEnvelopePartsAtDeadline(kind, channelName, packetName, pay
56
59
  const encoded = encodePayload(payload, (0, channel_framework_packets_1.codecsForFrameworkPacket)(messageName, codecs), messageName, 'payload');
57
60
  const flow = createFlow ? (0, flow_context_1.currentOrCreateFlow)('Application') : undefined;
58
61
  const envelopeCorrelationId = correlationIdForOutboundKind(kind, correlationId);
59
- return [encodeChannelHeader(kind, channelName, messageName, encoded.contentType, envelopeCorrelationId, new Date(deadlineUnixMs).toISOString(), topic ?? null, null, null, undefined, applicationMetadataRecord(metadata), flow?.flowId, flow?.flowOrigin), encoded.message];
62
+ return [
63
+ encodeChannelHeader(kind, channelName, messageName, encoded.contentType, envelopeCorrelationId, new Date(deadlineUnixMs).toISOString(), topic ?? null, null, null, undefined, applicationMetadataRecord(metadata), flow?.flowId, flow?.flowOrigin),
64
+ encoded.message
65
+ ];
60
66
  }
61
67
  function encodeChannelPublishEnvelopeParts(channelName, topic, packetName, payload, codecs, createFlow = true, metadata = EMPTY_OUTBOUND_METADATA) {
62
68
  const messageName = (0, packet_name_1.resolveFrameworkPacketName)(payload, packetName, 'Channel');
63
69
  const encoded = encodePayload(payload, (0, channel_framework_packets_1.codecsForFrameworkPacket)(messageName, codecs), messageName, 'payload');
64
70
  const flow = createFlow ? (0, flow_context_1.currentOrCreateFlow)('Application') : undefined;
65
- return [encodeChannelHeader(4 /* ZLinkChannelMessageKind.Publish */, channelName, messageName, encoded.contentType, null, null, topic, null, null, undefined, applicationMetadataRecord(metadata), flow?.flowId, flow?.flowOrigin), encoded.message];
71
+ return [
72
+ encodeChannelHeader(4 /* ZLinkChannelMessageKind.Publish */, channelName, messageName, encoded.contentType, null, null, topic, null, null, undefined, applicationMetadataRecord(metadata), flow?.flowId, flow?.flowOrigin),
73
+ encoded.message
74
+ ];
66
75
  }
67
76
  function encodeChannelReplyParts(request, payload, codecs) {
68
77
  const encoded = encodePayload(payload ?? Buffer.alloc(0), (0, channel_framework_packets_1.codecsForFrameworkPacket)(request.messageName, codecs), request.messageName, 'reply');
69
- return [encodeChannelHeader(2 /* ZLinkChannelMessageKind.Response */, request.channelName, request.messageName, encoded.contentType, request.correlationId, null, null, undefined, undefined, undefined, EMPTY_APPLICATION_METADATA, request.flowId, request.flowOrigin), encoded.message];
78
+ return [
79
+ encodeChannelHeader(2 /* ZLinkChannelMessageKind.Response */, request.channelName, request.messageName, encoded.contentType, request.correlationId, null, null, undefined, undefined, undefined, EMPTY_APPLICATION_METADATA, request.flowId, request.flowOrigin),
80
+ encoded.message
81
+ ];
70
82
  }
71
83
  /**
72
84
  * Reply metadata marker for errors the framework generated itself (never for
@@ -101,11 +113,12 @@ function channelErrorCodeName(kind) {
101
113
  return ERROR_KIND_WIRE_NAMES[kind] ?? 'internal_failure';
102
114
  }
103
115
  function encodeChannelErrorReplyParts(request, error, metadata = {}) {
104
- const errorCode = channelErrorCodeName(error instanceof contracts_1.ZLinkFrameworkException
105
- ? error.kind
106
- : contracts_1.ZLinkFrameworkErrorKind.InternalFailure);
116
+ const errorCode = channelErrorCodeName(error instanceof contracts_1.ZLinkFrameworkException ? error.kind : contracts_1.ZLinkFrameworkErrorKind.InternalFailure);
107
117
  const errorMessage = error instanceof Error ? error.message : String(error);
108
- return [encodeChannelHeader(5 /* ZLinkChannelMessageKind.Error */, request.channelName, request.messageName, exports.JSON_CONTENT_TYPE, request.correlationId, null, null, errorCode, errorMessage, undefined, metadata, request.flowId, request.flowOrigin), encodeJsonBytes(null)];
118
+ return [
119
+ encodeChannelHeader(5 /* ZLinkChannelMessageKind.Error */, request.channelName, request.messageName, exports.JSON_CONTENT_TYPE, request.correlationId, null, null, errorCode, errorMessage, undefined, metadata, request.flowId, request.flowOrigin),
120
+ encodeJsonBytes(null)
121
+ ];
109
122
  }
110
123
  function decodeChannelReply(parts, codecs) {
111
124
  const header = decodeChannelHeader(parts);
@@ -119,9 +132,9 @@ function decodeChannelReply(parts, codecs) {
119
132
  throw unsupportedChannelContentType(header.contentType);
120
133
  }
121
134
  const serializer = codecs?.serializers.get(header.contentType);
122
- if (serializer === undefined
123
- && header.contentType !== exports.BINARY_CONTENT_TYPE
124
- && header.contentType !== exports.JSON_CONTENT_TYPE) {
135
+ if (serializer === undefined &&
136
+ header.contentType !== exports.BINARY_CONTENT_TYPE &&
137
+ header.contentType !== exports.JSON_CONTENT_TYPE) {
125
138
  throw unsupportedChannelContentType(header.contentType);
126
139
  }
127
140
  if (parts.length < 2 || parts[1].data().length === 0) {
@@ -146,8 +159,7 @@ function decodeChannelError(header) {
146
159
  // Cross-language contract: errorCode carries the snake_case wire name.
147
160
  // An unknown name degrades to InternalFailure, matching the C++
148
161
  // request_failure_mapper fallback for unrecognized codes.
149
- const publicKind = ERROR_KIND_BY_WIRE_NAME.get(code)
150
- ?? contracts_1.ZLinkFrameworkErrorKind.InternalFailure;
162
+ const publicKind = ERROR_KIND_BY_WIRE_NAME.get(code) ?? contracts_1.ZLinkFrameworkErrorKind.InternalFailure;
151
163
  failure = new contracts_1.ZLinkFrameworkException(publicKind, message);
152
164
  }
153
165
  // Cross-language contract (.NET ZLinkErrorOriginWire.RemoteReplyOrigin /
@@ -160,10 +172,10 @@ function decodeChannelError(header) {
160
172
  // reached for bytes that DID come back over the wire) are unaffected and
161
173
  // stay unclassified (`origin: undefined`, i.e. "unspecified") because
162
174
  // they never call this function at all.
163
- failure.origin = header.metadata[exports.ZLINK_FRAMEWORK_ORIGIN_METADATA_KEY]
164
- === exports.ZLINK_FRAMEWORK_ORIGIN_METADATA_VALUE
165
- ? exports.ZLINK_FRAMEWORK_ORIGIN_METADATA_VALUE
166
- : 'application';
175
+ failure.origin =
176
+ header.metadata[exports.ZLINK_FRAMEWORK_ORIGIN_METADATA_KEY] === exports.ZLINK_FRAMEWORK_ORIGIN_METADATA_VALUE
177
+ ? exports.ZLINK_FRAMEWORK_ORIGIN_METADATA_VALUE
178
+ : 'application';
167
179
  return failure;
168
180
  }
169
181
  function decodeChannelEnvelope(parts, decodedHeader, flowEnabled = true) {
@@ -226,13 +238,12 @@ function encodePayload(value, codecs, packetName, contractPart) {
226
238
  message: (0, encoded_payload_storage_1.borrowEncodedPayload)(payload) ?? payload.data()
227
239
  };
228
240
  }
229
- const declaredType = (0, ZLinkMessage_1.isZLinkMessage)(value)
230
- ? (0, ZLinkMessage_1.readZLinkMessageDeclaredType)(value)
231
- : undefined;
241
+ const declaredType = (0, ZLinkMessage_1.isZLinkMessage)(value) ? (0, ZLinkMessage_1.readZLinkMessageDeclaredType)(value) : undefined;
232
242
  if ((0, ZLinkMessage_1.isZLinkMessage)(value))
233
243
  value = value.decode();
234
244
  const selected = (0, payload_codec_1.selectSerializerWithContentType)(value, codecs, declaredType);
235
- if (selected !== undefined && !(Buffer.isBuffer(value) || value instanceof Uint8Array || isMessage(value))) {
245
+ if (selected !== undefined &&
246
+ !(Buffer.isBuffer(value) || value instanceof Uint8Array || isMessage(value))) {
236
247
  const payload = selected.serializer.serialize(value);
237
248
  return {
238
249
  contentType: selected.contentType,
@@ -256,7 +267,9 @@ function contentTypeOf(value) {
256
267
  : exports.JSON_CONTENT_TYPE;
257
268
  }
258
269
  function isMessage(value) {
259
- return typeof value === 'object' && value !== null && typeof value.data === 'function';
270
+ return (typeof value === 'object' &&
271
+ value !== null &&
272
+ typeof value.data === 'function');
260
273
  }
261
274
  function encodeJsonBytes(value, schema) {
262
275
  return Buffer.from((0, framework_json_v1_1.stringifyFrameworkJsonV1)(value, schema));
@@ -403,10 +416,14 @@ class ChannelHeaderWriter {
403
416
  }
404
417
  function encodeFlowOrigin(origin) {
405
418
  switch (origin) {
406
- case 'Inbound': return 1;
407
- case 'Timer': return 2;
408
- case 'Application': return 3;
409
- case 'Lifecycle': return 4;
419
+ case 'Inbound':
420
+ return 1;
421
+ case 'Timer':
422
+ return 2;
423
+ case 'Application':
424
+ return 3;
425
+ case 'Lifecycle':
426
+ return 4;
410
427
  }
411
428
  }
412
429
  function decodeChannelHeader(parts, flowEnabled = true) {
@@ -534,9 +551,14 @@ class CanonicalChannelHeaderReader {
534
551
  return undefined;
535
552
  }
536
553
  }
537
- else if (escaped !== 0x22 && escaped !== 0x5c && escaped !== 0x2f
538
- && escaped !== 0x62 && escaped !== 0x66 && escaped !== 0x6e
539
- && escaped !== 0x72 && escaped !== 0x74) {
554
+ else if (escaped !== 0x22 &&
555
+ escaped !== 0x5c &&
556
+ escaped !== 0x2f &&
557
+ escaped !== 0x62 &&
558
+ escaped !== 0x66 &&
559
+ escaped !== 0x6e &&
560
+ escaped !== 0x72 &&
561
+ escaped !== 0x74) {
540
562
  return undefined;
541
563
  }
542
564
  }
@@ -576,9 +598,9 @@ class CanonicalChannelHeaderReader {
576
598
  }
577
599
  }
578
600
  function isHexDigit(value) {
579
- return (value >= 0x30 && value <= 0x39)
580
- || (value >= 0x41 && value <= 0x46)
581
- || (value >= 0x61 && value <= 0x66);
601
+ return ((value >= 0x30 && value <= 0x39) ||
602
+ (value >= 0x41 && value <= 0x46) ||
603
+ (value >= 0x61 && value <= 0x66));
582
604
  }
583
605
  function schemaForInboundChannelEnvelope(header) {
584
606
  const contract = (0, Attributes_1.readZLinkPacketJsonContract)(header.messageName);
@@ -613,9 +635,14 @@ function validateChannelHeader(value, flowEnabled = true) {
613
635
  requireNullableString(header.topic, 'topic');
614
636
  // Parsing already gives this receive operation an owned object. Validate
615
637
  // and normalize it here instead of allocating a second header per record.
616
- header.errorCode = header.errorCode === undefined ? null : requireNullableString(header.errorCode, 'errorCode');
617
- header.errorMessage = header.errorMessage === undefined ? null : requireNullableString(header.errorMessage, 'errorMessage');
618
- header.source = header.source === undefined ? undefined : requireNullableString(header.source, 'source');
638
+ header.errorCode =
639
+ header.errorCode === undefined ? null : requireNullableString(header.errorCode, 'errorCode');
640
+ header.errorMessage =
641
+ header.errorMessage === undefined
642
+ ? null
643
+ : requireNullableString(header.errorMessage, 'errorMessage');
644
+ header.source =
645
+ header.source === undefined ? undefined : requireNullableString(header.source, 'source');
619
646
  header.metadata = requireApplicationMetadata(header.metadata);
620
647
  header.flowId = flowId;
621
648
  header.flowOrigin = flowOrigin;
@@ -638,9 +665,9 @@ function correlationIdForOutboundKind(kind, correlationId) {
638
665
  return selected;
639
666
  }
640
667
  function validateCorrelationForKind(kind, correlationId) {
641
- if (kind === 1 /* ZLinkChannelMessageKind.Request */
642
- || kind === 2 /* ZLinkChannelMessageKind.Response */
643
- || kind === 5 /* ZLinkChannelMessageKind.Error */) {
668
+ if (kind === 1 /* ZLinkChannelMessageKind.Request */ ||
669
+ kind === 2 /* ZLinkChannelMessageKind.Response */ ||
670
+ kind === 5 /* ZLinkChannelMessageKind.Error */) {
644
671
  if (correlationId === null) {
645
672
  throw new configuration_1.ZLinkConfigurationException(`Channel ${channelKindName(kind)} requires correlationId.`);
646
673
  }
@@ -659,11 +686,16 @@ function validateCorrelationValue(correlationId) {
659
686
  }
660
687
  function channelKindName(kind) {
661
688
  switch (kind) {
662
- case 1 /* ZLinkChannelMessageKind.Request */: return 'request';
663
- case 2 /* ZLinkChannelMessageKind.Response */: return 'response';
664
- case 3 /* ZLinkChannelMessageKind.Command */: return 'send';
665
- case 4 /* ZLinkChannelMessageKind.Publish */: return 'publish';
666
- case 5 /* ZLinkChannelMessageKind.Error */: return 'error';
689
+ case 1 /* ZLinkChannelMessageKind.Request */:
690
+ return 'request';
691
+ case 2 /* ZLinkChannelMessageKind.Response */:
692
+ return 'response';
693
+ case 3 /* ZLinkChannelMessageKind.Command */:
694
+ return 'send';
695
+ case 4 /* ZLinkChannelMessageKind.Publish */:
696
+ return 'publish';
697
+ case 5 /* ZLinkChannelMessageKind.Error */:
698
+ return 'error';
667
699
  }
668
700
  }
669
701
  const EMPTY_APPLICATION_METADATA = Object.freeze({});
@@ -712,10 +744,14 @@ function requireFlowId(value) {
712
744
  }
713
745
  function requireFlowOrigin(value) {
714
746
  switch (value) {
715
- case 1: return 'Inbound';
716
- case 2: return 'Timer';
717
- case 3: return 'Application';
718
- case 4: return 'Lifecycle';
747
+ case 1:
748
+ return 'Inbound';
749
+ case 2:
750
+ return 'Timer';
751
+ case 3:
752
+ return 'Application';
753
+ case 4:
754
+ return 'Lifecycle';
719
755
  }
720
756
  throw new configuration_1.ZLinkConfigurationException('Channel envelope flowOrigin is invalid.');
721
757
  }
@@ -76,7 +76,7 @@ class ZLinkChannelOutboundOperations {
76
76
  channelRouteKind: 'client_server',
77
77
  serverRid,
78
78
  packetName,
79
- correlationId: undefined,
79
+ correlationId: undefined
80
80
  });
81
81
  }
82
82
  request(channelName, packetName, request, timeoutMs, signal, metadata) {
@@ -287,8 +287,8 @@ class ZLinkChannelOutboundOperations {
287
287
  if (!isRemoteChannelErrorReply(error)) {
288
288
  traceTerminal(requestTerminalResult(error, signal));
289
289
  }
290
- if (this.sockets.routeMemberStatus(routerChannelId, targetNodeRid) === 'disconnected'
291
- && (isSubmitDeadline(error) || error instanceof route_disconnected_error_1.ZLinkRouteDisconnectedError)) {
290
+ if (this.sockets.routeMemberStatus(routerChannelId, targetNodeRid) === 'disconnected' &&
291
+ (isSubmitDeadline(error) || error instanceof route_disconnected_error_1.ZLinkRouteDisconnectedError)) {
292
292
  throw (0, framework_errors_internal_1.createInternalFrameworkException)(framework_errors_internal_1.ZLinkFrameworkInternalErrorKind.RouteNotConnected, `Route channel '${routerChannelId}' member '${targetNodeRid}' is not connected.`, true, error);
293
293
  }
294
294
  throw error;
@@ -319,8 +319,8 @@ function keepChannelRequestAlive(request) {
319
319
  return request.finally(() => clearTimeout(keepalive));
320
320
  }
321
321
  function isSubmitDeadline(error) {
322
- return error instanceof contracts_1.ZLinkFrameworkException
323
- && (0, framework_errors_internal_1.internalFrameworkErrorKind)(error) === framework_errors_internal_1.ZLinkFrameworkInternalErrorKind.DeadlineExceeded;
322
+ return (error instanceof contracts_1.ZLinkFrameworkException &&
323
+ (0, framework_errors_internal_1.internalFrameworkErrorKind)(error) === framework_errors_internal_1.ZLinkFrameworkInternalErrorKind.DeadlineExceeded);
324
324
  }
325
325
  function publishResult(status) {
326
326
  return { status };
@@ -335,7 +335,7 @@ function requestTerminalResult(error, signal) {
335
335
  return 'failed';
336
336
  }
337
337
  function isRemoteChannelErrorReply(error) {
338
- return error instanceof contracts_1.ZLinkFrameworkException
339
- && 'origin' in error
340
- && error.origin !== undefined;
338
+ return (error instanceof contracts_1.ZLinkFrameworkException &&
339
+ 'origin' in error &&
340
+ error.origin !== undefined);
341
341
  }