@zlink-systems/framework 0.26.0 → 0.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (561) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/contracts/Actors/ZLinkActorClient.d.ts +1 -1
  3. package/dist/contracts/Channels/Calls.d.ts +1 -1
  4. package/dist/contracts/Common/CoreTypes.d.ts +6 -0
  5. package/dist/contracts/Common/CoreTypes.js +7 -0
  6. package/dist/contracts/Common/index.d.ts +1 -1
  7. package/dist/contracts/Common/index.js +0 -1
  8. package/dist/contracts/Configuration/Builders.d.ts +0 -1
  9. package/dist/contracts/Configuration/Configs.d.ts +0 -1
  10. package/dist/contracts/Configuration/InternalDefaults.d.ts +8 -0
  11. package/dist/contracts/Configuration/InternalDefaults.js +9 -1
  12. package/dist/contracts/Configuration/Registration.d.ts +13 -2
  13. package/dist/contracts/Configuration/Registration.js +58 -36
  14. package/dist/contracts/Configuration/RegistrationBuilderPolicy.d.ts +13 -1
  15. package/dist/contracts/Configuration/RegistrationBuilderPolicy.js +38 -1
  16. package/dist/contracts/Configuration/RegistrationBuilders.d.ts +2 -3
  17. package/dist/contracts/Configuration/RegistrationBuilders.js +27 -32
  18. package/dist/contracts/Configuration/RegistrationTypes.d.ts +1 -5
  19. package/dist/contracts/Configuration/RegistrationValidators.js +15 -14
  20. package/dist/contracts/Configuration/TimerRegistrationValidator.js +3 -2
  21. package/dist/contracts/Dispatch/ZLinkDispatchOptions.d.ts +1 -1
  22. package/dist/contracts/Handlers/JsonContract.js +10 -4
  23. package/dist/contracts/Locations/Authority.d.ts +1 -1
  24. package/dist/contracts/Locations/Authority.js +3 -2
  25. package/dist/contracts/Locations/Options.js +1 -1
  26. package/dist/contracts/Locations/Stores.d.ts +12 -0
  27. package/dist/contracts/Locations/Stores.js +9 -0
  28. package/dist/contracts/Spots/Contracts.d.ts +2 -2
  29. package/dist/contracts/Streams/BoundSessionContracts.d.ts +1 -1
  30. package/dist/contracts/Streams/IZLinkSession.d.ts +2 -3
  31. package/dist/contracts/Streams/IZLinkSessionActor.d.ts +2 -2
  32. package/dist/internal.d.ts +4 -0
  33. package/dist/internal.js +15 -1
  34. package/dist/nest-integration.d.ts +4 -2
  35. package/dist/nest-integration.js +14 -4
  36. package/dist/runtime/abort.d.ts +1 -0
  37. package/dist/runtime/abort.js +8 -5
  38. package/dist/runtime/activation-admission.d.ts +1 -2
  39. package/dist/runtime/activation-admission.js +2 -6
  40. package/dist/runtime/actors/actor-authority-payload-codec.d.ts +1 -2
  41. package/dist/runtime/actors/actor-authority-payload-codec.js +34 -18
  42. package/dist/runtime/actors/actor-client.d.ts +2 -2
  43. package/dist/runtime/actors/actor-client.js +49 -153
  44. package/dist/runtime/actors/actor-context.d.ts +3 -5
  45. package/dist/runtime/actors/actor-context.js +13 -11
  46. package/dist/runtime/actors/actor-handoff.d.ts +4 -4
  47. package/dist/runtime/actors/actor-handoff.js +8 -8
  48. package/dist/runtime/actors/actor-lifecycle-snapshot.js +2 -1
  49. package/dist/runtime/actors/actor-local-native-join.d.ts +11 -6
  50. package/dist/runtime/actors/actor-local-native-join.js +83 -105
  51. package/dist/runtime/actors/actor-native-lookup.js +2 -8
  52. package/dist/runtime/actors/actor-packet-relay-wire.d.ts +3 -3
  53. package/dist/runtime/actors/actor-packet-relay-wire.js +5 -3
  54. package/dist/runtime/actors/actor-remote-joiner.d.ts +1 -1
  55. package/dist/runtime/actors/actor-remote-joiner.js +5 -9
  56. package/dist/runtime/actors/actor-remote-wire.js +5 -3
  57. package/dist/runtime/actors/actor-request-deadline.d.ts +1 -0
  58. package/dist/runtime/actors/actor-request-deadline.js +6 -0
  59. package/dist/runtime/actors/actor-retry-delay.js +2 -1
  60. package/dist/runtime/actors/actor-routed-join-transport.d.ts +2 -3
  61. package/dist/runtime/actors/actor-runtime-state.d.ts +9 -21
  62. package/dist/runtime/actors/actor-runtime-state.js +70 -187
  63. package/dist/runtime/actors/bound-session-wire.js +2 -7
  64. package/dist/runtime/actors/deferred-join-completion.d.ts +11 -6
  65. package/dist/runtime/actors/deferred-join-completion.js +1 -0
  66. package/dist/runtime/actors/index.d.ts +9 -7
  67. package/dist/runtime/actors/index.js +87 -69
  68. package/dist/runtime/actors/spot-actor-dispatch.d.ts +3 -3
  69. package/dist/runtime/actors/spot-actor-dispatch.js +25 -10
  70. package/dist/runtime/actors/transferred-actor-rollback.d.ts +3 -5
  71. package/dist/runtime/actors/transferred-actor-rollback.js +9 -42
  72. package/dist/runtime/admission.d.ts +2 -0
  73. package/dist/runtime/admission.js +7 -1
  74. package/dist/runtime/application-jobs/application-job-queue-scope.d.ts +1 -1
  75. package/dist/runtime/application-jobs/application-job-queue-scope.js +1 -1
  76. package/dist/runtime/backend/contracts/index.d.ts +7 -27
  77. package/dist/runtime/backend/mesh-actor-session-node-adapter.js +1 -17
  78. package/dist/runtime/backend/mesh-dispatch-pump.d.ts +1 -2
  79. package/dist/runtime/backend/mesh-dispatch-pump.js +95 -107
  80. package/dist/runtime/backend/node/node-backend-adapter-support.d.ts +3 -1
  81. package/dist/runtime/backend/node/node-backend-adapter-support.js +51 -10
  82. package/dist/runtime/backend/node/node-dealer-channel-client-transport.d.ts +1 -1
  83. package/dist/runtime/backend/node/node-dealer-channel-client-transport.js +1 -2
  84. package/dist/runtime/backend/node/node-event-loop-poller.d.ts +2 -2
  85. package/dist/runtime/backend/node/node-event-loop-poller.js +6 -7
  86. package/dist/runtime/backend/node/node-monitor-backend-adapter.js +1 -0
  87. package/dist/runtime/backend/node/node-raw-binding-port.js +41 -34
  88. package/dist/runtime/backend/node/node-raw-mesh-backend.d.ts +14 -15
  89. package/dist/runtime/backend/node/node-raw-mesh-backend.js +146 -118
  90. package/dist/runtime/backend/node/node-socket-backend-adapter.js +4 -3
  91. package/dist/runtime/backend/raw-binding-port.d.ts +1 -1
  92. package/dist/runtime/backend/runtime-values.d.ts +4 -1
  93. package/dist/runtime/backend/runtime-values.js +2 -0
  94. package/dist/runtime/channels/channel-clients.d.ts +20 -8
  95. package/dist/runtime/channels/channel-clients.js +73 -59
  96. package/dist/runtime/channels/channel-envelope-inspection.js +2 -1
  97. package/dist/runtime/channels/channel-envelope.d.ts +1 -1
  98. package/dist/runtime/channels/channel-envelope.js +51 -39
  99. package/dist/runtime/channels/channel-outbound-operations.d.ts +5 -2
  100. package/dist/runtime/channels/channel-outbound-operations.js +25 -42
  101. package/dist/runtime/channels/channel-receive-loops.d.ts +8 -3
  102. package/dist/runtime/channels/channel-receive-loops.js +27 -6
  103. package/dist/runtime/channels/channel-runtime-lifecycle.d.ts +12 -1
  104. package/dist/runtime/channels/channel-runtime-lifecycle.js +48 -28
  105. package/dist/runtime/channels/channel-runtime-manager.d.ts +4 -4
  106. package/dist/runtime/channels/channel-runtime-manager.js +13 -10
  107. package/dist/runtime/channels/channel-socket-options.js +3 -12
  108. package/dist/runtime/channels/channel-socket-registry.d.ts +14 -29
  109. package/dist/runtime/channels/channel-socket-registry.js +240 -177
  110. package/dist/runtime/channels/channel-transports.d.ts +21 -31
  111. package/dist/runtime/channels/channel-transports.js +80 -62
  112. package/dist/runtime/channels/client-server-location-runtime.d.ts +1 -1
  113. package/dist/runtime/channels/client-server-location-runtime.js +10 -11
  114. package/dist/runtime/channels/client-server-service-wire.d.ts +7 -2
  115. package/dist/runtime/channels/client-server-service-wire.js +32 -11
  116. package/dist/runtime/channels/dispatch-error-reporter.d.ts +1 -2
  117. package/dist/runtime/channels/dispatch-error-reporter.js +2 -1
  118. package/dist/runtime/channels/fanout-location-runtime.d.ts +16 -3
  119. package/dist/runtime/channels/fanout-location-runtime.js +130 -72
  120. package/dist/runtime/channels/local-spot-route-transport.d.ts +1 -1
  121. package/dist/runtime/channels/local-spot-route-transport.js +1 -3
  122. package/dist/runtime/channels/router-socket-spot-route-transport.d.ts +1 -1
  123. package/dist/runtime/channels/router-socket-spot-route-transport.js +2 -2
  124. package/dist/runtime/channels/source-spot-router.d.ts +1 -1
  125. package/dist/runtime/channels/source-spot-router.js +2 -4
  126. package/dist/runtime/channels/spot-direct-envelope.d.ts +1 -0
  127. package/dist/runtime/channels/spot-direct-envelope.js +4 -3
  128. package/dist/runtime/channels/spot-node-route-transport.d.ts +1 -1
  129. package/dist/runtime/channels/spot-node-route-transport.js +5 -5
  130. package/dist/runtime/channels/spot-route-bridge-transport.d.ts +1 -1
  131. package/dist/runtime/channels/spot-route-bridge-transport.js +2 -2
  132. package/dist/runtime/channels/spot-route-dispatch-strategy.d.ts +2 -4
  133. package/dist/runtime/channels/spot-route-dispatch-strategy.js +11 -12
  134. package/dist/runtime/diagnostics/diagnostic-text.d.ts +2 -0
  135. package/dist/runtime/diagnostics/diagnostic-text.js +7 -0
  136. package/dist/runtime/diagnostics/dispatch-error-details.d.ts +3 -0
  137. package/dist/runtime/diagnostics/dispatch-error-details.js +30 -2
  138. package/dist/runtime/diagnostics/flow-context.d.ts +6 -0
  139. package/dist/runtime/diagnostics/flow-context.js +16 -2
  140. package/dist/runtime/diagnostics/index.d.ts +4 -2
  141. package/dist/runtime/diagnostics/index.js +14 -4
  142. package/dist/runtime/diagnostics/message-flow.d.ts +1 -1
  143. package/dist/runtime/diagnostics/message-flow.js +10 -19
  144. package/dist/runtime/diagnostics/runtime-metrics.d.ts +94 -31
  145. package/dist/runtime/diagnostics/runtime-metrics.js +168 -105
  146. package/dist/runtime/diagnostics/runtime-observation-queue.js +3 -2
  147. package/dist/runtime/diagnostics/topology-runtime-projections.d.ts +2 -4
  148. package/dist/runtime/diagnostics/topology-runtime-projections.js +135 -154
  149. package/dist/runtime/disposal.d.ts +5 -0
  150. package/dist/runtime/disposal.js +22 -0
  151. package/dist/runtime/execution/index.d.ts +12 -9
  152. package/dist/runtime/execution/index.js +58 -14
  153. package/dist/runtime/execution/serial-execution-queue.d.ts +8 -2
  154. package/dist/runtime/execution/serial-execution-queue.js +54 -15
  155. package/dist/runtime/execution/state-lane.d.ts +8 -1
  156. package/dist/runtime/execution/state-lane.js +118 -3
  157. package/dist/runtime/foundation/actor-join-recovery-codec.d.ts +3 -0
  158. package/dist/runtime/foundation/actor-join-recovery-codec.js +15 -11
  159. package/dist/runtime/foundation/event-loop-resources.d.ts +2 -24
  160. package/dist/runtime/foundation/event-loop-resources.js +6 -119
  161. package/dist/runtime/foundation/operation-identity.d.ts +2 -0
  162. package/dist/runtime/foundation/operation-identity.js +9 -5
  163. package/dist/runtime/foundation/operation-registry.d.ts +5 -7
  164. package/dist/runtime/foundation/operation-registry.js +34 -44
  165. package/dist/runtime/foundation/raw-service-mesh-runtime.d.ts +8 -5
  166. package/dist/runtime/foundation/raw-service-mesh-runtime.js +79 -94
  167. package/dist/runtime/foundation/runtime-state-projections.d.ts +3 -1
  168. package/dist/runtime/foundation/runtime-state-projections.js +8 -0
  169. package/dist/runtime/foundation/service-authority-payload-codec.js +22 -12
  170. package/dist/runtime/foundation/service-discovery-registry.d.ts +4 -0
  171. package/dist/runtime/foundation/service-discovery-registry.js +22 -3
  172. package/dist/runtime/foundation/service-instance-activation-recovery-codec.js +8 -4
  173. package/dist/runtime/foundation/service-liveness-registry.js +2 -1
  174. package/dist/runtime/foundation/service-maintenance-runtime.d.ts +0 -1
  175. package/dist/runtime/foundation/service-maintenance-runtime.js +0 -6
  176. package/dist/runtime/foundation/service-metadata-codec.js +3 -3
  177. package/dist/runtime/foundation/service-relocation-aggregate-committer.d.ts +2 -5
  178. package/dist/runtime/foundation/service-relocation-aggregate-committer.js +1 -48
  179. package/dist/runtime/foundation/service-relocation-object-owner.js +3 -2
  180. package/dist/runtime/foundation/service-relocation-runtime.js +43 -32
  181. package/dist/runtime/foundation/service-runtime-contracts.d.ts +40 -8
  182. package/dist/runtime/foundation/service-runtime-contracts.js +25 -1
  183. package/dist/runtime/foundation/service-session-binding-ingress-port.d.ts +0 -12
  184. package/dist/runtime/foundation/service-stateful-registry.d.ts +2 -0
  185. package/dist/runtime/foundation/service-stateful-registry.js +10 -2
  186. package/dist/runtime/foundation/service-stateful-runtime.d.ts +26 -25
  187. package/dist/runtime/foundation/service-stateful-runtime.js +217 -204
  188. package/dist/runtime/foundation/service-stateful-wire-codec.d.ts +3 -3
  189. package/dist/runtime/foundation/service-stateful-wire-codec.js +89 -55
  190. package/dist/runtime/foundation/service-topology-registry.d.ts +0 -1
  191. package/dist/runtime/foundation/service-topology-registry.js +17 -32
  192. package/dist/runtime/foundation/service-wire-binary-primitives.d.ts +5 -0
  193. package/dist/runtime/foundation/service-wire-binary-primitives.js +6 -0
  194. package/dist/runtime/foundation/service-wire-codec.js +10 -8
  195. package/dist/runtime/foundation/service-wire-constants.generated.d.ts +1 -0
  196. package/dist/runtime/foundation/service-wire-constants.generated.js +2 -1
  197. package/dist/runtime/foundation/service-wire-m6a-codec.d.ts +2 -0
  198. package/dist/runtime/foundation/service-wire-m6a-codec.js +23 -13
  199. package/dist/runtime/framework-errors-internal.d.ts +2 -1
  200. package/dist/runtime/framework-errors-internal.js +343 -122
  201. package/dist/runtime/handlers/handler-instance-scope.d.ts +3 -1
  202. package/dist/runtime/handlers/handler-instance-scope.js +61 -74
  203. package/dist/runtime/host/actor-packet-relay.d.ts +11 -8
  204. package/dist/runtime/host/actor-packet-relay.js +54 -99
  205. package/dist/runtime/host/actor-placement-coordinator.js +7 -5
  206. package/dist/runtime/host/actor-runtime-options-factory.d.ts +2 -0
  207. package/dist/runtime/host/actor-runtime-options-factory.js +17 -4
  208. package/dist/runtime/host/actor-transfer-runtime.d.ts +16 -18
  209. package/dist/runtime/host/actor-transfer-runtime.js +143 -176
  210. package/dist/runtime/host/application-job-queue.js +16 -33
  211. package/dist/runtime/host/bound-session-relay.js +1 -1
  212. package/dist/runtime/host/channel-runtime-options-factory.js +1 -1
  213. package/dist/runtime/host/index.d.ts +14 -13
  214. package/dist/runtime/host/index.js +190 -171
  215. package/dist/runtime/host/instance-activation-authority.d.ts +2 -3
  216. package/dist/runtime/host/instance-activation-authority.js +17 -45
  217. package/dist/runtime/host/location-runtime-owner.d.ts +1 -1
  218. package/dist/runtime/host/location-runtime-owner.js +2 -2
  219. package/dist/runtime/host/remote-actor-join-receiver.d.ts +2 -2
  220. package/dist/runtime/host/remote-actor-join-receiver.js +1 -14
  221. package/dist/runtime/host/remote-actor-packet-target-store.d.ts +3 -2
  222. package/dist/runtime/host/remote-actor-packet-target-store.js +8 -47
  223. package/dist/runtime/host/remote-bound-session-relay.d.ts +2 -3
  224. package/dist/runtime/host/remote-bound-session-relay.js +15 -28
  225. package/dist/runtime/host/route-mesh-runtime.d.ts +13 -11
  226. package/dist/runtime/host/route-mesh-runtime.js +171 -252
  227. package/dist/runtime/host/runtime-shutdown.d.ts +2 -0
  228. package/dist/runtime/host/runtime-shutdown.js +18 -21
  229. package/dist/runtime/host/service-relocation-control.js +6 -1
  230. package/dist/runtime/host/service-relocation-host-runtime.d.ts +21 -30
  231. package/dist/runtime/host/service-relocation-host-runtime.js +508 -416
  232. package/dist/runtime/host/spot-address-transport.d.ts +3 -12
  233. package/dist/runtime/host/spot-address-transport.js +78 -220
  234. package/dist/runtime/host/spot-node-runtime-options-factory.d.ts +1 -1
  235. package/dist/runtime/host/spot-node-runtime-options-factory.js +3 -2
  236. package/dist/runtime/host/spot-runtime-options-factory.d.ts +4 -10
  237. package/dist/runtime/host/spot-runtime-options-factory.js +50 -14
  238. package/dist/runtime/host/user-spot-creation-coordinator.d.ts +3 -3
  239. package/dist/runtime/host/user-spot-creation-coordinator.js +11 -8
  240. package/dist/runtime/locations/aggregate-inventory-store.js +13 -10
  241. package/dist/runtime/locations/authority-key-codec.js +4 -3
  242. package/dist/runtime/locations/auto-connect-reconciler.d.ts +4 -0
  243. package/dist/runtime/locations/auto-connect-reconciler.js +37 -25
  244. package/dist/runtime/locations/creation-operation-id.js +6 -4
  245. package/dist/runtime/locations/domain-store-contract.d.ts +3 -3
  246. package/dist/runtime/locations/in-memory-authority-store.js +31 -15
  247. package/dist/runtime/locations/in-memory-location-store.d.ts +2 -2
  248. package/dist/runtime/locations/in-memory-location-store.js +17 -14
  249. package/dist/runtime/locations/in-memory-provider-location-store.d.ts +1 -0
  250. package/dist/runtime/locations/in-memory-provider-location-store.js +72 -22
  251. package/dist/runtime/locations/key-codec.js +3 -2
  252. package/dist/runtime/locations/lease-tracker.d.ts +3 -5
  253. package/dist/runtime/locations/lease-tracker.js +7 -11
  254. package/dist/runtime/locations/lifecycle.d.ts +4 -9
  255. package/dist/runtime/locations/lifecycle.js +2 -31
  256. package/dist/runtime/locations/location-store-failure.d.ts +2 -0
  257. package/dist/runtime/locations/location-store-failure.js +7 -0
  258. package/dist/runtime/locations/location-store-pages.d.ts +3 -0
  259. package/dist/runtime/locations/location-store-pages.js +13 -0
  260. package/dist/runtime/locations/location-store-repository.d.ts +5 -7
  261. package/dist/runtime/locations/location-store-repository.js +309 -336
  262. package/dist/runtime/locations/relocation-blob.js +18 -5
  263. package/dist/runtime/locations/resolvers.d.ts +5 -5
  264. package/dist/runtime/locations/resolvers.js +37 -28
  265. package/dist/runtime/locations/runtime.d.ts +5 -4
  266. package/dist/runtime/locations/runtime.js +123 -92
  267. package/dist/runtime/locations/spot-location-claims.d.ts +6 -0
  268. package/dist/runtime/locations/spot-location-claims.js +42 -1
  269. package/dist/runtime/messaging/payload-codec.js +26 -20
  270. package/dist/runtime/messaging/request-deadline.d.ts +3 -0
  271. package/dist/runtime/messaging/request-deadline.js +39 -0
  272. package/dist/runtime/messaging/submission-result.d.ts +4 -0
  273. package/dist/runtime/messaging/submission-result.js +56 -1
  274. package/dist/runtime/protocol/service_wire_codec.generated.d.ts +1 -0
  275. package/dist/runtime/protocol/service_wire_codec.generated.js +12 -7
  276. package/dist/runtime/spots/formal-remote-actor-transfer-registry.d.ts +4 -1
  277. package/dist/runtime/spots/index.d.ts +14 -20
  278. package/dist/runtime/spots/index.js +302 -176
  279. package/dist/runtime/spots/spot-activation-registry.d.ts +3 -5
  280. package/dist/runtime/spots/spot-activation-registry.js +14 -50
  281. package/dist/runtime/spots/spot-activation-state.d.ts +1 -1
  282. package/dist/runtime/spots/spot-activation-state.js +2 -2
  283. package/dist/runtime/spots/spot-activation.d.ts +3 -4
  284. package/dist/runtime/spots/spot-activation.js +49 -32
  285. package/dist/runtime/spots/spot-actor-admission-coordinator.d.ts +1 -2
  286. package/dist/runtime/spots/spot-actor-admission-coordinator.js +3 -40
  287. package/dist/runtime/spots/spot-actor-join-dispatch.d.ts +10 -18
  288. package/dist/runtime/spots/spot-actor-join-dispatch.js +4 -52
  289. package/dist/runtime/spots/spot-actor-membership.d.ts +4 -6
  290. package/dist/runtime/spots/spot-actor-membership.js +22 -45
  291. package/dist/runtime/spots/spot-actor-packet-dispatch.d.ts +0 -1
  292. package/dist/runtime/spots/spot-actor-packet-dispatch.js +0 -9
  293. package/dist/runtime/spots/spot-actor-packet-relay-dispatch.d.ts +2 -2
  294. package/dist/runtime/spots/spot-actor-packet-relay-dispatch.js +1 -7
  295. package/dist/runtime/spots/spot-context.d.ts +2 -2
  296. package/dist/runtime/spots/spot-entry-activation.d.ts +2 -2
  297. package/dist/runtime/spots/spot-entry-activation.js +9 -20
  298. package/dist/runtime/spots/spot-lifecycle-metrics.js +3 -2
  299. package/dist/runtime/spots/spot-manager-public.d.ts +5 -6
  300. package/dist/runtime/spots/spot-manager-public.js +5 -4
  301. package/dist/runtime/spots/spot-node-autoconnect.js +22 -31
  302. package/dist/runtime/spots/spot-node-runtime-manager.d.ts +19 -18
  303. package/dist/runtime/spots/spot-node-runtime-manager.js +67 -72
  304. package/dist/runtime/spots/spot-outbound.d.ts +7 -8
  305. package/dist/runtime/spots/spot-outbound.js +21 -23
  306. package/dist/runtime/spots/spot-remote-codec.js +5 -3
  307. package/dist/runtime/spots/spot-route-packet-dispatch.d.ts +2 -2
  308. package/dist/runtime/spots/spot-route-packet-dispatch.js +8 -8
  309. package/dist/runtime/spots/spot-route-replies.d.ts +2 -2
  310. package/dist/runtime/spots/spot-route-replies.js +3 -1
  311. package/dist/runtime/spots/spot-routed-actor-admission.d.ts +3 -3
  312. package/dist/runtime/spots/spot-routed-actor-admission.js +3 -12
  313. package/dist/runtime/spots/spot-routed-frame-dispatch.d.ts +1 -2
  314. package/dist/runtime/spots/spot-routed-frame-dispatch.js +0 -1
  315. package/dist/runtime/spots/spot-routed-spot-packet-dispatch.d.ts +4 -0
  316. package/dist/runtime/spots/spot-routed-spot-packet-dispatch.js +65 -15
  317. package/dist/runtime/spots/spot-runtime-ports.d.ts +2 -16
  318. package/dist/runtime/spots/spot-serial-executor.js +2 -2
  319. package/dist/runtime/spots/spot-serial-turn-executor.d.ts +27 -7
  320. package/dist/runtime/spots/spot-serial-turn-executor.js +83 -11
  321. package/dist/runtime/spots/spot-timer.d.ts +3 -2
  322. package/dist/runtime/streams/actor-session-binding-registry.d.ts +16 -29
  323. package/dist/runtime/streams/actor-session-binding-registry.js +142 -212
  324. package/dist/runtime/streams/actor-session-binding-runtime-owner.d.ts +1 -4
  325. package/dist/runtime/streams/bound-actor-relay-sender.d.ts +8 -4
  326. package/dist/runtime/streams/bound-actor-relay-sender.js +65 -41
  327. package/dist/runtime/streams/bound-session-service.d.ts +7 -0
  328. package/dist/runtime/streams/bound-session-service.js +12 -2
  329. package/dist/runtime/streams/index.d.ts +16 -17
  330. package/dist/runtime/streams/index.js +22 -23
  331. package/dist/runtime/streams/managed-stream.d.ts +5 -2
  332. package/dist/runtime/streams/managed-stream.js +20 -13
  333. package/dist/runtime/streams/native-fallback-bound-session.js +14 -19
  334. package/dist/runtime/streams/protocol.d.ts +6 -33
  335. package/dist/runtime/streams/protocol.js +38 -110
  336. package/dist/runtime/streams/session-actor-coordinator.d.ts +2 -3
  337. package/dist/runtime/streams/session-actor-coordinator.js +12 -4
  338. package/dist/runtime/streams/session-calls.d.ts +6 -8
  339. package/dist/runtime/streams/session-calls.js +6 -22
  340. package/dist/runtime/streams/session-context.d.ts +10 -10
  341. package/dist/runtime/streams/session-context.js +25 -10
  342. package/dist/runtime/streams/session-requests.js +2 -1
  343. package/dist/runtime/streams/stream-binding-runtime-ports.d.ts +16 -1
  344. package/dist/runtime/streams/stream-frame-factory.js +2 -2
  345. package/dist/runtime/streams/stream-session-runtime.d.ts +10 -11
  346. package/dist/runtime/streams/stream-session-runtime.js +25 -33
  347. package/dist/runtime/workers/index.d.ts +2 -2
  348. package/dist/runtime/workers/index.js +5 -4
  349. package/package.json +3 -3
  350. package/src/contracts/Actors/ZLinkActorClient.ts +1 -1
  351. package/src/contracts/Channels/Calls.ts +1 -1
  352. package/src/contracts/Common/CoreTypes.ts +7 -0
  353. package/src/contracts/Common/index.ts +1 -1
  354. package/src/contracts/Configuration/Builders.ts +0 -1
  355. package/src/contracts/Configuration/Configs.ts +0 -1
  356. package/src/contracts/Configuration/InternalDefaults.ts +12 -0
  357. package/src/contracts/Configuration/Registration.ts +92 -48
  358. package/src/contracts/Configuration/RegistrationBuilderPolicy.ts +44 -2
  359. package/src/contracts/Configuration/RegistrationBuilders.ts +77 -71
  360. package/src/contracts/Configuration/RegistrationTypes.ts +1 -5
  361. package/src/contracts/Configuration/RegistrationValidators.ts +19 -17
  362. package/src/contracts/Configuration/TimerRegistrationValidator.ts +4 -2
  363. package/src/contracts/Dispatch/ZLinkDispatchOptions.ts +1 -0
  364. package/src/contracts/Handlers/JsonContract.ts +14 -4
  365. package/src/contracts/Locations/Authority.ts +7 -3
  366. package/src/contracts/Locations/Options.ts +1 -1
  367. package/src/contracts/Locations/Stores.ts +14 -0
  368. package/src/contracts/Spots/Contracts.ts +2 -2
  369. package/src/contracts/Streams/BoundSessionContracts.ts +1 -1
  370. package/src/contracts/Streams/IZLinkSession.ts +2 -3
  371. package/src/contracts/Streams/IZLinkSessionActor.ts +2 -6
  372. package/src/internal.ts +14 -0
  373. package/src/nest-integration.ts +28 -10
  374. package/src/runtime/abort.ts +6 -5
  375. package/src/runtime/activation-admission.ts +2 -8
  376. package/src/runtime/actors/actor-authority-payload-codec.ts +58 -20
  377. package/src/runtime/actors/actor-client.ts +85 -218
  378. package/src/runtime/actors/actor-context.ts +39 -33
  379. package/src/runtime/actors/actor-handoff.ts +24 -22
  380. package/src/runtime/actors/actor-lifecycle-snapshot.ts +2 -1
  381. package/src/runtime/actors/actor-local-native-join.ts +172 -174
  382. package/src/runtime/actors/actor-native-lookup.ts +2 -9
  383. package/src/runtime/actors/actor-packet-relay-wire.ts +18 -12
  384. package/src/runtime/actors/actor-remote-joiner.ts +9 -11
  385. package/src/runtime/actors/actor-remote-wire.ts +5 -3
  386. package/src/runtime/actors/actor-request-deadline.ts +4 -0
  387. package/src/runtime/actors/actor-retry-delay.ts +2 -1
  388. package/src/runtime/actors/actor-routed-join-transport.ts +3 -5
  389. package/src/runtime/actors/actor-runtime-state.ts +85 -247
  390. package/src/runtime/actors/bound-session-wire.ts +2 -8
  391. package/src/runtime/actors/deferred-join-completion.ts +10 -6
  392. package/src/runtime/actors/index.ts +100 -79
  393. package/src/runtime/actors/spot-actor-dispatch.ts +60 -29
  394. package/src/runtime/actors/transferred-actor-rollback.ts +11 -62
  395. package/src/runtime/admission.ts +8 -1
  396. package/src/runtime/application-jobs/application-job-queue-scope.ts +4 -4
  397. package/src/runtime/backend/contracts/index.ts +14 -37
  398. package/src/runtime/backend/mesh-actor-session-node-adapter.ts +2 -18
  399. package/src/runtime/backend/mesh-dispatch-pump.ts +111 -117
  400. package/src/runtime/backend/node/node-backend-adapter-support.ts +67 -10
  401. package/src/runtime/backend/node/node-dealer-channel-client-transport.ts +0 -2
  402. package/src/runtime/backend/node/node-event-loop-poller.ts +8 -12
  403. package/src/runtime/backend/node/node-monitor-backend-adapter.ts +1 -0
  404. package/src/runtime/backend/node/node-raw-binding-port.ts +44 -49
  405. package/src/runtime/backend/node/node-raw-mesh-backend.ts +227 -170
  406. package/src/runtime/backend/node/node-socket-backend-adapter.ts +4 -3
  407. package/src/runtime/backend/raw-binding-port.ts +1 -1
  408. package/src/runtime/backend/runtime-values.ts +4 -1
  409. package/src/runtime/channels/channel-clients.ts +139 -102
  410. package/src/runtime/channels/channel-envelope-inspection.ts +2 -1
  411. package/src/runtime/channels/channel-envelope.ts +74 -57
  412. package/src/runtime/channels/channel-outbound-operations.ts +40 -55
  413. package/src/runtime/channels/channel-receive-loops.ts +39 -7
  414. package/src/runtime/channels/channel-runtime-lifecycle.ts +60 -27
  415. package/src/runtime/channels/channel-runtime-manager.ts +12 -30
  416. package/src/runtime/channels/channel-socket-options.ts +8 -15
  417. package/src/runtime/channels/channel-socket-registry.ts +291 -196
  418. package/src/runtime/channels/channel-transports.ts +168 -145
  419. package/src/runtime/channels/client-server-location-runtime.ts +17 -17
  420. package/src/runtime/channels/client-server-service-wire.ts +40 -12
  421. package/src/runtime/channels/dispatch-error-reporter.ts +7 -5
  422. package/src/runtime/channels/fanout-location-runtime.ts +172 -91
  423. package/src/runtime/channels/local-spot-route-transport.ts +1 -5
  424. package/src/runtime/channels/router-socket-spot-route-transport.ts +2 -6
  425. package/src/runtime/channels/source-spot-router.ts +2 -9
  426. package/src/runtime/channels/spot-direct-envelope.ts +1 -1
  427. package/src/runtime/channels/spot-node-route-transport.ts +7 -9
  428. package/src/runtime/channels/spot-route-bridge-transport.ts +5 -12
  429. package/src/runtime/channels/spot-route-dispatch-strategy.ts +11 -30
  430. package/src/runtime/diagnostics/diagnostic-text.ts +4 -0
  431. package/src/runtime/diagnostics/dispatch-error-details.ts +36 -1
  432. package/src/runtime/diagnostics/flow-context.ts +16 -2
  433. package/src/runtime/diagnostics/index.ts +27 -17
  434. package/src/runtime/diagnostics/message-flow.ts +15 -25
  435. package/src/runtime/diagnostics/runtime-metrics.ts +181 -113
  436. package/src/runtime/diagnostics/runtime-observation-queue.ts +3 -2
  437. package/src/runtime/diagnostics/topology-runtime-projections.ts +194 -162
  438. package/src/runtime/disposal.ts +19 -0
  439. package/src/runtime/execution/index.ts +60 -20
  440. package/src/runtime/execution/serial-execution-queue.ts +131 -18
  441. package/src/runtime/execution/state-lane.ts +142 -4
  442. package/src/runtime/foundation/actor-join-recovery-codec.ts +13 -8
  443. package/src/runtime/foundation/event-loop-resources.ts +5 -122
  444. package/src/runtime/foundation/operation-identity.ts +11 -5
  445. package/src/runtime/foundation/operation-registry.ts +33 -50
  446. package/src/runtime/foundation/raw-service-mesh-runtime.ts +127 -125
  447. package/src/runtime/foundation/runtime-state-projections.ts +9 -1
  448. package/src/runtime/foundation/service-authority-payload-codec.ts +31 -13
  449. package/src/runtime/foundation/service-discovery-registry.ts +32 -3
  450. package/src/runtime/foundation/service-instance-activation-recovery-codec.ts +12 -4
  451. package/src/runtime/foundation/service-liveness-registry.ts +2 -1
  452. package/src/runtime/foundation/service-maintenance-runtime.ts +0 -10
  453. package/src/runtime/foundation/service-metadata-codec.ts +2 -2
  454. package/src/runtime/foundation/service-relocation-aggregate-committer.ts +3 -66
  455. package/src/runtime/foundation/service-relocation-object-owner.ts +5 -2
  456. package/src/runtime/foundation/service-relocation-runtime.ts +57 -35
  457. package/src/runtime/foundation/service-runtime-contracts.ts +46 -10
  458. package/src/runtime/foundation/service-session-binding-ingress-port.ts +0 -17
  459. package/src/runtime/foundation/service-stateful-registry.ts +14 -2
  460. package/src/runtime/foundation/service-stateful-runtime.ts +322 -276
  461. package/src/runtime/foundation/service-stateful-wire-codec.ts +128 -80
  462. package/src/runtime/foundation/service-topology-registry.ts +23 -32
  463. package/src/runtime/foundation/service-wire-binary-primitives.ts +6 -0
  464. package/src/runtime/foundation/service-wire-codec.ts +15 -8
  465. package/src/runtime/foundation/service-wire-constants.generated.ts +1 -0
  466. package/src/runtime/foundation/service-wire-m6a-codec.ts +29 -15
  467. package/src/runtime/framework-errors-internal.ts +380 -134
  468. package/src/runtime/handlers/handler-instance-scope.ts +68 -95
  469. package/src/runtime/host/actor-packet-relay.ts +63 -160
  470. package/src/runtime/host/actor-placement-coordinator.ts +8 -5
  471. package/src/runtime/host/actor-runtime-options-factory.ts +27 -8
  472. package/src/runtime/host/actor-transfer-runtime.ts +180 -260
  473. package/src/runtime/host/application-job-queue.ts +28 -34
  474. package/src/runtime/host/bound-session-relay.ts +1 -2
  475. package/src/runtime/host/channel-runtime-options-factory.ts +1 -2
  476. package/src/runtime/host/index.ts +327 -320
  477. package/src/runtime/host/instance-activation-authority.ts +89 -109
  478. package/src/runtime/host/location-runtime-owner.ts +4 -2
  479. package/src/runtime/host/remote-actor-join-receiver.ts +3 -31
  480. package/src/runtime/host/remote-actor-packet-target-store.ts +17 -58
  481. package/src/runtime/host/remote-bound-session-relay.ts +16 -57
  482. package/src/runtime/host/route-mesh-runtime.ts +228 -271
  483. package/src/runtime/host/runtime-shutdown.ts +17 -21
  484. package/src/runtime/host/service-relocation-control.ts +14 -1
  485. package/src/runtime/host/service-relocation-host-runtime.ts +699 -561
  486. package/src/runtime/host/spot-address-transport.ts +175 -356
  487. package/src/runtime/host/spot-node-runtime-options-factory.ts +6 -3
  488. package/src/runtime/host/spot-runtime-options-factory.ts +73 -22
  489. package/src/runtime/host/user-spot-creation-coordinator.ts +36 -22
  490. package/src/runtime/locations/aggregate-inventory-store.ts +16 -13
  491. package/src/runtime/locations/authority-key-codec.ts +7 -3
  492. package/src/runtime/locations/auto-connect-reconciler.ts +39 -26
  493. package/src/runtime/locations/creation-operation-id.ts +6 -3
  494. package/src/runtime/locations/domain-store-contract.ts +12 -3
  495. package/src/runtime/locations/in-memory-authority-store.ts +44 -15
  496. package/src/runtime/locations/in-memory-location-store.ts +50 -39
  497. package/src/runtime/locations/in-memory-provider-location-store.ts +100 -25
  498. package/src/runtime/locations/key-codec.ts +3 -2
  499. package/src/runtime/locations/lease-tracker.ts +8 -14
  500. package/src/runtime/locations/lifecycle.ts +13 -43
  501. package/src/runtime/locations/location-store-failure.ts +4 -0
  502. package/src/runtime/locations/location-store-pages.ts +18 -0
  503. package/src/runtime/locations/location-store-repository.ts +457 -482
  504. package/src/runtime/locations/relocation-blob.ts +17 -6
  505. package/src/runtime/locations/resolvers.ts +75 -49
  506. package/src/runtime/locations/runtime.ts +220 -110
  507. package/src/runtime/locations/spot-location-claims.ts +58 -1
  508. package/src/runtime/messaging/payload-codec.ts +35 -24
  509. package/src/runtime/messaging/request-deadline.ts +58 -0
  510. package/src/runtime/messaging/submission-result.ts +72 -2
  511. package/src/runtime/protocol/service_wire_codec.generated.ts +18 -8
  512. package/src/runtime/protocol/service_wire_pilot_codec.generated.ts +1 -1
  513. package/src/runtime/spots/formal-remote-actor-transfer-registry.ts +4 -1
  514. package/src/runtime/spots/index.ts +433 -229
  515. package/src/runtime/spots/spot-activation-registry.ts +30 -69
  516. package/src/runtime/spots/spot-activation-state.ts +2 -2
  517. package/src/runtime/spots/spot-activation.ts +67 -37
  518. package/src/runtime/spots/spot-actor-admission-coordinator.ts +5 -57
  519. package/src/runtime/spots/spot-actor-join-dispatch.ts +24 -77
  520. package/src/runtime/spots/spot-actor-membership.ts +40 -72
  521. package/src/runtime/spots/spot-actor-packet-dispatch.ts +0 -16
  522. package/src/runtime/spots/spot-actor-packet-relay-dispatch.ts +3 -15
  523. package/src/runtime/spots/spot-context.ts +3 -3
  524. package/src/runtime/spots/spot-entry-activation.ts +13 -30
  525. package/src/runtime/spots/spot-lifecycle-metrics.ts +3 -2
  526. package/src/runtime/spots/spot-manager-public.ts +21 -17
  527. package/src/runtime/spots/spot-node-autoconnect.ts +20 -26
  528. package/src/runtime/spots/spot-node-runtime-manager.ts +136 -125
  529. package/src/runtime/spots/spot-outbound.ts +59 -47
  530. package/src/runtime/spots/spot-remote-codec.ts +7 -3
  531. package/src/runtime/spots/spot-route-packet-dispatch.ts +25 -24
  532. package/src/runtime/spots/spot-route-replies.ts +6 -4
  533. package/src/runtime/spots/spot-routed-actor-admission.ts +13 -26
  534. package/src/runtime/spots/spot-routed-frame-dispatch.ts +2 -3
  535. package/src/runtime/spots/spot-routed-spot-packet-dispatch.ts +95 -22
  536. package/src/runtime/spots/spot-runtime-ports.ts +5 -27
  537. package/src/runtime/spots/spot-serial-executor.ts +2 -2
  538. package/src/runtime/spots/spot-serial-turn-executor.ts +112 -11
  539. package/src/runtime/spots/spot-timer.ts +3 -2
  540. package/src/runtime/streams/actor-session-binding-registry.ts +179 -269
  541. package/src/runtime/streams/actor-session-binding-runtime-owner.ts +0 -8
  542. package/src/runtime/streams/bound-actor-relay-sender.ts +98 -66
  543. package/src/runtime/streams/bound-session-service.ts +22 -2
  544. package/src/runtime/streams/index.ts +78 -68
  545. package/src/runtime/streams/managed-stream.ts +32 -23
  546. package/src/runtime/streams/native-fallback-bound-session.ts +14 -28
  547. package/src/runtime/streams/protocol.ts +34 -88
  548. package/src/runtime/streams/session-actor-coordinator.ts +17 -5
  549. package/src/runtime/streams/session-calls.ts +11 -36
  550. package/src/runtime/streams/session-context.ts +60 -25
  551. package/src/runtime/streams/session-requests.ts +2 -1
  552. package/src/runtime/streams/stream-binding-runtime-ports.ts +22 -1
  553. package/src/runtime/streams/stream-frame-factory.ts +2 -3
  554. package/src/runtime/streams/stream-session-runtime.ts +57 -59
  555. package/src/runtime/workers/index.ts +13 -12
  556. package/dist/runtime/actors/post-commit-actor-location.d.ts +0 -19
  557. package/dist/runtime/actors/post-commit-actor-location.js +0 -72
  558. package/dist/runtime/spots/spot-native-actor-join-admission.d.ts +0 -26
  559. package/dist/runtime/spots/spot-native-actor-join-admission.js +0 -106
  560. package/src/runtime/actors/post-commit-actor-location.ts +0 -121
  561. package/src/runtime/spots/spot-native-actor-join-admission.ts +0 -155
@@ -5,7 +5,7 @@ export interface ZLinkActorClient {
5
5
  }
6
6
  export interface ZLinkActorSendCall {
7
7
  metadata(key: string, value: string): this;
8
- submit(signal?: AbortSignal): Promise<void>;
8
+ submit(): Promise<void>;
9
9
  }
10
10
  export interface ZLinkActorRequestCall {
11
11
  metadata(key: string, value: string): this;
@@ -2,7 +2,7 @@ import type { ZLinkMessageMetadata } from '../Common';
2
2
  export interface ZLinkSendCall {
3
3
  metadata(key: string, value: string): this;
4
4
  metadata(metadata: ZLinkMessageMetadata): this;
5
- submit(signal?: AbortSignal): Promise<void>;
5
+ submit(): Promise<void>;
6
6
  }
7
7
  export interface ZLinkRequestCall {
8
8
  metadata(key: string, value: string): this;
@@ -4,3 +4,9 @@ export type RoutingId = string;
4
4
  export type ActorId = string;
5
5
  /** Global logical Spot identity. It is not a transport RoutingId. */
6
6
  export type SpotId = string;
7
+ export declare const ZLINK_MAX_ACTOR_ID_BYTES = 255;
8
+ export declare const ZLINK_MAX_SPOT_ID_BYTES = 255;
9
+ export declare const ZLINK_MAX_ROUTING_ID_BYTES = 255;
10
+ export declare const ZLINK_MAX_STABLE_TYPE_BYTES = 255;
11
+ export declare const ZLINK_MAX_MESH_NAME_BYTES = 255;
12
+ export declare const ZLINK_MAX_IDENTITY_TEXT_BYTES = 255;
@@ -1,2 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ZLINK_MAX_IDENTITY_TEXT_BYTES = exports.ZLINK_MAX_MESH_NAME_BYTES = exports.ZLINK_MAX_STABLE_TYPE_BYTES = exports.ZLINK_MAX_ROUTING_ID_BYTES = exports.ZLINK_MAX_SPOT_ID_BYTES = exports.ZLINK_MAX_ACTOR_ID_BYTES = void 0;
4
+ exports.ZLINK_MAX_ACTOR_ID_BYTES = 255;
5
+ exports.ZLINK_MAX_SPOT_ID_BYTES = 255;
6
+ exports.ZLINK_MAX_ROUTING_ID_BYTES = 255;
7
+ exports.ZLINK_MAX_STABLE_TYPE_BYTES = 255;
8
+ exports.ZLINK_MAX_MESH_NAME_BYTES = 255;
9
+ exports.ZLINK_MAX_IDENTITY_TEXT_BYTES = 255;
@@ -1,5 +1,5 @@
1
1
  export * from './ActorRef';
2
- export * from './CoreTypes';
2
+ export type { Type, RoutingId, ActorId, SpotId } from './CoreTypes';
3
3
  export * from './ZLinkEncodedPayload';
4
4
  export * from './ZLinkMessageMetadata';
5
5
  export { ZLinkMessage, isZLinkMessage } from './ZLinkMessage';
@@ -16,7 +16,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  exports.isZLinkMessage = exports.ZLinkMessage = void 0;
18
18
  __exportStar(require("./ActorRef"), exports);
19
- __exportStar(require("./CoreTypes"), exports);
20
19
  __exportStar(require("./ZLinkEncodedPayload"), exports);
21
20
  __exportStar(require("./ZLinkMessageMetadata"), exports);
22
21
  var ZLinkMessage_1 = require("./ZLinkMessage");
@@ -78,7 +78,6 @@ export interface ZLinkMeshNodeSocketConfig {
78
78
  sendHighWaterMark: number;
79
79
  receiveHighWaterMark: number;
80
80
  receiveTimeoutMs?: number;
81
- sendTimeoutMs?: number;
82
81
  }
83
82
  export interface ZLinkStreamSocketConfig {
84
83
  maxMessageSize: number;
@@ -7,7 +7,6 @@ export interface ZLinkSocketConfig {
7
7
  sendHighWaterMark?: number;
8
8
  receiveHighWaterMark?: number;
9
9
  receiveTimeoutMs?: number;
10
- sendTimeoutMs?: number;
11
10
  }
12
11
  export interface ZLinkRouteConfig {
13
12
  channelName: string;
@@ -1,6 +1,14 @@
1
1
  /** Default complete header plus payload size accepted by a StreamNode. */
2
2
  export declare const DEFAULT_STREAM_NODE_MAX_MESSAGE_SIZE: number;
3
+ /** service-wire 스키마가 정한 relocation chunk payload의 바이트 상한입니다. */
4
+ export declare const RELOCATION_STATE_CHUNK_DATA_MAX_BYTES = 67108864;
5
+ /** Default MeshNode pending activation limit (spec 03-mesh-node §5.1). */
6
+ export declare const DEFAULT_ACTIVATION_CONCURRENCY_LIMIT = 128;
3
7
  /** Defaults shared by registration normalization and the runtime worker pool. */
4
8
  export declare const DEFAULT_WORKER_MIN_THREADS = 0;
5
9
  export declare const DEFAULT_WORKER_IDLE_TIMEOUT_MS = 30000;
6
10
  export declare function defaultWorkerMaxThreads(): number;
11
+ export declare const ZLINK_RELOCATION_MAX_BLOB_REFERENCE_BYTES = 4096;
12
+ export declare const AUTHORITY_ENVELOPE_MAX_BYTES: number;
13
+ export declare const CREATION_INTENT_MAX_BYTES: number;
14
+ export declare const CREATION_TERMINAL_ENVELOPE_MAX_BYTES: number;
@@ -33,14 +33,22 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.DEFAULT_WORKER_IDLE_TIMEOUT_MS = exports.DEFAULT_WORKER_MIN_THREADS = exports.DEFAULT_STREAM_NODE_MAX_MESSAGE_SIZE = void 0;
36
+ exports.CREATION_TERMINAL_ENVELOPE_MAX_BYTES = exports.CREATION_INTENT_MAX_BYTES = exports.AUTHORITY_ENVELOPE_MAX_BYTES = exports.ZLINK_RELOCATION_MAX_BLOB_REFERENCE_BYTES = exports.DEFAULT_WORKER_IDLE_TIMEOUT_MS = exports.DEFAULT_WORKER_MIN_THREADS = exports.DEFAULT_ACTIVATION_CONCURRENCY_LIMIT = exports.RELOCATION_STATE_CHUNK_DATA_MAX_BYTES = exports.DEFAULT_STREAM_NODE_MAX_MESSAGE_SIZE = void 0;
37
37
  exports.defaultWorkerMaxThreads = defaultWorkerMaxThreads;
38
38
  const os = __importStar(require("node:os"));
39
39
  /** Default complete header plus payload size accepted by a StreamNode. */
40
40
  exports.DEFAULT_STREAM_NODE_MAX_MESSAGE_SIZE = 64 * 1024;
41
+ /** service-wire 스키마가 정한 relocation chunk payload의 바이트 상한입니다. */
42
+ exports.RELOCATION_STATE_CHUNK_DATA_MAX_BYTES = 67_108_864;
43
+ /** Default MeshNode pending activation limit (spec 03-mesh-node §5.1). */
44
+ exports.DEFAULT_ACTIVATION_CONCURRENCY_LIMIT = 128;
41
45
  /** Defaults shared by registration normalization and the runtime worker pool. */
42
46
  exports.DEFAULT_WORKER_MIN_THREADS = 0;
43
47
  exports.DEFAULT_WORKER_IDLE_TIMEOUT_MS = 30_000;
44
48
  function defaultWorkerMaxThreads() {
45
49
  return Math.max(2, os.availableParallelism());
46
50
  }
51
+ exports.ZLINK_RELOCATION_MAX_BLOB_REFERENCE_BYTES = 4096;
52
+ exports.AUTHORITY_ENVELOPE_MAX_BYTES = 1024 * 1024;
53
+ exports.CREATION_INTENT_MAX_BYTES = 1024 * 1024;
54
+ exports.CREATION_TERMINAL_ENVELOPE_MAX_BYTES = 1024 * 1024;
@@ -1,11 +1,22 @@
1
1
  import type { ZLinkFrameworkOptions } from '../../contracts';
2
+ import { ZLinkApplicationJobQueueProfile } from '../Dispatch';
3
+ import type { ZLinkFrameworkRegistration, ZLinkFrameworkRegistrationOptions } from './RegistrationTypes';
4
+ import { validateFrameworkRegistration } from './RegistrationValidators';
5
+ export declare const DEFAULT_REQUEST_TIMEOUT_MS = 30000;
2
6
  export { ZLinkConfigurationException } from './ConfigurationException';
3
7
  export { createFrameworkOptions } from './RegistrationBuilders';
4
8
  export { hasActorManager, hasSpotNode, hasSpotPublisherClient, requirePositiveInteger } from './RegistrationNormalizers';
5
- import type { ZLinkFrameworkRegistration, ZLinkFrameworkRegistrationOptions } from './RegistrationTypes';
6
9
  export * from './RegistrationTypes';
7
- import { validateFrameworkRegistration } from './RegistrationValidators';
8
10
  export { validateFrameworkRegistration };
9
11
  export { normalizeEndpoint, buildAdvertisedEndpoint, parseEndpointHostPort } from './EndpointNotation';
12
+ export declare const DEFAULT_SESSION_REPLACEMENT_CALLBACK_TIMEOUT_MS = 30000;
10
13
  export declare function createFrameworkRegistration(options?: ZLinkFrameworkRegistrationOptions): ZLinkFrameworkRegistration;
14
+ export declare function normalizeFrameworkRegistration(options: ZLinkFrameworkRegistrationOptions): ZLinkFrameworkRegistration;
15
+ export declare const MAX_QUEUED_APPLICATION_JOBS = 2147483647n;
16
+ export declare const DEFAULT_PAUSE_THRESHOLD_PERCENT = 80;
17
+ export declare const DEFAULT_RESUME_THRESHOLD_PERCENT = 60;
18
+ export declare const APPLICATION_JOB_QUEUE_PERCENT_SCALE = 100;
19
+ export declare function isKnownApplicationJobQueueProfile(value: unknown): value is ZLinkApplicationJobQueueProfile;
20
+ export declare function validateApplicationJobQueueMaximum(value: bigint | undefined, createError: (message: string) => Error): void;
21
+ export declare function validateApplicationJobQueuePressureThresholds(pause: number, resume: number, createError: (message: string) => Error): void;
11
22
  export declare function createFrameworkRegistrationWithBuilder(configure: (options: ZLinkFrameworkOptions) => void): ZLinkFrameworkRegistration;
@@ -14,32 +14,44 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.parseEndpointHostPort = exports.buildAdvertisedEndpoint = exports.normalizeEndpoint = exports.validateFrameworkRegistration = exports.requirePositiveInteger = exports.hasSpotPublisherClient = exports.hasSpotNode = exports.hasActorManager = exports.createFrameworkOptions = exports.ZLinkConfigurationException = void 0;
17
+ exports.APPLICATION_JOB_QUEUE_PERCENT_SCALE = exports.DEFAULT_RESUME_THRESHOLD_PERCENT = exports.DEFAULT_PAUSE_THRESHOLD_PERCENT = exports.MAX_QUEUED_APPLICATION_JOBS = exports.DEFAULT_SESSION_REPLACEMENT_CALLBACK_TIMEOUT_MS = exports.parseEndpointHostPort = exports.buildAdvertisedEndpoint = exports.normalizeEndpoint = exports.validateFrameworkRegistration = exports.requirePositiveInteger = exports.hasSpotPublisherClient = exports.hasSpotNode = exports.hasActorManager = exports.createFrameworkOptions = exports.ZLinkConfigurationException = exports.DEFAULT_REQUEST_TIMEOUT_MS = void 0;
18
18
  exports.createFrameworkRegistration = createFrameworkRegistration;
19
+ exports.normalizeFrameworkRegistration = normalizeFrameworkRegistration;
20
+ exports.isKnownApplicationJobQueueProfile = isKnownApplicationJobQueueProfile;
21
+ exports.validateApplicationJobQueueMaximum = validateApplicationJobQueueMaximum;
22
+ exports.validateApplicationJobQueuePressureThresholds = validateApplicationJobQueuePressureThresholds;
19
23
  exports.createFrameworkRegistrationWithBuilder = createFrameworkRegistrationWithBuilder;
24
+ const zlink_1 = require("@zlink-systems/zlink");
25
+ const CoreTypes_1 = require("../Common/CoreTypes");
20
26
  const Dispatch_1 = require("../Dispatch");
27
+ const Options_1 = require("../Locations/Options");
28
+ const RegistrationBuilders_1 = require("./RegistrationBuilders");
29
+ const RegistrationCodecRegistry_1 = require("./RegistrationCodecRegistry");
30
+ const RegistrationNormalizers_1 = require("./RegistrationNormalizers");
31
+ const RegistrationValidators_1 = require("./RegistrationValidators");
32
+ Object.defineProperty(exports, "validateFrameworkRegistration", { enumerable: true, get: function () { return RegistrationValidators_1.validateFrameworkRegistration; } });
33
+ exports.DEFAULT_REQUEST_TIMEOUT_MS = 30_000;
21
34
  var ConfigurationException_1 = require("./ConfigurationException");
22
35
  Object.defineProperty(exports, "ZLinkConfigurationException", { enumerable: true, get: function () { return ConfigurationException_1.ZLinkConfigurationException; } });
23
- const RegistrationBuilders_1 = require("./RegistrationBuilders");
24
36
  var RegistrationBuilders_2 = require("./RegistrationBuilders");
25
37
  Object.defineProperty(exports, "createFrameworkOptions", { enumerable: true, get: function () { return RegistrationBuilders_2.createFrameworkOptions; } });
26
- const RegistrationCodecRegistry_1 = require("./RegistrationCodecRegistry");
27
- const RegistrationNormalizers_1 = require("./RegistrationNormalizers");
28
38
  var RegistrationNormalizers_2 = require("./RegistrationNormalizers");
29
39
  Object.defineProperty(exports, "hasActorManager", { enumerable: true, get: function () { return RegistrationNormalizers_2.hasActorManager; } });
30
40
  Object.defineProperty(exports, "hasSpotNode", { enumerable: true, get: function () { return RegistrationNormalizers_2.hasSpotNode; } });
31
41
  Object.defineProperty(exports, "hasSpotPublisherClient", { enumerable: true, get: function () { return RegistrationNormalizers_2.hasSpotPublisherClient; } });
32
42
  Object.defineProperty(exports, "requirePositiveInteger", { enumerable: true, get: function () { return RegistrationNormalizers_2.requirePositiveInteger; } });
33
43
  __exportStar(require("./RegistrationTypes"), exports);
34
- const RegistrationValidators_1 = require("./RegistrationValidators");
35
- Object.defineProperty(exports, "validateFrameworkRegistration", { enumerable: true, get: function () { return RegistrationValidators_1.validateFrameworkRegistration; } });
36
44
  var EndpointNotation_1 = require("./EndpointNotation");
37
45
  Object.defineProperty(exports, "normalizeEndpoint", { enumerable: true, get: function () { return EndpointNotation_1.normalizeEndpoint; } });
38
46
  Object.defineProperty(exports, "buildAdvertisedEndpoint", { enumerable: true, get: function () { return EndpointNotation_1.buildAdvertisedEndpoint; } });
39
47
  Object.defineProperty(exports, "parseEndpointHostPort", { enumerable: true, get: function () { return EndpointNotation_1.parseEndpointHostPort; } });
40
- const DEFAULT_MESSAGE_FOLLOW_DURATION_MS = 30_000;
41
- const DEFAULT_SESSION_REPLACEMENT_CALLBACK_TIMEOUT_MS = 30_000;
48
+ exports.DEFAULT_SESSION_REPLACEMENT_CALLBACK_TIMEOUT_MS = 30_000;
42
49
  function createFrameworkRegistration(options = {}) {
50
+ const registration = normalizeFrameworkRegistration(options);
51
+ (0, RegistrationValidators_1.validateFrameworkRegistration)(registration, options);
52
+ return registration;
53
+ }
54
+ function normalizeFrameworkRegistration(options) {
43
55
  const codecRegistry = (0, RegistrationCodecRegistry_1.createCodecRegistry)(options.codecs);
44
56
  const network = (0, RegistrationNormalizers_1.normalizeNetworkOptions)(options.network);
45
57
  const routeChannelOptions = (0, RegistrationNormalizers_1.toRouteChannelOptions)(options);
@@ -53,8 +65,8 @@ function createFrameworkRegistration(options = {}) {
53
65
  requestTimeoutMs: (0, RegistrationNormalizers_1.normalizeOptionalPositiveInteger)(options.requestTimeoutMs, 'requestTimeoutMs'),
54
66
  actorFactories: (0, RegistrationNormalizers_1.actorFactoriesFromSpotNodes)(spotNodes),
55
67
  actorTransferTimeoutMs: (0, RegistrationNormalizers_1.normalizeOptionalPositiveInteger)(options.actorTransferTimeoutMs, 'actorTransferTimeoutMs'),
56
- messageFollowDurationMs: normalizeNonNegativeInteger(options.messageFollowDurationMs, 'messageFollowDurationMs', DEFAULT_MESSAGE_FOLLOW_DURATION_MS),
57
- sessionReplacementCallbackTimeoutMs: normalizePositiveInteger(options.sessionReplacementCallbackTimeoutMs, 'sessionReplacementCallbackTimeoutMs', DEFAULT_SESSION_REPLACEMENT_CALLBACK_TIMEOUT_MS),
68
+ messageFollowDurationMs: normalizeNonNegativeInteger(options.messageFollowDurationMs, 'messageFollowDurationMs', Options_1.zlinkDefaultLocationOptions.messageFollowDurationMs),
69
+ sessionReplacementCallbackTimeoutMs: normalizePositiveInteger(options.sessionReplacementCallbackTimeoutMs, 'sessionReplacementCallbackTimeoutMs', exports.DEFAULT_SESSION_REPLACEMENT_CALLBACK_TIMEOUT_MS),
58
70
  spotFactories: (0, RegistrationNormalizers_1.toSpotFactorySet)(options.spotFactories, spotNodes),
59
71
  channels: (0, RegistrationNormalizers_1.toChannelMap)(options.channels, network),
60
72
  channelClients: (0, RegistrationNormalizers_1.channelNamesWith)(options.channels, (channel) => channel.client !== undefined),
@@ -73,36 +85,42 @@ function createFrameworkRegistration(options = {}) {
73
85
  applicationJobQueue: normalizeApplicationJobQueue(options.applicationJobQueue),
74
86
  locations: (0, RegistrationNormalizers_1.normalizeLocationRegistration)(options.locations)
75
87
  };
76
- (0, RegistrationValidators_1.validateFrameworkRegistration)(registration, options);
77
88
  return registration;
78
89
  }
79
- function normalizeApplicationJobQueue(value) {
80
- const profile = value?.profile ?? Dispatch_1.ZLinkApplicationJobQueueProfile.Balanced;
81
- if (!Object.values(Dispatch_1.ZLinkApplicationJobQueueProfile).includes(profile)) {
82
- throw new TypeError('applicationJobQueue.profile must be a supported profile.');
90
+ exports.MAX_QUEUED_APPLICATION_JOBS = 2147483647n;
91
+ exports.DEFAULT_PAUSE_THRESHOLD_PERCENT = 80;
92
+ exports.DEFAULT_RESUME_THRESHOLD_PERCENT = 60;
93
+ exports.APPLICATION_JOB_QUEUE_PERCENT_SCALE = 100;
94
+ function isKnownApplicationJobQueueProfile(value) {
95
+ return Object.values(Dispatch_1.ZLinkApplicationJobQueueProfile).includes(value);
96
+ }
97
+ function validateApplicationJobQueueMaximum(value, createError) {
98
+ if (value !== undefined &&
99
+ (typeof value !== 'bigint' || value < 1n || value > exports.MAX_QUEUED_APPLICATION_JOBS)) {
100
+ throw createError(`maxQueuedApplicationJobs must be a bigint in the range 1..${exports.MAX_QUEUED_APPLICATION_JOBS}.`);
83
101
  }
84
- const maxQueuedApplicationJobs = value?.maxQueuedApplicationJobs;
85
- if (maxQueuedApplicationJobs !== undefined &&
86
- (typeof maxQueuedApplicationJobs !== 'bigint' ||
87
- maxQueuedApplicationJobs < 1n ||
88
- maxQueuedApplicationJobs > 2147483647n)) {
89
- throw new TypeError('applicationJobQueue.maxQueuedApplicationJobs must be a bigint in the range 1..2147483647.');
102
+ }
103
+ function validateApplicationJobQueuePressureThresholds(pause, resume, createError) {
104
+ if (!Number.isInteger(pause) || pause < 1 || pause > exports.APPLICATION_JOB_QUEUE_PERCENT_SCALE) {
105
+ throw createError(`pauseThresholdPercent must be an integer in the range 1..${exports.APPLICATION_JOB_QUEUE_PERCENT_SCALE}.`);
90
106
  }
91
- const pauseThresholdPercent = value?.pauseThresholdPercent ?? 80;
92
- const resumeThresholdPercent = value?.resumeThresholdPercent ?? 60;
93
- if (!Number.isInteger(pauseThresholdPercent) ||
94
- pauseThresholdPercent < 1 ||
95
- pauseThresholdPercent > 100) {
96
- throw new TypeError('applicationJobQueue.pauseThresholdPercent must be an integer in the range 1..100.');
107
+ if (!Number.isInteger(resume) || resume < 0 || resume >= exports.APPLICATION_JOB_QUEUE_PERCENT_SCALE) {
108
+ throw createError(`resumeThresholdPercent must be an integer in the range 0..${exports.APPLICATION_JOB_QUEUE_PERCENT_SCALE - 1}.`);
97
109
  }
98
- if (!Number.isInteger(resumeThresholdPercent) ||
99
- resumeThresholdPercent < 0 ||
100
- resumeThresholdPercent > 99) {
101
- throw new TypeError('applicationJobQueue.resumeThresholdPercent must be an integer in the range 0..99.');
110
+ if (resume >= pause) {
111
+ throw createError('resumeThresholdPercent must be less than pauseThresholdPercent.');
102
112
  }
103
- if (resumeThresholdPercent >= pauseThresholdPercent) {
104
- throw new TypeError('applicationJobQueue.resumeThresholdPercent must be less than pauseThresholdPercent.');
113
+ }
114
+ function normalizeApplicationJobQueue(value) {
115
+ const profile = value?.profile ?? Dispatch_1.ZLinkApplicationJobQueueProfile.Balanced;
116
+ if (!isKnownApplicationJobQueueProfile(profile)) {
117
+ throw new TypeError('applicationJobQueue.profile must be a supported profile.');
105
118
  }
119
+ const maxQueuedApplicationJobs = value?.maxQueuedApplicationJobs;
120
+ validateApplicationJobQueueMaximum(maxQueuedApplicationJobs, (message) => new TypeError(`applicationJobQueue.${message}`));
121
+ const pauseThresholdPercent = value?.pauseThresholdPercent ?? exports.DEFAULT_PAUSE_THRESHOLD_PERCENT;
122
+ const resumeThresholdPercent = value?.resumeThresholdPercent ?? exports.DEFAULT_RESUME_THRESHOLD_PERCENT;
123
+ validateApplicationJobQueuePressureThresholds(pauseThresholdPercent, resumeThresholdPercent, (message) => new TypeError(`applicationJobQueue.${message}`));
106
124
  return Object.freeze({
107
125
  profile,
108
126
  maxQueuedApplicationJobs,
@@ -114,7 +132,8 @@ function normalizeCoreHwm(value) {
114
132
  if (value === undefined)
115
133
  return undefined;
116
134
  const { profile, memoryLimitBytes, budgetBytes } = value;
117
- if (profile !== undefined && (!Number.isInteger(profile) || profile < 0 || profile > 3)) {
135
+ if (profile !== undefined &&
136
+ (!Number.isInteger(profile) || profile < 0 || profile > zlink_1.AutoHwmProfile.Throughput)) {
118
137
  throw new TypeError('coreHwm.profile must be a Core Auto HWM profile value.');
119
138
  }
120
139
  for (const [name, bytes] of [
@@ -139,8 +158,11 @@ function normalizeMaintenanceWave(value) {
139
158
  if (value === undefined)
140
159
  return undefined;
141
160
  const byteLength = typeof value === 'string' ? new TextEncoder().encode(value).byteLength : 0;
142
- if (typeof value !== 'string' || byteLength === 0 || byteLength > 255 || value.includes('\0')) {
143
- throw new TypeError('maintenanceWave must be a 1..255 byte UTF-8 string without NUL.');
161
+ if (typeof value !== 'string' ||
162
+ byteLength === 0 ||
163
+ byteLength > CoreTypes_1.ZLINK_MAX_IDENTITY_TEXT_BYTES ||
164
+ value.includes('\0')) {
165
+ throw new TypeError(`maintenanceWave must be a 1..${CoreTypes_1.ZLINK_MAX_IDENTITY_TEXT_BYTES} byte UTF-8 string without NUL.`);
144
166
  }
145
167
  return value;
146
168
  }
@@ -1,4 +1,16 @@
1
- import type { Type, ZLinkEntrySpot, ZLinkSpot } from '../../contracts';
1
+ import type { Type, ZLinkEntrySpot, ZLinkSpot, ZLinkRelocationStore } from '../../contracts';
2
+ export declare const MAX_LISTENER_PORT = 65535;
3
+ export declare function registerRelocationStore(options: {
4
+ relocationStoreInstance?: ZLinkRelocationStore;
5
+ }, store: ZLinkRelocationStore): void;
6
+ export declare function isValidListenerPort(value: number): boolean;
7
+ export declare const ZLINK_MAX_CAPACITY = 2147483647;
8
+ export declare function isValidPositiveCapacity(value: number): boolean;
9
+ export declare function isValidCapacity(value: number): boolean;
10
+ export declare const ZLINK_DEFAULT_PUBLIC_WEIGHT = 100;
11
+ export declare const ZLINK_MAX_PUBLIC_WEIGHT = 10000;
12
+ export declare function isValidPublicWeight(value: number): boolean;
13
+ export declare function requirePublicWeight(value: number, label: string): number;
2
14
  export declare function validateMessageFollowDuration(timeoutMs: number): number;
3
15
  export declare function validateActorTransferTimeout(timeoutMs: number): number;
4
16
  export declare function validateSessionReplacementCallbackTimeout(timeoutMs: number): number;
@@ -1,5 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ZLINK_MAX_PUBLIC_WEIGHT = exports.ZLINK_DEFAULT_PUBLIC_WEIGHT = exports.ZLINK_MAX_CAPACITY = exports.MAX_LISTENER_PORT = void 0;
4
+ exports.registerRelocationStore = registerRelocationStore;
5
+ exports.isValidListenerPort = isValidListenerPort;
6
+ exports.isValidPositiveCapacity = isValidPositiveCapacity;
7
+ exports.isValidCapacity = isValidCapacity;
8
+ exports.isValidPublicWeight = isValidPublicWeight;
9
+ exports.requirePublicWeight = requirePublicWeight;
3
10
  exports.validateMessageFollowDuration = validateMessageFollowDuration;
4
11
  exports.validateActorTransferTimeout = validateActorTransferTimeout;
5
12
  exports.validateSessionReplacementCallbackTimeout = validateSessionReplacementCallbackTimeout;
@@ -7,7 +14,36 @@ exports.registerEntrySpot = registerEntrySpot;
7
14
  exports.registerSpotFactory = registerSpotFactory;
8
15
  exports.registerActorFactory = registerActorFactory;
9
16
  exports.validateRoutingIdPrefix = validateRoutingIdPrefix;
17
+ const CoreTypes_1 = require("../Common/CoreTypes");
10
18
  const ConfigurationException_1 = require("./ConfigurationException");
19
+ exports.MAX_LISTENER_PORT = 65_535;
20
+ function registerRelocationStore(options, store) {
21
+ if (options.relocationStoreInstance !== undefined) {
22
+ throw new ConfigurationException_1.ZLinkConfigurationException('Relocation Store is already registered.');
23
+ }
24
+ options.relocationStoreInstance = store;
25
+ }
26
+ function isValidListenerPort(value) {
27
+ return Number.isInteger(value) && value >= 0 && value <= exports.MAX_LISTENER_PORT;
28
+ }
29
+ exports.ZLINK_MAX_CAPACITY = 0x7fff_ffff;
30
+ function isValidPositiveCapacity(value) {
31
+ return Number.isSafeInteger(value) && value > 0 && value <= exports.ZLINK_MAX_CAPACITY;
32
+ }
33
+ function isValidCapacity(value) {
34
+ return Number.isSafeInteger(value) && value >= 0 && value <= exports.ZLINK_MAX_CAPACITY;
35
+ }
36
+ exports.ZLINK_DEFAULT_PUBLIC_WEIGHT = 100;
37
+ exports.ZLINK_MAX_PUBLIC_WEIGHT = 10_000;
38
+ function isValidPublicWeight(value) {
39
+ return Number.isInteger(value) && value >= 0 && value <= exports.ZLINK_MAX_PUBLIC_WEIGHT;
40
+ }
41
+ function requirePublicWeight(value, label) {
42
+ if (!isValidPublicWeight(value)) {
43
+ throw new ConfigurationException_1.ZLinkConfigurationException(`${label} must be an integer in 0..${exports.ZLINK_MAX_PUBLIC_WEIGHT}.`);
44
+ }
45
+ return value;
46
+ }
11
47
  function validateMessageFollowDuration(timeoutMs) {
12
48
  if (!Number.isSafeInteger(timeoutMs) || timeoutMs < 0) {
13
49
  throw new ConfigurationException_1.ZLinkConfigurationException('Message Follow duration must be a non-negative safe integer.');
@@ -54,7 +90,8 @@ function validateRoutingIdPrefix(prefix) {
54
90
  if (prefix.trim().length === 0 || prefix !== prefix.trim()) {
55
91
  throw new ConfigurationException_1.ZLinkConfigurationException('Routing-id prefix must not be empty or padded.');
56
92
  }
57
- if (Buffer.byteLength(`${prefix}-00000000-0000-0000-0000-000000000000`, 'utf8') > 255) {
93
+ if (Buffer.byteLength(`${prefix}-00000000-0000-0000-0000-000000000000`, 'utf8') >
94
+ CoreTypes_1.ZLINK_MAX_ROUTING_ID_BYTES) {
58
95
  throw new ConfigurationException_1.ZLinkConfigurationException('Routing-id prefix is too long for a generated routing id.');
59
96
  }
60
97
  return prefix;
@@ -1,8 +1,7 @@
1
1
  import type { ZLinkFrameworkOptions, ZLinkLocationOptionValues, ZLinkStreamCompressionBuilder, ZLinkStreamCompressionCodec } from '../../contracts';
2
- import type { ZLinkDispatchOptions, ZLinkDispatchOptionsBuilder, ZLinkInboundDispatchOptions, ZLinkMessageFlowLogMode } from '../Dispatch';
3
- import { ZLinkApplicationJobQueueProfile, ZLinkCoreHwmProfile } from '../Dispatch';
2
+ import { type ZLinkDispatchOptions, type ZLinkDispatchOptionsBuilder, type ZLinkInboundDispatchOptions, type ZLinkMessageFlowLogMode, ZLinkApplicationJobQueueProfile, ZLinkCoreHwmProfile } from '../Dispatch';
4
3
  import type { ZLinkLocationOptions } from '../Locations';
5
- import type { ZLinkApplicationJobQueueOptions, ZLinkFrameworkRegistrationOptions, ZLinkCoreHwmOptions } from './RegistrationTypes';
4
+ import type { ZLinkApplicationJobQueueOptions, ZLinkCoreHwmOptions, ZLinkFrameworkRegistrationOptions } from './RegistrationTypes';
6
5
  export declare function createFrameworkOptions(configure: (options: ZLinkFrameworkOptions) => void): ZLinkFrameworkRegistrationOptions;
7
6
  export declare class DefaultDispatchOptionsBuilder implements ZLinkDispatchOptionsBuilder {
8
7
  private readonly dispatch;
@@ -2,19 +2,20 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DefaultStreamCompressionBuilder = exports.DefaultLocationOptionsBuilder = exports.DefaultInboundDispatchOptionsBuilder = exports.DefaultDispatchOptionsBuilder = void 0;
4
4
  exports.createFrameworkOptions = createFrameworkOptions;
5
- const ObjectRoles_1 = require("./ObjectRoles");
6
- const Attributes_1 = require("../Handlers/Attributes");
7
- const Dispatch_1 = require("../Dispatch");
8
5
  const zlink_1 = require("@zlink-systems/zlink");
9
- const RuntimeEndpointConnections_1 = require("./RuntimeEndpointConnections");
6
+ const CoreTypes_1 = require("../Common/CoreTypes");
7
+ const Dispatch_1 = require("../Dispatch");
8
+ const Attributes_1 = require("../Handlers/Attributes");
10
9
  const ConfigurationException_1 = require("./ConfigurationException");
11
- const RegistrationCodecRegistry_1 = require("./RegistrationCodecRegistry");
12
- const RegistrationNormalizers_1 = require("./RegistrationNormalizers");
10
+ const DiagnosticsValidation_1 = require("./DiagnosticsValidation");
13
11
  const EndpointNotation_1 = require("./EndpointNotation");
12
+ const FanoutTopic_1 = require("./FanoutTopic");
14
13
  const InternalDefaults_1 = require("./InternalDefaults");
14
+ const ObjectRoles_1 = require("./ObjectRoles");
15
15
  const RegistrationBuilderPolicy_1 = require("./RegistrationBuilderPolicy");
16
- const DiagnosticsValidation_1 = require("./DiagnosticsValidation");
17
- const FanoutTopic_1 = require("./FanoutTopic");
16
+ const RegistrationCodecRegistry_1 = require("./RegistrationCodecRegistry");
17
+ const RegistrationNormalizers_1 = require("./RegistrationNormalizers");
18
+ const RuntimeEndpointConnections_1 = require("./RuntimeEndpointConnections");
18
19
  function createFrameworkOptions(configure) {
19
20
  const builder = new ZLinkFrameworkOptionsBuilder();
20
21
  configure(builder);
@@ -54,7 +55,7 @@ class ZLinkFrameworkOptionsBuilder {
54
55
  }
55
56
  addRelocationStore(store) {
56
57
  this.options.locations ??= { options: {} };
57
- this.options.locations.relocationStoreInstance = store;
58
+ (0, RegistrationBuilderPolicy_1.registerRelocationStore)(this.options.locations, store);
58
59
  return this;
59
60
  }
60
61
  setApplicationVersion(version) {
@@ -470,8 +471,8 @@ class DefaultClientServerChannelServerBuilder {
470
471
  this.channel = channel;
471
472
  }
472
473
  listen(port = 0) {
473
- if (!Number.isInteger(port) || port < 0 || port > 65_535) {
474
- throw new ConfigurationException_1.ZLinkConfigurationException(`ClientServer channel '${this.name}' port must be between 0 and 65535.`);
474
+ if (!(0, RegistrationBuilderPolicy_1.isValidListenerPort)(port)) {
475
+ throw new ConfigurationException_1.ZLinkConfigurationException(`ClientServer channel '${this.name}' port must be between 0 and ${RegistrationBuilderPolicy_1.MAX_LISTENER_PORT}.`);
475
476
  }
476
477
  this.server.port = port;
477
478
  this.updateBind();
@@ -490,7 +491,7 @@ class DefaultClientServerChannelServerBuilder {
490
491
  return this;
491
492
  }
492
493
  setWeight(weight) {
493
- this.server.weight = requirePublicWeight(weight, `ClientServer channel '${this.name}' weight`);
494
+ this.server.weight = (0, RegistrationBuilderPolicy_1.requirePublicWeight)(weight, `ClientServer channel '${this.name}' weight`);
494
495
  return this;
495
496
  }
496
497
  addHandlerGroup(groupName) {
@@ -695,8 +696,8 @@ class DefaultMeshNodeBuilder {
695
696
  this.node.router.port = undefined;
696
697
  return this;
697
698
  }
698
- if (!Number.isInteger(endpointOrPort) || endpointOrPort < 0 || endpointOrPort > 65_535) {
699
- throw new ConfigurationException_1.ZLinkConfigurationException(`RouteMesh '${this.name}' port must be between 0 and 65535.`);
699
+ if (!(0, RegistrationBuilderPolicy_1.isValidListenerPort)(endpointOrPort)) {
700
+ throw new ConfigurationException_1.ZLinkConfigurationException(`RouteMesh '${this.name}' port must be between 0 and ${RegistrationBuilderPolicy_1.MAX_LISTENER_PORT}.`);
700
701
  }
701
702
  this.node.router.port = endpointOrPort;
702
703
  this.updateBind();
@@ -725,7 +726,7 @@ class DefaultMeshNodeBuilder {
725
726
  return this;
726
727
  }
727
728
  setPlacementWeight(weight) {
728
- this.node.placementWeight = requirePublicWeight(weight, 'Placement weight');
729
+ this.node.placementWeight = (0, RegistrationBuilderPolicy_1.requirePublicWeight)(weight, 'Placement weight');
729
730
  return this;
730
731
  }
731
732
  setActorLimit(limit) {
@@ -1040,7 +1041,7 @@ class DefaultMeshChannelServerBuilder {
1040
1041
  this.channel = channel;
1041
1042
  }
1042
1043
  setWeight(weight) {
1043
- this.channel.weight = requirePublicWeight(weight, 'Mesh channel weight');
1044
+ this.channel.weight = (0, RegistrationBuilderPolicy_1.requirePublicWeight)(weight, 'Mesh channel weight');
1044
1045
  return this;
1045
1046
  }
1046
1047
  addHandlerGroup(groupName) {
@@ -1110,20 +1111,20 @@ function endpointList(endpoint) {
1110
1111
  }
1111
1112
  function requireStableObjectType(value, label) {
1112
1113
  const byteLength = Buffer.byteLength(value, 'utf8');
1113
- if (byteLength < 1 || byteLength > 255 || value.includes('\0')) {
1114
- throw new ConfigurationException_1.ZLinkConfigurationException(`${label} must contain 1..255 UTF-8 bytes and no NUL.`);
1114
+ if (byteLength < 1 || byteLength > CoreTypes_1.ZLINK_MAX_STABLE_TYPE_BYTES || value.includes('\0')) {
1115
+ throw new ConfigurationException_1.ZLinkConfigurationException(`${label} must contain 1..${CoreTypes_1.ZLINK_MAX_STABLE_TYPE_BYTES} UTF-8 bytes and no NUL.`);
1115
1116
  }
1116
1117
  return value;
1117
1118
  }
1118
1119
  function requirePositiveCapacity(value, label) {
1119
- if (!Number.isSafeInteger(value) || value <= 0 || value > 0x7fff_ffff) {
1120
- throw new ConfigurationException_1.ZLinkConfigurationException(`${label} must be an integer in 1..2147483647.`);
1120
+ if (!(0, RegistrationBuilderPolicy_1.isValidPositiveCapacity)(value)) {
1121
+ throw new ConfigurationException_1.ZLinkConfigurationException(`${label} must be an integer in 1..${RegistrationBuilderPolicy_1.ZLINK_MAX_CAPACITY}.`);
1121
1122
  }
1122
1123
  return value;
1123
1124
  }
1124
1125
  function requireCapacity(value, label) {
1125
- if (!Number.isSafeInteger(value) || value < 0 || value > 0x7fff_ffff) {
1126
- throw new ConfigurationException_1.ZLinkConfigurationException(`${label} must be an integer in 0..2147483647.`);
1126
+ if (!(0, RegistrationBuilderPolicy_1.isValidCapacity)(value)) {
1127
+ throw new ConfigurationException_1.ZLinkConfigurationException(`${label} must be an integer in 0..${RegistrationBuilderPolicy_1.ZLINK_MAX_CAPACITY}.`);
1127
1128
  }
1128
1129
  return value;
1129
1130
  }
@@ -1133,12 +1134,6 @@ function requireNonNegativeSafeInteger(value, label) {
1133
1134
  }
1134
1135
  return value;
1135
1136
  }
1136
- function requirePublicWeight(value, label) {
1137
- if (!Number.isInteger(value) || value < 0 || value > 10_000) {
1138
- throw new ConfigurationException_1.ZLinkConfigurationException(`${label} must be an integer in 0..10000.`);
1139
- }
1140
- return value;
1141
- }
1142
1137
  function requireFactoryConfigure(configure) {
1143
1138
  if (typeof configure !== 'function') {
1144
1139
  throw new ConfigurationException_1.ZLinkConfigurationException('Object factory requires a configure callback.');
@@ -1162,8 +1157,8 @@ function validateUserSpotFactoryOptions(options) {
1162
1157
  }
1163
1158
  }
1164
1159
  function validateStableTypeLimit(value) {
1165
- if (value !== undefined && (!Number.isInteger(value) || value < 0 || value > 2_147_483_647)) {
1166
- throw new ConfigurationException_1.ZLinkConfigurationException('stableTypeLimit must be an integer from 0 through 2147483647.');
1160
+ if (value !== undefined && !(0, RegistrationBuilderPolicy_1.isValidCapacity)(value)) {
1161
+ throw new ConfigurationException_1.ZLinkConfigurationException(`stableTypeLimit must be an integer from 0 through ${RegistrationBuilderPolicy_1.ZLINK_MAX_CAPACITY}.`);
1167
1162
  }
1168
1163
  }
1169
1164
  function rejectDuplicateObjectType(registrations, stableType, meshName) {
@@ -1180,8 +1175,8 @@ function requireRegistrationName(value, label) {
1180
1175
  }
1181
1176
  }
1182
1177
  function requireListenerPort(value, label) {
1183
- if (!Number.isInteger(value) || value < 0 || value > 65_535) {
1184
- throw new ConfigurationException_1.ZLinkConfigurationException(`${label} must be between 0 and 65535.`);
1178
+ if (!(0, RegistrationBuilderPolicy_1.isValidListenerPort)(value)) {
1179
+ throw new ConfigurationException_1.ZLinkConfigurationException(`${label} must be between 0 and ${RegistrationBuilderPolicy_1.MAX_LISTENER_PORT}.`);
1185
1180
  }
1186
1181
  return value;
1187
1182
  }
@@ -156,7 +156,6 @@ export interface ZLinkChannelOptions {
156
156
  readonly weight?: number;
157
157
  readonly sendHighWaterMark?: number;
158
158
  readonly receiveHighWaterMark?: number;
159
- readonly sendTimeoutMs?: number;
160
159
  readonly maxMessageSize?: number;
161
160
  };
162
161
  readonly subscriber?: ZLinkClientCapabilityOptions;
@@ -165,10 +164,10 @@ export interface ZLinkClientCapabilityOptions {
165
164
  readonly manualConnections?: readonly string[];
166
165
  readonly sendHighWaterMark?: number;
167
166
  readonly receiveHighWaterMark?: number;
168
- readonly sendTimeoutMs?: number;
169
167
  readonly maxMessageSize?: number;
170
168
  }
171
169
  export interface ZLinkPublisherCapabilityOptions {
170
+ readonly sendTimeoutMs?: number;
172
171
  readonly bind?: string;
173
172
  readonly bindHost?: string;
174
173
  readonly advertiseHost?: string;
@@ -183,7 +182,6 @@ export interface ZLinkRouteMeshChannelOptions {
183
182
  readonly weight?: number;
184
183
  readonly sendHighWaterMark?: number;
185
184
  readonly receiveHighWaterMark?: number;
186
- readonly sendTimeoutMs?: number;
187
185
  readonly sendHandlers?: readonly ZLinkRouteChannelSendHandlerRegistration[];
188
186
  readonly requestHandlers?: readonly ZLinkRouteChannelRequestHandlerRegistration[];
189
187
  readonly handlers?: readonly ZLinkRouteChannelHandlerOptions[];
@@ -198,7 +196,6 @@ export interface ZLinkRouteChannelOptions {
198
196
  readonly weight?: number;
199
197
  readonly sendHighWaterMark?: number;
200
198
  readonly receiveHighWaterMark?: number;
201
- readonly sendTimeoutMs?: number;
202
199
  readonly sendHandlers?: readonly ZLinkRouteChannelSendHandlerRegistration[];
203
200
  readonly requestHandlers?: readonly ZLinkRouteChannelRequestHandlerRegistration[];
204
201
  readonly handlers?: readonly ZLinkRouteChannelHandlerOptions[];
@@ -358,7 +355,6 @@ export interface ZLinkSpotRouterCapabilityOptions {
358
355
  readonly sendHighWaterMark?: number;
359
356
  readonly receiveHighWaterMark?: number;
360
357
  readonly receiveTimeoutMs?: number;
361
- readonly sendTimeoutMs?: number;
362
358
  }
363
359
  export interface ZLinkSpotRouterPeerConnectionOptions {
364
360
  readonly peerRid: RoutingId;