@spine-event-engine/server 2.0.0-snapshot.22 → 2.0.0-snapshot.24
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 +104 -7
- package/REFERENCE.md +272 -31
- package/dist/agent/agent-admission.d.ts +80 -0
- package/dist/agent/agent-admission.d.ts.map +1 -0
- package/dist/agent/agent-admission.js +127 -0
- package/dist/agent/agent-admission.js.map +1 -0
- package/dist/agent/agent-ai-binding.d.ts +24 -0
- package/dist/agent/agent-ai-binding.d.ts.map +1 -0
- package/dist/agent/agent-ai-binding.js +48 -0
- package/dist/agent/agent-ai-binding.js.map +1 -0
- package/dist/agent/agent-ai-runtime.d.ts +76 -0
- package/dist/agent/agent-ai-runtime.d.ts.map +1 -0
- package/dist/agent/agent-ai-runtime.js +1269 -0
- package/dist/agent/agent-ai-runtime.js.map +1 -0
- package/dist/agent/agent-execution-capacity.d.ts +43 -0
- package/dist/agent/agent-execution-capacity.d.ts.map +1 -0
- package/dist/agent/agent-execution-capacity.js +147 -0
- package/dist/agent/agent-execution-capacity.js.map +1 -0
- package/dist/agent/agent-execution-fault.d.ts +18 -0
- package/dist/agent/agent-execution-fault.d.ts.map +1 -0
- package/dist/agent/agent-execution-fault.js +31 -0
- package/dist/agent/agent-execution-fault.js.map +1 -0
- package/dist/agent/agent-execution-session.d.ts +103 -0
- package/dist/agent/agent-execution-session.d.ts.map +1 -0
- package/dist/agent/agent-execution-session.js +238 -0
- package/dist/agent/agent-execution-session.js.map +1 -0
- package/dist/agent/agent-history.d.ts +148 -0
- package/dist/agent/agent-history.d.ts.map +1 -0
- package/dist/agent/agent-history.js +340 -0
- package/dist/agent/agent-history.js.map +1 -0
- package/dist/agent/agent-interaction-audit.d.ts +58 -0
- package/dist/agent/agent-interaction-audit.d.ts.map +1 -0
- package/dist/agent/agent-interaction-audit.js +114 -0
- package/dist/agent/agent-interaction-audit.js.map +1 -0
- package/dist/agent/agent-interaction-events.d.ts +40 -0
- package/dist/agent/agent-interaction-events.d.ts.map +1 -0
- package/dist/agent/agent-interaction-events.js +129 -0
- package/dist/agent/agent-interaction-events.js.map +1 -0
- package/dist/agent/agent-mcp-budget.d.ts +125 -0
- package/dist/agent/agent-mcp-budget.d.ts.map +1 -0
- package/dist/agent/agent-mcp-budget.js +566 -0
- package/dist/agent/agent-mcp-budget.js.map +1 -0
- package/dist/agent/agent-mcp-host.d.ts +125 -0
- package/dist/agent/agent-mcp-host.d.ts.map +1 -0
- package/dist/agent/agent-mcp-host.js +15 -0
- package/dist/agent/agent-mcp-host.js.map +1 -0
- package/dist/agent/agent-mcp-runtime.d.ts +199 -0
- package/dist/agent/agent-mcp-runtime.d.ts.map +1 -0
- package/dist/agent/agent-mcp-runtime.js +621 -0
- package/dist/agent/agent-mcp-runtime.js.map +1 -0
- package/dist/agent/agent-model-selection.d.ts +129 -0
- package/dist/agent/agent-model-selection.d.ts.map +1 -0
- package/dist/agent/agent-model-selection.js +342 -0
- package/dist/agent/agent-model-selection.js.map +1 -0
- package/dist/agent/agent-read-runtime.d.ts +70 -0
- package/dist/agent/agent-read-runtime.d.ts.map +1 -0
- package/dist/agent/agent-read-runtime.js +320 -0
- package/dist/agent/agent-read-runtime.js.map +1 -0
- package/dist/agent/agent-revisions.d.ts +35 -0
- package/dist/agent/agent-revisions.d.ts.map +1 -0
- package/dist/agent/agent-revisions.js +133 -0
- package/dist/agent/agent-revisions.js.map +1 -0
- package/dist/agent/agent-scheduler.d.ts +99 -0
- package/dist/agent/agent-scheduler.d.ts.map +1 -0
- package/dist/agent/agent-scheduler.js +398 -0
- package/dist/agent/agent-scheduler.js.map +1 -0
- package/dist/bus/command-bus.d.ts +62 -0
- package/dist/bus/command-bus.d.ts.map +1 -1
- package/dist/bus/command-bus.js +51 -2
- package/dist/bus/command-bus.js.map +1 -1
- package/dist/bus/event-bus.d.ts +101 -2
- package/dist/bus/event-bus.d.ts.map +1 -1
- package/dist/bus/event-bus.js +74 -13
- package/dist/bus/event-bus.js.map +1 -1
- package/dist/bus/saved-dispatcher-binding.d.ts +53 -0
- package/dist/bus/saved-dispatcher-binding.d.ts.map +1 -0
- package/dist/bus/saved-dispatcher-binding.js +27 -0
- package/dist/bus/saved-dispatcher-binding.js.map +1 -0
- package/dist/context/bounded-context.d.ts +45 -12
- package/dist/context/bounded-context.d.ts.map +1 -1
- package/dist/context/bounded-context.js +306 -86
- package/dist/context/bounded-context.js.map +1 -1
- package/dist/context/entity-inbox.d.ts.map +1 -1
- package/dist/context/entity-inbox.js +21 -7
- package/dist/context/entity-inbox.js.map +1 -1
- package/dist/context/local-inbox-handoff.d.ts +1 -0
- package/dist/context/local-inbox-handoff.d.ts.map +1 -1
- package/dist/context/local-inbox-handoff.js +31 -1
- package/dist/context/local-inbox-handoff.js.map +1 -1
- package/dist/context/projection-handoff.d.ts.map +1 -1
- package/dist/context/projection-handoff.js +2 -0
- package/dist/context/projection-handoff.js.map +1 -1
- package/dist/context/tenant-index.d.ts +25 -0
- package/dist/context/tenant-index.d.ts.map +1 -1
- package/dist/context/tenant-index.js +45 -1
- package/dist/context/tenant-index.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 +15 -0
- package/dist/delivery/delivery-run-control.d.ts.map +1 -1
- 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 +150 -22
- package/dist/delivery/delivery-supervisor.js.map +1 -1
- package/dist/delivery/delivery.d.ts.map +1 -1
- package/dist/delivery/delivery.js +128 -54
- package/dist/delivery/delivery.js.map +1 -1
- package/dist/delivery/inbox-storage.d.ts +8 -11
- package/dist/delivery/inbox-storage.d.ts.map +1 -1
- package/dist/delivery/inbox-storage.js +33 -76
- 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 +10 -13
- package/dist/delivery/inbox.js.map +1 -1
- package/dist/delivery/reception-observation.d.ts +56 -0
- package/dist/delivery/reception-observation.d.ts.map +1 -0
- package/dist/delivery/reception-observation.js +67 -0
- package/dist/delivery/reception-observation.js.map +1 -0
- package/dist/entity/entity.d.ts +82 -3
- package/dist/entity/entity.d.ts.map +1 -1
- package/dist/entity/entity.js +121 -22
- package/dist/entity/entity.js.map +1 -1
- package/dist/handler/generated-handler-registry.js +8 -3
- package/dist/handler/generated-handler-registry.js.map +1 -1
- package/dist/handler/handler-metadata.d.ts +17 -1
- package/dist/handler/handler-metadata.d.ts.map +1 -1
- package/dist/handler/handler-metadata.js +10 -4
- package/dist/handler/handler-metadata.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/repository/commit-fence.d.ts +11 -0
- package/dist/repository/commit-fence.d.ts.map +1 -1
- package/dist/repository/commit-fence.js +13 -0
- package/dist/repository/commit-fence.js.map +1 -1
- package/dist/repository/repository.d.ts +221 -13
- package/dist/repository/repository.d.ts.map +1 -1
- package/dist/repository/repository.js +2323 -134
- package/dist/repository/repository.js.map +1 -1
- package/dist/runtime/runtime.d.ts +11 -0
- package/dist/runtime/runtime.d.ts.map +1 -1
- package/dist/runtime/runtime.js +13 -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 +3 -10
- package/dist/runtime/signal-metadata.js.map +1 -1
- package/dist/runtime/signal-publisher.d.ts +14 -30
- package/dist/runtime/signal-publisher.d.ts.map +1 -1
- package/dist/runtime/signal-publisher.js +75 -47
- package/dist/runtime/signal-publisher.js.map +1 -1
- package/dist/runtime/standalone-handler-runtime.d.ts +7 -0
- package/dist/runtime/standalone-handler-runtime.d.ts.map +1 -1
- package/dist/runtime/standalone-handler-runtime.js +118 -11
- package/dist/runtime/standalone-handler-runtime.js.map +1 -1
- package/dist/server/environment-delivery-worker.d.ts.map +1 -1
- package/dist/server/environment-delivery-worker.js +305 -5
- package/dist/server/environment-delivery-worker.js.map +1 -1
- 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 +467 -177
- 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-log.d.ts.map +1 -1
- package/dist/server/server-log.js +4 -0
- package/dist/server/server-log.js.map +1 -1
- package/dist/server/server.d.ts +9 -0
- package/dist/server/server.d.ts.map +1 -1
- package/dist/server/server.js +33 -8
- package/dist/server/server.js.map +1 -1
- package/dist/services/spine-services.d.ts.map +1 -1
- package/dist/services/spine-services.js +200 -72
- 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/subscription-observer.d.ts.map +1 -1
- package/dist/stand/subscription-observer.js +7 -0
- package/dist/stand/subscription-observer.js.map +1 -1
- package/dist/stand/subscription-runtime.d.ts +18 -1
- package/dist/stand/subscription-runtime.d.ts.map +1 -1
- package/dist/stand/subscription-runtime.js +32 -4
- package/dist/stand/subscription-runtime.js.map +1 -1
- package/dist/testing/index.d.ts +57 -1
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +88 -1
- package/dist/testing/index.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +15 -13
package/dist/bus/event-bus.d.ts
CHANGED
|
@@ -3,30 +3,128 @@ import { type Event } from "@spine-event-engine/proto";
|
|
|
3
3
|
import type { EventStore } from "@spine-event-engine/storage";
|
|
4
4
|
import type { ILogLayer } from "loglayer";
|
|
5
5
|
import type { EventDispatcher } from "./event-dispatcher.js";
|
|
6
|
+
/**
|
|
7
|
+
* Checks whether a schema defines a framework System Event, including Agent interactions.
|
|
8
|
+
*
|
|
9
|
+
* @param schema Event payload schema.
|
|
10
|
+
* @returns Whether the Event belongs to the System bus.
|
|
11
|
+
*/
|
|
12
|
+
export declare const isSystemEventSchema: (schema: MessageSchema) => boolean;
|
|
6
13
|
interface EventBusAccess {
|
|
7
14
|
/**
|
|
8
|
-
*
|
|
15
|
+
* Creates a package-internal bus without an event store.
|
|
9
16
|
*
|
|
10
17
|
* @param dispatchers the initial dispatchers to register.
|
|
11
18
|
* @returns the assembled forgetting bus.
|
|
12
19
|
*/
|
|
13
20
|
createForgettingBus(dispatchers?: Iterable<EventDispatcher>): EventBus;
|
|
21
|
+
/**
|
|
22
|
+
* Creates a System Event bus with optional persistent storage.
|
|
23
|
+
* @param eventStore Optional System Event store.
|
|
24
|
+
* @param dispatchers Initial recipients.
|
|
25
|
+
* @returns Configured System Event bus.
|
|
26
|
+
*/
|
|
14
27
|
createSystemBus(eventStore: EventStore | undefined, dispatchers?: Iterable<EventDispatcher>): EventBus;
|
|
28
|
+
/**
|
|
29
|
+
* Dispatches one already-stored Event without another append.
|
|
30
|
+
* @param eventBus Target bus.
|
|
31
|
+
* @param event Captured Event envelope.
|
|
32
|
+
* @returns Completion after recipient dispatch.
|
|
33
|
+
*/
|
|
15
34
|
postStored(eventBus: EventBus, event: Event): Promise<void>;
|
|
35
|
+
/**
|
|
36
|
+
* Queues an already-stored Event as a trusted follow-up.
|
|
37
|
+
* @param eventBus Target bus.
|
|
38
|
+
* @param event Captured Event envelope.
|
|
39
|
+
* @returns Completion after recipient dispatch.
|
|
40
|
+
*/
|
|
16
41
|
postStoredFollowUp(eventBus: EventBus, event: Event): Promise<void>;
|
|
42
|
+
/**
|
|
43
|
+
* Queues a produced Event after active bus work.
|
|
44
|
+
* @param eventBus Target bus.
|
|
45
|
+
* @param event Produced Event envelope.
|
|
46
|
+
* @returns Completion after recipient dispatch.
|
|
47
|
+
*/
|
|
17
48
|
postFollowUp(eventBus: EventBus, event: Event): Promise<void>;
|
|
49
|
+
/**
|
|
50
|
+
* Executes a callback in the Event queue.
|
|
51
|
+
* @typeParam Result Callback result.
|
|
52
|
+
* @param eventBus Target bus.
|
|
53
|
+
* @param work Serialized callback.
|
|
54
|
+
* @returns The callback result.
|
|
55
|
+
*/
|
|
18
56
|
runExclusive<Result>(eventBus: EventBus, work: () => Result | Promise<Result>): Promise<Result>;
|
|
57
|
+
/**
|
|
58
|
+
* Registers an in-process Event subscriber.
|
|
59
|
+
* @param eventBus Target bus.
|
|
60
|
+
* @param typeUrl Event payload type URL.
|
|
61
|
+
* @param subscriber Recipient to notify.
|
|
62
|
+
* @returns Subscription cancellation handle.
|
|
63
|
+
*/
|
|
19
64
|
subscribe(eventBus: EventBus, typeUrl: string, subscriber: EventSubscriber): EventSubscription;
|
|
65
|
+
/**
|
|
66
|
+
* Lists registered Event payload schemas.
|
|
67
|
+
* @param eventBus Target bus.
|
|
68
|
+
* @returns Current schema list.
|
|
69
|
+
*/
|
|
20
70
|
eventSchemas(eventBus: EventBus): readonly MessageSchema[];
|
|
71
|
+
/**
|
|
72
|
+
* Registers Event schemas for produced signals.
|
|
73
|
+
* @param eventBus Target bus.
|
|
74
|
+
* @param schemas Schemas to register.
|
|
75
|
+
*/
|
|
21
76
|
registerSchemas(eventBus: EventBus, schemas: Iterable<MessageSchema>): void;
|
|
77
|
+
/**
|
|
78
|
+
* Removes a dispatcher from this bus.
|
|
79
|
+
* @param eventBus Target bus.
|
|
80
|
+
* @param dispatcher Dispatcher to remove.
|
|
81
|
+
*/
|
|
22
82
|
unregister(eventBus: EventBus, dispatcher: EventDispatcher): void;
|
|
83
|
+
/**
|
|
84
|
+
* Finds a registered Event schema.
|
|
85
|
+
* @param eventBus Target bus.
|
|
86
|
+
* @param typeUrl Event payload type URL.
|
|
87
|
+
* @returns Matching schema when registered.
|
|
88
|
+
*/
|
|
23
89
|
schema(eventBus: EventBus, typeUrl: string): MessageSchema | undefined;
|
|
90
|
+
/**
|
|
91
|
+
* Stops external Event intake before graceful drain.
|
|
92
|
+
* @param eventBus Target bus.
|
|
93
|
+
*/
|
|
24
94
|
beginClose(eventBus: EventBus): void;
|
|
95
|
+
/**
|
|
96
|
+
* Waits for accepted Event work.
|
|
97
|
+
* @param eventBus Target bus.
|
|
98
|
+
* @returns Completion after the queue drains.
|
|
99
|
+
*/
|
|
25
100
|
drain(eventBus: EventBus): Promise<void>;
|
|
101
|
+
/**
|
|
102
|
+
* Completes graceful Event-bus closure.
|
|
103
|
+
* @param eventBus Target bus.
|
|
104
|
+
* @returns Completion after closure.
|
|
105
|
+
*/
|
|
26
106
|
finishClose(eventBus: EventBus): Promise<void>;
|
|
107
|
+
/**
|
|
108
|
+
* Closes a partially assembled bus.
|
|
109
|
+
* @param eventBus Target bus.
|
|
110
|
+
*/
|
|
27
111
|
abortClose(eventBus: EventBus): void;
|
|
112
|
+
/**
|
|
113
|
+
* Returns admitted Event work count for drain stability.
|
|
114
|
+
* @param eventBus Target bus.
|
|
115
|
+
* @returns Number of accepted work items.
|
|
116
|
+
*/
|
|
28
117
|
acceptedWorkCount(eventBus: EventBus): number;
|
|
118
|
+
/**
|
|
119
|
+
* Sets the internal diagnostic sink.
|
|
120
|
+
* @param eventBus Target bus.
|
|
121
|
+
* @param logger Safe structured logger.
|
|
122
|
+
*/
|
|
29
123
|
installLogger(eventBus: EventBus, logger: ILogLayer): void;
|
|
124
|
+
/**
|
|
125
|
+
* Clears the internal diagnostic sink.
|
|
126
|
+
* @param eventBus Target bus.
|
|
127
|
+
*/
|
|
30
128
|
clearLogger(eventBus: EventBus): void;
|
|
31
129
|
}
|
|
32
130
|
/**
|
|
@@ -34,7 +132,7 @@ interface EventBusAccess {
|
|
|
34
132
|
*
|
|
35
133
|
* Public construction creates a domain-only bus that stores domain events and
|
|
36
134
|
* rejects System schemas, dispatchers, and events. Internally assembled
|
|
37
|
-
* forgetting and System buses
|
|
135
|
+
* forgetting and System buses have no `EventStore` unless explicitly given one.
|
|
38
136
|
* Events with no matching dispatcher resolve without dispatch. Events with no
|
|
39
137
|
* registered schema reject deterministically before storage or dispatch.
|
|
40
138
|
*/
|
|
@@ -52,6 +150,7 @@ export declare class EventBus {
|
|
|
52
150
|
/**
|
|
53
151
|
* Registers an event dispatcher.
|
|
54
152
|
*
|
|
153
|
+
* @typeParam Dispatcher Concrete recipient being registered.
|
|
55
154
|
* @param dispatcher the dispatcher to register.
|
|
56
155
|
* @returns the registered dispatcher.
|
|
57
156
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-bus.d.ts","sourceRoot":"","sources":["../../src/bus/event-bus.ts"],"names":[],"mappings":"AAeA,OAAO,EAAyB,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACrF,OAAO,EAAe,KAAK,KAAK,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"event-bus.d.ts","sourceRoot":"","sources":["../../src/bus/event-bus.ts"],"names":[],"mappings":"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"}
|
package/dist/bus/event-bus.js
CHANGED
|
@@ -15,6 +15,7 @@ var _a;
|
|
|
15
15
|
import { clone } from "@bufbuild/protobuf";
|
|
16
16
|
import { AnyMessages, Validate } from "@spine-event-engine/core";
|
|
17
17
|
import { EventSchema } from "@spine-event-engine/proto";
|
|
18
|
+
import * as AgentInteraction from "@spine-event-engine/proto/agent";
|
|
18
19
|
import { runtimeAccess, ServerRuntimeStateError, SingleProcessServerRuntime, } from "../runtime/runtime.js";
|
|
19
20
|
import { EventDispatcherRegistry } from "./event-dispatcher-registry.js";
|
|
20
21
|
import { emitServerError } from "../server/server-log.js";
|
|
@@ -36,12 +37,30 @@ const forgettingBus = Symbol("forgetting-bus");
|
|
|
36
37
|
const forgettingBuses = new WeakSet();
|
|
37
38
|
const eventBusRoles = new WeakMap();
|
|
38
39
|
const eventBusLoggers = new WeakMap();
|
|
40
|
+
const agentSystemTypes = new Set([
|
|
41
|
+
AgentInteraction.AgentAiOperationStartedSchema.typeName,
|
|
42
|
+
AgentInteraction.AgentModelAttemptStartedSchema.typeName,
|
|
43
|
+
AgentInteraction.AgentModelAttemptFinishedSchema.typeName,
|
|
44
|
+
AgentInteraction.AgentAiResultAdmittedSchema.typeName,
|
|
45
|
+
AgentInteraction.AgentAiOperationFailedSchema.typeName,
|
|
46
|
+
AgentInteraction.AgentToolCallStartedSchema.typeName,
|
|
47
|
+
AgentInteraction.AgentToolCallFinishedSchema.typeName,
|
|
48
|
+
AgentInteraction.AgentModelSelectionChangedSchema.typeName,
|
|
49
|
+
AgentInteraction.AgentInvocationTerminatedSchema.typeName,
|
|
50
|
+
]);
|
|
51
|
+
/**
|
|
52
|
+
* Checks whether a schema defines a framework System Event, including Agent interactions.
|
|
53
|
+
*
|
|
54
|
+
* @param schema Event payload schema.
|
|
55
|
+
* @returns Whether the Event belongs to the System bus.
|
|
56
|
+
*/
|
|
57
|
+
export const isSystemEventSchema = (schema) => schema.typeName.startsWith("spine.system.") || agentSystemTypes.has(schema.typeName);
|
|
39
58
|
/**
|
|
40
59
|
* Small single-process multicast event bus.
|
|
41
60
|
*
|
|
42
61
|
* Public construction creates a domain-only bus that stores domain events and
|
|
43
62
|
* rejects System schemas, dispatchers, and events. Internally assembled
|
|
44
|
-
* forgetting and System buses
|
|
63
|
+
* forgetting and System buses have no `EventStore` unless explicitly given one.
|
|
45
64
|
* Events with no matching dispatcher resolve without dispatch. Events with no
|
|
46
65
|
* registered schema reject deterministically before storage or dispatch.
|
|
47
66
|
*/
|
|
@@ -79,6 +98,15 @@ export class EventBus {
|
|
|
79
98
|
this.#registry.unregister(dispatcher);
|
|
80
99
|
});
|
|
81
100
|
eventSchemaFinders.set(this, (typeUrl) => this.#registry.schema(typeUrl));
|
|
101
|
+
this.#registerCloseHooks();
|
|
102
|
+
for (const dispatcher of dispatchers) {
|
|
103
|
+
this.register(dispatcher);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Registers lifecycle callbacks for the package-internal bus access seam.
|
|
108
|
+
*/
|
|
109
|
+
#registerCloseHooks() {
|
|
82
110
|
eventBusCloseStarters.set(this, () => {
|
|
83
111
|
this.#beginClose();
|
|
84
112
|
});
|
|
@@ -88,13 +116,11 @@ export class EventBus {
|
|
|
88
116
|
this.#abortClose();
|
|
89
117
|
});
|
|
90
118
|
eventBusWorkCounters.set(this, () => this.#acceptedWorkCount);
|
|
91
|
-
for (const dispatcher of dispatchers) {
|
|
92
|
-
this.register(dispatcher);
|
|
93
|
-
}
|
|
94
119
|
}
|
|
95
120
|
/**
|
|
96
121
|
* Registers an event dispatcher.
|
|
97
122
|
*
|
|
123
|
+
* @typeParam Dispatcher Concrete recipient being registered.
|
|
98
124
|
* @param dispatcher the dispatcher to register.
|
|
99
125
|
* @returns the registered dispatcher.
|
|
100
126
|
*/
|
|
@@ -167,10 +193,7 @@ export class EventBus {
|
|
|
167
193
|
if (forgettingBuses.has(this)) {
|
|
168
194
|
this.#validate(event, typeUrl);
|
|
169
195
|
const accepted = await this.#accept(event, dispatchers);
|
|
170
|
-
|
|
171
|
-
await dispatcher.dispatch(acceptedEvent);
|
|
172
|
-
}
|
|
173
|
-
this.#notify(event);
|
|
196
|
+
await this.#deliverAccepted(event, accepted);
|
|
174
197
|
return;
|
|
175
198
|
}
|
|
176
199
|
const eventStore = this.#eventStore;
|
|
@@ -182,10 +205,7 @@ export class EventBus {
|
|
|
182
205
|
this.#validate(accepted, typeUrl);
|
|
183
206
|
acceptedDispatchers = await this.#accept(accepted, dispatchers);
|
|
184
207
|
});
|
|
185
|
-
|
|
186
|
-
await dispatcher.dispatch(acceptedEvent);
|
|
187
|
-
}
|
|
188
|
-
this.#notify(stored);
|
|
208
|
+
await this.#deliverAccepted(stored, acceptedDispatchers);
|
|
189
209
|
}
|
|
190
210
|
#postStored(event) {
|
|
191
211
|
const accepted = clone(EventSchema, event);
|
|
@@ -218,6 +238,16 @@ export class EventBus {
|
|
|
218
238
|
const dispatchers = this.#registry.find(typeUrl, event.context?.external === true);
|
|
219
239
|
this.#validate(event, typeUrl);
|
|
220
240
|
const accepted = await this.#accept(event, dispatchers);
|
|
241
|
+
await this.#deliverAccepted(event, accepted);
|
|
242
|
+
}
|
|
243
|
+
/**
|
|
244
|
+
* Delivers accepted recipients in order before notification.
|
|
245
|
+
*
|
|
246
|
+
* @param event Event to notify after successful dispatch.
|
|
247
|
+
* @param accepted Recipients admitted for this Event.
|
|
248
|
+
* @returns Completion after all recipients and notification.
|
|
249
|
+
*/
|
|
250
|
+
async #deliverAccepted(event, accepted) {
|
|
221
251
|
for (const { dispatcher, event: acceptedEvent } of accepted) {
|
|
222
252
|
await dispatcher.dispatch(acceptedEvent);
|
|
223
253
|
}
|
|
@@ -244,6 +274,12 @@ export class EventBus {
|
|
|
244
274
|
}
|
|
245
275
|
Validate.check(schema, message);
|
|
246
276
|
}
|
|
277
|
+
/**
|
|
278
|
+
* Serializes one Event callback on the raw runtime queue.
|
|
279
|
+
* @typeParam Result Callback result.
|
|
280
|
+
* @param work Callback to run.
|
|
281
|
+
* @returns Callback result after queued work completes.
|
|
282
|
+
*/
|
|
247
283
|
#runExclusive(work) {
|
|
248
284
|
let result;
|
|
249
285
|
this.#acceptedWorkCount++;
|
|
@@ -367,6 +403,12 @@ export class EventBus {
|
|
|
367
403
|
}
|
|
368
404
|
_a = EventBus;
|
|
369
405
|
const EventBusRoles = Object.freeze({
|
|
406
|
+
/**
|
|
407
|
+
* Creates a System Event bus with the supplied recipients.
|
|
408
|
+
* @param eventStore Optional persistent Event store.
|
|
409
|
+
* @param dispatchers Initial System recipients.
|
|
410
|
+
* @returns Configured System Event bus.
|
|
411
|
+
*/
|
|
370
412
|
createSystem(eventStore, dispatchers) {
|
|
371
413
|
const eventBus = new EventBus((eventStore ?? forgettingBus), []);
|
|
372
414
|
eventBusRoles.set(eventBus, "system");
|
|
@@ -376,13 +418,25 @@ const EventBusRoles = Object.freeze({
|
|
|
376
418
|
eventBus.register(dispatcher);
|
|
377
419
|
return eventBus;
|
|
378
420
|
},
|
|
421
|
+
/**
|
|
422
|
+
* Validates that a dispatcher belongs to the bus role.
|
|
423
|
+
*
|
|
424
|
+
* @param role Domain or System role.
|
|
425
|
+
* @param dispatcher Recipient to validate.
|
|
426
|
+
*/
|
|
379
427
|
validateDispatcher(role, dispatcher) {
|
|
380
428
|
for (const schema of dispatcher.messageSchemas())
|
|
381
429
|
EventBusRoles.validateSchema(role, schema);
|
|
382
430
|
},
|
|
431
|
+
/**
|
|
432
|
+
* Validates one Event schema for a bus role.
|
|
433
|
+
*
|
|
434
|
+
* @param role Domain or System role.
|
|
435
|
+
* @param schema Event payload schema.
|
|
436
|
+
*/
|
|
383
437
|
validateSchema(role, schema) {
|
|
384
438
|
const typeUrl = `type.${schema.typeName}`;
|
|
385
|
-
const systemSchema =
|
|
439
|
+
const systemSchema = isSystemEventSchema(schema);
|
|
386
440
|
if (role === "domain" && systemSchema)
|
|
387
441
|
throw new Error(`Domain EventBus rejects system event schema "${typeUrl}".`);
|
|
388
442
|
if (role === "system" && !systemSchema)
|
|
@@ -436,6 +490,13 @@ export const eventBusAccess = Object.freeze({
|
|
|
436
490
|
}
|
|
437
491
|
return postFollowUp(event);
|
|
438
492
|
},
|
|
493
|
+
/**
|
|
494
|
+
* Executes one callback on the Event queue.
|
|
495
|
+
* @typeParam Result Callback result.
|
|
496
|
+
* @param eventBus Target bus.
|
|
497
|
+
* @param work Serialized callback.
|
|
498
|
+
* @returns Callback result.
|
|
499
|
+
*/
|
|
439
500
|
runExclusive(eventBus, work) {
|
|
440
501
|
const runExclusive = exclusiveWorkers.get(eventBus);
|
|
441
502
|
if (runExclusive === undefined) {
|
|
@@ -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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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import type { Command } from "@spine-event-engine/proto";
|
|
2
|
+
import type { AgentSavedDispatchTarget } from "@spine-event-engine/proto/generated/spine/server/agent/execution_record_pb.js";
|
|
3
|
+
import type { CommandDispatcher } from "./command-dispatcher.js";
|
|
4
|
+
/**
|
|
5
|
+
* Prepares and rebinds one normal Command dispatcher without repeating routing.
|
|
6
|
+
*/
|
|
7
|
+
export interface SavedCommandBinding {
|
|
8
|
+
/**
|
|
9
|
+
* Prepares the exact recipient for saved dispatch.
|
|
10
|
+
*
|
|
11
|
+
* @param command Command envelope to prepare or dispatch.
|
|
12
|
+
* @returns The exact saved recipient target.
|
|
13
|
+
*/
|
|
14
|
+
prepare(command: Command): Promise<AgentSavedDispatchTarget>;
|
|
15
|
+
/**
|
|
16
|
+
* Checks whether a saved recipient still matches this dispatcher.
|
|
17
|
+
*
|
|
18
|
+
* @param target Persisted recipient target to compare or bind.
|
|
19
|
+
* @returns Whether the target still matches this dispatcher.
|
|
20
|
+
*/
|
|
21
|
+
matches(target: AgentSavedDispatchTarget): boolean;
|
|
22
|
+
/**
|
|
23
|
+
* Binds a saved envelope to its prepared recipient.
|
|
24
|
+
*
|
|
25
|
+
* @param command Command envelope to prepare or dispatch.
|
|
26
|
+
* @param target Persisted recipient target to compare or bind.
|
|
27
|
+
* @returns A callback that dispatches to the prepared recipient.
|
|
28
|
+
*/
|
|
29
|
+
bind(command: Command, target: AgentSavedDispatchTarget): Promise<() => Promise<void>>;
|
|
30
|
+
}
|
|
31
|
+
interface SavedDispatcherBindingAccess {
|
|
32
|
+
/**
|
|
33
|
+
* Registers a command dispatcher with its saved-dispatch binding.
|
|
34
|
+
*
|
|
35
|
+
* @param dispatcher Dispatcher to register or inspect.
|
|
36
|
+
* @param binding Saved-dispatch binding for this dispatcher.
|
|
37
|
+
* @returns The dispatcher with its binding recorded.
|
|
38
|
+
*/
|
|
39
|
+
command(dispatcher: CommandDispatcher, binding: SavedCommandBinding): CommandDispatcher;
|
|
40
|
+
/**
|
|
41
|
+
* Finds the saved-dispatch binding for a command dispatcher.
|
|
42
|
+
*
|
|
43
|
+
* @param dispatcher Dispatcher to register or inspect.
|
|
44
|
+
* @returns The registered command binding, if present.
|
|
45
|
+
*/
|
|
46
|
+
forCommand(dispatcher: CommandDispatcher): SavedCommandBinding | undefined;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Framework-only metadata adapters for saved Agent output acceptance.
|
|
50
|
+
*/
|
|
51
|
+
export declare const SavedDispatcherBindings: SavedDispatcherBindingAccess;
|
|
52
|
+
export {};
|
|
53
|
+
//# sourceMappingURL=saved-dispatcher-binding.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"saved-dispatcher-binding.d.ts","sourceRoot":"","sources":["../../src/bus/saved-dispatcher-binding.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAEzD,OAAO,KAAK,EACV,wBAAwB,EACzB,MAAM,+EAA+E,CAAC;AACvF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAEjE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;;;OAKG;IACH,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAE7D;;;;;OAKG;IACH,OAAO,CAAC,MAAM,EAAE,wBAAwB,GAAG,OAAO,CAAC;IAEnD;;;;;;OAMG;IACH,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,wBAAwB,GAAG,OAAO,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;CACxF;AAID,UAAU,4BAA4B;IACpC;;;;;;OAMG;IACH,OAAO,CAAC,UAAU,EAAE,iBAAiB,EAAE,OAAO,EAAE,mBAAmB,GAAG,iBAAiB,CAAC;IAExF;;;;;OAKG;IACH,UAAU,CAAC,UAAU,EAAE,iBAAiB,GAAG,mBAAmB,GAAG,SAAS,CAAC;CAC5E;AAED;;GAEG;AACH,eAAO,MAAM,uBAAuB,EAAE,4BAQpC,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2026, CodeMatters. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
|
|
5
|
+
* in compliance with the License. You may obtain a copy of the License at
|
|
6
|
+
*
|
|
7
|
+
* https://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
*
|
|
9
|
+
* Unless required by applicable law or agreed to in writing, software distributed under the License
|
|
10
|
+
* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
|
|
11
|
+
* or implied. See the License for the specific language governing permissions and limitations under
|
|
12
|
+
* the License.
|
|
13
|
+
*/
|
|
14
|
+
const commandBindings = new WeakMap();
|
|
15
|
+
/**
|
|
16
|
+
* Framework-only metadata adapters for saved Agent output acceptance.
|
|
17
|
+
*/
|
|
18
|
+
export const SavedDispatcherBindings = Object.freeze({
|
|
19
|
+
command(dispatcher, binding) {
|
|
20
|
+
commandBindings.set(dispatcher, binding);
|
|
21
|
+
return dispatcher;
|
|
22
|
+
},
|
|
23
|
+
forCommand(dispatcher) {
|
|
24
|
+
return commandBindings.get(dispatcher);
|
|
25
|
+
},
|
|
26
|
+
});
|
|
27
|
+
//# sourceMappingURL=saved-dispatcher-binding.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"saved-dispatcher-binding.js","sourceRoot":"","sources":["../../src/bus/saved-dispatcher-binding.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAuCH,MAAM,eAAe,GAAG,IAAI,OAAO,EAA0C,CAAC;AAqB9E;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAiC,MAAM,CAAC,MAAM,CAAC;IACjF,OAAO,CAAC,UAA6B,EAAE,OAA4B;QACjE,eAAe,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACzC,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,UAAU,CAAC,UAA6B;QACtC,OAAO,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
import type { ILogLayer } from "loglayer";
|
|
2
|
+
import type { AiRegistry } from "@spine-event-engine/ai";
|
|
2
3
|
import { type Command, type Event, type TenantId } from "@spine-event-engine/proto";
|
|
3
|
-
import { type StorageContext, type StorageFactory } from "@spine-event-engine/storage";
|
|
4
|
+
import { StorageGroup, type StorageContext, type StorageFactory } from "@spine-event-engine/storage";
|
|
5
|
+
/**
|
|
6
|
+
* Storage family shared by paired System Event publication and trusted reads.
|
|
7
|
+
* @internal
|
|
8
|
+
*/
|
|
9
|
+
export declare const systemEventGroup: StorageGroup;
|
|
4
10
|
import { CommandBus } from "../bus/command-bus.js";
|
|
5
11
|
import type { CommandDispatcher } from "../bus/command-dispatcher.js";
|
|
6
12
|
import { EventBus, type EventSubscriber, type EventSubscription } from "../bus/event-bus.js";
|
|
@@ -218,6 +224,14 @@ interface FrameworkConstructionToken {
|
|
|
218
224
|
readonly frameworkConstructionToken: true;
|
|
219
225
|
}
|
|
220
226
|
interface BoundedContextAccess {
|
|
227
|
+
/**
|
|
228
|
+
* Resolves an original or Bounded Context-issued copy-safe repository view.
|
|
229
|
+
*
|
|
230
|
+
* @param context Built Bounded Context that registered the repository.
|
|
231
|
+
* @param view Candidate original or issued view.
|
|
232
|
+
* @returns Registered repository, or undefined for a foreign view.
|
|
233
|
+
*/
|
|
234
|
+
resolveRepository(context: BoundedContext, view: RepositoryView): RepositoryView | undefined;
|
|
221
235
|
/**
|
|
222
236
|
* Stops new work admission before a Server drains all its contexts.
|
|
223
237
|
*
|
|
@@ -243,9 +257,10 @@ interface BoundedContextAccess {
|
|
|
243
257
|
*
|
|
244
258
|
* @param builder Registered builder to build.
|
|
245
259
|
* @param defaultStorageFactory Storage used when the builder has none.
|
|
260
|
+
* @param defaultAi AI registry used when the builder has none.
|
|
246
261
|
* @returns Promise resolving to a bounded context.
|
|
247
262
|
*/
|
|
248
|
-
build(builder: BoundedContextBuilder, defaultStorageFactory: StorageFactory): Promise<BoundedContext>;
|
|
263
|
+
build(builder: BoundedContextBuilder, defaultStorageFactory: StorageFactory, defaultAi?: AiRegistry): Promise<BoundedContext>;
|
|
249
264
|
/**
|
|
250
265
|
* Subscribes to a public event type on a built context.
|
|
251
266
|
*
|
|
@@ -387,6 +402,10 @@ interface BoundedContextAssembly {
|
|
|
387
402
|
* Provider that creates context storage.
|
|
388
403
|
*/
|
|
389
404
|
readonly storageFactory: StorageFactory;
|
|
405
|
+
/**
|
|
406
|
+
* Selected AI registry, if this Bounded Context accepts Agent work.
|
|
407
|
+
*/
|
|
408
|
+
readonly ai?: AiRegistry;
|
|
390
409
|
/**
|
|
391
410
|
* Repositories registered in this context.
|
|
392
411
|
*/
|
|
@@ -479,6 +498,16 @@ export declare class BoundedContext {
|
|
|
479
498
|
* @returns Returns immutable repository views.
|
|
480
499
|
*/
|
|
481
500
|
registeredRepositories(): readonly RepositoryView[];
|
|
501
|
+
/**
|
|
502
|
+
* Returns the repository already registered for an exact Entity constructor.
|
|
503
|
+
* This trusted server-side lookup does not load Entity state or open storage.
|
|
504
|
+
*
|
|
505
|
+
* @typeParam EntityType Concrete Entity constructor registered in this Bounded Context.
|
|
506
|
+
* @param entityType Exact Entity class supplied to this Bounded Context's builder.
|
|
507
|
+
* @returns The existing typed repository for that Entity class.
|
|
508
|
+
* @throws When the constructor is absent or the Bounded Context is closing.
|
|
509
|
+
*/
|
|
510
|
+
getRepository<EntityType extends RepositoryEntityType & ConcreteRepositoryEntityType<EntityType>>(entityType: EntityType): Repository<EntityType>;
|
|
482
511
|
/**
|
|
483
512
|
* Clears and locally replays every registered Projection from already-stored events.
|
|
484
513
|
*
|
|
@@ -494,7 +523,7 @@ export declare class BoundedContext {
|
|
|
494
523
|
* - single-tenant contexts reject `tenantId`;
|
|
495
524
|
* - multitenant contexts require the exact non-blank `tenantId`;
|
|
496
525
|
* - process-local sequential execution on the same EventBus runtime queue as
|
|
497
|
-
* live event intake
|
|
526
|
+
* live event intake.
|
|
498
527
|
*
|
|
499
528
|
* Unsupported boundary:
|
|
500
529
|
* - Delivery jobs, schedulers, inbox lifecycle, retries, and transport
|
|
@@ -506,14 +535,8 @@ export declare class BoundedContext {
|
|
|
506
535
|
*/
|
|
507
536
|
catchUpReadSide(options?: ReadCatchUpOptions): Promise<ReadCatchUpResult>;
|
|
508
537
|
/**
|
|
509
|
-
* Closes this context's buses, Stand,
|
|
510
|
-
*
|
|
511
|
-
* Close is idempotent and returns the same close outcome on repeated calls.
|
|
512
|
-
* The context attempts every close hook; when any hook fails, the
|
|
513
|
-
* returned promise rejects with an `AggregateError` after the remaining hooks
|
|
514
|
-
* have also been attempted.
|
|
515
|
-
*
|
|
516
|
-
* @returns A promise that settles after all resources close.
|
|
538
|
+
* Closes this context's buses, Stand, repository storage, and runtime bindings.
|
|
539
|
+
* @returns Completion or an aggregate of close failures.
|
|
517
540
|
*/
|
|
518
541
|
close(): Promise<void>;
|
|
519
542
|
}
|
|
@@ -529,7 +552,7 @@ export declare const boundedContextAccess: BoundedContextAccess;
|
|
|
529
552
|
*
|
|
530
553
|
* @typeParam EntityType The Entity class added to a Bounded Context builder.
|
|
531
554
|
*/
|
|
532
|
-
export type GeneratedRepositoryOptions<EntityType extends RepositoryEntityType & ConcreteRepositoryEntityType<EntityType>> = Readonly<Pick<RepositoryOptions<EntityType>, "commandRouting" | "eventRouting" | "stateUpdateRouting" | "stringifierRegistry">> & (RepositoryOptions<EntityType> extends {
|
|
555
|
+
export type GeneratedRepositoryOptions<EntityType extends RepositoryEntityType & ConcreteRepositoryEntityType<EntityType>> = Readonly<Pick<RepositoryOptions<EntityType>, "commandRouting" | "eventRouting" | "stateUpdateRouting" | "stringifierRegistry" | "agentCodeRevision" | "ai">> & (RepositoryOptions<EntityType> extends {
|
|
533
556
|
readonly onCreate: infer Callback;
|
|
534
557
|
} ? {
|
|
535
558
|
readonly onCreate: Callback;
|
|
@@ -585,6 +608,7 @@ export declare class BoundedContextBuilder {
|
|
|
585
608
|
* @param entry The Entity class to register.
|
|
586
609
|
* @param options Routing and constructor callback for its generated repository. The callback
|
|
587
610
|
* is required when the Entity constructor needs additional application arguments.
|
|
611
|
+
*
|
|
588
612
|
* @returns This builder for further configuration.
|
|
589
613
|
*/
|
|
590
614
|
add<EntityType extends RepositoryEntityType & ConcreteRepositoryEntityType<EntityType>>(entry: EntityType, ...options: GeneratedRepositoryOptions<EntityType> extends {
|
|
@@ -605,6 +629,7 @@ export declare class BoundedContextBuilder {
|
|
|
605
629
|
* A standalone commander requires generated receiver metadata and therefore
|
|
606
630
|
* this builder's `buildAsync()` path. It installs its Command and Event sides
|
|
607
631
|
* exactly once.
|
|
632
|
+
*
|
|
608
633
|
* @returns This builder for further configuration.
|
|
609
634
|
*/
|
|
610
635
|
addCommandDispatcher(dispatcher: CommandDispatcher | AbstractCommander): this;
|
|
@@ -620,6 +645,7 @@ export declare class BoundedContextBuilder {
|
|
|
620
645
|
*
|
|
621
646
|
* @param dispatcher Raw event dispatcher, or a standalone reactor/subscriber.
|
|
622
647
|
* Standalone receivers require generated receiver metadata and `buildAsync()`.
|
|
648
|
+
*
|
|
623
649
|
* @returns This builder for further configuration.
|
|
624
650
|
*/
|
|
625
651
|
addEventDispatcher(dispatcher: EventDispatcher | AbstractEventReactor | AbstractEventSubscriber): this;
|
|
@@ -647,6 +673,13 @@ export declare class BoundedContextBuilder {
|
|
|
647
673
|
* @returns Returns this builder for further configuration.
|
|
648
674
|
*/
|
|
649
675
|
withStorageFactory(storageFactory: StorageFactory): this;
|
|
676
|
+
/**
|
|
677
|
+
* Sets the application AI registry before this Bounded Context is built.
|
|
678
|
+
*
|
|
679
|
+
* @param registry Factory-created deployment registry.
|
|
680
|
+
* @returns This builder.
|
|
681
|
+
*/
|
|
682
|
+
withAi(registry: AiRegistry): this;
|
|
650
683
|
/**
|
|
651
684
|
* Persists internal system events in the paired System Context storage.
|
|
652
685
|
*
|