@spine-event-engine/server 2.0.0-snapshot.26 → 2.0.0-snapshot.28
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 +56 -8
- package/REFERENCE.md +151 -39
- package/dist/agent/agent-live-ai-runtime.d.ts +1 -1
- package/dist/agent/agent-live-ai-runtime.js +1 -1
- package/dist/agent/agent-live-budget.d.ts +1 -1
- package/dist/agent/agent-live-budget.js +1 -1
- package/dist/agent/agent-live-read-runtime.d.ts +1 -1
- package/dist/agent/agent-live-read-runtime.js +1 -1
- package/dist/browser/browser-admission.d.ts +47 -0
- package/dist/browser/browser-admission.d.ts.map +1 -0
- package/dist/browser/browser-admission.js +200 -0
- package/dist/browser/browser-admission.js.map +1 -0
- package/dist/browser/browser-server.d.ts +14 -7
- package/dist/browser/browser-server.d.ts.map +1 -1
- package/dist/browser/browser-server.js +462 -129
- package/dist/browser/browser-server.js.map +1 -1
- package/dist/browser/index.d.ts +1 -1
- package/dist/browser/index.d.ts.map +1 -1
- package/dist/browser/options.d.ts +48 -2
- package/dist/browser/options.d.ts.map +1 -1
- package/dist/bus/command-bus.d.ts +6 -1
- package/dist/bus/command-bus.d.ts.map +1 -1
- package/dist/bus/command-bus.js +6 -1
- package/dist/bus/command-bus.js.map +1 -1
- package/dist/bus/event-bus.d.ts +6 -1
- package/dist/bus/event-bus.d.ts.map +1 -1
- package/dist/bus/event-bus.js +6 -1
- package/dist/bus/event-bus.js.map +1 -1
- package/dist/context/bounded-context.d.ts +30 -28
- package/dist/context/bounded-context.d.ts.map +1 -1
- package/dist/context/bounded-context.js +136 -82
- package/dist/context/bounded-context.js.map +1 -1
- package/dist/context/entity-inbox.d.ts +12 -17
- package/dist/context/entity-inbox.d.ts.map +1 -1
- package/dist/context/entity-inbox.js +106 -119
- package/dist/context/entity-inbox.js.map +1 -1
- package/dist/context/local-inbox-handoff.d.ts +13 -13
- package/dist/context/local-inbox-handoff.d.ts.map +1 -1
- package/dist/context/local-inbox-handoff.js +60 -32
- package/dist/context/local-inbox-handoff.js.map +1 -1
- package/dist/context/persistent-tenant-index.d.ts +81 -0
- package/dist/context/persistent-tenant-index.d.ts.map +1 -0
- package/dist/context/persistent-tenant-index.js +270 -0
- package/dist/context/persistent-tenant-index.js.map +1 -0
- package/dist/context/projection-handoff.d.ts +9 -9
- package/dist/context/projection-handoff.d.ts.map +1 -1
- package/dist/context/projection-handoff.js +31 -23
- package/dist/context/projection-handoff.js.map +1 -1
- package/dist/context/tenant-index.d.ts +7 -6
- package/dist/context/tenant-index.d.ts.map +1 -1
- package/dist/context/tenant-index.js +2 -188
- package/dist/context/tenant-index.js.map +1 -1
- package/dist/context/tenant-unknown-error.d.ts +2 -2
- package/dist/context/tenant-unknown-error.d.ts.map +1 -1
- package/dist/context/tenant-unknown-error.js +4 -1
- package/dist/context/tenant-unknown-error.js.map +1 -1
- package/dist/delivery/delivery-supervisor.d.ts.map +1 -1
- package/dist/delivery/delivery-supervisor.js +12 -3
- package/dist/delivery/delivery-supervisor.js.map +1 -1
- package/dist/delivery/delivery.d.ts +4 -3
- package/dist/delivery/delivery.d.ts.map +1 -1
- package/dist/delivery/delivery.js +82 -34
- package/dist/delivery/delivery.js.map +1 -1
- package/dist/delivery/reception-observation.d.ts +3 -3
- package/dist/delivery/reception-observation.js +2 -2
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/repository/command-routing.d.ts +1 -1
- package/dist/repository/command-routing.js +1 -1
- package/dist/repository/event-routing.d.ts +1 -1
- package/dist/repository/event-routing.js +1 -1
- package/dist/repository/repository.d.ts +23 -31
- package/dist/repository/repository.d.ts.map +1 -1
- package/dist/repository/repository.js +244 -218
- package/dist/repository/repository.js.map +1 -1
- package/dist/repository/state-update-routing.d.ts +1 -1
- package/dist/repository/state-update-routing.js +1 -1
- package/dist/runtime/signal-publisher.d.ts +23 -8
- package/dist/runtime/signal-publisher.d.ts.map +1 -1
- package/dist/runtime/signal-publisher.js +11 -8
- package/dist/runtime/signal-publisher.js.map +1 -1
- package/dist/server/node-coordinator.d.ts.map +1 -1
- package/dist/server/node-coordinator.js +220 -54
- package/dist/server/node-coordinator.js.map +1 -1
- package/dist/server/server-environment.d.ts +6 -5
- package/dist/server/server-environment.d.ts.map +1 -1
- package/dist/server/server-environment.js +13 -9
- package/dist/server/server-environment.js.map +1 -1
- package/dist/server/server.js +1 -0
- package/dist/server/server.js.map +1 -1
- package/dist/services/app-query-execution.js +2 -2
- package/dist/services/app-query-execution.js.map +1 -1
- package/dist/services/native-operation.d.ts +34 -0
- package/dist/services/native-operation.d.ts.map +1 -0
- package/dist/services/native-operation.js +77 -0
- package/dist/services/native-operation.js.map +1 -0
- package/dist/services/spine-services.d.ts +6 -0
- package/dist/services/spine-services.d.ts.map +1 -1
- package/dist/services/spine-services.js +128 -30
- package/dist/services/spine-services.js.map +1 -1
- package/dist/services/trusted-reader-ingress.d.ts +23 -5
- package/dist/services/trusted-reader-ingress.d.ts.map +1 -1
- package/dist/services/trusted-reader-ingress.js +18 -5
- package/dist/services/trusted-reader-ingress.js.map +1 -1
- package/dist/stand/stand.d.ts +1 -1
- package/dist/stand/stand.js +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +16 -14
|
@@ -20,7 +20,7 @@ import { ShardIndex } from "../delivery/shard-index.js";
|
|
|
20
20
|
import { DeliveryReadiness, InboxHandoff, } from "./local-inbox-handoff.js";
|
|
21
21
|
const projectionLabels = ["UPDATE_SUBSCRIBER"];
|
|
22
22
|
/**
|
|
23
|
-
* Persists and
|
|
23
|
+
* Persists and delivers delivery rows for projection subscribers.
|
|
24
24
|
*/
|
|
25
25
|
export class LocalProjectionInbox {
|
|
26
26
|
#contextName;
|
|
@@ -36,7 +36,7 @@ export class LocalProjectionInbox {
|
|
|
36
36
|
* Creates a local projection inbox.
|
|
37
37
|
* @param contextName Names the bounded context that owns this inbox.
|
|
38
38
|
* @param readiness Coordinates delivery readiness after persistence.
|
|
39
|
-
* @param onAdmit Checks current tenant membership before persistence or
|
|
39
|
+
* @param onAdmit Checks current tenant membership before persistence or delivery.
|
|
40
40
|
*/
|
|
41
41
|
constructor(contextName, readiness = new DeliveryReadiness(), onAdmit = () => Promise.resolve()) {
|
|
42
42
|
this.#contextName = contextName;
|
|
@@ -45,7 +45,7 @@ export class LocalProjectionInbox {
|
|
|
45
45
|
this.#onAdmit = onAdmit;
|
|
46
46
|
}
|
|
47
47
|
/**
|
|
48
|
-
* Registers a target that
|
|
48
|
+
* Registers a target that delivers projection messages.
|
|
49
49
|
* @param target Handles messages for one projection type.
|
|
50
50
|
*/
|
|
51
51
|
register(target) {
|
|
@@ -67,39 +67,47 @@ export class LocalProjectionInbox {
|
|
|
67
67
|
}
|
|
68
68
|
/**
|
|
69
69
|
* Dispatches a durable inbox row through its projection target.
|
|
70
|
-
* @param message Contains the persisted
|
|
70
|
+
* @param message Contains the persisted Inbox row to deliver.
|
|
71
71
|
* @param deliveryTenantId Identifies the tenant that owns the row when present.
|
|
72
|
-
* @returns A promise that resolves after the inbox row is
|
|
72
|
+
* @returns A promise that resolves after the inbox row is delivered.
|
|
73
73
|
*/
|
|
74
|
-
|
|
75
|
-
return this.#
|
|
74
|
+
deliver(message, deliveryTenantId) {
|
|
75
|
+
return this.#deliver(message, deliveryTenantId);
|
|
76
76
|
}
|
|
77
77
|
/**
|
|
78
|
-
* Persists
|
|
79
|
-
* @param delivery Stores and
|
|
78
|
+
* Persists one projection Inbox message and schedules eligible delivery.
|
|
79
|
+
* @param delivery Stores the Inbox row and schedules eligible delivery.
|
|
80
80
|
* @param input Describes the message to persist.
|
|
81
81
|
* @param deliveryTenantId Identifies the tenant that owns the message when present.
|
|
82
|
-
* @returns Resolves
|
|
82
|
+
* @returns Resolves after the Inbox row is persisted and eligible delivery is scheduled.
|
|
83
83
|
*/
|
|
84
84
|
async receive(delivery, input, deliveryTenantId) {
|
|
85
85
|
const routed = this.#readiness.route(delivery);
|
|
86
86
|
return await InboxHandoff.coordinate({
|
|
87
87
|
handoffs: this.#inFlightHandoffs,
|
|
88
88
|
key: InboxHandoff.key(input, deliveryTenantId),
|
|
89
|
-
onHandoff: () => this.#
|
|
89
|
+
onHandoff: () => this.#receiveAndSchedule(routed, input, deliveryTenantId),
|
|
90
90
|
});
|
|
91
91
|
}
|
|
92
|
-
|
|
92
|
+
/**
|
|
93
|
+
* Persists one Projection row and schedules eligible delivery separately.
|
|
94
|
+
*
|
|
95
|
+
* @param delivery Delivery used for the stored row.
|
|
96
|
+
* @param input Projection Inbox input.
|
|
97
|
+
* @param deliveryTenantId Tenant selected for the row.
|
|
98
|
+
* @returns The accepted Inbox receipt.
|
|
99
|
+
*/
|
|
100
|
+
async #receiveAndSchedule(delivery, input, deliveryTenantId) {
|
|
93
101
|
await this.#onAdmit(deliveryTenantId);
|
|
94
102
|
const written = await this.#writeInboxRow(delivery, input);
|
|
95
103
|
this.#trackMessage(written.message);
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
}
|
|
100
|
-
finally {
|
|
104
|
+
const processing = this.#drainWritten(delivery, written.message, deliveryTenantId);
|
|
105
|
+
void processing
|
|
106
|
+
.finally(() => {
|
|
101
107
|
this.#untrackMessage(written.message);
|
|
102
|
-
}
|
|
108
|
+
})
|
|
109
|
+
.catch(() => undefined);
|
|
110
|
+
return written.message;
|
|
103
111
|
}
|
|
104
112
|
#writeInboxRow(delivery, input) {
|
|
105
113
|
return delivery.inbox.receive({
|
|
@@ -127,14 +135,14 @@ export class LocalProjectionInbox {
|
|
|
127
135
|
delivery,
|
|
128
136
|
received: message,
|
|
129
137
|
node: this.#contextName,
|
|
130
|
-
|
|
138
|
+
onDispatch: (next) => this.#deliver(next, deliveryTenantId),
|
|
131
139
|
acceptMessage: (next) => deliveryTenantKey(next) === deliveryTenantKey(message) &&
|
|
132
140
|
(InboxHandoff.sameMessageId(next.id, message.id) ||
|
|
133
141
|
(next.label === "UPDATE_SUBSCRIBER" && this.#targets.has(next.inboxId.targetTypeUrl))),
|
|
134
142
|
onResolved: (next) => {
|
|
135
143
|
this.#recordAcknowledgement(next);
|
|
136
144
|
},
|
|
137
|
-
|
|
145
|
+
deliveryFailureMessage: "Projection inbox delivery failed.",
|
|
138
146
|
skippedMessage: "Projection inbox delivery was skipped before the target row was delivered.",
|
|
139
147
|
unfinishedMessage: "Projection inbox delivery did not reach the target row before the local drain finished.",
|
|
140
148
|
};
|
|
@@ -159,7 +167,7 @@ export class LocalProjectionInbox {
|
|
|
159
167
|
this.#nextVersion += 1n;
|
|
160
168
|
return this.#nextVersion;
|
|
161
169
|
}
|
|
162
|
-
async #
|
|
170
|
+
async #deliver(message, deliveryTenantId) {
|
|
163
171
|
receptionObservation.markManaged();
|
|
164
172
|
_a.#assert(message);
|
|
165
173
|
await this.#onAdmit(deliveryTenantId);
|
|
@@ -167,14 +175,14 @@ export class LocalProjectionInbox {
|
|
|
167
175
|
if (target === undefined) {
|
|
168
176
|
throw new Error(`BoundedContext delivery has no projection subscriber target for "${message.inboxId.targetTypeUrl}".`);
|
|
169
177
|
}
|
|
170
|
-
await target.
|
|
178
|
+
await target.deliver(message, deliveryTenantId);
|
|
171
179
|
}
|
|
172
180
|
static #assert(message) {
|
|
173
181
|
if (message.label !== "UPDATE_SUBSCRIBER") {
|
|
174
182
|
throw new Error(`BoundedContext delivery has no handler for inbox label "${message.label}".`);
|
|
175
183
|
}
|
|
176
184
|
if (message.status !== "TO_DELIVER") {
|
|
177
|
-
throw new Error(`BoundedContext delivery cannot
|
|
185
|
+
throw new Error(`BoundedContext delivery cannot deliver projection inbox message with status "${message.status}".`);
|
|
178
186
|
}
|
|
179
187
|
}
|
|
180
188
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projection-handoff.js","sourceRoot":"","sources":["../../src/context/projection-handoff.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,+BAA+B,CAAC;AAErD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAEnE,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAE5E,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,OAAO,EAEL,iBAAiB,EACjB,YAAY,GAGb,MAAM,0BAA0B,CAAC;AAElC,MAAM,gBAAgB,GAAG,CAAC,mBAAmB,CAAU,CAAC;AAExD;;GAEG;AACH,MAAM,OAAO,oBAAoB;IACtB,YAAY,CAAS;IAErB,QAAQ,GAAG,IAAI,GAAG,EAAiC,CAAC;IAEpD,UAAU,GAAG,IAAI,GAAG,EAAuC,CAAC;IAE5D,UAAU,CAAoB;IAE9B,QAAQ,CAAyC;IAEjD,iBAAiB,GAAG,IAAI,GAAG,EAAiC,CAAC;IAE7D,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;IAExC,uBAAuB,GAAG,IAAI,GAAG,EAAU,CAAC;IAErD,YAAY,GAAG,EAAE,CAAC;IAElB;;;;;OAKG;IACH,YACE,WAAmB,EACnB,YAAiD,IAAI,iBAAiB,EAAE,EACxE,UAAkD,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE;QAEzE,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,UAAU;YACb,SAAS,YAAY,iBAAiB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,iBAAiB,CAAC,SAAS,CAAC,CAAC;QACxF,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACH,QAAQ,CAAC,MAA6B;QACpC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,UAAU,CAAC,GAAG,CACjB,MAAM,CAAC,aAAa,EACpB,MAAM,CAAC,MAAM,CAAC;YACZ,YAAY,CAAC,QAAQ,CAAC;gBACpB,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC;gBAC1B,OAAO,EAAE,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE;gBAChD,KAAK,EAAE,UAAU,CAAC,MAAM,EAAE;aAC3B,CAAC;SACH,CAAC,CACH,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,SAAS;QACP,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED;;;;;OAKG;IACH,
|
|
1
|
+
{"version":3,"file":"projection-handoff.js","sourceRoot":"","sources":["../../src/context/projection-handoff.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { TenantId } from "@spine-event-engine/proto";
|
|
2
|
-
import type {
|
|
3
|
-
import { type TenantCatalogCursor, type TenantCatalogRead, type TenantCatalogSignal } from "@spine-event-engine/storage/provider";
|
|
2
|
+
import type { TenantCatalogCursor, TenantCatalogRead, TenantCatalogSignal } from "@spine-event-engine/storage/provider";
|
|
4
3
|
/**
|
|
5
4
|
* Finite read request for a live tenant index.
|
|
6
5
|
*/
|
|
@@ -63,9 +62,11 @@ export interface TenantIndexPage {
|
|
|
63
62
|
readonly hasMore: boolean;
|
|
64
63
|
}
|
|
65
64
|
/**
|
|
66
|
-
*
|
|
65
|
+
* Selects single-tenant execution without a tenant directory.
|
|
67
66
|
*/
|
|
68
|
-
export declare const
|
|
69
|
-
|
|
70
|
-
|
|
67
|
+
export declare const SINGLE_TENANT: unique symbol;
|
|
68
|
+
/**
|
|
69
|
+
* Selects single-tenant execution or an application-supplied directory.
|
|
70
|
+
*/
|
|
71
|
+
export type TenantIndexSetting = typeof SINGLE_TENANT | TenantIndex;
|
|
71
72
|
//# sourceMappingURL=tenant-index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tenant-index.d.ts","sourceRoot":"","sources":["../../src/context/tenant-index.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"tenant-index.d.ts","sourceRoot":"","sources":["../../src/context/tenant-index.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,KAAK,EACV,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,sCAAsC,CAAC;AAE9C;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,iBAAiB,CAAC;AAEhD;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,mBAAmB,CAAC;AAEpD;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,mBAAmB,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,WAAW;IAG1B;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAE/C;;;;OAIG;IACH,GAAG,IAAI,OAAO,CAAC,SAAS,QAAQ,EAAE,CAAC,CAAC;IAEpC;;;;;OAKG;IACH,IAAI,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAEzD;;;;;OAKG;IACH,IAAI,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACzC;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,QAAQ,CAAC,GAAG,EAAE,SAAS,QAAQ,EAAE,CAAC;IAElC;;OAEG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAEnC;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AAED;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,OAAO,MAAgC,CAAC;AAEpE;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,OAAO,aAAa,GAAG,WAAW,CAAC"}
|
|
@@ -11,194 +11,8 @@
|
|
|
11
11
|
* or implied. See the License for the specific language governing permissions and limitations under
|
|
12
12
|
* the License.
|
|
13
13
|
*/
|
|
14
|
-
import { TenantBoundary, TenantCatalogReads, } from "@spine-event-engine/storage/provider";
|
|
15
14
|
/**
|
|
16
|
-
*
|
|
15
|
+
* Selects single-tenant execution without a tenant directory.
|
|
17
16
|
*/
|
|
18
|
-
export const
|
|
19
|
-
/**
|
|
20
|
-
* Selects a provider catalog when available without creating records.
|
|
21
|
-
*
|
|
22
|
-
* @param factory Environment storage factory.
|
|
23
|
-
* @returns One live index for the environment lifetime.
|
|
24
|
-
*/
|
|
25
|
-
fromFactory(factory) {
|
|
26
|
-
const provider = factory;
|
|
27
|
-
return typeof provider.tenantCatalog === "function"
|
|
28
|
-
? new StorageTenantIndex(provider.tenantCatalog())
|
|
29
|
-
: new MemoryTenantIndex();
|
|
30
|
-
},
|
|
31
|
-
});
|
|
32
|
-
/**
|
|
33
|
-
* Adapts a provider catalog to the public live membership contract.
|
|
34
|
-
*/
|
|
35
|
-
class StorageTenantIndex {
|
|
36
|
-
catalog;
|
|
37
|
-
/**
|
|
38
|
-
* Binds the index to a provider catalog.
|
|
39
|
-
*
|
|
40
|
-
* @param catalog Provider catalog retained by its storage factory.
|
|
41
|
-
*/
|
|
42
|
-
constructor(catalog) {
|
|
43
|
-
this.catalog = catalog;
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* Checks membership through the catalog.
|
|
47
|
-
*
|
|
48
|
-
* @param tenantId Tenant to inspect.
|
|
49
|
-
* @returns Live catalog membership.
|
|
50
|
-
*/
|
|
51
|
-
async contains(tenantId) {
|
|
52
|
-
return this.catalog.contains(TenantBoundary.from(tenantId));
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* Lists complete named tenant identities.
|
|
56
|
-
*
|
|
57
|
-
* @returns Complete named tenant identities.
|
|
58
|
-
*/
|
|
59
|
-
async all() {
|
|
60
|
-
return Object.freeze((await this.catalog.all()).map((boundary) => this.named(boundary)));
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* Reads a finite provider page.
|
|
64
|
-
*
|
|
65
|
-
* @param request Finite provider page.
|
|
66
|
-
* @returns Complete tenant page.
|
|
67
|
-
*/
|
|
68
|
-
async page(request) {
|
|
69
|
-
TenantCatalogReads.require(request);
|
|
70
|
-
const page = await this.catalog.page(request);
|
|
71
|
-
request.signal.throwIfAborted();
|
|
72
|
-
return {
|
|
73
|
-
ids: page.boundaries.map((boundary) => this.named(boundary)),
|
|
74
|
-
...(page.after === undefined ? {} : { after: page.after }),
|
|
75
|
-
hasMore: page.hasMore,
|
|
76
|
-
};
|
|
77
|
-
}
|
|
78
|
-
/**
|
|
79
|
-
* Registers a tenant through the provider catalog.
|
|
80
|
-
*
|
|
81
|
-
* @param tenantId Tenant to register.
|
|
82
|
-
* @returns Provider confirmation.
|
|
83
|
-
*/
|
|
84
|
-
async keep(tenantId) {
|
|
85
|
-
return this.catalog.keep(TenantBoundary.from(tenantId));
|
|
86
|
-
}
|
|
87
|
-
/**
|
|
88
|
-
* Validates a named provider boundary.
|
|
89
|
-
*
|
|
90
|
-
* @param boundary Provider boundary.
|
|
91
|
-
* @returns Its complete named identity.
|
|
92
|
-
*/
|
|
93
|
-
named(boundary) {
|
|
94
|
-
if (boundary.single || boundary.tenantId === undefined)
|
|
95
|
-
throw new Error("Multitenant provider catalog returned a single-tenant boundary.");
|
|
96
|
-
return boundary.tenantId;
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
/**
|
|
100
|
-
* Retains explicit membership when a custom factory has no catalog.
|
|
101
|
-
*/
|
|
102
|
-
class MemoryTenantIndex {
|
|
103
|
-
#tenants = new Map();
|
|
104
|
-
#order = [];
|
|
105
|
-
#identity = {};
|
|
106
|
-
/**
|
|
107
|
-
* Checks explicit memory membership.
|
|
108
|
-
*
|
|
109
|
-
* @param tenantId Tenant to inspect.
|
|
110
|
-
* @returns Explicit membership.
|
|
111
|
-
*/
|
|
112
|
-
contains(tenantId) {
|
|
113
|
-
return Promise.resolve().then(() => this.#tenants.has(String(TenantBoundary.from(tenantId).key)));
|
|
114
|
-
}
|
|
115
|
-
/**
|
|
116
|
-
* Lists detached complete tenant identities.
|
|
117
|
-
*
|
|
118
|
-
* @returns Detached complete tenant identities.
|
|
119
|
-
*/
|
|
120
|
-
all() {
|
|
121
|
-
return Promise.resolve(Object.freeze(this.#order.map((boundary) => boundary.tenantId)));
|
|
122
|
-
}
|
|
123
|
-
/**
|
|
124
|
-
* Reads a bounded page without copying the full directory.
|
|
125
|
-
*
|
|
126
|
-
* @param request Finite page request.
|
|
127
|
-
* @returns Bounded membership page.
|
|
128
|
-
*/
|
|
129
|
-
page(request) {
|
|
130
|
-
return Promise.resolve().then(() => this.readPage(request));
|
|
131
|
-
}
|
|
132
|
-
/**
|
|
133
|
-
* Reads one page after promise admission.
|
|
134
|
-
*
|
|
135
|
-
* @param request Finite page request.
|
|
136
|
-
* @returns Bounded membership page.
|
|
137
|
-
*/
|
|
138
|
-
readPage(request) {
|
|
139
|
-
TenantCatalogReads.require(request);
|
|
140
|
-
const cursor = request.after;
|
|
141
|
-
if (cursor !== undefined && !(cursor instanceof MemoryTenantIndexCursor))
|
|
142
|
-
throw new TypeError("TenantIndex continuation is invalid.");
|
|
143
|
-
const state = cursor?.position(this.#identity);
|
|
144
|
-
const start = state?.index ?? 0;
|
|
145
|
-
const length = state?.length ?? this.#order.length;
|
|
146
|
-
const end = Math.min(length, start + request.count);
|
|
147
|
-
request.signal.throwIfAborted();
|
|
148
|
-
return {
|
|
149
|
-
ids: this.#order.slice(start, end).map((boundary) => boundary.tenantId),
|
|
150
|
-
...(end < length ? { after: new MemoryTenantIndexCursor(this.#identity, end, length) } : {}),
|
|
151
|
-
hasMore: end < length,
|
|
152
|
-
};
|
|
153
|
-
}
|
|
154
|
-
/**
|
|
155
|
-
* Registers one detached complete tenant identity.
|
|
156
|
-
*
|
|
157
|
-
* @param tenantId Tenant to register.
|
|
158
|
-
* @returns Visible membership completion.
|
|
159
|
-
*/
|
|
160
|
-
keep(tenantId) {
|
|
161
|
-
return Promise.resolve().then(() => {
|
|
162
|
-
const boundary = TenantBoundary.from(tenantId);
|
|
163
|
-
const key = String(boundary.key);
|
|
164
|
-
if (this.#tenants.has(key))
|
|
165
|
-
return;
|
|
166
|
-
this.#tenants.set(key, boundary);
|
|
167
|
-
this.#order.push(boundary);
|
|
168
|
-
});
|
|
169
|
-
}
|
|
170
|
-
}
|
|
171
|
-
/**
|
|
172
|
-
* Instance-bound continuation for a transient in-memory index.
|
|
173
|
-
*/
|
|
174
|
-
class MemoryTenantIndexCursor {
|
|
175
|
-
[Symbol.toStringTag] = "TenantCatalogCursor";
|
|
176
|
-
#identity;
|
|
177
|
-
#index;
|
|
178
|
-
#length;
|
|
179
|
-
/**
|
|
180
|
-
* Captures one finite sweep position.
|
|
181
|
-
*
|
|
182
|
-
* @param identity Index identity.
|
|
183
|
-
* @param index Next position.
|
|
184
|
-
* @param length Sweep length.
|
|
185
|
-
*/
|
|
186
|
-
constructor(identity, index, length) {
|
|
187
|
-
this.#identity = identity;
|
|
188
|
-
this.#index = index;
|
|
189
|
-
this.#length = length;
|
|
190
|
-
Object.freeze(this);
|
|
191
|
-
}
|
|
192
|
-
/**
|
|
193
|
-
* Verifies the issuing index before returning the sweep position.
|
|
194
|
-
*
|
|
195
|
-
* @param identity Expected index identity.
|
|
196
|
-
* @returns Finite sweep position.
|
|
197
|
-
*/
|
|
198
|
-
position(identity) {
|
|
199
|
-
if (this.#identity !== identity)
|
|
200
|
-
throw new TypeError("TenantIndex continuation is invalid.");
|
|
201
|
-
return { index: this.#index, length: this.#length };
|
|
202
|
-
}
|
|
203
|
-
}
|
|
17
|
+
export const SINGLE_TENANT = Symbol("SINGLE_TENANT");
|
|
204
18
|
//# sourceMappingURL=tenant-index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tenant-index.js","sourceRoot":"","sources":["../../src/context/tenant-index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;
|
|
1
|
+
{"version":3,"file":"tenant-index.js","sourceRoot":"","sources":["../../src/context/tenant-index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAkFH;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAkB,MAAM,CAAC,eAAe,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { TenantId } from "@spine-event-engine/proto";
|
|
2
|
-
import type
|
|
2
|
+
import { type TenantIndexSetting } from "./tenant-index.js";
|
|
3
3
|
/**
|
|
4
4
|
* Identifies a complete tenant absent from a receiving Bounded Context's live index.
|
|
5
5
|
*/
|
|
@@ -28,6 +28,6 @@ export declare class TenantUnknownError extends Error {
|
|
|
28
28
|
* Checks a receiving context's current membership after shape validation.
|
|
29
29
|
*/
|
|
30
30
|
export declare const TenantAdmissions: Readonly<{
|
|
31
|
-
require(index:
|
|
31
|
+
require(index: TenantIndexSetting, contextName: string, multitenant: boolean, tenantId?: TenantId): Promise<void>;
|
|
32
32
|
}>;
|
|
33
33
|
//# sourceMappingURL=tenant-unknown-error.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tenant-unknown-error.d.ts","sourceRoot":"","sources":["../../src/context/tenant-unknown-error.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAE1D,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"tenant-unknown-error.d.ts","sourceRoot":"","sources":["../../src/context/tenant-unknown-error.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAE1D,OAAO,EAAiB,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAE3E;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;;IAgBzC,QAAQ,CAAC,WAAW,EAAE,MAAM;IAf9B;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAG,gBAAgB,CAAU;IAI1C;;;;;OAKG;gBAED,QAAQ,EAAE,QAAQ,EACT,WAAW,EAAE,MAAM;IAW9B;;;;OAIG;IACH,IAAI,QAAQ,IAAI,QAAQ,CAEvB;CACF;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC;IACtC,OAAO,CACL,KAAK,EAAE,kBAAkB,EACzB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,OAAO,EACpB,QAAQ,CAAC,EAAE,QAAQ,GAClB,OAAO,CAAC,IAAI,CAAC,CAAC;CAClB,CAwBC,CAAC"}
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
* the License.
|
|
13
13
|
*/
|
|
14
14
|
import { TenantBoundary } from "@spine-event-engine/storage/provider";
|
|
15
|
+
import { SINGLE_TENANT } from "./tenant-index.js";
|
|
15
16
|
/**
|
|
16
17
|
* Identifies a complete tenant absent from a receiving Bounded Context's live index.
|
|
17
18
|
*/
|
|
@@ -53,7 +54,7 @@ export const TenantAdmissions = Object.freeze({
|
|
|
53
54
|
/**
|
|
54
55
|
* Requires live membership before tenant-specific work.
|
|
55
56
|
*
|
|
56
|
-
* @param index Receiving Bounded Context's effective
|
|
57
|
+
* @param index Receiving Bounded Context's marker or effective directory.
|
|
57
58
|
* @param contextName Diagnostic context name.
|
|
58
59
|
* @param multitenant Whether a tenant identity applies.
|
|
59
60
|
* @param tenantId Complete supplied tenant identity, when applicable.
|
|
@@ -67,6 +68,8 @@ export const TenantAdmissions = Object.freeze({
|
|
|
67
68
|
}
|
|
68
69
|
if (tenantId === undefined)
|
|
69
70
|
throw new Error(`Multitenant storage "${contextName}" requires context.tenantId.`);
|
|
71
|
+
if (index === SINGLE_TENANT)
|
|
72
|
+
throw new Error(`Multitenant storage "${contextName}" requires a tenant index.`);
|
|
70
73
|
const boundary = TenantBoundary.from(tenantId);
|
|
71
74
|
if (!(await index.contains(boundary.tenantId)))
|
|
72
75
|
throw new TenantUnknownError(boundary.tenantId, contextName);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tenant-unknown-error.js","sourceRoot":"","sources":["../../src/context/tenant-unknown-error.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"tenant-unknown-error.js","sourceRoot":"","sources":["../../src/context/tenant-unknown-error.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,aAAa,EAA2B,MAAM,mBAAmB,CAAC;AAE3E;;GAEG;AACH,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IAgBhC;IAfX;;OAEG;IACM,IAAI,GAAG,gBAAyB,CAAC;IAEjC,OAAO,CAAyC;IAEzD;;;;;OAKG;IACH,YACE,QAAkB,EACT,WAAmB;QAE5B,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;QAClC,MAAM,KAAK,GACT,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;QACvF,KAAK,CAAC,WAAW,KAAK,2BAA2B,WAAW,GAAG,CAAC,CAAC;QANxD,gBAAW,GAAX,WAAW,CAAQ;QAO5B,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;QACjC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED;;;;OAIG;IACH,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;IAC/B,CAAC;CACF;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAOxB,MAAM,CAAC,MAAM,CAAC;IACjB;;;;;;;;OAQG;IACH,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ;QACrD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,IAAI,QAAQ,KAAK,SAAS;gBACxB,MAAM,IAAI,KAAK,CAAC,0BAA0B,WAAW,qCAAqC,CAAC,CAAC;YAC9F,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,KAAK,SAAS;YACxB,MAAM,IAAI,KAAK,CAAC,wBAAwB,WAAW,8BAA8B,CAAC,CAAC;QACrF,IAAI,KAAK,KAAK,aAAa;YACzB,MAAM,IAAI,KAAK,CAAC,wBAAwB,WAAW,4BAA4B,CAAC,CAAC;QACnF,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/C,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC5C,MAAM,IAAI,kBAAkB,CAAC,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IACjE,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delivery-supervisor.d.ts","sourceRoot":"","sources":["../../src/delivery/delivery-supervisor.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAEpE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAgB1C,UAAU,wBAAwB;IAChC;;;;OAIG;IACH,aAAa,CAAC,UAAU,EAAE,kBAAkB,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAAC;IAEvE;;;;OAIG;IACH,SAAS,CAAC,UAAU,EAAE,kBAAkB,GAAG,SAAS,CAAC;IAErD;;;;OAIG;IACH,gBAAgB,CACd,UAAU,EAAE,kBAAkB,EAC9B,SAAS,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,OAAO,GAC5C,IAAI,CAAC;IAER;;;;OAIG;IACH,qBAAqB,CACnB,UAAU,EAAE,kBAAkB,EAC9B,gBAAgB,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,IAAI,GAChD,IAAI,CAAC;IAER;;;;OAIG;IACH,mBAAmB,CACjB,UAAU,EAAE,kBAAkB,EAC9B,YAAY,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GACxC,IAAI,CAAC;CACT;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAGlC;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAE3B;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,YAAY,CAAC;IAEzC;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAG7B;;;;;;OAMG;IACH,aAAa,CAAC,OAAO,CAAC,EAAE,wBAAwB,GAAG,OAAO,CAAC,SAAS,mBAAmB,EAAE,CAAC,CAAC;IAE3F;;;;;;OAMG;IACH,mBAAmB,CAAC,OAAO,CAAC,EAAE,wBAAwB,GAAG,aAAa,CAAC,mBAAmB,CAAC,CAAC;IAE5F;;;;;;;OAOG;IACH,cAAc,CACZ,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,SAAS,OAAO,EAAE,CAAC,CAAC;CAChC;AAED,YAAY,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAEpE;;GAEG;AACH,qBAAa,4BAA6B,SAAQ,KAAK;IAGrD;;OAEG;;CAKJ;AAED;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG,QAAQ,CAAC;AAE1C;;GAEG;AACH,qBAAa,kBAAkB;;
|
|
1
|
+
{"version":3,"file":"delivery-supervisor.d.ts","sourceRoot":"","sources":["../../src/delivery/delivery-supervisor.ts"],"names":[],"mappings":"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"}
|
|
@@ -77,6 +77,10 @@ export class DeliverySupervisor {
|
|
|
77
77
|
* Shards waiting for a run slot.
|
|
78
78
|
*/
|
|
79
79
|
#pending = new Map();
|
|
80
|
+
/**
|
|
81
|
+
* Repeat requests for active shards; bounded by the active run count.
|
|
82
|
+
*/
|
|
83
|
+
#activeRepeats = new Map();
|
|
80
84
|
/**
|
|
81
85
|
* Shards whose failed runs await the next periodic recovery before another observation.
|
|
82
86
|
*/
|
|
@@ -215,7 +219,9 @@ export class DeliverySupervisor {
|
|
|
215
219
|
const key = _a.#shardKey(shard);
|
|
216
220
|
if (this.#active.has(key)) {
|
|
217
221
|
this.#runs.wake(shard);
|
|
218
|
-
this.#
|
|
222
|
+
const repeat = this.#activeRepeats.get(key);
|
|
223
|
+
if (repeat === undefined || (repeat.observed && !observed))
|
|
224
|
+
this.#activeRepeats.set(key, { shard, observed });
|
|
219
225
|
return;
|
|
220
226
|
}
|
|
221
227
|
if (this.#active.size >= this.#concurrency) {
|
|
@@ -259,6 +265,7 @@ export class DeliverySupervisor {
|
|
|
259
265
|
_a.#requireGrace(options.graceMs ?? 30_000);
|
|
260
266
|
this.#closing = true;
|
|
261
267
|
this.#pending.clear();
|
|
268
|
+
this.#activeRepeats.clear();
|
|
262
269
|
this.#cancelTimers();
|
|
263
270
|
this.#sourceController.abort(new Error("Delivery supervisor source activity is closed."));
|
|
264
271
|
const attempt = this.#closeNow(options.graceMs ?? 30_000).finally(() => {
|
|
@@ -351,6 +358,8 @@ export class DeliverySupervisor {
|
|
|
351
358
|
signal: this.#controller.signal,
|
|
352
359
|
});
|
|
353
360
|
failed ||= result.status === "FAILED";
|
|
361
|
+
if (failed)
|
|
362
|
+
this.#reportTerminalRunFailure();
|
|
354
363
|
}
|
|
355
364
|
catch (error) {
|
|
356
365
|
this.#reportTerminalRunFailure();
|
|
@@ -525,9 +534,9 @@ export class DeliverySupervisor {
|
|
|
525
534
|
#startNext(completed) {
|
|
526
535
|
if (this.#closing || this.#closed)
|
|
527
536
|
return;
|
|
528
|
-
const repeat = this.#
|
|
537
|
+
const repeat = this.#activeRepeats.get(completed);
|
|
529
538
|
if (repeat !== undefined) {
|
|
530
|
-
this.#
|
|
539
|
+
this.#activeRepeats.delete(completed);
|
|
531
540
|
if (!repeat.observed || !this.#failedObserved.has(completed))
|
|
532
541
|
this.#admit(repeat.shard, repeat.observed);
|
|
533
542
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delivery-supervisor.js","sourceRoot":"","sources":["../../src/delivery/delivery-supervisor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"delivery-supervisor.js","sourceRoot":"","sources":["../../src/delivery/delivery-supervisor.ts"],"names":[],"mappings":"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"}
|
|
@@ -164,10 +164,10 @@ export declare class Delivery {
|
|
|
164
164
|
* Sets the complete direct fallback dispatcher before receiving work.
|
|
165
165
|
*
|
|
166
166
|
* @internal
|
|
167
|
-
* @param
|
|
167
|
+
* @param onDispatch Callback that delivers a ready Inbox route.
|
|
168
168
|
* @param onAccept Reports whether a live recipient currently serves the row.
|
|
169
169
|
*/
|
|
170
|
-
|
|
170
|
+
setDispatcher(onDispatch: OnDeliveryMessage, onAccept?: (message: InboxMessage) => boolean): void;
|
|
171
171
|
/**
|
|
172
172
|
* Waits for every retained direct shard run to release its session.
|
|
173
173
|
*
|
|
@@ -230,7 +230,8 @@ export declare class Delivery {
|
|
|
230
230
|
*/
|
|
231
231
|
drainMessage(message: InboxMessage, input: DirectDrainRequest): Promise<DeliveryDirectRun>;
|
|
232
232
|
/**
|
|
233
|
-
* Executes one
|
|
233
|
+
* Executes one shard drain while containing monitor and endpoint failures.
|
|
234
|
+
* A competing direct caller receives `SKIPPED` without replacing the active callback.
|
|
234
235
|
*
|
|
235
236
|
* @param shard The shard to acquire and drain.
|
|
236
237
|
* @param options The endpoint and optional operation signal.
|