@spine-event-engine/server 2.0.0-snapshot.23 → 2.0.0-snapshot.25
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/README.md +38 -11
- package/REFERENCE.md +278 -141
- package/dist/agent/agent-acceptance-receipts.d.ts +69 -0
- package/dist/agent/agent-acceptance-receipts.d.ts.map +1 -0
- package/dist/agent/agent-acceptance-receipts.js +198 -0
- package/dist/agent/agent-acceptance-receipts.js.map +1 -0
- package/dist/agent/agent-execution-capacity.d.ts +37 -9
- package/dist/agent/agent-execution-capacity.d.ts.map +1 -1
- package/dist/agent/agent-execution-capacity.js +73 -15
- package/dist/agent/agent-execution-capacity.js.map +1 -1
- package/dist/agent/agent-history.d.ts +15 -10
- package/dist/agent/agent-history.d.ts.map +1 -1
- package/dist/agent/agent-history.js +26 -14
- package/dist/agent/agent-history.js.map +1 -1
- package/dist/agent/agent-live-ai-audit.d.ts +95 -0
- package/dist/agent/agent-live-ai-audit.d.ts.map +1 -0
- package/dist/agent/agent-live-ai-audit.js +290 -0
- package/dist/agent/agent-live-ai-audit.js.map +1 -0
- package/dist/agent/agent-live-ai-runtime.d.ts +300 -0
- package/dist/agent/agent-live-ai-runtime.d.ts.map +1 -0
- package/dist/agent/agent-live-ai-runtime.js +611 -0
- package/dist/agent/agent-live-ai-runtime.js.map +1 -0
- package/dist/agent/agent-live-audit.d.ts +67 -0
- package/dist/agent/agent-live-audit.d.ts.map +1 -0
- package/dist/agent/agent-live-audit.js +121 -0
- package/dist/agent/agent-live-audit.js.map +1 -0
- package/dist/agent/agent-live-budget.d.ts +84 -0
- package/dist/agent/agent-live-budget.d.ts.map +1 -0
- package/dist/agent/agent-live-budget.js +161 -0
- package/dist/agent/agent-live-budget.js.map +1 -0
- package/dist/agent/agent-live-fault.d.ts +18 -0
- package/dist/agent/agent-live-fault.d.ts.map +1 -0
- package/dist/agent/{agent-execution-fault.js → agent-live-fault.js} +7 -7
- package/dist/agent/agent-live-fault.js.map +1 -0
- package/dist/agent/agent-live-inputs.d.ts +74 -0
- package/dist/agent/agent-live-inputs.d.ts.map +1 -0
- package/dist/agent/agent-live-inputs.js +15 -0
- package/dist/agent/agent-live-inputs.js.map +1 -0
- package/dist/agent/agent-live-interaction-events.d.ts +46 -0
- package/dist/agent/agent-live-interaction-events.d.ts.map +1 -0
- package/dist/agent/agent-live-interaction-events.js +104 -0
- package/dist/agent/agent-live-interaction-events.js.map +1 -0
- package/dist/agent/agent-live-mcp-controls.d.ts +129 -0
- package/dist/agent/agent-live-mcp-controls.d.ts.map +1 -0
- package/dist/agent/agent-live-mcp-controls.js +228 -0
- package/dist/agent/agent-live-mcp-controls.js.map +1 -0
- package/dist/agent/agent-live-mcp-host.d.ts +88 -0
- package/dist/agent/agent-live-mcp-host.d.ts.map +1 -0
- package/dist/agent/{agent-mcp-host.js → agent-live-mcp-host.js} +1 -1
- package/dist/agent/agent-live-mcp-host.js.map +1 -0
- package/dist/agent/{agent-mcp-runtime.d.ts → agent-live-mcp-runtime.d.ts} +6 -6
- package/dist/agent/agent-live-mcp-runtime.d.ts.map +1 -0
- package/dist/agent/{agent-mcp-runtime.js → agent-live-mcp-runtime.js} +13 -42
- package/dist/agent/agent-live-mcp-runtime.js.map +1 -0
- package/dist/agent/agent-live-read-runtime.d.ts +61 -0
- package/dist/agent/agent-live-read-runtime.d.ts.map +1 -0
- package/dist/agent/agent-live-read-runtime.js +121 -0
- package/dist/agent/agent-live-read-runtime.js.map +1 -0
- package/dist/agent/agent-model-selection.d.ts +21 -34
- package/dist/agent/agent-model-selection.d.ts.map +1 -1
- package/dist/agent/agent-model-selection.js +61 -78
- package/dist/agent/agent-model-selection.js.map +1 -1
- package/dist/bus/command-bus.d.ts +14 -18
- package/dist/bus/command-bus.d.ts.map +1 -1
- package/dist/bus/command-bus.js +31 -48
- package/dist/bus/command-bus.js.map +1 -1
- package/dist/bus/event-bus.d.ts +82 -104
- package/dist/bus/event-bus.d.ts.map +1 -1
- package/dist/bus/event-bus.js +87 -127
- package/dist/bus/event-bus.js.map +1 -1
- package/dist/context/bounded-context.d.ts +143 -91
- package/dist/context/bounded-context.d.ts.map +1 -1
- package/dist/context/bounded-context.js +753 -359
- package/dist/context/bounded-context.js.map +1 -1
- package/dist/context/entity-inbox.d.ts +7 -2
- package/dist/context/entity-inbox.d.ts.map +1 -1
- package/dist/context/entity-inbox.js +43 -20
- package/dist/context/entity-inbox.js.map +1 -1
- package/dist/context/local-inbox-handoff.d.ts +35 -34
- package/dist/context/local-inbox-handoff.d.ts.map +1 -1
- package/dist/context/local-inbox-handoff.js +123 -135
- package/dist/context/local-inbox-handoff.js.map +1 -1
- package/dist/context/projection-handoff.d.ts +2 -2
- package/dist/context/projection-handoff.d.ts.map +1 -1
- package/dist/context/projection-handoff.js +12 -8
- package/dist/context/projection-handoff.js.map +1 -1
- package/dist/context/tenant-index.d.ts +36 -31
- package/dist/context/tenant-index.d.ts.map +1 -1
- package/dist/context/tenant-index.js +123 -125
- package/dist/context/tenant-index.js.map +1 -1
- package/dist/context/tenant-unknown-error.d.ts +33 -0
- package/dist/context/tenant-unknown-error.d.ts.map +1 -0
- package/dist/context/tenant-unknown-error.js +75 -0
- package/dist/context/tenant-unknown-error.js.map +1 -0
- package/dist/delivery/agent-delivery-scope.d.ts +66 -0
- package/dist/delivery/agent-delivery-scope.d.ts.map +1 -0
- package/dist/delivery/agent-delivery-scope.js +44 -0
- package/dist/delivery/agent-delivery-scope.js.map +1 -0
- package/dist/delivery/delivery-builder.d.ts +25 -1
- package/dist/delivery/delivery-builder.d.ts.map +1 -1
- package/dist/delivery/delivery-builder.js +89 -0
- package/dist/delivery/delivery-builder.js.map +1 -1
- package/dist/delivery/delivery-monitor.d.ts +12 -9
- package/dist/delivery/delivery-monitor.d.ts.map +1 -1
- package/dist/delivery/delivery-monitor.js +15 -9
- package/dist/delivery/delivery-monitor.js.map +1 -1
- package/dist/delivery/delivery-ports.d.ts +6 -13
- package/dist/delivery/delivery-ports.d.ts.map +1 -1
- package/dist/delivery/delivery-run-control.d.ts +21 -0
- package/dist/delivery/delivery-run-control.d.ts.map +1 -1
- package/dist/delivery/delivery-run-control.js +10 -0
- package/dist/delivery/delivery-run-control.js.map +1 -1
- package/dist/delivery/delivery-supervisor.d.ts +33 -5
- package/dist/delivery/delivery-supervisor.d.ts.map +1 -1
- package/dist/delivery/delivery-supervisor.js +178 -26
- package/dist/delivery/delivery-supervisor.js.map +1 -1
- package/dist/delivery/delivery-tenant.d.ts +17 -0
- package/dist/delivery/delivery-tenant.d.ts.map +1 -0
- package/dist/delivery/delivery-tenant.js +50 -0
- package/dist/delivery/delivery-tenant.js.map +1 -0
- package/dist/delivery/delivery.d.ts +96 -2
- package/dist/delivery/delivery.d.ts.map +1 -1
- package/dist/delivery/delivery.js +803 -89
- package/dist/delivery/delivery.js.map +1 -1
- package/dist/delivery/inbox-records.d.ts.map +1 -1
- package/dist/delivery/inbox-records.js +9 -16
- package/dist/delivery/inbox-records.js.map +1 -1
- package/dist/delivery/inbox-storage.d.ts +14 -11
- package/dist/delivery/inbox-storage.d.ts.map +1 -1
- package/dist/delivery/inbox-storage.js +72 -78
- package/dist/delivery/inbox-storage.js.map +1 -1
- package/dist/delivery/inbox.d.ts +9 -12
- package/dist/delivery/inbox.d.ts.map +1 -1
- package/dist/delivery/inbox.js +13 -15
- package/dist/delivery/inbox.js.map +1 -1
- package/dist/delivery/reception-observation.d.ts +64 -0
- package/dist/delivery/reception-observation.d.ts.map +1 -0
- package/dist/delivery/reception-observation.js +78 -0
- package/dist/delivery/reception-observation.js.map +1 -0
- package/dist/delivery/sharded-work-registry.d.ts +6 -0
- package/dist/delivery/sharded-work-registry.d.ts.map +1 -1
- package/dist/delivery/sharded-work-registry.js +41 -4
- package/dist/delivery/sharded-work-registry.js.map +1 -1
- package/dist/entity/entity-storage-descriptor.d.ts.map +1 -1
- package/dist/entity/entity-storage-descriptor.js +7 -4
- package/dist/entity/entity-storage-descriptor.js.map +1 -1
- package/dist/index.d.ts +4 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/integration/external-messages.d.ts.map +1 -1
- package/dist/integration/external-messages.js +9 -15
- package/dist/integration/external-messages.js.map +1 -1
- package/dist/integration/integration-broker.d.ts.map +1 -1
- package/dist/integration/integration-broker.js +112 -6
- package/dist/integration/integration-broker.js.map +1 -1
- package/dist/integration/third-party-context.d.ts.map +1 -1
- package/dist/integration/third-party-context.js +7 -10
- package/dist/integration/third-party-context.js.map +1 -1
- package/dist/repository/primitive-id.js +26 -11
- package/dist/repository/primitive-id.js.map +1 -1
- package/dist/repository/repository.d.ts +33 -62
- package/dist/repository/repository.d.ts.map +1 -1
- package/dist/repository/repository.js +1475 -1827
- package/dist/repository/repository.js.map +1 -1
- package/dist/runtime/runtime.d.ts +24 -0
- package/dist/runtime/runtime.d.ts.map +1 -1
- package/dist/runtime/runtime.js +31 -0
- package/dist/runtime/runtime.js.map +1 -1
- package/dist/runtime/signal-metadata.d.ts.map +1 -1
- package/dist/runtime/signal-metadata.js +8 -15
- package/dist/runtime/signal-metadata.js.map +1 -1
- package/dist/runtime/signal-publisher.d.ts +8 -36
- package/dist/runtime/signal-publisher.d.ts.map +1 -1
- package/dist/runtime/signal-publisher.js +68 -61
- package/dist/runtime/signal-publisher.js.map +1 -1
- package/dist/runtime/standalone-handler-runtime.d.ts +0 -7
- package/dist/runtime/standalone-handler-runtime.d.ts.map +1 -1
- package/dist/runtime/standalone-handler-runtime.js +14 -130
- package/dist/runtime/standalone-handler-runtime.js.map +1 -1
- package/dist/server/managed-delivery-gate.d.ts +34 -0
- package/dist/server/managed-delivery-gate.d.ts.map +1 -0
- package/dist/server/managed-delivery-gate.js +70 -0
- package/dist/server/managed-delivery-gate.js.map +1 -0
- package/dist/server/managed-server-application.d.ts +2 -2
- package/dist/server/managed-server-application.d.ts.map +1 -1
- package/dist/server/managed-server-application.js +471 -178
- package/dist/server/managed-server-application.js.map +1 -1
- package/dist/server/node-coordinator.d.ts +14 -0
- package/dist/server/node-coordinator.d.ts.map +1 -1
- package/dist/server/node-coordinator.js +266 -45
- package/dist/server/node-coordinator.js.map +1 -1
- package/dist/server/server-environment.d.ts +203 -25
- package/dist/server/server-environment.d.ts.map +1 -1
- package/dist/server/server-environment.js +661 -133
- package/dist/server/server-environment.js.map +1 -1
- package/dist/server/server-log.d.ts +7 -0
- package/dist/server/server-log.d.ts.map +1 -1
- package/dist/server/server-log.js +18 -1
- package/dist/server/server-log.js.map +1 -1
- package/dist/server/server.d.ts +18 -32
- package/dist/server/server.d.ts.map +1 -1
- package/dist/server/server.js +62 -203
- package/dist/server/server.js.map +1 -1
- package/dist/services/spine-services.d.ts +1 -1
- package/dist/services/spine-services.d.ts.map +1 -1
- package/dist/services/spine-services.js +399 -370
- package/dist/services/spine-services.js.map +1 -1
- package/dist/stand/event-origin-filter.d.ts +16 -0
- package/dist/stand/event-origin-filter.d.ts.map +1 -0
- package/dist/stand/event-origin-filter.js +124 -0
- package/dist/stand/event-origin-filter.js.map +1 -0
- package/dist/stand/stand.d.ts +14 -0
- package/dist/stand/stand.d.ts.map +1 -1
- package/dist/stand/stand.js +53 -9
- package/dist/stand/stand.js.map +1 -1
- package/dist/stand/subscription-observer.d.ts.map +1 -1
- package/dist/stand/subscription-observer.js +61 -40
- package/dist/stand/subscription-observer.js.map +1 -1
- package/dist/stand/subscription-registry.d.ts +6 -2
- package/dist/stand/subscription-registry.d.ts.map +1 -1
- package/dist/stand/subscription-registry.js +15 -11
- package/dist/stand/subscription-registry.js.map +1 -1
- package/dist/stand/subscription-runtime.d.ts +23 -4
- package/dist/stand/subscription-runtime.d.ts.map +1 -1
- package/dist/stand/subscription-runtime.js +84 -13
- package/dist/stand/subscription-runtime.js.map +1 -1
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +3 -2
- package/dist/testing/index.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +15 -15
- package/dist/agent/agent-admission.d.ts +0 -80
- package/dist/agent/agent-admission.d.ts.map +0 -1
- package/dist/agent/agent-admission.js +0 -127
- package/dist/agent/agent-admission.js.map +0 -1
- package/dist/agent/agent-ai-runtime.d.ts +0 -76
- package/dist/agent/agent-ai-runtime.d.ts.map +0 -1
- package/dist/agent/agent-ai-runtime.js +0 -1269
- package/dist/agent/agent-ai-runtime.js.map +0 -1
- package/dist/agent/agent-execution-fault.d.ts +0 -18
- package/dist/agent/agent-execution-fault.d.ts.map +0 -1
- package/dist/agent/agent-execution-fault.js.map +0 -1
- package/dist/agent/agent-execution-session.d.ts +0 -103
- package/dist/agent/agent-execution-session.d.ts.map +0 -1
- package/dist/agent/agent-execution-session.js +0 -238
- package/dist/agent/agent-execution-session.js.map +0 -1
- package/dist/agent/agent-interaction-audit.d.ts +0 -58
- package/dist/agent/agent-interaction-audit.d.ts.map +0 -1
- package/dist/agent/agent-interaction-audit.js +0 -114
- package/dist/agent/agent-interaction-audit.js.map +0 -1
- package/dist/agent/agent-interaction-events.d.ts +0 -40
- package/dist/agent/agent-interaction-events.d.ts.map +0 -1
- package/dist/agent/agent-interaction-events.js +0 -129
- package/dist/agent/agent-interaction-events.js.map +0 -1
- package/dist/agent/agent-mcp-budget.d.ts +0 -125
- package/dist/agent/agent-mcp-budget.d.ts.map +0 -1
- package/dist/agent/agent-mcp-budget.js +0 -566
- package/dist/agent/agent-mcp-budget.js.map +0 -1
- package/dist/agent/agent-mcp-host.d.ts +0 -125
- package/dist/agent/agent-mcp-host.d.ts.map +0 -1
- package/dist/agent/agent-mcp-host.js.map +0 -1
- package/dist/agent/agent-mcp-runtime.d.ts.map +0 -1
- package/dist/agent/agent-mcp-runtime.js.map +0 -1
- package/dist/agent/agent-read-runtime.d.ts +0 -70
- package/dist/agent/agent-read-runtime.d.ts.map +0 -1
- package/dist/agent/agent-read-runtime.js +0 -320
- package/dist/agent/agent-read-runtime.js.map +0 -1
- package/dist/agent/agent-revisions.d.ts +0 -35
- package/dist/agent/agent-revisions.d.ts.map +0 -1
- package/dist/agent/agent-revisions.js +0 -133
- package/dist/agent/agent-revisions.js.map +0 -1
- package/dist/agent/agent-scheduler.d.ts +0 -99
- package/dist/agent/agent-scheduler.d.ts.map +0 -1
- package/dist/agent/agent-scheduler.js +0 -398
- package/dist/agent/agent-scheduler.js.map +0 -1
- package/dist/bus/saved-dispatcher-binding.d.ts +0 -96
- package/dist/bus/saved-dispatcher-binding.d.ts.map +0 -1
- package/dist/bus/saved-dispatcher-binding.js +0 -35
- package/dist/bus/saved-dispatcher-binding.js.map +0 -1
- package/dist/delivery/delivery-run-coordinator.d.ts +0 -218
- package/dist/delivery/delivery-run-coordinator.d.ts.map +0 -1
- package/dist/delivery/delivery-run-coordinator.js +0 -609
- package/dist/delivery/delivery-run-coordinator.js.map +0 -1
- package/dist/delivery/parked-delivery-obligations.d.ts +0 -182
- package/dist/delivery/parked-delivery-obligations.d.ts.map +0 -1
- package/dist/delivery/parked-delivery-obligations.js +0 -390
- package/dist/delivery/parked-delivery-obligations.js.map +0 -1
- package/dist/server/environment-attachment.d.ts +0 -356
- package/dist/server/environment-attachment.d.ts.map +0 -1
- package/dist/server/environment-attachment.js +0 -2062
- package/dist/server/environment-attachment.js.map +0 -1
- package/dist/server/environment-delivery-records.d.ts +0 -77
- package/dist/server/environment-delivery-records.d.ts.map +0 -1
- package/dist/server/environment-delivery-records.js +0 -282
- package/dist/server/environment-delivery-records.js.map +0 -1
- package/dist/server/environment-delivery-worker.d.ts +0 -161
- package/dist/server/environment-delivery-worker.d.ts.map +0 -1
- package/dist/server/environment-delivery-worker.js +0 -673
- package/dist/server/environment-delivery-worker.js.map +0 -1
package/dist/bus/event-bus.js
CHANGED
|
@@ -12,22 +12,18 @@
|
|
|
12
12
|
* the License.
|
|
13
13
|
*/
|
|
14
14
|
var _a;
|
|
15
|
-
import { clone
|
|
16
|
-
import {
|
|
15
|
+
import { clone } from "@bufbuild/protobuf";
|
|
16
|
+
import { AnyPacker, Validate } from "@spine-event-engine/core";
|
|
17
17
|
import { EventSchema } from "@spine-event-engine/proto";
|
|
18
18
|
import * as AgentInteraction from "@spine-event-engine/proto/agent";
|
|
19
19
|
import { eventStoreAccess } from "@spine-event-engine/storage/provider";
|
|
20
|
-
import { AgentSavedDispatchPlanSchema as SavedPlanSchema, } from "@spine-event-engine/proto/generated/spine/server/agent/execution_record_pb.js";
|
|
21
20
|
import { runtimeAccess, ServerRuntimeStateError, SingleProcessServerRuntime, } from "../runtime/runtime.js";
|
|
22
21
|
import { EventDispatcherRegistry } from "./event-dispatcher-registry.js";
|
|
23
22
|
import { emitServerError } from "../server/server-log.js";
|
|
24
|
-
import { SavedDispatcherBindings } from "./saved-dispatcher-binding.js";
|
|
25
23
|
const storedDispatchers = new WeakMap();
|
|
24
|
+
const eventBusRuntimes = new WeakMap();
|
|
26
25
|
const storedFollowUpDispatchers = new WeakMap();
|
|
27
26
|
const followUpPosters = new WeakMap();
|
|
28
|
-
const savedPreparers = new WeakMap();
|
|
29
|
-
const savedFollowUps = new WeakMap();
|
|
30
|
-
// prettier-ignore
|
|
31
27
|
const exclusiveWorkers = new WeakMap();
|
|
32
28
|
const subscriberRegistrars = new WeakMap();
|
|
33
29
|
const eventSchemaLists = new WeakMap();
|
|
@@ -43,6 +39,7 @@ const forgettingBus = Symbol("forgetting-bus");
|
|
|
43
39
|
const forgettingBuses = new WeakSet();
|
|
44
40
|
const eventBusRoles = new WeakMap();
|
|
45
41
|
const eventBusLoggers = new WeakMap();
|
|
42
|
+
const eventAdmissions = new WeakMap();
|
|
46
43
|
const agentSystemTypes = new Set([
|
|
47
44
|
AgentInteraction.AgentAiOperationStartedSchema.typeName,
|
|
48
45
|
AgentInteraction.AgentModelAttemptStartedSchema.typeName,
|
|
@@ -55,10 +52,10 @@ const agentSystemTypes = new Set([
|
|
|
55
52
|
AgentInteraction.AgentInvocationTerminatedSchema.typeName,
|
|
56
53
|
]);
|
|
57
54
|
/**
|
|
58
|
-
* Checks
|
|
55
|
+
* Checks whether a schema defines a framework System Event, including Agent interactions.
|
|
59
56
|
*
|
|
60
|
-
* @param schema Event
|
|
61
|
-
* @returns Whether the
|
|
57
|
+
* @param schema Event payload schema.
|
|
58
|
+
* @returns Whether the Event belongs to the System bus.
|
|
62
59
|
*/
|
|
63
60
|
export const isSystemEventSchema = (schema) => schema.typeName.startsWith("spine.system.") || agentSystemTypes.has(schema.typeName);
|
|
64
61
|
/**
|
|
@@ -66,7 +63,7 @@ export const isSystemEventSchema = (schema) => schema.typeName.startsWith("spine
|
|
|
66
63
|
*
|
|
67
64
|
* Public construction creates a domain-only bus that stores domain events and
|
|
68
65
|
* rejects System schemas, dispatchers, and events. Internally assembled
|
|
69
|
-
* forgetting and System buses
|
|
66
|
+
* forgetting and System buses have no `EventStore` unless explicitly given one.
|
|
70
67
|
* Events with no matching dispatcher resolve without dispatch. Events with no
|
|
71
68
|
* registered schema reject deterministically before storage or dispatch.
|
|
72
69
|
*/
|
|
@@ -91,11 +88,10 @@ export class EventBus {
|
|
|
91
88
|
const ownedStore = _a.#requireEventStore(eventStore);
|
|
92
89
|
this.#eventStore = ownedStore === forgettingBus ? undefined : ownedStore;
|
|
93
90
|
this.#started = this.#runtime.start();
|
|
91
|
+
eventBusRuntimes.set(this, this.#runtime);
|
|
94
92
|
storedDispatchers.set(this, (event) => this.#postStored(event));
|
|
95
93
|
storedFollowUpDispatchers.set(this, (event) => this.#postStoredFollowUp(event));
|
|
96
94
|
followUpPosters.set(this, (event) => this.#postFollowUp(event));
|
|
97
|
-
savedPreparers.set(this, (event) => this.#prepareSaved(event));
|
|
98
|
-
savedFollowUps.set(this, (event, plan) => this.#postSavedFollowUp(event, plan));
|
|
99
95
|
exclusiveWorkers.set(this, (work) => this.#runExclusive(work));
|
|
100
96
|
subscriberRegistrars.set(this, (typeUrl, subscriber) => this.#subscribe(typeUrl, subscriber));
|
|
101
97
|
eventSchemaLists.set(this, () => this.#registry.schemas());
|
|
@@ -106,6 +102,15 @@ export class EventBus {
|
|
|
106
102
|
this.#registry.unregister(dispatcher);
|
|
107
103
|
});
|
|
108
104
|
eventSchemaFinders.set(this, (typeUrl) => this.#registry.schema(typeUrl));
|
|
105
|
+
this.#registerCloseHooks();
|
|
106
|
+
for (const dispatcher of dispatchers) {
|
|
107
|
+
this.register(dispatcher);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Registers lifecycle callbacks for the package-internal bus access seam.
|
|
112
|
+
*/
|
|
113
|
+
#registerCloseHooks() {
|
|
109
114
|
eventBusCloseStarters.set(this, () => {
|
|
110
115
|
this.#beginClose();
|
|
111
116
|
});
|
|
@@ -115,14 +120,11 @@ export class EventBus {
|
|
|
115
120
|
this.#abortClose();
|
|
116
121
|
});
|
|
117
122
|
eventBusWorkCounters.set(this, () => this.#acceptedWorkCount);
|
|
118
|
-
for (const dispatcher of dispatchers) {
|
|
119
|
-
this.register(dispatcher);
|
|
120
|
-
}
|
|
121
123
|
}
|
|
122
124
|
/**
|
|
123
125
|
* Registers an event dispatcher.
|
|
124
126
|
*
|
|
125
|
-
* @typeParam Dispatcher Concrete
|
|
127
|
+
* @typeParam Dispatcher Concrete recipient being registered.
|
|
126
128
|
* @param dispatcher the dispatcher to register.
|
|
127
129
|
* @returns the registered dispatcher.
|
|
128
130
|
*/
|
|
@@ -145,14 +147,13 @@ export class EventBus {
|
|
|
145
147
|
return this.#runExclusive(() => this.#dispatch(accepted));
|
|
146
148
|
}
|
|
147
149
|
/**
|
|
148
|
-
* Stops accepting new event work, drains accepted work, and closes
|
|
150
|
+
* Stops accepting new event work, drains accepted work, and closes its event store.
|
|
149
151
|
*
|
|
150
152
|
* Close is idempotent and returns the same close outcome on repeated calls.
|
|
151
|
-
* Runtime and event-store close hooks are both
|
|
152
|
-
* an `AggregateError
|
|
153
|
+
* Runtime and event-store close hooks are both awaited; failures reject as
|
|
154
|
+
* an `AggregateError` after both cleanup attempts.
|
|
153
155
|
*
|
|
154
156
|
* @returns A promise that settles after the event bus closes.
|
|
155
|
-
*
|
|
156
157
|
*/
|
|
157
158
|
close() {
|
|
158
159
|
this.#closed ??= this.#closeOnce();
|
|
@@ -166,9 +167,7 @@ export class EventBus {
|
|
|
166
167
|
this.#clearSubscribers();
|
|
167
168
|
const eventStore = this.#eventStore;
|
|
168
169
|
if (eventStore !== undefined) {
|
|
169
|
-
await _a.#closePart(() =>
|
|
170
|
-
eventStore.close();
|
|
171
|
-
}, errors);
|
|
170
|
+
await _a.#closePart(() => eventStore.close(), errors);
|
|
172
171
|
}
|
|
173
172
|
if (errors.length > 0) {
|
|
174
173
|
throw new AggregateError(errors, "EventBus close failed.");
|
|
@@ -177,7 +176,8 @@ export class EventBus {
|
|
|
177
176
|
#abortClose() {
|
|
178
177
|
this.#beginClose();
|
|
179
178
|
try {
|
|
180
|
-
this.#eventStore
|
|
179
|
+
if (this.#eventStore !== undefined)
|
|
180
|
+
eventStoreAccess.closeIdle(this.#eventStore);
|
|
181
181
|
}
|
|
182
182
|
finally {
|
|
183
183
|
// spine-log-boundary: server.event_bus_close_runtime
|
|
@@ -191,14 +191,16 @@ export class EventBus {
|
|
|
191
191
|
if (typeUrl === undefined || typeUrl === "") {
|
|
192
192
|
throw new Error("EventBus requires event.message.typeUrl.");
|
|
193
193
|
}
|
|
194
|
+
const onAdmit = eventAdmissions.get(this);
|
|
195
|
+
if (onAdmit !== undefined)
|
|
196
|
+
this.#validate(event, typeUrl);
|
|
197
|
+
await onAdmit?.(event);
|
|
194
198
|
const dispatchers = this.#registry.find(typeUrl, event.context?.external === true);
|
|
195
199
|
if (forgettingBuses.has(this)) {
|
|
196
|
-
|
|
200
|
+
if (onAdmit === undefined)
|
|
201
|
+
this.#validate(event, typeUrl);
|
|
197
202
|
const accepted = await this.#accept(event, dispatchers);
|
|
198
|
-
|
|
199
|
-
await dispatcher.dispatch(acceptedEvent);
|
|
200
|
-
}
|
|
201
|
-
this.#notify(event);
|
|
203
|
+
await this.#deliverAccepted(event, accepted);
|
|
202
204
|
return;
|
|
203
205
|
}
|
|
204
206
|
const eventStore = this.#eventStore;
|
|
@@ -207,13 +209,11 @@ export class EventBus {
|
|
|
207
209
|
}
|
|
208
210
|
let acceptedDispatchers = [];
|
|
209
211
|
const stored = await eventStore.acceptThenAppend(event, async (accepted) => {
|
|
210
|
-
|
|
212
|
+
if (onAdmit === undefined)
|
|
213
|
+
this.#validate(accepted, typeUrl);
|
|
211
214
|
acceptedDispatchers = await this.#accept(accepted, dispatchers);
|
|
212
215
|
});
|
|
213
|
-
|
|
214
|
-
await dispatcher.dispatch(acceptedEvent);
|
|
215
|
-
}
|
|
216
|
-
this.#notify(stored);
|
|
216
|
+
await this.#deliverAccepted(stored, acceptedDispatchers);
|
|
217
217
|
}
|
|
218
218
|
#postStored(event) {
|
|
219
219
|
const accepted = clone(EventSchema, event);
|
|
@@ -238,63 +238,6 @@ export class EventBus {
|
|
|
238
238
|
this.#acceptedWorkCount++;
|
|
239
239
|
return this.#started.then(() => runtimeAccess.enqueueFollowUp(this.#runtime, () => this.#dispatch(accepted)));
|
|
240
240
|
}
|
|
241
|
-
async #prepareSaved(event) {
|
|
242
|
-
const typeUrl = event.message?.typeUrl;
|
|
243
|
-
if (!typeUrl)
|
|
244
|
-
throw new Error("Saved Agent Event requires a registered message type.");
|
|
245
|
-
this.#validate(event, typeUrl);
|
|
246
|
-
const targets = [];
|
|
247
|
-
for (const dispatcher of this.#registry.find(typeUrl, event.context?.external === true)) {
|
|
248
|
-
const binding = SavedDispatcherBindings.forEvent(dispatcher);
|
|
249
|
-
if (binding === undefined)
|
|
250
|
-
throw new Error("Saved Agent Event matches a dispatcher without durable metadata.");
|
|
251
|
-
targets.push(await binding.prepare(clone(EventSchema, event)));
|
|
252
|
-
}
|
|
253
|
-
return create(SavedPlanSchema, { targets });
|
|
254
|
-
}
|
|
255
|
-
#postSavedFollowUp(event, plan) {
|
|
256
|
-
const accepted = clone(EventSchema, event);
|
|
257
|
-
const frozen = clone(SavedPlanSchema, plan);
|
|
258
|
-
if (this.#intakeState === "closed")
|
|
259
|
-
return Promise.reject(new ServerRuntimeStateError("enqueue", "closed"));
|
|
260
|
-
this.#acceptedWorkCount++;
|
|
261
|
-
return this.#started.then(() => runtimeAccess.enqueueFollowUp(this.#runtime, () => this.#dispatchSaved(accepted, frozen)));
|
|
262
|
-
}
|
|
263
|
-
async #dispatchSaved(event, plan) {
|
|
264
|
-
const typeUrl = event.message?.typeUrl;
|
|
265
|
-
if (!typeUrl)
|
|
266
|
-
throw new Error("Saved Agent Event requires a registered message type.");
|
|
267
|
-
this.#validate(event, typeUrl);
|
|
268
|
-
const dispatchers = this.#registry.find(typeUrl, event.context?.external === true);
|
|
269
|
-
const deliveries = await this.#bindSaved(event, plan, dispatchers);
|
|
270
|
-
const store = this.#eventStore;
|
|
271
|
-
if (store === undefined)
|
|
272
|
-
throw new Error("Saved Agent Event requires an EventStore.");
|
|
273
|
-
await eventStoreAccess.appendOrVerifyOriginal(store, event);
|
|
274
|
-
for (const deliver of deliveries)
|
|
275
|
-
await deliver();
|
|
276
|
-
this.#notify(event);
|
|
277
|
-
}
|
|
278
|
-
async #bindSaved(event, plan, dispatchers) {
|
|
279
|
-
if (dispatchers.length !== plan.targets.length)
|
|
280
|
-
throw new Error("Saved Agent Event dispatcher set changed before delivery.");
|
|
281
|
-
const remaining = new Set(dispatchers);
|
|
282
|
-
const deliveries = [];
|
|
283
|
-
for (const target of plan.targets) {
|
|
284
|
-
const matches = [...remaining].filter((dispatcher) => SavedDispatcherBindings.forEvent(dispatcher)?.matches(target) === true);
|
|
285
|
-
if (matches.length !== 1)
|
|
286
|
-
throw new Error("Saved Agent Event dispatcher binding is missing or ambiguous.");
|
|
287
|
-
const dispatcher = matches[0];
|
|
288
|
-
if (dispatcher === undefined)
|
|
289
|
-
throw new Error("Saved Agent Event dispatcher disappeared.");
|
|
290
|
-
remaining.delete(dispatcher);
|
|
291
|
-
const binding = SavedDispatcherBindings.forEvent(dispatcher);
|
|
292
|
-
if (binding === undefined)
|
|
293
|
-
throw new Error("Saved Agent Event metadata disappeared.");
|
|
294
|
-
deliveries.push(await binding.bind(clone(EventSchema, event), target));
|
|
295
|
-
}
|
|
296
|
-
return deliveries;
|
|
297
|
-
}
|
|
298
241
|
async #dispatchStored(event) {
|
|
299
242
|
const typeUrl = event.message?.typeUrl;
|
|
300
243
|
if (typeUrl === undefined || typeUrl === "") {
|
|
@@ -303,6 +246,16 @@ export class EventBus {
|
|
|
303
246
|
const dispatchers = this.#registry.find(typeUrl, event.context?.external === true);
|
|
304
247
|
this.#validate(event, typeUrl);
|
|
305
248
|
const accepted = await this.#accept(event, dispatchers);
|
|
249
|
+
await this.#deliverAccepted(event, accepted);
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
252
|
+
* Delivers accepted recipients in order before notification.
|
|
253
|
+
*
|
|
254
|
+
* @param event Event to notify after successful dispatch.
|
|
255
|
+
* @param accepted Recipients admitted for this Event.
|
|
256
|
+
* @returns Completion after all recipients and notification.
|
|
257
|
+
*/
|
|
258
|
+
async #deliverAccepted(event, accepted) {
|
|
306
259
|
for (const { dispatcher, event: acceptedEvent } of accepted) {
|
|
307
260
|
await dispatcher.dispatch(acceptedEvent);
|
|
308
261
|
}
|
|
@@ -323,18 +276,17 @@ export class EventBus {
|
|
|
323
276
|
throw new Error(`No event schema registered for "${typeUrl}".`);
|
|
324
277
|
}
|
|
325
278
|
EventBusRoles.validateSchema(eventBusRoles.get(this) ?? "domain", schema);
|
|
326
|
-
const message = event.message === undefined ? undefined :
|
|
279
|
+
const message = event.message === undefined ? undefined : AnyPacker.tryUnpack(event.message, schema);
|
|
327
280
|
if (message === undefined) {
|
|
328
281
|
throw new Error("Event payload does not match its registered schema.");
|
|
329
282
|
}
|
|
330
283
|
Validate.check(schema, message);
|
|
331
284
|
}
|
|
332
285
|
/**
|
|
333
|
-
*
|
|
334
|
-
*
|
|
335
|
-
* @
|
|
336
|
-
* @
|
|
337
|
-
* @returns The task result after dispatch ordering is respected.
|
|
286
|
+
* Serializes one Event callback on the raw runtime queue.
|
|
287
|
+
* @typeParam Result Callback result.
|
|
288
|
+
* @param work Callback to run.
|
|
289
|
+
* @returns Callback result after queued work completes.
|
|
338
290
|
*/
|
|
339
291
|
#runExclusive(work) {
|
|
340
292
|
let result;
|
|
@@ -460,11 +412,10 @@ export class EventBus {
|
|
|
460
412
|
_a = EventBus;
|
|
461
413
|
const EventBusRoles = Object.freeze({
|
|
462
414
|
/**
|
|
463
|
-
* Creates a bus
|
|
464
|
-
*
|
|
465
|
-
* @param
|
|
466
|
-
* @
|
|
467
|
-
* @returns The configured System event bus.
|
|
415
|
+
* Creates a System Event bus with the supplied recipients.
|
|
416
|
+
* @param eventStore Optional persistent Event store.
|
|
417
|
+
* @param dispatchers Initial System recipients.
|
|
418
|
+
* @returns Configured System Event bus.
|
|
468
419
|
*/
|
|
469
420
|
createSystem(eventStore, dispatchers) {
|
|
470
421
|
const eventBus = new EventBus((eventStore ?? forgettingBus), []);
|
|
@@ -476,20 +427,20 @@ const EventBusRoles = Object.freeze({
|
|
|
476
427
|
return eventBus;
|
|
477
428
|
},
|
|
478
429
|
/**
|
|
479
|
-
* Validates
|
|
430
|
+
* Validates that a dispatcher belongs to the bus role.
|
|
480
431
|
*
|
|
481
|
-
* @param role Domain or System role
|
|
482
|
-
* @param dispatcher
|
|
432
|
+
* @param role Domain or System role.
|
|
433
|
+
* @param dispatcher Recipient to validate.
|
|
483
434
|
*/
|
|
484
435
|
validateDispatcher(role, dispatcher) {
|
|
485
436
|
for (const schema of dispatcher.messageSchemas())
|
|
486
437
|
EventBusRoles.validateSchema(role, schema);
|
|
487
438
|
},
|
|
488
439
|
/**
|
|
489
|
-
* Validates
|
|
440
|
+
* Validates one Event schema for a bus role.
|
|
490
441
|
*
|
|
491
|
-
* @param role Domain or System role
|
|
492
|
-
* @param schema Event
|
|
442
|
+
* @param role Domain or System role.
|
|
443
|
+
* @param schema Event payload schema.
|
|
493
444
|
*/
|
|
494
445
|
validateSchema(role, schema) {
|
|
495
446
|
const typeUrl = `type.${schema.typeName}`;
|
|
@@ -506,6 +457,28 @@ const EventBusRoles = Object.freeze({
|
|
|
506
457
|
* @internal
|
|
507
458
|
*/
|
|
508
459
|
export const eventBusAccess = Object.freeze({
|
|
460
|
+
/**
|
|
461
|
+
* Binds the private queue to its framework context's captured environment.
|
|
462
|
+
* @param eventBus Framework context bus.
|
|
463
|
+
* @param environment Exact environment containing the context.
|
|
464
|
+
*/
|
|
465
|
+
bindEnvironment(eventBus, environment) {
|
|
466
|
+
const runtime = eventBusRuntimes.get(eventBus);
|
|
467
|
+
if (runtime === undefined)
|
|
468
|
+
throw new TypeError("Framework binding requires an EventBus instance.");
|
|
469
|
+
runtimeAccess.bindFrameworkEnvironment(runtime, environment);
|
|
470
|
+
},
|
|
471
|
+
/**
|
|
472
|
+
* Sets the context's live Event tenant check.
|
|
473
|
+
*
|
|
474
|
+
* @param eventBus Context Event bus.
|
|
475
|
+
* @param onAdmit Checks current membership.
|
|
476
|
+
*/
|
|
477
|
+
setAdmission(eventBus, onAdmit) {
|
|
478
|
+
if (!storedDispatchers.has(eventBus))
|
|
479
|
+
throw new TypeError("Event admission requires an EventBus instance.");
|
|
480
|
+
eventAdmissions.set(eventBus, onAdmit);
|
|
481
|
+
},
|
|
509
482
|
clearLogger(eventBus) {
|
|
510
483
|
if (!storedDispatchers.has(eventBus)) {
|
|
511
484
|
throw new TypeError("EventBus logger requires an EventBus instance.");
|
|
@@ -547,25 +520,12 @@ export const eventBusAccess = Object.freeze({
|
|
|
547
520
|
}
|
|
548
521
|
return postFollowUp(event);
|
|
549
522
|
},
|
|
550
|
-
prepareSaved(eventBus, event) {
|
|
551
|
-
const prepare = savedPreparers.get(eventBus);
|
|
552
|
-
if (prepare === undefined)
|
|
553
|
-
throw new TypeError("Saved Event preparation requires an EventBus.");
|
|
554
|
-
return prepare(event);
|
|
555
|
-
},
|
|
556
|
-
postSavedFollowUp(eventBus, event, plan) {
|
|
557
|
-
const post = savedFollowUps.get(eventBus);
|
|
558
|
-
if (post === undefined)
|
|
559
|
-
throw new TypeError("Saved Event delivery requires an EventBus.");
|
|
560
|
-
return post(event, plan);
|
|
561
|
-
},
|
|
562
523
|
/**
|
|
563
|
-
* Executes
|
|
564
|
-
*
|
|
565
|
-
* @
|
|
566
|
-
* @param
|
|
567
|
-
* @
|
|
568
|
-
* @returns The result returned by the task.
|
|
524
|
+
* Executes one callback on the Event queue.
|
|
525
|
+
* @typeParam Result Callback result.
|
|
526
|
+
* @param eventBus Target bus.
|
|
527
|
+
* @param work Serialized callback.
|
|
528
|
+
* @returns Callback result.
|
|
569
529
|
*/
|
|
570
530
|
runExclusive(eventBus, work) {
|
|
571
531
|
const runExclusive = exclusiveWorkers.get(eventBus);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-bus.js","sourceRoot":"","sources":["../../src/bus/event-bus.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"event-bus.js","sourceRoot":"","sources":["../../src/bus/event-bus.ts"],"names":[],"mappings":"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"}
|