@zlink-systems/framework 0.30.0 → 0.30.2
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.
- package/LICENSE +150 -68
- package/dist/.tsbuildinfo +1 -1
- package/dist/contracts/Actors/ZLinkActorClient.d.ts +2 -1
- package/dist/contracts/Channels/Calls.d.ts +2 -1
- package/dist/contracts/Common/ZLinkEncodedPayload.d.ts +6 -0
- package/dist/contracts/Common/ZLinkEncodedPayload.js +18 -3
- package/dist/contracts/Common/ZLinkMessageMetadata.js +11 -5
- package/dist/contracts/Common/encoded-payload-storage.d.ts +1 -1
- package/dist/contracts/Common/encoded-payload-storage.js +5 -2
- package/dist/contracts/Configuration/Builders.d.ts +1 -1
- package/dist/contracts/Configuration/RegistrationBuilderPolicy.d.ts +2 -1
- package/dist/contracts/Configuration/RegistrationBuilderPolicy.js +5 -1
- package/dist/contracts/Configuration/RegistrationBuilders.js +2 -2
- package/dist/contracts/Configuration/RegistrationTypes.d.ts +1 -0
- package/dist/contracts/Dispatch/ZLinkDispatchOptions.d.ts +2 -2
- package/dist/contracts/Handlers/Attributes.d.ts +5 -13
- package/dist/contracts/Handlers/Attributes.js +7 -11
- package/dist/contracts/Handlers/JsonContract.d.ts +2 -46
- package/dist/contracts/Handlers/JsonContract.js +4 -153
- package/dist/contracts/Locations/Rows.d.ts +2 -0
- package/dist/contracts/Spots/Contracts.d.ts +6 -1
- package/dist/contracts/Spots/ZLinkSpot.d.ts +3 -3
- package/dist/nest-integration.d.ts +1 -1
- package/dist/nest-integration.js +2 -1
- package/dist/runtime/abort.d.ts +5 -0
- package/dist/runtime/abort.js +10 -0
- package/dist/runtime/actors/actor-authority-publication.js +3 -2
- package/dist/runtime/actors/actor-client.d.ts +1 -2
- package/dist/runtime/actors/actor-client.js +52 -57
- package/dist/runtime/actors/actor-context.d.ts +2 -0
- package/dist/runtime/actors/actor-context.js +46 -9
- package/dist/runtime/actors/actor-handoff.d.ts +8 -4
- package/dist/runtime/actors/actor-handoff.js +219 -92
- package/dist/runtime/actors/actor-join-relocation.d.ts +3 -0
- package/dist/runtime/actors/actor-local-native-join.js +13 -12
- package/dist/runtime/actors/actor-mailbox.js +27 -1
- package/dist/runtime/actors/actor-remote-joiner.js +3 -1
- package/dist/runtime/actors/actor-remote-wire.js +15 -0
- package/dist/runtime/actors/actor-reply.d.ts +4 -0
- package/dist/runtime/actors/actor-reply.js +29 -0
- package/dist/runtime/actors/actor-routed-join-transport.d.ts +6 -2
- package/dist/runtime/actors/actor-routed-json-request.d.ts +2 -0
- package/dist/runtime/actors/actor-runtime-contracts.d.ts +2 -0
- package/dist/runtime/actors/actor-runtime-state.js +2 -20
- package/dist/runtime/actors/actor-source-transfer.d.ts +1 -17
- package/dist/runtime/actors/index.d.ts +8 -3
- package/dist/runtime/actors/index.js +55 -27
- package/dist/runtime/actors/session-disconnected-wire.d.ts +8 -0
- package/dist/runtime/actors/session-disconnected-wire.js +48 -0
- package/dist/runtime/actors/spot-actor-dispatch.js +2 -2
- package/dist/runtime/admission.d.ts +9 -1
- package/dist/runtime/admission.js +56 -23
- package/dist/runtime/application-jobs/application-ingress-record-owner.d.ts +6 -8
- package/dist/runtime/application-jobs/application-ingress-record-owner.js +39 -22
- package/dist/runtime/application-jobs/application-job-queue-scope.d.ts +15 -1
- package/dist/runtime/application-jobs/application-job-queue-scope.js +61 -20
- package/dist/runtime/application-jobs/contracts.d.ts +12 -1
- package/dist/runtime/backend/contracts/index.d.ts +37 -12
- package/dist/runtime/backend/mesh-actor-session-node-adapter.js +2 -2
- package/dist/runtime/backend/mesh-completion-table.d.ts +9 -1
- package/dist/runtime/backend/mesh-completion-table.js +154 -49
- package/dist/runtime/backend/mesh-dispatch-pump.d.ts +28 -1
- package/dist/runtime/backend/mesh-dispatch-pump.js +208 -101
- package/dist/runtime/backend/node/node-backend-adapter-support.d.ts +2 -2
- package/dist/runtime/backend/node/node-backend-adapter-support.js +16 -9
- package/dist/runtime/backend/node/node-dealer-channel-client-transport.d.ts +1 -1
- package/dist/runtime/backend/node/node-dealer-channel-client-transport.js +5 -2
- package/dist/runtime/backend/node/node-raw-binding-port.js +124 -72
- package/dist/runtime/backend/node/node-raw-mesh-backend.d.ts +46 -13
- package/dist/runtime/backend/node/node-raw-mesh-backend.js +181 -164
- package/dist/runtime/backend/node/node-socket-backend-adapter.d.ts +1 -1
- package/dist/runtime/backend/node/node-socket-backend-adapter.js +11 -11
- package/dist/runtime/backend/raw-binding-port.d.ts +2 -2
- package/dist/runtime/backend/runtime-message.d.ts +1 -0
- package/dist/runtime/backend/runtime-message.js +5 -0
- package/dist/runtime/backend/runtime-values.d.ts +1 -0
- package/dist/runtime/backend/runtime-values.js +2 -1
- package/dist/runtime/channels/channel-clients.d.ts +2 -0
- package/dist/runtime/channels/channel-clients.js +75 -23
- package/dist/runtime/channels/channel-dispatch-pipeline.d.ts +25 -5
- package/dist/runtime/channels/channel-dispatch-pipeline.js +111 -56
- package/dist/runtime/channels/channel-dispatch-services.d.ts +1 -0
- package/dist/runtime/channels/channel-dispatch-services.js +45 -0
- package/dist/runtime/channels/channel-dispatchers.d.ts +4 -3
- package/dist/runtime/channels/channel-dispatchers.js +62 -54
- package/dist/runtime/channels/channel-envelope-inspection.d.ts +1 -2
- package/dist/runtime/channels/channel-envelope-inspection.js +1 -16
- package/dist/runtime/channels/channel-envelope.d.ts +2 -0
- package/dist/runtime/channels/channel-envelope.js +146 -28
- package/dist/runtime/channels/channel-outbound-operations.d.ts +2 -2
- package/dist/runtime/channels/channel-outbound-operations.js +8 -8
- package/dist/runtime/channels/channel-runtime-lifecycle.d.ts +4 -3
- package/dist/runtime/channels/channel-runtime-lifecycle.js +19 -24
- package/dist/runtime/channels/channel-runtime-manager.d.ts +9 -8
- package/dist/runtime/channels/channel-runtime-manager.js +16 -16
- package/dist/runtime/channels/channel-transports.d.ts +18 -16
- package/dist/runtime/channels/channel-transports.js +77 -58
- package/dist/runtime/channels/client-server-location-runtime.js +5 -4
- package/dist/runtime/channels/dispatch-error-reporter.d.ts +2 -1
- package/dist/runtime/channels/dispatch-error-reporter.js +2 -1
- package/dist/runtime/channels/fanout-location-runtime.d.ts +1 -1
- package/dist/runtime/channels/fanout-location-runtime.js +3 -3
- package/dist/runtime/channels/local-spot-route-transport.d.ts +1 -1
- package/dist/runtime/channels/local-spot-route-transport.js +2 -1
- package/dist/runtime/channels/router-socket-spot-route-transport.d.ts +2 -2
- package/dist/runtime/channels/router-socket-spot-route-transport.js +4 -4
- package/dist/runtime/channels/source-spot-router.d.ts +2 -2
- package/dist/runtime/channels/source-spot-router.js +4 -4
- package/dist/runtime/channels/spot-node-route-transport.d.ts +2 -2
- package/dist/runtime/channels/spot-node-route-transport.js +4 -4
- package/dist/runtime/channels/spot-route-bridge-transport.d.ts +2 -2
- package/dist/runtime/channels/spot-route-bridge-transport.js +4 -4
- package/dist/runtime/channels/spot-route-dispatch-strategy.d.ts +5 -4
- package/dist/runtime/channels/spot-route-dispatch-strategy.js +18 -18
- package/dist/runtime/diagnostics/flow-context.js +19 -7
- package/dist/runtime/diagnostics/index.js +4 -9
- package/dist/runtime/diagnostics/message-flow.d.ts +8 -0
- package/dist/runtime/diagnostics/message-flow.js +35 -5
- package/dist/runtime/diagnostics/runtime-metrics.d.ts +2 -2
- package/dist/runtime/diagnostics/runtime-metrics.js +10 -8
- package/dist/runtime/execution/index.d.ts +4 -2
- package/dist/runtime/execution/index.js +33 -10
- package/dist/runtime/execution/serial-execution-queue.d.ts +5 -0
- package/dist/runtime/execution/serial-execution-queue.js +22 -2
- package/dist/runtime/execution/state-lane.d.ts +2 -0
- package/dist/runtime/execution/state-lane.js +5 -0
- package/dist/runtime/foundation/actor-join-recovery-codec.js +2 -2
- package/dist/runtime/foundation/durable-service-request.d.ts +14 -0
- package/dist/runtime/foundation/durable-service-request.js +98 -0
- package/dist/runtime/foundation/operation-identity.d.ts +1 -0
- package/dist/runtime/foundation/operation-identity.js +5 -1
- package/dist/runtime/foundation/operation-registry.d.ts +25 -1
- package/dist/runtime/foundation/operation-registry.js +86 -18
- package/dist/runtime/foundation/raw-service-mesh-runtime.d.ts +61 -8
- package/dist/runtime/foundation/raw-service-mesh-runtime.js +486 -266
- package/dist/runtime/foundation/service-liveness-registry.d.ts +12 -1
- package/dist/runtime/foundation/service-liveness-registry.js +38 -0
- package/dist/runtime/foundation/service-mailbox.d.ts +7 -0
- package/dist/runtime/foundation/service-maintenance-runtime.js +1 -6
- package/dist/runtime/foundation/service-relocation-object-owner.d.ts +3 -3
- package/dist/runtime/foundation/service-relocation-object-owner.js +48 -34
- package/dist/runtime/foundation/service-relocation-runtime.d.ts +2 -0
- package/dist/runtime/foundation/service-relocation-runtime.js +20 -4
- package/dist/runtime/foundation/service-runtime-contracts.d.ts +10 -1
- package/dist/runtime/foundation/service-session-binding-ingress-port.d.ts +2 -1
- package/dist/runtime/foundation/service-stateful-registry.d.ts +5 -4
- package/dist/runtime/foundation/service-stateful-registry.js +24 -26
- package/dist/runtime/foundation/service-stateful-runtime.d.ts +75 -9
- package/dist/runtime/foundation/service-stateful-runtime.js +486 -218
- package/dist/runtime/foundation/service-stateful-wire-codec.d.ts +14 -6
- package/dist/runtime/foundation/service-stateful-wire-codec.js +48 -27
- package/dist/runtime/foundation/service-topology-registry.d.ts +12 -2
- package/dist/runtime/foundation/service-topology-registry.js +61 -27
- package/dist/runtime/foundation/service-wire-binary-primitives.d.ts +6 -1
- package/dist/runtime/foundation/service-wire-binary-primitives.js +27 -11
- package/dist/runtime/foundation/service-wire-constants.generated.d.ts +1 -0
- package/dist/runtime/foundation/service-wire-constants.generated.js +1 -0
- package/dist/runtime/foundation/service-wire-m6a-codec.d.ts +13 -3
- package/dist/runtime/foundation/service-wire-m6a-codec.js +189 -78
- package/dist/runtime/handlers/handler-instance-scope.d.ts +8 -0
- package/dist/runtime/handlers/handler-instance-scope.js +54 -11
- package/dist/runtime/host/actor-packet-relay.d.ts +6 -4
- package/dist/runtime/host/actor-packet-relay.js +59 -72
- package/dist/runtime/host/actor-placement-coordinator.js +25 -8
- package/dist/runtime/host/actor-runtime-options-factory.js +2 -2
- package/dist/runtime/host/actor-transfer-runtime.d.ts +7 -31
- package/dist/runtime/host/actor-transfer-runtime.js +85 -331
- package/dist/runtime/host/application-job-queue.d.ts +40 -7
- package/dist/runtime/host/application-job-queue.js +137 -42
- package/dist/runtime/host/entry-actor-runtime.d.ts +1 -0
- package/dist/runtime/host/entry-actor-runtime.js +3 -0
- package/dist/runtime/host/index.d.ts +12 -2
- package/dist/runtime/host/index.js +300 -202
- package/dist/runtime/host/location-runtime-owner.js +2 -6
- package/dist/runtime/host/mesh-router-resolver.d.ts +4 -0
- package/dist/runtime/host/mesh-router-resolver.js +14 -6
- package/dist/runtime/host/remote-bound-session-relay.d.ts +2 -4
- package/dist/runtime/host/remote-bound-session-relay.js +73 -208
- package/dist/runtime/host/route-mesh-runtime.d.ts +2 -2
- package/dist/runtime/host/route-mesh-runtime.js +6 -4
- package/dist/runtime/host/runtime-shutdown.d.ts +1 -0
- package/dist/runtime/host/runtime-shutdown.js +3 -2
- package/dist/runtime/host/service-relocation-control.d.ts +1 -0
- package/dist/runtime/host/service-relocation-control.js +10 -4
- package/dist/runtime/host/service-relocation-host-runtime.d.ts +22 -14
- package/dist/runtime/host/service-relocation-host-runtime.js +754 -599
- package/dist/runtime/host/spot-address-transport.js +3 -2
- package/dist/runtime/host/spot-runtime-options-factory.js +16 -7
- package/dist/runtime/host/user-spot-creation-coordinator.js +33 -84
- package/dist/runtime/locations/actor-location-claims.d.ts +2 -2
- package/dist/runtime/locations/actor-location-claims.js +34 -19
- package/dist/runtime/locations/auto-connect-loop.d.ts +2 -0
- package/dist/runtime/locations/auto-connect-loop.js +22 -14
- package/dist/runtime/locations/auto-connect-reconciler.js +0 -6
- package/dist/runtime/locations/auto-connect-types.d.ts +0 -1
- package/dist/runtime/locations/descriptor-publication.d.ts +4 -0
- package/dist/runtime/locations/descriptor-publication.js +11 -0
- package/dist/runtime/locations/domain-store-contract.d.ts +1 -0
- package/dist/runtime/locations/in-memory-authority-store.d.ts +7 -1
- package/dist/runtime/locations/in-memory-authority-store.js +56 -19
- package/dist/runtime/locations/in-memory-location-store.js +1 -10
- package/dist/runtime/locations/index.d.ts +1 -0
- package/dist/runtime/locations/index.js +1 -0
- package/dist/runtime/locations/lease-tracker.js +1 -6
- package/dist/runtime/locations/lifecycle.d.ts +1 -2
- package/dist/runtime/locations/lifecycle.js +2 -5
- package/dist/runtime/locations/location-store-repository.d.ts +51 -1
- package/dist/runtime/locations/location-store-repository.js +363 -139
- package/dist/runtime/locations/relocation-blob.d.ts +18 -1
- package/dist/runtime/locations/relocation-blob.js +52 -1
- package/dist/runtime/locations/request-source-resolver.d.ts +37 -0
- package/dist/runtime/locations/request-source-resolver.js +80 -0
- package/dist/runtime/locations/resolvers.js +1 -1
- package/dist/runtime/locations/runtime.d.ts +7 -3
- package/dist/runtime/locations/runtime.js +61 -53
- package/dist/runtime/messaging/framework-json-v1.d.ts +4 -6
- package/dist/runtime/messaging/framework-json-v1.js +38 -294
- package/dist/runtime/messaging/packet-name.d.ts +1 -1
- package/dist/runtime/messaging/packet-name.js +8 -24
- package/dist/runtime/messaging/payload-codec.d.ts +7 -1
- package/dist/runtime/messaging/payload-codec.js +7 -6
- package/dist/runtime/messaging/request-result.d.ts +2 -0
- package/dist/runtime/messaging/request-result.js +57 -0
- package/dist/runtime/messaging/submission-result.d.ts +1 -0
- package/dist/runtime/messaging/submission-result.js +5 -2
- package/dist/runtime/protocol/service_wire_codec.generated.d.ts +34 -1
- package/dist/runtime/protocol/service_wire_codec.generated.js +229 -0
- package/dist/runtime/protocol/service_wire_pilot_codec.generated.d.ts +16 -1
- package/dist/runtime/protocol/service_wire_pilot_codec.generated.js +37 -8
- package/dist/runtime/spots/formal-remote-actor-admission-registry.d.ts +7 -2
- package/dist/runtime/spots/formal-remote-actor-admission-registry.js +36 -21
- package/dist/runtime/spots/index.d.ts +21 -11
- package/dist/runtime/spots/index.js +243 -178
- package/dist/runtime/spots/spot-activation-registry.d.ts +4 -2
- package/dist/runtime/spots/spot-activation-registry.js +21 -11
- package/dist/runtime/spots/spot-activation-state.d.ts +1 -1
- package/dist/runtime/spots/spot-activation-state.js +7 -7
- package/dist/runtime/spots/spot-activation.d.ts +7 -3
- package/dist/runtime/spots/spot-activation.js +140 -52
- package/dist/runtime/spots/spot-actor-admission-coordinator.d.ts +1 -0
- package/dist/runtime/spots/spot-actor-admission-coordinator.js +13 -22
- package/dist/runtime/spots/spot-actor-membership.d.ts +0 -1
- package/dist/runtime/spots/spot-actor-membership.js +0 -8
- package/dist/runtime/spots/spot-actor-packet-dispatch.js +33 -8
- package/dist/runtime/spots/spot-actor-packet-drain.js +5 -33
- package/dist/runtime/spots/spot-entry-activation.d.ts +2 -0
- package/dist/runtime/spots/spot-entry-activation.js +20 -11
- package/dist/runtime/spots/spot-handler-registry.d.ts +7 -4
- package/dist/runtime/spots/spot-handler-registry.js +24 -10
- package/dist/runtime/spots/spot-manager-internal-contracts.d.ts +2 -2
- package/dist/runtime/spots/spot-manager-public.js +2 -2
- package/dist/runtime/spots/spot-node-autoconnect.d.ts +2 -1
- package/dist/runtime/spots/spot-node-autoconnect.js +22 -42
- package/dist/runtime/spots/spot-node-runtime-manager.d.ts +19 -2
- package/dist/runtime/spots/spot-node-runtime-manager.js +115 -50
- package/dist/runtime/spots/spot-outbound.d.ts +3 -0
- package/dist/runtime/spots/spot-outbound.js +27 -18
- package/dist/runtime/spots/spot-remote-codec.js +5 -1
- package/dist/runtime/spots/spot-routed-spot-packet-dispatch.d.ts +1 -0
- package/dist/runtime/spots/spot-routed-spot-packet-dispatch.js +1 -1
- package/dist/runtime/spots/spot-runtime-ports.d.ts +1 -1
- package/dist/runtime/spots/spot-serial-executor.d.ts +10 -0
- package/dist/runtime/spots/spot-serial-executor.js +61 -8
- package/dist/runtime/spots/spot-serial-turn-executor.js +19 -2
- package/dist/runtime/spots/spot-subscription-dispatch.js +1 -4
- package/dist/runtime/spots/spot-timer.d.ts +57 -5
- package/dist/runtime/spots/spot-timer.js +288 -103
- package/dist/runtime/streams/actor-session-binding-registry.d.ts +42 -11
- package/dist/runtime/streams/actor-session-binding-registry.js +165 -48
- package/dist/runtime/streams/actor-session-binding-runtime-owner.d.ts +8 -4
- package/dist/runtime/streams/bound-actor-relay-sender.d.ts +2 -1
- package/dist/runtime/streams/bound-actor-relay-sender.js +15 -8
- package/dist/runtime/streams/bound-session-service.d.ts +1 -1
- package/dist/runtime/streams/bound-session-service.js +6 -11
- package/dist/runtime/streams/index.d.ts +3 -2
- package/dist/runtime/streams/index.js +6 -4
- package/dist/runtime/streams/managed-stream.js +3 -2
- package/dist/runtime/streams/native-fallback-bound-session.js +8 -73
- package/dist/runtime/streams/session-actor-coordinator.d.ts +2 -8
- package/dist/runtime/streams/session-actor-coordinator.js +15 -32
- package/dist/runtime/streams/stream-binding-runtime-ports.d.ts +3 -10
- package/dist/runtime/streams/stream-session-runtime.d.ts +1 -1
- package/dist/runtime/streams/stream-session-runtime.js +14 -31
- package/dist/runtime/workers/index.js +1 -1
- package/package.json +3 -3
- package/src/contracts/Actors/ZLinkActorClient.ts +2 -1
- package/src/contracts/Channels/Calls.ts +2 -1
- package/src/contracts/Common/ZLinkEncodedPayload.ts +24 -4
- package/src/contracts/Common/ZLinkMessageMetadata.ts +13 -8
- package/src/contracts/Common/encoded-payload-storage.ts +6 -3
- package/src/contracts/Configuration/Builders.ts +4 -1
- package/src/contracts/Configuration/RegistrationBuilderPolicy.ts +7 -2
- package/src/contracts/Configuration/RegistrationBuilders.ts +6 -2
- package/src/contracts/Configuration/RegistrationTypes.ts +1 -0
- package/src/contracts/Dispatch/ZLinkDispatchOptions.ts +2 -1
- package/src/contracts/Handlers/Attributes.ts +14 -21
- package/src/contracts/Handlers/JsonContract.ts +8 -216
- package/src/contracts/Locations/Rows.ts +2 -0
- package/src/contracts/Spots/Contracts.ts +10 -1
- package/src/contracts/Spots/ZLinkSpot.ts +3 -3
- package/src/nest-integration.ts +1 -0
- package/src/runtime/abort.ts +12 -0
- package/src/runtime/actors/actor-authority-publication.ts +3 -2
- package/src/runtime/actors/actor-client.ts +100 -85
- package/src/runtime/actors/actor-context.ts +49 -9
- package/src/runtime/actors/actor-handoff.ts +291 -110
- package/src/runtime/actors/actor-join-relocation.ts +3 -0
- package/src/runtime/actors/actor-local-native-join.ts +21 -26
- package/src/runtime/actors/actor-mailbox.ts +40 -2
- package/src/runtime/actors/actor-remote-joiner.ts +6 -1
- package/src/runtime/actors/actor-remote-wire.ts +17 -0
- package/src/runtime/actors/actor-reply.ts +42 -0
- package/src/runtime/actors/actor-routed-join-transport.ts +14 -4
- package/src/runtime/actors/actor-routed-json-request.ts +10 -2
- package/src/runtime/actors/actor-runtime-contracts.ts +2 -0
- package/src/runtime/actors/actor-runtime-state.ts +2 -20
- package/src/runtime/actors/actor-source-transfer.ts +1 -34
- package/src/runtime/actors/index.ts +60 -32
- package/src/runtime/actors/session-disconnected-wire.ts +66 -0
- package/src/runtime/actors/spot-actor-dispatch.ts +4 -2
- package/src/runtime/admission.ts +69 -21
- package/src/runtime/application-jobs/application-ingress-record-owner.ts +41 -25
- package/src/runtime/application-jobs/application-job-queue-scope.ts +83 -22
- package/src/runtime/application-jobs/contracts.ts +16 -1
- package/src/runtime/backend/contracts/index.ts +92 -18
- package/src/runtime/backend/mesh-actor-session-node-adapter.ts +5 -3
- package/src/runtime/backend/mesh-completion-table.ts +160 -57
- package/src/runtime/backend/mesh-dispatch-pump.ts +237 -108
- package/src/runtime/backend/node/node-backend-adapter-support.ts +17 -8
- package/src/runtime/backend/node/node-dealer-channel-client-transport.ts +12 -2
- package/src/runtime/backend/node/node-raw-binding-port.ts +148 -85
- package/src/runtime/backend/node/node-raw-mesh-backend.ts +315 -201
- package/src/runtime/backend/node/node-socket-backend-adapter.ts +26 -11
- package/src/runtime/backend/raw-binding-port.ts +7 -2
- package/src/runtime/backend/runtime-message.ts +6 -0
- package/src/runtime/backend/runtime-values.ts +1 -0
- package/src/runtime/channels/channel-clients.ts +132 -58
- package/src/runtime/channels/channel-dispatch-pipeline.ts +198 -114
- package/src/runtime/channels/channel-dispatch-services.ts +69 -1
- package/src/runtime/channels/channel-dispatchers.ts +136 -90
- package/src/runtime/channels/channel-envelope-inspection.ts +2 -16
- package/src/runtime/channels/channel-envelope.ts +225 -31
- package/src/runtime/channels/channel-outbound-operations.ts +22 -8
- package/src/runtime/channels/channel-runtime-lifecycle.ts +13 -13
- package/src/runtime/channels/channel-runtime-manager.ts +41 -17
- package/src/runtime/channels/channel-transports.ts +171 -112
- package/src/runtime/channels/client-server-location-runtime.ts +11 -10
- package/src/runtime/channels/dispatch-error-reporter.ts +4 -2
- package/src/runtime/channels/fanout-location-runtime.ts +17 -9
- package/src/runtime/channels/local-spot-route-transport.ts +3 -1
- package/src/runtime/channels/router-socket-spot-route-transport.ts +13 -4
- package/src/runtime/channels/source-spot-router.ts +8 -4
- package/src/runtime/channels/spot-node-route-transport.ts +8 -4
- package/src/runtime/channels/spot-route-bridge-transport.ts +6 -4
- package/src/runtime/channels/spot-route-dispatch-strategy.ts +47 -18
- package/src/runtime/diagnostics/flow-context.ts +20 -7
- package/src/runtime/diagnostics/index.ts +1 -7
- package/src/runtime/diagnostics/message-flow.ts +47 -9
- package/src/runtime/diagnostics/runtime-metrics.ts +12 -10
- package/src/runtime/execution/index.ts +40 -14
- package/src/runtime/execution/serial-execution-queue.ts +33 -4
- package/src/runtime/execution/state-lane.ts +7 -0
- package/src/runtime/foundation/actor-join-recovery-codec.ts +2 -2
- package/src/runtime/foundation/durable-service-request.ts +137 -0
- package/src/runtime/foundation/operation-identity.ts +5 -1
- package/src/runtime/foundation/operation-registry.ts +98 -20
- package/src/runtime/foundation/raw-service-mesh-runtime.ts +704 -336
- package/src/runtime/foundation/service-liveness-registry.ts +39 -0
- package/src/runtime/foundation/service-mailbox.ts +8 -0
- package/src/runtime/foundation/service-maintenance-runtime.ts +1 -8
- package/src/runtime/foundation/service-relocation-object-owner.ts +55 -36
- package/src/runtime/foundation/service-relocation-runtime.ts +25 -4
- package/src/runtime/foundation/service-runtime-contracts.ts +19 -2
- package/src/runtime/foundation/service-session-binding-ingress-port.ts +2 -1
- package/src/runtime/foundation/service-stateful-registry.ts +38 -35
- package/src/runtime/foundation/service-stateful-runtime.ts +732 -275
- package/src/runtime/foundation/service-stateful-wire-codec.ts +49 -16
- package/src/runtime/foundation/service-topology-registry.ts +91 -36
- package/src/runtime/foundation/service-wire-binary-primitives.ts +35 -12
- package/src/runtime/foundation/service-wire-constants.generated.ts +1 -0
- package/src/runtime/foundation/service-wire-m6a-codec.ts +231 -76
- package/src/runtime/handlers/handler-instance-scope.ts +67 -16
- package/src/runtime/host/actor-packet-relay.ts +113 -94
- package/src/runtime/host/actor-placement-coordinator.ts +31 -8
- package/src/runtime/host/actor-runtime-options-factory.ts +13 -2
- package/src/runtime/host/actor-transfer-runtime.ts +104 -430
- package/src/runtime/host/application-job-queue.ts +160 -41
- package/src/runtime/host/entry-actor-runtime.ts +4 -0
- package/src/runtime/host/index.ts +473 -271
- package/src/runtime/host/location-runtime-owner.ts +2 -6
- package/src/runtime/host/mesh-router-resolver.ts +13 -5
- package/src/runtime/host/remote-bound-session-relay.ts +88 -271
- package/src/runtime/host/route-mesh-runtime.ts +12 -6
- package/src/runtime/host/runtime-shutdown.ts +15 -4
- package/src/runtime/host/service-relocation-control.ts +11 -5
- package/src/runtime/host/service-relocation-host-runtime.ts +1092 -759
- package/src/runtime/host/spot-address-transport.ts +4 -2
- package/src/runtime/host/spot-runtime-options-factory.ts +20 -7
- package/src/runtime/host/user-spot-creation-coordinator.ts +41 -100
- package/src/runtime/locations/actor-location-claims.ts +52 -30
- package/src/runtime/locations/auto-connect-loop.ts +22 -14
- package/src/runtime/locations/auto-connect-reconciler.ts +0 -6
- package/src/runtime/locations/auto-connect-types.ts +0 -1
- package/src/runtime/locations/descriptor-publication.ts +7 -0
- package/src/runtime/locations/domain-store-contract.ts +5 -0
- package/src/runtime/locations/in-memory-authority-store.ts +85 -23
- package/src/runtime/locations/in-memory-location-store.ts +1 -12
- package/src/runtime/locations/index.ts +1 -0
- package/src/runtime/locations/lease-tracker.ts +2 -9
- package/src/runtime/locations/lifecycle.ts +8 -26
- package/src/runtime/locations/location-store-repository.ts +628 -152
- package/src/runtime/locations/relocation-blob.ts +75 -1
- package/src/runtime/locations/request-source-resolver.ts +138 -0
- package/src/runtime/locations/resolvers.ts +2 -2
- package/src/runtime/locations/runtime.ts +98 -64
- package/src/runtime/messaging/framework-json-v1.ts +5 -325
- package/src/runtime/messaging/packet-name.ts +5 -25
- package/src/runtime/messaging/payload-codec.ts +8 -11
- package/src/runtime/messaging/request-result.ts +62 -0
- package/src/runtime/messaging/submission-result.ts +5 -1
- package/src/runtime/protocol/service_wire_codec.generated.ts +218 -5
- package/src/runtime/protocol/service_wire_pilot_codec.generated.ts +16 -13
- package/src/runtime/spots/formal-remote-actor-admission-registry.ts +46 -25
- package/src/runtime/spots/index.ts +389 -283
- package/src/runtime/spots/spot-activation-registry.ts +25 -13
- package/src/runtime/spots/spot-activation-state.ts +12 -19
- package/src/runtime/spots/spot-activation.ts +198 -96
- package/src/runtime/spots/spot-actor-admission-coordinator.ts +25 -55
- package/src/runtime/spots/spot-actor-membership.ts +0 -15
- package/src/runtime/spots/spot-actor-packet-dispatch.ts +56 -11
- package/src/runtime/spots/spot-actor-packet-drain.ts +9 -52
- package/src/runtime/spots/spot-entry-activation.ts +33 -21
- package/src/runtime/spots/spot-handler-registry.ts +56 -12
- package/src/runtime/spots/spot-manager-internal-contracts.ts +2 -2
- package/src/runtime/spots/spot-manager-public.ts +2 -2
- package/src/runtime/spots/spot-node-autoconnect.ts +28 -47
- package/src/runtime/spots/spot-node-runtime-manager.ts +197 -67
- package/src/runtime/spots/spot-outbound.ts +39 -19
- package/src/runtime/spots/spot-remote-codec.ts +9 -2
- package/src/runtime/spots/spot-routed-spot-packet-dispatch.ts +2 -1
- package/src/runtime/spots/spot-runtime-ports.ts +1 -1
- package/src/runtime/spots/spot-serial-executor.ts +97 -25
- package/src/runtime/spots/spot-serial-turn-executor.ts +22 -3
- package/src/runtime/spots/spot-subscription-dispatch.ts +1 -4
- package/src/runtime/spots/spot-timer.ts +418 -158
- package/src/runtime/streams/actor-session-binding-registry.ts +236 -64
- package/src/runtime/streams/actor-session-binding-runtime-owner.ts +16 -8
- package/src/runtime/streams/bound-actor-relay-sender.ts +23 -9
- package/src/runtime/streams/bound-session-service.ts +7 -10
- package/src/runtime/streams/index.ts +12 -6
- package/src/runtime/streams/managed-stream.ts +4 -2
- package/src/runtime/streams/native-fallback-bound-session.ts +14 -103
- package/src/runtime/streams/session-actor-coordinator.ts +39 -88
- package/src/runtime/streams/stream-binding-runtime-ports.ts +3 -9
- package/src/runtime/streams/stream-session-runtime.ts +13 -34
- package/src/runtime/workers/index.ts +1 -1
|
@@ -1,296 +1,40 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
2
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.FRAMEWORK_JSON_V1_PROFILE = void 0;
|
|
4
|
-
|
|
5
|
-
exports.
|
|
6
|
-
exports.
|
|
7
|
-
|
|
8
|
-
const UNSIGNED_64_MAX = (1n << 64n) - 1n;
|
|
9
|
-
function stringifyFrameworkJsonV1(value, schema) {
|
|
10
|
-
if (value === undefined || typeof value === 'function' || typeof value === 'symbol') {
|
|
11
|
-
throw new TypeError('framework-json-v1 payload is not a JSON value.');
|
|
12
|
-
}
|
|
13
|
-
const encoded = JSON.stringify(value, frameworkJsonV1Replacer);
|
|
14
|
-
if (schema !== undefined) {
|
|
15
|
-
validateFrameworkJsonV1Value(JSON.parse(encoded), schema, '$', false);
|
|
16
|
-
}
|
|
17
|
-
return encoded;
|
|
18
|
-
}
|
|
19
|
-
// Module-level so JSON.stringify does not allocate a fresh closure per
|
|
20
|
-
// encoded message. On the root call `this` is the {'': value} wrapper, so
|
|
21
|
-
// this[key] resolves the raw (pre-toJSON) source for every key including ''.
|
|
22
|
-
function frameworkJsonV1Replacer(key, item) {
|
|
23
|
-
const source = this[key];
|
|
24
|
-
if (typeof source === 'number' && !Number.isFinite(source)) {
|
|
25
|
-
throw new TypeError('framework-json-v1 only accepts finite JSON numbers.');
|
|
26
|
-
}
|
|
27
|
-
if (typeof source === 'bigint') {
|
|
28
|
-
if (source < SIGNED_64_MIN || source > UNSIGNED_64_MAX) {
|
|
29
|
-
throw new RangeError('framework-json-v1 64-bit integer is outside the supported range.');
|
|
30
|
-
}
|
|
31
|
-
return source.toString(10);
|
|
32
|
-
}
|
|
33
|
-
if (source instanceof Uint8Array) {
|
|
34
|
-
return Buffer.from(source.buffer, source.byteOffset, source.byteLength).toString('base64');
|
|
35
|
-
}
|
|
36
|
-
if (source instanceof Date) {
|
|
37
|
-
throw new TypeError('framework-json-v1 does not implicitly encode Date values.');
|
|
38
|
-
}
|
|
39
|
-
if (typeof source === 'object' &&
|
|
40
|
-
source !== null &&
|
|
41
|
-
typeof source.toJSON === 'function') {
|
|
42
|
-
throw new TypeError('framework-json-v1 does not implicitly invoke custom toJSON methods.');
|
|
43
|
-
}
|
|
44
|
-
return item;
|
|
45
|
-
}
|
|
46
|
-
function parseFrameworkJsonV1(text, options = {}, schema) {
|
|
47
|
-
if (text.charCodeAt(0) === 0xfeff) {
|
|
48
|
-
throw new SyntaxError('framework-json-v1 does not allow a UTF-8 BOM.');
|
|
49
|
-
}
|
|
50
|
-
new JsonPropertyScanner(text, options).scan();
|
|
51
|
-
const parsed = JSON.parse(text);
|
|
52
|
-
return schema === undefined ? parsed : validateFrameworkJsonV1Value(parsed, schema, '$', true);
|
|
53
|
-
}
|
|
54
|
-
// Sticky pattern shared across scans; matching happens synchronously so the
|
|
55
|
-
// mutable lastIndex never crosses calls.
|
|
56
|
-
const NUMBER_TOKEN_PATTERN = /-?(?:0|[1-9][0-9]*)(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?/uy;
|
|
57
|
-
const BASE64_PATTERN = /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/u;
|
|
58
|
-
const INT32_MIN = -2_147_483_648;
|
|
59
|
-
const INT32_MAX = 2_147_483_647;
|
|
60
|
-
const UINT32_MAX = 4_294_967_295;
|
|
61
|
-
function validateFrameworkJsonV1Value(value, schema, path, decode) {
|
|
62
|
-
switch (schema.type) {
|
|
63
|
-
case 'boolean':
|
|
64
|
-
if (typeof value !== 'boolean')
|
|
65
|
-
schemaFailure(path, 'a boolean');
|
|
66
|
-
return value;
|
|
67
|
-
case 'string':
|
|
68
|
-
if (typeof value !== 'string')
|
|
69
|
-
schemaFailure(path, 'a string');
|
|
70
|
-
return value;
|
|
71
|
-
case 'number':
|
|
72
|
-
if (typeof value !== 'number' || !Number.isFinite(value))
|
|
73
|
-
schemaFailure(path, 'a finite number');
|
|
74
|
-
return value;
|
|
75
|
-
case 'int32':
|
|
76
|
-
if (!Number.isInteger(value) ||
|
|
77
|
-
value < INT32_MIN ||
|
|
78
|
-
value > INT32_MAX) {
|
|
79
|
-
schemaFailure(path, 'an int32 JSON number');
|
|
80
|
-
}
|
|
81
|
-
return value;
|
|
82
|
-
case 'uint32':
|
|
83
|
-
if (!Number.isInteger(value) || value < 0 || value > UINT32_MAX) {
|
|
84
|
-
schemaFailure(path, 'a uint32 JSON number');
|
|
85
|
-
}
|
|
86
|
-
return value;
|
|
87
|
-
case 'int64':
|
|
88
|
-
return validateDecimalInteger(value, path, true, decode);
|
|
89
|
-
case 'uint64':
|
|
90
|
-
return validateDecimalInteger(value, path, false, decode);
|
|
91
|
-
case 'bytes': {
|
|
92
|
-
if (typeof value !== 'string' || !BASE64_PATTERN.test(value)) {
|
|
93
|
-
schemaFailure(path, 'padded RFC 4648 base64');
|
|
94
|
-
}
|
|
95
|
-
const bytes = Buffer.from(value, 'base64');
|
|
96
|
-
if (bytes.toString('base64') !== value)
|
|
97
|
-
schemaFailure(path, 'canonical padded RFC 4648 base64');
|
|
98
|
-
return decode ? Uint8Array.from(bytes) : value;
|
|
99
|
-
}
|
|
100
|
-
case 'enum':
|
|
101
|
-
if (typeof value !== 'string' || !schema.names.includes(value)) {
|
|
102
|
-
schemaFailure(path, `one of ${schema.names.join(', ')}`);
|
|
103
|
-
}
|
|
104
|
-
return value;
|
|
105
|
-
case 'nullable':
|
|
106
|
-
return value === null
|
|
107
|
-
? null
|
|
108
|
-
: validateFrameworkJsonV1Value(value, schema.value, path, decode);
|
|
109
|
-
case 'array':
|
|
110
|
-
if (!Array.isArray(value))
|
|
111
|
-
schemaFailure(path, 'an array');
|
|
112
|
-
return value.map((item, index) => validateFrameworkJsonV1Value(item, schema.items, `${path}[${index}]`, decode));
|
|
113
|
-
case 'record': {
|
|
114
|
-
if (!isJsonObject(value))
|
|
115
|
-
schemaFailure(path, 'an object');
|
|
116
|
-
const result = {};
|
|
117
|
-
for (const [name, item] of Object.entries(value)) {
|
|
118
|
-
result[name] = validateFrameworkJsonV1Value(item, schema.values, `${path}.${name}`, decode);
|
|
119
|
-
}
|
|
120
|
-
return decode ? result : value;
|
|
121
|
-
}
|
|
122
|
-
case 'object': {
|
|
123
|
-
if (!isJsonObject(value))
|
|
124
|
-
schemaFailure(path, 'an object');
|
|
125
|
-
const input = value;
|
|
126
|
-
for (const name of schema.required) {
|
|
127
|
-
if (!Object.prototype.hasOwnProperty.call(input, name)) {
|
|
128
|
-
throw new TypeError(`framework-json-v1 required property '${path}.${name}' is missing.`);
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
const result = {};
|
|
132
|
-
for (const [name, item] of Object.entries(input)) {
|
|
133
|
-
const propertySchema = schema.properties[name];
|
|
134
|
-
if (propertySchema === undefined) {
|
|
135
|
-
if (schema.additionalProperties === false) {
|
|
136
|
-
throw new TypeError(`framework-json-v1 property '${path}.${name}' is not allowed.`);
|
|
137
|
-
}
|
|
138
|
-
continue;
|
|
139
|
-
}
|
|
140
|
-
result[name] = validateFrameworkJsonV1Value(item, propertySchema, `${path}.${name}`, decode);
|
|
141
|
-
}
|
|
142
|
-
return decode ? result : value;
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
function validateDecimalInteger(value, path, signed, decode) {
|
|
147
|
-
if (typeof value !== 'string' || !/^(?:0|[1-9][0-9]*|-[1-9][0-9]*)$/u.test(value)) {
|
|
148
|
-
schemaFailure(path, signed ? 'a canonical int64 decimal string' : 'a canonical uint64 decimal string');
|
|
149
|
-
}
|
|
150
|
-
const parsed = BigInt(value);
|
|
151
|
-
const minimum = signed ? SIGNED_64_MIN : 0n;
|
|
152
|
-
const maximum = signed ? (1n << 63n) - 1n : UNSIGNED_64_MAX;
|
|
153
|
-
if (parsed < minimum || parsed > maximum)
|
|
154
|
-
schemaFailure(path, signed ? 'an int64 value' : 'a uint64 value');
|
|
155
|
-
return decode ? parsed : value;
|
|
156
|
-
}
|
|
157
|
-
function isJsonObject(value) {
|
|
158
|
-
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
159
|
-
}
|
|
160
|
-
function schemaFailure(path, expected) {
|
|
161
|
-
throw new TypeError(`framework-json-v1 value '${path}' must be ${expected}.`);
|
|
162
|
-
}
|
|
163
|
-
class JsonPropertyScanner {
|
|
164
|
-
text;
|
|
165
|
-
options;
|
|
166
|
-
index = 0;
|
|
167
|
-
constructor(text, options) {
|
|
168
|
-
this.text = text;
|
|
169
|
-
this.options = options;
|
|
170
|
-
}
|
|
171
|
-
scan() {
|
|
172
|
-
this.skipWhitespace();
|
|
173
|
-
this.scanValue();
|
|
174
|
-
this.skipWhitespace();
|
|
175
|
-
if (this.index !== this.text.length)
|
|
176
|
-
this.fail('trailing data');
|
|
177
|
-
}
|
|
178
|
-
scanValue() {
|
|
179
|
-
this.skipWhitespace();
|
|
180
|
-
const token = this.text[this.index];
|
|
181
|
-
if (token === '{')
|
|
182
|
-
return this.scanObject();
|
|
183
|
-
if (token === '[')
|
|
184
|
-
return this.scanArray();
|
|
185
|
-
if (token === '"') {
|
|
186
|
-
this.scanString();
|
|
187
|
-
return;
|
|
188
|
-
}
|
|
189
|
-
if (token === 't')
|
|
190
|
-
return this.scanLiteral('true');
|
|
191
|
-
if (token === 'f')
|
|
192
|
-
return this.scanLiteral('false');
|
|
193
|
-
if (token === 'n')
|
|
194
|
-
return this.scanLiteral('null');
|
|
195
|
-
this.scanNumber();
|
|
196
|
-
}
|
|
197
|
-
scanObject() {
|
|
198
|
-
this.index++;
|
|
199
|
-
this.skipWhitespace();
|
|
200
|
-
if (this.text[this.index] === '}') {
|
|
201
|
-
this.index++;
|
|
202
|
-
return;
|
|
203
|
-
}
|
|
204
|
-
const properties = new Set();
|
|
205
|
-
for (;;) {
|
|
206
|
-
this.skipWhitespace();
|
|
207
|
-
if (this.text[this.index] !== '"')
|
|
208
|
-
this.fail('object property name');
|
|
209
|
-
const property = this.scanString();
|
|
210
|
-
if (properties.has(property)) {
|
|
211
|
-
throw new SyntaxError(`framework-json-v1 duplicate property '${property}'.`);
|
|
212
|
-
}
|
|
213
|
-
properties.add(property);
|
|
214
|
-
if (this.options.rejectPropertyName?.(property) === true) {
|
|
215
|
-
throw new SyntaxError(`framework-json-v1 property '${property}' is not allowed.`);
|
|
216
|
-
}
|
|
217
|
-
this.skipWhitespace();
|
|
218
|
-
if (this.text[this.index] !== ':')
|
|
219
|
-
this.fail("':' after object property");
|
|
220
|
-
this.index++;
|
|
221
|
-
this.scanValue();
|
|
222
|
-
this.skipWhitespace();
|
|
223
|
-
const delimiter = this.text[this.index++];
|
|
224
|
-
if (delimiter === '}')
|
|
225
|
-
return;
|
|
226
|
-
if (delimiter !== ',')
|
|
227
|
-
this.fail("',' or '}' after object property");
|
|
228
|
-
}
|
|
229
|
-
}
|
|
230
|
-
scanArray() {
|
|
231
|
-
this.index++;
|
|
232
|
-
this.skipWhitespace();
|
|
233
|
-
if (this.text[this.index] === ']') {
|
|
234
|
-
this.index++;
|
|
235
|
-
return;
|
|
236
|
-
}
|
|
237
|
-
for (;;) {
|
|
238
|
-
this.scanValue();
|
|
239
|
-
this.skipWhitespace();
|
|
240
|
-
const delimiter = this.text[this.index++];
|
|
241
|
-
if (delimiter === ']')
|
|
242
|
-
return;
|
|
243
|
-
if (delimiter !== ',')
|
|
244
|
-
this.fail("',' or ']' after array item");
|
|
245
|
-
}
|
|
246
|
-
}
|
|
247
|
-
scanString() {
|
|
248
|
-
const start = this.index++;
|
|
249
|
-
let sawEscape = false;
|
|
250
|
-
for (;;) {
|
|
251
|
-
if (this.index >= this.text.length)
|
|
252
|
-
this.fail('unterminated string');
|
|
253
|
-
const character = this.text[this.index++];
|
|
254
|
-
if (character === '"') {
|
|
255
|
-
// Without escapes the token content is verbatim; the outer
|
|
256
|
-
// JSON.parse pass still rejects any raw control characters.
|
|
257
|
-
return sawEscape
|
|
258
|
-
? JSON.parse(this.text.slice(start, this.index))
|
|
259
|
-
: this.text.slice(start + 1, this.index - 1);
|
|
260
|
-
}
|
|
261
|
-
if (character === '\\') {
|
|
262
|
-
sawEscape = true;
|
|
263
|
-
if (this.index >= this.text.length)
|
|
264
|
-
this.fail('unterminated escape');
|
|
265
|
-
const escaped = this.text[this.index++];
|
|
266
|
-
if (escaped === 'u')
|
|
267
|
-
this.index += 4;
|
|
268
|
-
}
|
|
269
|
-
}
|
|
270
|
-
}
|
|
271
|
-
scanLiteral(value) {
|
|
272
|
-
if (!this.text.startsWith(value, this.index))
|
|
273
|
-
this.fail(value);
|
|
274
|
-
this.index += value.length;
|
|
275
|
-
}
|
|
276
|
-
scanNumber() {
|
|
277
|
-
NUMBER_TOKEN_PATTERN.lastIndex = this.index;
|
|
278
|
-
const match = NUMBER_TOKEN_PATTERN.exec(this.text);
|
|
279
|
-
if (match === null)
|
|
280
|
-
this.fail('JSON value');
|
|
281
|
-
this.index += match[0].length;
|
|
282
|
-
}
|
|
283
|
-
skipWhitespace() {
|
|
284
|
-
for (;;) {
|
|
285
|
-
const code = this.text.charCodeAt(this.index);
|
|
286
|
-
if (code === 0x20 || code === 0x09 || code === 0x0a || code === 0x0d) {
|
|
287
|
-
this.index += 1;
|
|
288
|
-
continue;
|
|
289
|
-
}
|
|
290
|
-
return;
|
|
291
|
-
}
|
|
292
|
-
}
|
|
293
|
-
fail(expected) {
|
|
294
|
-
throw new SyntaxError(`framework-json-v1 expected ${expected} at offset ${this.index}.`);
|
|
295
|
-
}
|
|
296
|
-
}
|
|
36
|
+
exports.parseFrameworkJsonV1 = exports.stringifyFrameworkJsonV1 = exports.FRAMEWORK_JSON_V1_PROFILE = void 0;
|
|
37
|
+
const profile = __importStar(require("@zlink-systems/stream-wire/internal/json"));
|
|
38
|
+
exports.FRAMEWORK_JSON_V1_PROFILE = profile.FRAMEWORK_JSON_V1_PROFILE;
|
|
39
|
+
exports.stringifyFrameworkJsonV1 = profile.stringifyFrameworkJsonV1;
|
|
40
|
+
exports.parseFrameworkJsonV1 = profile.parseFrameworkJsonV1;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { ZLinkPacketJsonContract } from '../../contracts/Handlers/JsonContract';
|
|
2
2
|
export declare function resolveFrameworkPacketName(payload: unknown, explicitPacketName: string | undefined, surface: string): string;
|
|
3
3
|
export declare function resolveFrameworkPacketJsonContract(payload: unknown, explicitPacketName?: string): ZLinkPacketJsonContract | undefined;
|
|
4
|
-
export
|
|
4
|
+
export { readFrameworkPacketJsonContract } from '@zlink-systems/stream-wire/internal/json';
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.readFrameworkPacketJsonContract = void 0;
|
|
3
4
|
exports.resolveFrameworkPacketName = resolveFrameworkPacketName;
|
|
4
5
|
exports.resolveFrameworkPacketJsonContract = resolveFrameworkPacketJsonContract;
|
|
5
|
-
|
|
6
|
+
const json_1 = require("@zlink-systems/stream-wire/internal/json");
|
|
6
7
|
const Attributes_1 = require("../../contracts/Handlers/Attributes");
|
|
7
8
|
const configuration_1 = require("../configuration");
|
|
8
9
|
const STRUCTURAL_PAYLOAD_NAMES = new Set([
|
|
@@ -18,7 +19,7 @@ const STRUCTURAL_PAYLOAD_NAMES = new Set([
|
|
|
18
19
|
'Date'
|
|
19
20
|
]);
|
|
20
21
|
function resolveFrameworkPacketName(payload, explicitPacketName, surface) {
|
|
21
|
-
const packetName = normalizePacketName(explicitPacketName) ??
|
|
22
|
+
const packetName = (0, json_1.normalizePacketName)(explicitPacketName) ??
|
|
22
23
|
tryDecoratorPacketName(payload) ??
|
|
23
24
|
tryConstructorPacketName(payload);
|
|
24
25
|
if (packetName === undefined) {
|
|
@@ -32,20 +33,10 @@ function resolveFrameworkPacketJsonContract(payload, explicitPacketName) {
|
|
|
32
33
|
const constructor = payload.constructor;
|
|
33
34
|
if (constructor === undefined || constructor === Object)
|
|
34
35
|
return undefined;
|
|
35
|
-
return readFrameworkPacketJsonContract(constructor, explicitPacketName);
|
|
36
|
-
}
|
|
37
|
-
function readFrameworkPacketJsonContract(type, explicitPacketName) {
|
|
38
|
-
const expectedPacketName = normalizePacketName(explicitPacketName);
|
|
39
|
-
for (const metadata of (0, Attributes_1.readZLinkDecoratorMetadata)(type)) {
|
|
40
|
-
if (metadata.kind === 'packet' &&
|
|
41
|
-
metadata.jsonContract !== undefined &&
|
|
42
|
-
(expectedPacketName === undefined ||
|
|
43
|
-
normalizePacketName(metadata.packetName) === expectedPacketName)) {
|
|
44
|
-
return metadata.jsonContract;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
return undefined;
|
|
36
|
+
return (0, json_1.readFrameworkPacketJsonContract)(constructor, explicitPacketName);
|
|
48
37
|
}
|
|
38
|
+
var json_2 = require("@zlink-systems/stream-wire/internal/json");
|
|
39
|
+
Object.defineProperty(exports, "readFrameworkPacketJsonContract", { enumerable: true, get: function () { return json_2.readFrameworkPacketJsonContract; } });
|
|
49
40
|
function tryDecoratorPacketName(payload) {
|
|
50
41
|
if (typeof payload !== 'object' || payload === null) {
|
|
51
42
|
return undefined;
|
|
@@ -56,7 +47,7 @@ function tryDecoratorPacketName(payload) {
|
|
|
56
47
|
}
|
|
57
48
|
for (const metadata of (0, Attributes_1.readZLinkDecoratorMetadata)(constructor)) {
|
|
58
49
|
if (metadata.kind === 'packet') {
|
|
59
|
-
return normalizePacketName(metadata.packetName);
|
|
50
|
+
return (0, json_1.normalizePacketName)(metadata.packetName);
|
|
60
51
|
}
|
|
61
52
|
}
|
|
62
53
|
return undefined;
|
|
@@ -69,12 +60,5 @@ function tryConstructorPacketName(payload) {
|
|
|
69
60
|
if (typeof name !== 'string' || STRUCTURAL_PAYLOAD_NAMES.has(name)) {
|
|
70
61
|
return undefined;
|
|
71
62
|
}
|
|
72
|
-
return normalizePacketName(name);
|
|
73
|
-
}
|
|
74
|
-
function normalizePacketName(value) {
|
|
75
|
-
if (typeof value !== 'string') {
|
|
76
|
-
return undefined;
|
|
77
|
-
}
|
|
78
|
-
const trimmed = value.trim();
|
|
79
|
-
return trimmed.length > 0 ? trimmed : undefined;
|
|
63
|
+
return (0, json_1.normalizePacketName)(name);
|
|
80
64
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ZLinkMessage, type Type, type ZLinkMessageSerializer } from '../../contracts';
|
|
1
|
+
import { ZLinkMessage, type Type, ZLinkEncodedPayload, type ZLinkMessageSerializer } from '../../contracts';
|
|
2
2
|
import type { Message } from '../../contracts/Common/Message';
|
|
3
3
|
export interface ZLinkSerializerRegistryLike {
|
|
4
4
|
readonly serializers: ReadonlyMap<string, ZLinkMessageSerializer>;
|
|
@@ -22,4 +22,10 @@ export declare function wrapFrameworkPayloadMessage(message: Message, registry?:
|
|
|
22
22
|
export declare function selectDefaultSerializer(registry?: ZLinkSerializerRegistryLike | ReadonlyMap<string, ZLinkMessageSerializer>): ZLinkMessageSerializer | undefined;
|
|
23
23
|
export declare function selectSerializer(value: unknown, registry?: ZLinkSerializerRegistryLike | ReadonlyMap<string, ZLinkMessageSerializer>, declaredType?: Type): ZLinkMessageSerializer | undefined;
|
|
24
24
|
export declare function selectSerializerWithContentType(value: unknown, registry?: ZLinkSerializerRegistryLike | ReadonlyMap<string, ZLinkMessageSerializer>, declaredType?: Type): ZLinkSerializerSelectionEntry | undefined;
|
|
25
|
+
/**
|
|
26
|
+
* Wraps received bytes for a serializer without copying them. Binding receive
|
|
27
|
+
* Buffers keep their storage after the message closes and nothing writes to
|
|
28
|
+
* them, so the payload may adopt them; the public from() and data() still copy.
|
|
29
|
+
*/
|
|
30
|
+
export declare function encodedPayloadFromOwned(bytes: Uint8Array): ZLinkEncodedPayload;
|
|
25
31
|
export {};
|
|
@@ -9,6 +9,7 @@ exports.wrapFrameworkPayloadMessage = wrapFrameworkPayloadMessage;
|
|
|
9
9
|
exports.selectDefaultSerializer = selectDefaultSerializer;
|
|
10
10
|
exports.selectSerializer = selectSerializer;
|
|
11
11
|
exports.selectSerializerWithContentType = selectSerializerWithContentType;
|
|
12
|
+
exports.encodedPayloadFromOwned = encodedPayloadFromOwned;
|
|
12
13
|
const stream_wire_1 = require("@zlink-systems/stream-wire");
|
|
13
14
|
const framework_errors_internal_1 = require("../framework-errors-internal");
|
|
14
15
|
const runtime_message_1 = require("../backend/runtime-message");
|
|
@@ -250,13 +251,13 @@ function toRuntimeMessage(payload) {
|
|
|
250
251
|
? runtime_message_1.ZLinkBufferMessage.from(payload.data())
|
|
251
252
|
: runtime_message_1.ZLinkBufferMessage.fromOwned(owned);
|
|
252
253
|
}
|
|
254
|
+
/**
|
|
255
|
+
* Wraps received bytes for a serializer without copying them. Binding receive
|
|
256
|
+
* Buffers keep their storage after the message closes and nothing writes to
|
|
257
|
+
* them, so the payload may adopt them; the public from() and data() still copy.
|
|
258
|
+
*/
|
|
253
259
|
function encodedPayloadFromOwned(bytes) {
|
|
254
|
-
|
|
255
|
-
return contracts_1.ZLinkEncodedPayload.from(bytes);
|
|
256
|
-
}
|
|
257
|
-
const payload = contracts_1.ZLinkEncodedPayload.from(Buffer.alloc(0));
|
|
258
|
-
(0, encoded_payload_storage_1.adoptEncodedPayload)(payload, bytes);
|
|
259
|
-
return payload;
|
|
260
|
+
return contracts_1.ZLinkEncodedPayload.fromOwned(bytes);
|
|
260
261
|
}
|
|
261
262
|
function rememberContentType(message, contentType) {
|
|
262
263
|
encodedContentTypes.set(message, contentType);
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createZLinkRequest = createZLinkRequest;
|
|
4
|
+
const completedAdmission = Promise.resolve();
|
|
5
|
+
const ignoreAdmissionFailure = () => { };
|
|
6
|
+
class RequestAdmission {
|
|
7
|
+
admitted;
|
|
8
|
+
resolveAdmission;
|
|
9
|
+
rejectAdmission;
|
|
10
|
+
confirm() {
|
|
11
|
+
this.admitted ??= completedAdmission;
|
|
12
|
+
this.resolveAdmission?.();
|
|
13
|
+
}
|
|
14
|
+
fail(error) {
|
|
15
|
+
if (this.admitted === undefined) {
|
|
16
|
+
this.admitted = Promise.reject(error);
|
|
17
|
+
// Existing callers may observe only the reply Promise. Observing the
|
|
18
|
+
// rejection here leaves the public admission Promise rejected.
|
|
19
|
+
void this.admitted.catch(ignoreAdmissionFailure);
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
this.rejectAdmission?.(error);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
observe() {
|
|
26
|
+
if (this.admitted === undefined) {
|
|
27
|
+
this.admitted = new Promise((resolve, reject) => {
|
|
28
|
+
this.resolveAdmission = resolve;
|
|
29
|
+
this.rejectAdmission = reject;
|
|
30
|
+
});
|
|
31
|
+
void this.admitted.catch(ignoreAdmissionFailure);
|
|
32
|
+
}
|
|
33
|
+
return this.admitted;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
function createZLinkRequest(start, deliverReply) {
|
|
37
|
+
const admission = new RequestAdmission();
|
|
38
|
+
let pending;
|
|
39
|
+
try {
|
|
40
|
+
pending = start(() => admission.confirm());
|
|
41
|
+
}
|
|
42
|
+
catch (error) {
|
|
43
|
+
pending = Promise.reject(error);
|
|
44
|
+
}
|
|
45
|
+
const observed = pending.then((value) => {
|
|
46
|
+
// A successful reply proves admission even without an observation callback.
|
|
47
|
+
admission.confirm();
|
|
48
|
+
return value;
|
|
49
|
+
}, (error) => {
|
|
50
|
+
admission.fail(error);
|
|
51
|
+
throw error;
|
|
52
|
+
});
|
|
53
|
+
const reply = deliverReply?.(observed) ?? observed;
|
|
54
|
+
return Object.defineProperty(reply, 'admitted', {
|
|
55
|
+
get: () => admission.observe()
|
|
56
|
+
});
|
|
57
|
+
}
|
|
@@ -10,6 +10,7 @@ export declare enum ZLinkSubmitStatus {
|
|
|
10
10
|
export interface ZLinkSubmitResult {
|
|
11
11
|
readonly status: ZLinkSubmitStatus;
|
|
12
12
|
}
|
|
13
|
+
export declare const submittedResult: ZLinkSubmitResult;
|
|
13
14
|
/** Projects typed submit failure; capacity refusal has no admission wait token. */
|
|
14
15
|
export declare function submitToRequestResult(result: number, phase: 'submit' | 'completion'): number;
|
|
15
16
|
export declare function classifySubmitResult(result: number, operation: string, phase?: 'submit' | 'completion'): ZLinkSubmitResult;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ZLinkSubmitStatus = void 0;
|
|
3
|
+
exports.submittedResult = exports.ZLinkSubmitStatus = void 0;
|
|
4
4
|
exports.submitToRequestResult = submitToRequestResult;
|
|
5
5
|
exports.classifySubmitResult = classifySubmitResult;
|
|
6
6
|
exports.requireOneWayCompletion = requireOneWayCompletion;
|
|
@@ -19,6 +19,9 @@ var ZLinkSubmitStatus;
|
|
|
19
19
|
ZLinkSubmitStatus["RouteNotConnected"] = "routeNotConnected";
|
|
20
20
|
ZLinkSubmitStatus["Shutdown"] = "shutdown";
|
|
21
21
|
})(ZLinkSubmitStatus || (exports.ZLinkSubmitStatus = ZLinkSubmitStatus = {}));
|
|
22
|
+
exports.submittedResult = Object.freeze({
|
|
23
|
+
status: ZLinkSubmitStatus.Submitted
|
|
24
|
+
});
|
|
22
25
|
/** Projects typed submit failure; capacity refusal has no admission wait token. */
|
|
23
26
|
function submitToRequestResult(result, phase) {
|
|
24
27
|
switch (result) {
|
|
@@ -50,7 +53,7 @@ function classifySubmitResult(result, operation, phase = 'submit') {
|
|
|
50
53
|
const terminal = submitToRequestResult(result, phase);
|
|
51
54
|
switch (terminal) {
|
|
52
55
|
case runtime_values_1.RequestResult.Ok:
|
|
53
|
-
return
|
|
56
|
+
return exports.submittedResult;
|
|
54
57
|
case runtime_values_1.RequestResult.TimedOut:
|
|
55
58
|
return { status: ZLinkSubmitStatus.TimedOut };
|
|
56
59
|
case runtime_values_1.RequestResult.NotFound:
|
|
@@ -212,6 +212,10 @@ export type SourceCleanupState = "pending" | "completed" | "sourceLeaseExpired";
|
|
|
212
212
|
export declare function enumWireSourceCleanupState(value: SourceCleanupState): number;
|
|
213
213
|
export declare function decodeSourceCleanupState(bytes: Uint8Array, context: ServiceWireDecoderContext): SourceCleanupState;
|
|
214
214
|
export declare function encodeSourceCleanupState(value: SourceCleanupState, context: ServiceWireDecoderContext): Uint8Array;
|
|
215
|
+
export type SessionSealResult = "sealed" | "bindingAbsent";
|
|
216
|
+
export declare function enumWireSessionSealResult(value: SessionSealResult): number;
|
|
217
|
+
export declare function decodeSessionSealResult(bytes: Uint8Array, context: ServiceWireDecoderContext): SessionSealResult;
|
|
218
|
+
export declare function encodeSessionSealResult(value: SessionSealResult, context: ServiceWireDecoderContext): Uint8Array;
|
|
215
219
|
export type ReplyRelayAckStatus = "terminalReceived" | "alreadyTerminal";
|
|
216
220
|
export declare function enumWireReplyRelayAckStatus(value: ReplyRelayAckStatus): number;
|
|
217
221
|
export declare function decodeReplyRelayAckStatus(bytes: Uint8Array, context: ServiceWireDecoderContext): ReplyRelayAckStatus;
|
|
@@ -1169,6 +1173,20 @@ export declare function encodeRelocationPendingTimerTick(value: RelocationPendin
|
|
|
1169
1173
|
export type RelocationPendingTimerTickVector = readonly RelocationPendingTimerTick[];
|
|
1170
1174
|
export declare function decodeRelocationPendingTimerTickVector(bytes: Uint8Array, context: ServiceWireDecoderContext): RelocationPendingTimerTickVector;
|
|
1171
1175
|
export declare function encodeRelocationPendingTimerTickVector(value: RelocationPendingTimerTickVector, context: ServiceWireDecoderContext): Uint8Array;
|
|
1176
|
+
export type RelocationSessionBinding = {
|
|
1177
|
+
readonly participantId: NonzeroU64;
|
|
1178
|
+
readonly sessionOwnerNodeRid: Rid;
|
|
1179
|
+
readonly sessionOwnerNodeGeneration: NonzeroU64;
|
|
1180
|
+
readonly sessionOwnerId: Text8;
|
|
1181
|
+
readonly sessionOwnerLeaseGeneration: NonzeroU64;
|
|
1182
|
+
readonly sessionRid: Rid;
|
|
1183
|
+
readonly bindingGeneration: NonzeroU64;
|
|
1184
|
+
};
|
|
1185
|
+
export declare function decodeRelocationSessionBinding(bytes: Uint8Array, context: ServiceWireDecoderContext): RelocationSessionBinding;
|
|
1186
|
+
export declare function encodeRelocationSessionBinding(value: RelocationSessionBinding, context: ServiceWireDecoderContext): Uint8Array;
|
|
1187
|
+
export type RelocationSessionBindingVector = readonly RelocationSessionBinding[];
|
|
1188
|
+
export declare function decodeRelocationSessionBindingVector(bytes: Uint8Array, context: ServiceWireDecoderContext): RelocationSessionBindingVector;
|
|
1189
|
+
export declare function encodeRelocationSessionBindingVector(value: RelocationSessionBindingVector, context: ServiceWireDecoderContext): Uint8Array;
|
|
1172
1190
|
export type RelocationEnvelopeV1 = {
|
|
1173
1191
|
readonly relocation: RelocationId;
|
|
1174
1192
|
readonly object: RelocationObjectIdentity;
|
|
@@ -1177,6 +1195,7 @@ export type RelocationEnvelopeV1 = {
|
|
|
1177
1195
|
readonly savedWork: SavedWorkVector;
|
|
1178
1196
|
readonly timerRegistrations: RelocationTimerRegistrationVector;
|
|
1179
1197
|
readonly pendingTimerTicks: RelocationPendingTimerTickVector;
|
|
1198
|
+
readonly sessionBindings: RelocationSessionBindingVector;
|
|
1180
1199
|
};
|
|
1181
1200
|
export declare function decodeRelocationEnvelopeV1(bytes: Uint8Array, context: ServiceWireDecoderContext): RelocationEnvelopeV1;
|
|
1182
1201
|
export declare function encodeRelocationEnvelopeV1(value: RelocationEnvelopeV1, context: ServiceWireDecoderContext): Uint8Array;
|
|
@@ -1504,6 +1523,7 @@ export type RelocationPrepareCommand = {
|
|
|
1504
1523
|
readonly payloadChunkCount: RelocationChunkCount;
|
|
1505
1524
|
readonly payloadChecksumCrc32c: U32;
|
|
1506
1525
|
readonly applicationVersion: ApplicationVersion;
|
|
1526
|
+
readonly deadlineUnixMs: NonzeroU64;
|
|
1507
1527
|
};
|
|
1508
1528
|
export declare function decodeRelocationPrepareCommand(frames: readonly Uint8Array[], context: ServiceWireDecoderContext): RelocationPrepareCommand;
|
|
1509
1529
|
export declare function encodeRelocationPrepareCommand(value: RelocationPrepareCommand, context: ServiceWireDecoderContext): readonly Uint8Array[];
|
|
@@ -1521,6 +1541,8 @@ export type SessionRelocationSealCommand = {
|
|
|
1521
1541
|
readonly sessionOwnerLeaseGeneration: NonzeroU64;
|
|
1522
1542
|
readonly sessionRid: Rid;
|
|
1523
1543
|
readonly bindingGeneration: NonzeroU64;
|
|
1544
|
+
readonly targetNodeRid: Rid;
|
|
1545
|
+
readonly targetNodeGeneration: NonzeroU64;
|
|
1524
1546
|
};
|
|
1525
1547
|
export declare function decodeSessionRelocationSealCommand(frames: readonly Uint8Array[], context: ServiceWireDecoderContext): SessionRelocationSealCommand;
|
|
1526
1548
|
export declare function encodeSessionRelocationSealCommand(value: SessionRelocationSealCommand, context: ServiceWireDecoderContext): readonly Uint8Array[];
|
|
@@ -1537,6 +1559,7 @@ export type SessionRelocationSealedCommand = {
|
|
|
1537
1559
|
readonly sessionOwnerLeaseGeneration: NonzeroU64;
|
|
1538
1560
|
readonly sessionRid: Rid;
|
|
1539
1561
|
readonly bindingGeneration: NonzeroU64;
|
|
1562
|
+
readonly sealResult: SessionSealResult;
|
|
1540
1563
|
};
|
|
1541
1564
|
export declare function decodeSessionRelocationSealedCommand(frames: readonly Uint8Array[], context: ServiceWireDecoderContext): SessionRelocationSealedCommand;
|
|
1542
1565
|
export declare function encodeSessionRelocationSealedCommand(value: SessionRelocationSealedCommand, context: ServiceWireDecoderContext): readonly Uint8Array[];
|
|
@@ -1660,7 +1683,17 @@ export type RelocationFailedCommand = {
|
|
|
1660
1683
|
export declare function decodeRelocationFailedCommand(frames: readonly Uint8Array[], context: ServiceWireDecoderContext): RelocationFailedCommand;
|
|
1661
1684
|
export declare function encodeRelocationFailedCommand(value: RelocationFailedCommand, context: ServiceWireDecoderContext): readonly Uint8Array[];
|
|
1662
1685
|
export declare function validateRelocationFailedCommandRuntimePredicates(value: any, context: ServiceWireDecoderContext): void;
|
|
1663
|
-
export type
|
|
1686
|
+
export type BoundSessionCloseCommand = {
|
|
1687
|
+
readonly command: "boundSessionClose";
|
|
1688
|
+
readonly flags: number;
|
|
1689
|
+
readonly correlation: NonzeroU64;
|
|
1690
|
+
readonly actor: ActorRef;
|
|
1691
|
+
readonly session: RetiredBoundSessionRouteFence;
|
|
1692
|
+
};
|
|
1693
|
+
export declare function decodeBoundSessionCloseCommand(frames: readonly Uint8Array[], context: ServiceWireDecoderContext): BoundSessionCloseCommand;
|
|
1694
|
+
export declare function encodeBoundSessionCloseCommand(value: BoundSessionCloseCommand, context: ServiceWireDecoderContext): readonly Uint8Array[];
|
|
1695
|
+
export declare function validateBoundSessionCloseCommandRuntimePredicates(value: any, context: ServiceWireDecoderContext): void;
|
|
1696
|
+
export type ServiceWireCommand = HelloCommand | AdmitCommand | RejectCommand | UpdateCommand | LivenessProbeCommand | LivenessAckCommand | NodeSendCommand | NodeRequestCommand | ChannelSendCommand | ChannelRequestCommand | ReplyCommand | SpotSendCommand | SpotRequestCommand | LogicalMulticastCommand | ActorSendCommand | ActorRequestCommand | ActorLookupCommand | ActorDestroyCommand | ActorJoinCommand | ActorLeftCommand | RelocationReadyCommand | RelocationDataCommand | ReplyRelayCommand | RelocationCutoverCommand | BoundSessionSendCommand | ActorJoinedCommand | BoundSessionBindCommand | InstanceSpotCommand | RelocationPrepareCommand | SessionRelocationSealCommand | SessionRelocationSealedCommand | SessionRelocationRouteCommand | ReplyRelayAckCommand | UserSpotCreateCommand | UserSpotCloseCommand | ActorCreateCommand | MessageFollowCommand | BoundSessionReplacedCommand | RelocationStateCommand | RelocationFailedCommand | BoundSessionCloseCommand;
|
|
1664
1697
|
export declare function decodeAuthorityPayloadV1DurableFormat(bytes: Uint8Array, context: ServiceWireDecoderContext): AuthorityPayloadV1;
|
|
1665
1698
|
export declare function encodeAuthorityPayloadV1DurableFormat(value: AuthorityPayloadV1, context: ServiceWireDecoderContext): Uint8Array;
|
|
1666
1699
|
export declare function decodeInstanceActivationRecoveryV1DurableFormat(bytes: Uint8Array, context: ServiceWireDecoderContext): InstanceActivationRecoveryV1;
|