@relaycast/engine 5.1.1 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/dist/adapters/node/realtime.d.ts +28 -1
  2. package/dist/adapters/node/realtime.d.ts.map +1 -1
  3. package/dist/adapters/node/realtime.js +229 -50
  4. package/dist/adapters/node/realtime.js.map +1 -1
  5. package/dist/auth/tokenKind.d.ts +1 -1
  6. package/dist/auth/tokenKind.d.ts.map +1 -1
  7. package/dist/auth/tokenKind.js +4 -1
  8. package/dist/auth/tokenKind.js.map +1 -1
  9. package/dist/db/migrations/0028_node_providers.sql +55 -0
  10. package/dist/db/schema.d.ts +376 -0
  11. package/dist/db/schema.d.ts.map +1 -1
  12. package/dist/db/schema.js +59 -1
  13. package/dist/db/schema.js.map +1 -1
  14. package/dist/engine/action.d.ts +44 -1
  15. package/dist/engine/action.d.ts.map +1 -1
  16. package/dist/engine/action.js +237 -18
  17. package/dist/engine/action.js.map +1 -1
  18. package/dist/engine/delivery.d.ts.map +1 -1
  19. package/dist/engine/delivery.js +2 -1
  20. package/dist/engine/delivery.js.map +1 -1
  21. package/dist/engine/node.d.ts +71 -28
  22. package/dist/engine/node.d.ts.map +1 -1
  23. package/dist/engine/node.js +230 -106
  24. package/dist/engine/node.js.map +1 -1
  25. package/dist/engine/nodeContext.d.ts.map +1 -1
  26. package/dist/engine/nodeContext.js +17 -6
  27. package/dist/engine/nodeContext.js.map +1 -1
  28. package/dist/engine/nodeDeliver.d.ts.map +1 -1
  29. package/dist/engine/nodeDeliver.js +4 -1
  30. package/dist/engine/nodeDeliver.js.map +1 -1
  31. package/dist/engine/nodeProvider.d.ts +62 -0
  32. package/dist/engine/nodeProvider.d.ts.map +1 -0
  33. package/dist/engine/nodeProvider.js +256 -0
  34. package/dist/engine/nodeProvider.js.map +1 -0
  35. package/dist/middleware/auth.d.ts +6 -0
  36. package/dist/middleware/auth.d.ts.map +1 -1
  37. package/dist/middleware/auth.js +6 -0
  38. package/dist/middleware/auth.js.map +1 -1
  39. package/dist/node-control.d.ts +1 -1
  40. package/dist/node-control.d.ts.map +1 -1
  41. package/dist/node-control.js +11 -1
  42. package/dist/node-control.js.map +1 -1
  43. package/dist/ports/auth.d.ts +1 -1
  44. package/dist/ports/auth.d.ts.map +1 -1
  45. package/dist/ports/realtime.d.ts +24 -2
  46. package/dist/ports/realtime.d.ts.map +1 -1
  47. package/dist/routes/deliveryRouting.d.ts.map +1 -1
  48. package/dist/routes/deliveryRouting.js +6 -1
  49. package/dist/routes/deliveryRouting.js.map +1 -1
  50. package/dist/routes/message.d.ts.map +1 -1
  51. package/dist/routes/message.js +44 -14
  52. package/dist/routes/message.js.map +1 -1
  53. package/dist/routes/node.d.ts.map +1 -1
  54. package/dist/routes/node.js +89 -3
  55. package/dist/routes/node.js.map +1 -1
  56. package/package.json +3 -3
@@ -0,0 +1,256 @@
1
+ import { and, eq, notInArray, sql } from 'drizzle-orm';
2
+ import { actions, nodeProviders, nodes } from '../db/schema.js';
3
+ import { generateId } from './snowflake.js';
4
+ import { codedError } from '../lib/httpError.js';
5
+ import { NODE_LIVENESS_TTL_MS } from './placement.js';
6
+ /**
7
+ * The reserved provider synthesized for registrations that carry no `provider`
8
+ * field. It keeps pre-provider clients (the current broker) working: their
9
+ * capabilities, heartbeats, and hosted agents are all keyed to `default`.
10
+ */
11
+ export const DEFAULT_PROVIDER_NAME = 'default';
12
+ /**
13
+ * Classify a capability. A declared `action`/`capacity` kind is authoritative;
14
+ * otherwise the name decides — `spawn`, `spawn:<harness>`, and `release` are
15
+ * capacity (placement/delegation, never materialized), everything else is an
16
+ * action (materialized and invoked).
17
+ */
18
+ export function capabilityKind(capability) {
19
+ const name = typeof capability === 'string' ? capability : capability.name;
20
+ const declared = typeof capability === 'string' ? undefined : capability.kind;
21
+ if (declared === 'action' || declared === 'capacity')
22
+ return declared;
23
+ if (name === 'spawn' || name === 'release' || name.startsWith('spawn:'))
24
+ return 'capacity';
25
+ return 'action';
26
+ }
27
+ export function isProviderLive(provider, now = Date.now()) {
28
+ return (provider.status === 'online' &&
29
+ provider.handlersLive &&
30
+ !!provider.lastHeartbeatAt &&
31
+ now - provider.lastHeartbeatAt.getTime() <= NODE_LIVENESS_TTL_MS);
32
+ }
33
+ export async function getProvider(db, workspaceId, nodeId, name) {
34
+ const [row] = await db
35
+ .select()
36
+ .from(nodeProviders)
37
+ .where(and(eq(nodeProviders.workspaceId, workspaceId), eq(nodeProviders.nodeId, nodeId), eq(nodeProviders.name, name)));
38
+ return row ?? null;
39
+ }
40
+ export async function listProviders(db, workspaceId, nodeId) {
41
+ return db
42
+ .select()
43
+ .from(nodeProviders)
44
+ .where(and(eq(nodeProviders.workspaceId, workspaceId), eq(nodeProviders.nodeId, nodeId)));
45
+ }
46
+ /**
47
+ * Resolve the provider that hosts a capacity capability (e.g. `spawn:claude`) on
48
+ * a node — the executor `ctx.spawnAgent` and native spawn dispatch target.
49
+ */
50
+ export async function capacityProviderName(db, workspaceId, nodeId, capability) {
51
+ const providers = await listProviders(db, workspaceId, nodeId);
52
+ for (const provider of providers) {
53
+ const caps = Array.isArray(provider.capabilities) ? provider.capabilities : [];
54
+ if (caps.some((cap) => cap.name === capability && capabilityKind(cap) === 'capacity')) {
55
+ return provider.name;
56
+ }
57
+ }
58
+ return null;
59
+ }
60
+ /** Persist a provider's registration, fully replacing its previous capability set. */
61
+ export async function upsertProvider(db, workspaceId, nodeId, data) {
62
+ const now = new Date();
63
+ const existing = await getProvider(db, workspaceId, nodeId, data.name);
64
+ if (existing) {
65
+ await db
66
+ .update(nodeProviders)
67
+ .set({
68
+ instanceId: data.instanceId,
69
+ capabilities: data.capabilities,
70
+ maxAgents: data.maxAgents,
71
+ version: data.version,
72
+ handlersLive: data.handlersLive,
73
+ status: 'online',
74
+ lastHeartbeatAt: now,
75
+ })
76
+ .where(eq(nodeProviders.id, existing.id));
77
+ return;
78
+ }
79
+ await db.insert(nodeProviders).values({
80
+ id: `nprov_${generateId()}`,
81
+ workspaceId,
82
+ nodeId,
83
+ name: data.name,
84
+ instanceId: data.instanceId,
85
+ capabilities: data.capabilities,
86
+ maxAgents: data.maxAgents,
87
+ activeAgents: 0,
88
+ load: 0,
89
+ handlersLive: data.handlersLive,
90
+ status: 'online',
91
+ version: data.version,
92
+ lastHeartbeatAt: now,
93
+ createdAt: now,
94
+ });
95
+ }
96
+ export async function heartbeatProvider(db, workspaceId, nodeId, name, data) {
97
+ await db
98
+ .update(nodeProviders)
99
+ .set({
100
+ load: data.load,
101
+ activeAgents: data.activeAgents,
102
+ handlersLive: data.handlersLive,
103
+ status: 'online',
104
+ lastHeartbeatAt: new Date(),
105
+ })
106
+ .where(and(eq(nodeProviders.workspaceId, workspaceId), eq(nodeProviders.nodeId, nodeId), eq(nodeProviders.name, name)));
107
+ }
108
+ export async function markProviderOffline(db, workspaceId, nodeId, name) {
109
+ // A disconnected provider hosts no live agents; zero its activeAgents so
110
+ // recomputeNodeAggregate (which sums across all providers) stops counting them
111
+ // on the node. A reconnect/heartbeat repopulates it from the provider's report.
112
+ await db
113
+ .update(nodeProviders)
114
+ .set({ status: 'offline', handlersLive: false, load: 0, activeAgents: 0, lastHeartbeatAt: new Date() })
115
+ .where(and(eq(nodeProviders.workspaceId, workspaceId), eq(nodeProviders.nodeId, nodeId), eq(nodeProviders.name, name)));
116
+ }
117
+ /** Remove a provider and the actions it materialized (provider-scoped deregister / prune). */
118
+ export async function removeProvider(db, workspaceId, nodeId, name) {
119
+ await db
120
+ .delete(actions)
121
+ .where(and(eq(actions.workspaceId, workspaceId), eq(actions.handlerNodeId, nodeId), eq(actions.handlerProvider, name)));
122
+ await db
123
+ .delete(nodeProviders)
124
+ .where(and(eq(nodeProviders.workspaceId, workspaceId), eq(nodeProviders.nodeId, nodeId), eq(nodeProviders.name, name)));
125
+ }
126
+ /**
127
+ * Materialize a provider's `action`-kind capabilities into node-scoped action
128
+ * rows, fully replacing this provider's previous set. `capacity` entries are
129
+ * ignored (they feed placement, not dispatch). The synthetic `default` provider
130
+ * keeps the pre-provider behavior: its actions claim the workspace-global name
131
+ * so triggers and `POST /v1/actions/:name/invoke` keep resolving them.
132
+ */
133
+ export async function materializeProviderActions(db, workspaceId, nodeId, providerName, capabilities) {
134
+ const actionCaps = capabilities.filter((cap) => capabilityKind(cap) === 'action');
135
+ const keepNames = actionCaps.map((cap) => cap.name);
136
+ // Prune actions this provider previously materialized that it no longer offers.
137
+ const pruneConditions = [
138
+ eq(actions.workspaceId, workspaceId),
139
+ eq(actions.handlerNodeId, nodeId),
140
+ eq(actions.handlerProvider, providerName),
141
+ ];
142
+ await db.delete(actions).where(and(...pruneConditions, keepNames.length > 0 ? notInArray(actions.name, keepNames) : sql `1 = 1`));
143
+ const isDefault = providerName === DEFAULT_PROVIDER_NAME;
144
+ for (const cap of actionCaps) {
145
+ const name = cap.name;
146
+ if (isDefault) {
147
+ // Never clobber an agent-hosted action of the same name (legacy behavior).
148
+ const [agentHosted] = await db
149
+ .select({ id: actions.id })
150
+ .from(actions)
151
+ .where(and(eq(actions.workspaceId, workspaceId), eq(actions.name, name), sql `${actions.handlerNodeId} IS NULL`));
152
+ if (agentHosted)
153
+ continue;
154
+ }
155
+ const wantGlobal = isDefault || cap.global === true;
156
+ if (wantGlobal) {
157
+ const [existingGlobal] = await db
158
+ .select({ id: actions.id, handlerNodeId: actions.handlerNodeId })
159
+ .from(actions)
160
+ .where(and(eq(actions.workspaceId, workspaceId), eq(actions.name, name), eq(actions.isGlobal, true)));
161
+ if (existingGlobal && existingGlobal.handlerNodeId !== nodeId) {
162
+ // The default provider does not steal a workspace name another node
163
+ // already owns (first-writer-wins, matching legacy broker behavior);
164
+ // an explicit `global: true` collides loudly.
165
+ if (isDefault)
166
+ continue;
167
+ throw codedError(`Action "${name}" already claims the workspace-global alias`, 'action_name_conflict', 409);
168
+ }
169
+ // An explicit global alias must not shadow an agent-hosted action of the
170
+ // same name — the agent-hosted row wins workspace-invoke resolution, so the
171
+ // alias would be unreachable. Collide loudly instead.
172
+ if (!isDefault) {
173
+ const [agentHosted] = await db
174
+ .select({ id: actions.id })
175
+ .from(actions)
176
+ .where(and(eq(actions.workspaceId, workspaceId), eq(actions.name, name), sql `${actions.handlerNodeId} IS NULL`));
177
+ if (agentHosted) {
178
+ throw codedError(`Action "${name}" is already registered as an agent-hosted action`, 'action_name_conflict', 409);
179
+ }
180
+ }
181
+ }
182
+ const [existing] = await db
183
+ .select()
184
+ .from(actions)
185
+ .where(and(eq(actions.workspaceId, workspaceId), eq(actions.handlerNodeId, nodeId), eq(actions.name, name)));
186
+ if (existing && existing.handlerProvider && existing.handlerProvider !== providerName) {
187
+ throw codedError(`Action "${name}" is already registered by provider "${existing.handlerProvider}" on this node`, 'action_name_conflict', 409);
188
+ }
189
+ const wantQueue = cap.queue === true;
190
+ if (existing) {
191
+ await db
192
+ .update(actions)
193
+ .set({ handlerProvider: providerName, handlerAgentId: null, isGlobal: wantGlobal, queue: wantQueue, isActive: true })
194
+ .where(eq(actions.id, existing.id));
195
+ }
196
+ else {
197
+ await db.insert(actions).values({
198
+ id: `act_${generateId()}`,
199
+ workspaceId,
200
+ name,
201
+ description: `Node handler ${name}`,
202
+ handlerAgentId: null,
203
+ handlerNodeId: nodeId,
204
+ handlerProvider: providerName,
205
+ isGlobal: wantGlobal,
206
+ queue: wantQueue,
207
+ inputSchema: {},
208
+ outputSchema: {},
209
+ availableTo: null,
210
+ });
211
+ }
212
+ }
213
+ }
214
+ /**
215
+ * Recompute a broker node's aggregate columns from its providers: the union
216
+ * manifest, summed capacity, max load, and OR'd liveness. Direct nodes never
217
+ * call this — they carry no providers.
218
+ */
219
+ export async function recomputeNodeAggregate(db, workspaceId, nodeId, extra = {}) {
220
+ const providers = await listProviders(db, workspaceId, nodeId);
221
+ const online = providers.filter((p) => p.status === 'online');
222
+ const capabilityByName = new Map();
223
+ for (const provider of providers) {
224
+ for (const cap of provider.capabilities ?? []) {
225
+ if (!capabilityByName.has(cap.name))
226
+ capabilityByName.set(cap.name, cap);
227
+ }
228
+ }
229
+ const maxAgents = providers.reduce((sum, p) => sum + p.maxAgents, 0);
230
+ const activeAgents = providers.reduce((sum, p) => sum + p.activeAgents, 0);
231
+ const load = providers.reduce((max, p) => Math.max(max, p.load), 0);
232
+ const handlersLive = online.some((p) => p.handlersLive);
233
+ // Node liveness must reflect an online provider's heartbeat. An offline
234
+ // provider's disconnect timestamp is fresh, so including it here could keep a
235
+ // node "live" while every online provider has gone stale.
236
+ const lastHeartbeatAt = online.reduce((latest, p) => {
237
+ if (!p.lastHeartbeatAt)
238
+ return latest;
239
+ return !latest || p.lastHeartbeatAt > latest ? p.lastHeartbeatAt : latest;
240
+ }, null);
241
+ const update = {
242
+ capabilities: [...capabilityByName.values()],
243
+ maxAgents,
244
+ activeAgents,
245
+ load,
246
+ handlersLive,
247
+ status: online.length > 0 ? 'online' : 'offline',
248
+ lastHeartbeatAt: lastHeartbeatAt ?? new Date(),
249
+ };
250
+ if (extra.version !== undefined)
251
+ update.version = extra.version;
252
+ if (extra.machineId !== undefined && extra.machineId !== null)
253
+ update.machineId = extra.machineId;
254
+ await db.update(nodes).set(update).where(and(eq(nodes.workspaceId, workspaceId), eq(nodes.id, nodeId)));
255
+ }
256
+ //# sourceMappingURL=nodeProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nodeProvider.js","sourceRoot":"","sources":["../../src/engine/nodeProvider.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,12 @@ export declare function requireWorkspaceRead(scopes: ObserverScope | ObserverSco
10
10
  export declare const requireWorkspaceKey: import("hono").MiddlewareHandler<AppEnv, string, {}, Response>;
11
11
  /** Accepts either a workspace key or an agent token. */
12
12
  export declare const requireAuth: import("hono").MiddlewareHandler<AppEnv, string, {}, Response>;
13
+ /**
14
+ * Accepts a workspace key, an agent token, or a node token — the principals that
15
+ * can post a message. An agent posts as itself; a node posts as an explicit
16
+ * `from` agent resolved within the node's workspace.
17
+ */
18
+ export declare const requireSender: import("hono").MiddlewareHandler<AppEnv, string, {}, Response>;
13
19
  /** Requires an agent token (`at_live_...`). */
14
20
  export declare const requireAgentToken: import("hono").MiddlewareHandler<AppEnv, string, {}, Response>;
15
21
  /** Requires a node token (`nt_live_...`). */
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/middleware/auth.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAIxC,OAAO,EAEL,KAAK,aAAa,EACnB,MAAM,4BAA4B,CAAC;AAIpC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAyC7C,UAAU,oBAAoB;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAMD,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,aAAa,GAAG,aAAa,EAAE,EACvC,OAAO,GAAE,oBAAyB,kEAuDnC;AAED,gDAAgD;AAChD,eAAO,MAAM,mBAAmB,gEAAkC,CAAC;AAEnE,wDAAwD;AACxD,eAAO,MAAM,WAAW,gEAA4B,CAAC;AAErD,+CAA+C;AAC/C,eAAO,MAAM,iBAAiB,gEAA8B,CAAC;AAE7D,6CAA6C;AAC7C,eAAO,MAAM,gBAAgB,gEAA6B,CAAC"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/middleware/auth.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAIxC,OAAO,EAEL,KAAK,aAAa,EACnB,MAAM,4BAA4B,CAAC;AAIpC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAyC7C,UAAU,oBAAoB;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAMD,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,aAAa,GAAG,aAAa,EAAE,EACvC,OAAO,GAAE,oBAAyB,kEAuDnC;AAED,gDAAgD;AAChD,eAAO,MAAM,mBAAmB,gEAAkC,CAAC;AAEnE,wDAAwD;AACxD,eAAO,MAAM,WAAW,gEAA4B,CAAC;AAErD;;;;GAIG;AACH,eAAO,MAAM,aAAa,gEAA+B,CAAC;AAE1D,+CAA+C;AAC/C,eAAO,MAAM,iBAAiB,gEAA8B,CAAC;AAE7D,6CAA6C;AAC7C,eAAO,MAAM,gBAAgB,gEAA6B,CAAC"}
@@ -96,6 +96,12 @@ export function requireWorkspaceRead(scopes, options = {}) {
96
96
  export const requireWorkspaceKey = makeAuthMiddleware('workspace');
97
97
  /** Accepts either a workspace key or an agent token. */
98
98
  export const requireAuth = makeAuthMiddleware('any');
99
+ /**
100
+ * Accepts a workspace key, an agent token, or a node token — the principals that
101
+ * can post a message. An agent posts as itself; a node posts as an explicit
102
+ * `from` agent resolved within the node's workspace.
103
+ */
104
+ export const requireSender = makeAuthMiddleware('sender');
99
105
  /** Requires an agent token (`at_live_...`). */
100
106
  export const requireAgentToken = makeAuthMiddleware('agent');
101
107
  /** Requires a node token (`nt_live_...`). */
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/middleware/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/middleware/auth.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- export { handleNodeControlMessage, type HandleNodeControlMessageArgs, type NodeSocketLike, } from './engine/node.js';
1
+ export { handleNodeControlMessage, handleProviderDisconnect, markNodeOffline, type HandleNodeControlMessageArgs, type NodeSocketLike, } from './engine/node.js';
2
2
  export type { InvocationCompletionDeps } from './engine/invocationCompletion.js';
3
3
  //# sourceMappingURL=node-control.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"node-control.d.ts","sourceRoot":"","sources":["../src/node-control.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,KAAK,4BAA4B,EACjC,KAAK,cAAc,GACpB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC"}
1
+ {"version":3,"file":"node-control.d.ts","sourceRoot":"","sources":["../src/node-control.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EAUxB,wBAAwB,EACxB,eAAe,EACf,KAAK,4BAA4B,EACjC,KAAK,cAAc,GACpB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC"}
@@ -1,2 +1,12 @@
1
- export { handleNodeControlMessage, } from './engine/node.js';
1
+ export { handleNodeControlMessage,
2
+ // Node-offline lifecycle for out-of-process socket owners (e.g. the
3
+ // relaycast-cloud NodeDO): when a provider's control socket drops, drive
4
+ // `handleProviderDisconnect` — it flips only that provider (and its agents)
5
+ // offline while the node stays online, or, when it was the node's last
6
+ // connection, marks the whole node offline. `markNodeOffline` is the node-wide
7
+ // marker for the other lifecycle triggers a socket owner controls (a liveness
8
+ // alarm lapse, an operator disconnect). Both encapsulate the provider-row,
9
+ // agent, aggregate, and invocation-reschedule effects so a host never
10
+ // hand-rolls them.
11
+ handleProviderDisconnect, markNodeOffline, } from './engine/node.js';
2
12
  //# sourceMappingURL=node-control.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"node-control.js","sourceRoot":"","sources":["../src/node-control.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,GAGzB,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"node-control.js","sourceRoot":"","sources":["../src/node-control.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB;AACxB,oEAAoE;AACpE,yEAAyE;AACzE,4EAA4E;AAC5E,uEAAuE;AACvE,+EAA+E;AAC/E,8EAA8E;AAC9E,2EAA2E;AAC3E,sEAAsE;AACtE,mBAAmB;AACnB,wBAAwB,EACxB,eAAe,GAGhB,MAAM,kBAAkB,CAAC"}
@@ -4,7 +4,7 @@ export type Workspace = typeof workspaces.$inferSelect;
4
4
  export type Agent = typeof agents.$inferSelect;
5
5
  export type Node = typeof nodes.$inferSelect;
6
6
  export type ObserverToken = typeof observerTokens.$inferSelect;
7
- export type AuthRequire = 'workspace' | 'agent' | 'node' | 'observer' | 'any';
7
+ export type AuthRequire = 'workspace' | 'agent' | 'node' | 'observer' | 'any' | 'sender';
8
8
  export type AuthResult = {
9
9
  ok: true;
10
10
  workspace: Workspace;
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/ports/auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C,MAAM,MAAM,SAAS,GAAG,OAAO,UAAU,CAAC,YAAY,CAAC;AACvD,MAAM,MAAM,KAAK,GAAG,OAAO,MAAM,CAAC,YAAY,CAAC;AAC/C,MAAM,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC,YAAY,CAAC;AAC7C,MAAM,MAAM,aAAa,GAAG,OAAO,cAAc,CAAC,YAAY,CAAC;AAE/D,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,OAAO,GAAG,MAAM,GAAG,UAAU,GAAG,KAAK,CAAC;AAE9E,MAAM,MAAM,UAAU,GAClB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,SAAS,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,KAAK,CAAC;IAAC,IAAI,CAAC,EAAE,IAAI,CAAC;IAAC,aAAa,CAAC,EAAE,aAAa,CAAA;CAAE,GAC7F;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEjE;;;;;;;;;GASG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;;OAKG;IACH,YAAY,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,WAAW,CAAC;QAAC,EAAE,EAAE,QAAQ,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAE/F;;;;OAIG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC3C"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/ports/auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C,MAAM,MAAM,SAAS,GAAG,OAAO,UAAU,CAAC,YAAY,CAAC;AACvD,MAAM,MAAM,KAAK,GAAG,OAAO,MAAM,CAAC,YAAY,CAAC;AAC/C,MAAM,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC,YAAY,CAAC;AAC7C,MAAM,MAAM,aAAa,GAAG,OAAO,cAAc,CAAC,YAAY,CAAC;AAE/D,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,OAAO,GAAG,MAAM,GAAG,UAAU,GAAG,KAAK,GAAG,QAAQ,CAAC;AAEzF,MAAM,MAAM,UAAU,GAClB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,SAAS,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,KAAK,CAAC;IAAC,IAAI,CAAC,EAAE,IAAI,CAAC;IAAC,aAAa,CAAC,EAAE,aAAa,CAAA;CAAE,GAC7F;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEjE;;;;;;;;;GASG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;;OAKG;IACH,YAAY,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,WAAW,CAAC;QAAC,EAAE,EAAE,QAAQ,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAE/F;;;;OAIG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC3C"}
@@ -67,10 +67,32 @@ export interface NodeConnectionRegistry {
67
67
  * attachNodeSocket instead.
68
68
  */
69
69
  upgradeNode(args: NodeUpgradeArgs): Promise<Response>;
70
- /** Push a typed node protocol message to a live broker node or implicit direct node. */
70
+ /**
71
+ * Push a typed node protocol message to a node's default provider (or its sole
72
+ * connected provider). Provider-addressed callers use {@link sendToProvider}.
73
+ */
71
74
  sendToNode(workspaceId: string, nodeId: string, message: FleetRelaycastToBrokerMessage): Promise<boolean>;
72
- /** True when the node currently has a live control connection. */
75
+ /** Push a typed node protocol message to a specific provider's socket. */
76
+ sendToProvider(workspaceId: string, nodeId: string, providerName: string, message: FleetRelaycastToBrokerMessage): Promise<boolean>;
77
+ /** True when the node currently has at least one connected provider. */
73
78
  isNodeConnected(workspaceId: string, nodeId: string): boolean;
79
+ /** True when a specific provider currently has a connected socket. */
80
+ isProviderConnected(workspaceId: string, nodeId: string, providerName: string): boolean;
81
+ /** The provider name bound to a registry connection, once it has registered. */
82
+ providerNameForConnection?(connectionId: string): string | undefined;
83
+ /**
84
+ * Read-only pre-check for a provider registration: returns a conflict when the
85
+ * name's current instance is a different, still-live connection (duplicate
86
+ * process). A dropped/stale instance is replaced on {@link attachProvider}.
87
+ */
88
+ providerAttachConflict?(workspaceId: string, nodeId: string, providerName: string, instanceId: string, connectionId: string): {
89
+ code: string;
90
+ message: string;
91
+ } | null;
92
+ /** Bind a provider name to a connection, superseding a stale prior attachment. */
93
+ attachProvider?(workspaceId: string, nodeId: string, providerName: string, instanceId: string, connectionId: string): void;
94
+ /** Drop a provider's attachment (provider-scoped deregister / prune). */
95
+ detachProvider(workspaceId: string, nodeId: string, providerName: string): void;
74
96
  /** Force-close all sockets for a node. */
75
97
  disconnectNode(workspaceId: string, nodeId: string): Promise<void>;
76
98
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"realtime.d.ts","sourceRoot":"","sources":["../../src/ports/realtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE/C,kFAAkF;AAClF,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAElD,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,wBAAwB,CAAC,IAAI,EAAE;QAC7B,WAAW,EAAE,MAAM,CAAC;QACpB,KAAK,EAAE,WAAW,CAAC;KACpB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAEnB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,uFAAuF;IACvF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8DAA8D;IAC9D,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAED,MAAM,WAAW,kBAAkB;IACjC;;;;OAIG;IACH,OAAO,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,sBAAsB;IACrC;;;;OAIG;IACH,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEtD,wFAAwF;IACxF,UAAU,CACR,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,6BAA6B,GACrC,OAAO,CAAC,OAAO,CAAC,CAAC;IAEpB,kEAAkE;IAClE,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;IAE9D,0CAA0C;IAC1C,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnE;;;;;OAKG;IACH,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/D"}
1
+ {"version":3,"file":"realtime.d.ts","sourceRoot":"","sources":["../../src/ports/realtime.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"deliveryRouting.d.ts","sourceRoot":"","sources":["../../src/routes/deliveryRouting.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC,OAAO,KAAK,EAAE,MAAM,EAAiB,MAAM,WAAW,CAAC;AACvD,OAAO,KAAK,cAAc,MAAM,uBAAuB,CAAC;AAExD,OAAO,KAAK,EACV,oBAAoB,EACpB,uBAAuB,EACxB,MAAM,6BAA6B,CAAC;AAKrC,OAAO,KAAK,EAAY,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAI9D,KAAK,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAsbnC,wBAAsB,qBAAqB,CACzC,CAAC,EAAE,WAAW,EACd,UAAU,EAAE,oBAAoB,EAAE,EAClC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,IAAI,GAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAA;CAAO,GAClC,OAAO,CAAC,IAAI,CAAC,CAEf;AAED,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,UAAU,EAClB,IAAI,GAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,GAC9D,OAAO,CAAC,MAAM,CAAC,CAWjB;AAED,wBAAsB,wBAAwB,CAC5C,CAAC,EAAE,WAAW,EACd,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,uBAAuB,EAAE,GACpC,OAAO,CAAC,IAAI,CAAC,CAaf;AAED,wBAAsB,sBAAsB,CAC1C,CAAC,EAAE,WAAW,EACd,OAAO,EAAE,cAAc,CAAC,qBAAqB,EAAE,GAC9C,OAAO,CAAC,IAAI,CAAC,CAcf"}
1
+ {"version":3,"file":"deliveryRouting.d.ts","sourceRoot":"","sources":["../../src/routes/deliveryRouting.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC,OAAO,KAAK,EAAE,MAAM,EAAiB,MAAM,WAAW,CAAC;AACvD,OAAO,KAAK,cAAc,MAAM,uBAAuB,CAAC;AAExD,OAAO,KAAK,EACV,oBAAoB,EACpB,uBAAuB,EACxB,MAAM,6BAA6B,CAAC;AAKrC,OAAO,KAAK,EAAY,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAI9D,KAAK,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AA4bnC,wBAAsB,qBAAqB,CACzC,CAAC,EAAE,WAAW,EACd,UAAU,EAAE,oBAAoB,EAAE,EAClC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,IAAI,GAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAA;CAAO,GAClC,OAAO,CAAC,IAAI,CAAC,CAEf;AAED,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,UAAU,EAClB,IAAI,GAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,GAC9D,OAAO,CAAC,MAAM,CAAC,CAWjB;AAED,wBAAsB,wBAAwB,CAC5C,CAAC,EAAE,WAAW,EACd,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,uBAAuB,EAAE,GACpC,OAAO,CAAC,IAAI,CAAC,CAaf;AAED,wBAAsB,sBAAsB,CAC1C,CAAC,EAAE,WAAW,EACd,OAAO,EAAE,cAAc,CAAC,qBAAqB,EAAE,GAC9C,OAAO,CAAC,IAAI,CAAC,CAcf"}
@@ -66,6 +66,7 @@ async function resolveLiveLocations(ctx, deliveries) {
66
66
  nodeRole: nodes.role,
67
67
  deliveryAdapter: nodes.deliveryAdapter,
68
68
  deliveryConfig: nodes.deliveryConfig,
69
+ providerName: agents.providerName,
69
70
  })
70
71
  .from(agentNodeBindings)
71
72
  .innerJoin(agents, and(eq(agentNodeBindings.agentId, agents.id), eq(agents.locationType, 'via_node'), eq(agents.locationNodeId, agentNodeBindings.nodeId)))
@@ -83,6 +84,7 @@ async function resolveLiveLocations(ctx, deliveries) {
83
84
  nodeRole: binding.nodeRole,
84
85
  deliveryAdapter: binding.deliveryAdapter,
85
86
  deliveryConfig: binding.deliveryConfig,
87
+ providerName: binding.providerName,
86
88
  });
87
89
  }
88
90
  const fallbackRows = await ctx.db
@@ -94,6 +96,7 @@ async function resolveLiveLocations(ctx, deliveries) {
94
96
  nodeRole: nodes.role,
95
97
  deliveryAdapter: nodes.deliveryAdapter,
96
98
  deliveryConfig: nodes.deliveryConfig,
99
+ providerName: agents.providerName,
97
100
  })
98
101
  .from(agents)
99
102
  .leftJoin(nodes, eq(agents.locationNodeId, nodes.id))
@@ -108,6 +111,7 @@ async function resolveLiveLocations(ctx, deliveries) {
108
111
  nodeRole: row.nodeRole ?? (row.locationNodeId ? 'broker' : null),
109
112
  deliveryAdapter: row.deliveryAdapter ?? (row.locationNodeId ? 'ws.node.v1' : null),
110
113
  deliveryConfig: row.deliveryConfig,
114
+ providerName: row.providerName,
111
115
  });
112
116
  }
113
117
  return byAgent;
@@ -302,7 +306,8 @@ async function routeOneDeliveryOutcome(ctx, liveLocations, recordedTargets, deli
302
306
  const nodeKind = target?.nodeKind ?? (locationNodeId ? 'ws' : null);
303
307
  const deliveryAdapter = normalizeDeliveryAdapter(target?.deliveryAdapter ?? delivery.deliveryAdapter, nodeKind);
304
308
  if (locationType === 'via_node' && locationNodeId && deliveryAdapter === 'ws.node.v1') {
305
- const sent = await ctx.engine.nodeConnections.sendToNode(ctx.workspaceId, locationNodeId, buildDeliverFrame({
309
+ const providerName = liveLocation?.providerName ?? recordedTarget?.providerName ?? 'default';
310
+ const sent = await ctx.engine.nodeConnections.sendToProvider(ctx.workspaceId, locationNodeId, providerName, buildDeliverFrame({
306
311
  delivery_id: delivery.id,
307
312
  agent_id: delivery.agentId,
308
313
  agent: delivery.agentName,
@@ -1 +1 @@
1
- {"version":3,"file":"deliveryRouting.js","sourceRoot":"","sources":["../../src/routes/deliveryRouting.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAE5D,OAAO,KAAK,cAAc,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAKnF,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,UAAU,IAAI,YAAY,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC/F,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAgB,MAAM,0BAA0B,CAAC;AAE5E,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AAkB9E,MAAM,wBAAwB,GAAG,MAAM,CAAC;AAExC,SAAS,sBAAsB,CAAC,CAAc,EAAE,mBAA4B;IAC1E,MAAM,WAAW,GAAG,mBAAmB,IAAI,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC;IAClE,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjE,CAAC;IACD,OAAO;QACL,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;QACf,WAAW;QACX,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC;KACxB,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY;IAC5B,OAAO,IAAI,KAAK,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;AACtD,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAqB;IAC9C,OAAO,MAAM,CAAC,MAAM,EAAE,WAAW,KAAK,MAAM,CAAC;AAC/C,CAAC;AAED,SAAS,UAAU,CACjB,IAAY,EACZ,WAAmB,EACnB,IAA6B;IAE7B,OAAO;QACL,IAAI;QACJ,YAAY,EAAE,WAAW;QACzB,IAAI;QACJ,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,wBAAwB,CACrC,GAAmB,EACnB,QAAkB,EAClB,IAAY,EACZ,IAA6B;IAE7B,MAAM,OAAO,GAAG,kBAAkB,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;IAC5E,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;IACtC,MAAM,KAAK,GAAuB;QAChC,8BAA8B,CAC5B,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,EAC7C,GAAG,CAAC,WAAW,EACf,EAAE,IAAI,EAAE,OAAO,EAAE,CAClB;QACD,uBAAuB,CACrB;YACE,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,eAAe;YAC3C,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ;YAC7B,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW;YAC3C,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa;SAChD,EACD;YACE,QAAQ,EAAE,MAAM;YAChB,KAAK,EAAE,IAAI;YACX,IAAI;SACL,CACF;KACF,CAAC;IACF,MAAM,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC;AAED,KAAK,UAAU,oBAAoB,CACjC,GAAmB,EACnB,UAAkC;IAElC,MAAM,cAAc,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACpF,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,GAAG,EAAE,CAAC;IAElD,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,EAAE;SAC1B,MAAM,CAAC;QACN,OAAO,EAAE,iBAAiB,CAAC,OAAO;QAClC,MAAM,EAAE,iBAAiB,CAAC,MAAM;QAChC,QAAQ,EAAE,KAAK,CAAC,IAAI;QACpB,QAAQ,EAAE,KAAK,CAAC,IAAI;QACpB,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,cAAc,EAAE,KAAK,CAAC,cAAc;KACrC,CAAC;SACD,IAAI,CAAC,iBAAiB,CAAC;SACvB,SAAS,CAAC,MAAM,EAAE,GAAG,CACpB,EAAE,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC,EACxC,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,EACnC,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,MAAM,CAAC,CACpD,CAAC;SACD,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC,iBAAiB,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;SACxD,KAAK,CAAC,GAAG,CACR,EAAE,CAAC,iBAAiB,CAAC,WAAW,EAAE,GAAG,CAAC,WAAW,CAAC,EAClD,EAAE,CAAC,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,EACtC,OAAO,CAAC,iBAAiB,CAAC,OAAO,EAAE,cAAc,CAAC,CACnD,CAAC;SACD,OAAO,CAAC,GAAG,CAAA,GAAG,iBAAiB,CAAC,QAAQ,OAAO,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAEjF,MAAM,OAAO,GAAG,IAAI,GAAG,EAA0B,CAAC;IAClD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC;YAAE,SAAS;QAC3C,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE;YAC3B,YAAY,EAAE,UAAU;YACxB,cAAc,EAAE,OAAO,CAAC,MAAM;YAC9B,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,eAAe,EAAE,OAAO,CAAC,eAAe;YACxC,cAAc,EAAE,OAAO,CAAC,cAAgD;SACzE,CAAC,CAAC;IACL,CAAC;IAED,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,EAAE;SAC9B,MAAM,CAAC;QACN,EAAE,EAAE,MAAM,CAAC,EAAE;QACb,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,QAAQ,EAAE,KAAK,CAAC,IAAI;QACpB,QAAQ,EAAE,KAAK,CAAC,IAAI;QACpB,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,cAAc,EAAE,KAAK,CAAC,cAAc;KACrC,CAAC;SACD,IAAI,CAAC,MAAM,CAAC;SACZ,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;SACpD,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;IAE3F,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,SAAS;QAClC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE;YAClB,YAAY,EAAE,GAAG,CAAC,YAAY;YAC9B,cAAc,EAAE,GAAG,CAAC,cAAc;YAClC,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;YAC5D,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;YAChE,eAAe,EAAE,GAAG,CAAC,eAAe,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC;YAClF,cAAc,EAAE,GAAG,CAAC,cAAgD;SACrE,CAAC,CAAC;IACL,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,KAAK,UAAU,sBAAsB,CACnC,GAAmB,EACnB,UAAkC;IAElC,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAChE,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CACnD,CAAC,CAAC,CAAC,CAAC;IACL,MAAM,SAAS,GAAG,IAAI,GAAG,EAAqC,CAAC;IAC/D,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,EAAE;aACtB,MAAM,EAAE;aACR,IAAI,CAAC,KAAK,CAAC;aACX,KAAK,CAAC,GAAG,CACR,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,CAAC,WAAW,CAAC,EACtC,OAAO,CAAC,KAAK,CAAC,EAAE,EAAE,YAAY,CAAC,CAChC,CAAC,CAAC;QACL,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,GAAG,EAA0B,CAAC;IACrD,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;QAClC,IAAI,CAAC,QAAQ,CAAC,WAAW;YAAE,SAAS;QACpC,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACjD,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE;YAC1B,YAAY,EAAE,UAAU;YACxB,cAAc,EAAE,QAAQ,CAAC,WAAW;YACpC,QAAQ,EAAE,QAAQ,CAAC,aAAa,IAAI,IAAI,EAAE,IAAI,IAAI,IAAI;YACtD,QAAQ,EAAE,QAAQ,CAAC,aAAa,IAAI,IAAI,EAAE,IAAI,IAAI,IAAI;YACtD,eAAe,EAAE,QAAQ,CAAC,eAAe,IAAI,IAAI,EAAE,eAAe,IAAI,IAAI;YAC1E,cAAc,EAAG,IAAI,EAAE,cAA6D,IAAI,IAAI;SAC7F,CAAC,CAAC;IACL,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,wBAAwB,CAAC,OAAkC,EAAE,QAAmC;IACvG,IAAI,OAAO,KAAK,aAAa,IAAI,OAAO,KAAK,cAAc;QAAE,OAAO,YAAY,CAAC;IACjF,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAC5B,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,UAAU,IAAI,QAAQ,KAAK,WAAW;QAAE,OAAO,YAAY,CAAC;IAClG,IAAI,QAAQ,KAAK,WAAW;QAAE,OAAO,eAAe,CAAC;IACrD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,KAAK,UAAU,mBAAmB,CAChC,GAAmB,EACnB,UAAkB,EAClB,KAAa,EACb,OAAwC,EAAE;IAE1C,MAAM,GAAG,CAAC,EAAE;SACT,MAAM,CAAC,YAAY,CAAC;SACpB,GAAG,CAAC;QACH,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,GAAG,CAAA,YAAY,YAAY,CAAC,gBAAgB,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/G,iBAAiB,EAAE,KAAK;QACxB,aAAa,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,wBAAwB,CAAC;QAC9D,SAAS,EAAE,IAAI,IAAI,EAAE;KACtB,CAAC;SACD,KAAK,CAAC,GAAG,CACR,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,GAAG,CAAC,WAAW,CAAC,EAC7C,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,UAAU,CAAC,EAC/B,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,CAClC,CAAC,CAAC;AACP,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,IAM/B;IACC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,EAAE,CAAC;IAChD,MAAM,GAAG,GAAG,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/D,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,mBAAmB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,gDAAgD,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC;QACrI,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;QAC5E,MAAM,mBAAmB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,+BAA+B,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC;QACpH,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,gFAAgF;IAChF,yEAAyE;IACzE,6EAA6E;IAC7E,8EAA8E;IAC9E,8EAA8E;IAC9E,qDAAqD;IACrD,MAAM,OAAO,GAAG,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACzF,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;QAChB,MAAM,mBAAmB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC,MAAM,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC;QACnG,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IACtC,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;IAE1C,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,KAAK,UAAU;QAC5E,CAAC,CAAC,MAAM,CAAC,QAAQ;QACjB,CAAC,CAAC,QAAQ,CAAC;IACb,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC1B,IAAI,EAAE,IAAI,CAAC,SAAS;QACpB,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW;QAClC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE;QAC7B,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS;QACnC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO;QAC/B,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS;QACnC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG;QACtB,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QAClC,SAAS;QACT,IAAI,EAAE,IAAI,CAAC,SAAS;KACrB,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,MAAM,eAAe,GAAG;YACtB,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC;YAClD,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrC,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC;SAClC,CAAC;QACF,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;YAChC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;QACpF,CAAC;aAAM,CAAC;YACN,yEAAyE;YACzE,0EAA0E;YAC1E,qEAAqE;YACrE,mEAAmE;YACnE,0EAA0E;YAC1E,yEAAyE;YACzE,4BAA4B;YAC5B,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC;QAC3D,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE;aAC9B,MAAM,CAAC,YAAY,CAAC;aACpB,GAAG,CAAC;YACH,gBAAgB,EAAE,GAAG,CAAA,YAAY,YAAY,CAAC,gBAAgB,UAAU;YACxE,iBAAiB,EAAE,IAAI;YACvB,aAAa,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,wBAAwB,CAAC;YAC9D,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC;aACD,KAAK,CAAC,GAAG,CAAC,GAAG,eAAe,CAAC,CAAC;aAC9B,SAAS,CAAC,EAAE,EAAE,EAAE,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC;QACtC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,QAAQ,CAAC;QAE1C,wEAAwE;QACxE,yEAAyE;QACzE,MAAM,OAAO,GAAG,EAAE,GAAG,CAAC,MAAM,oBAAoB,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,EAAE,GAAG,YAAY,EAAE,CAAC;QAChI,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,UAAU,EAAE;YAClD,MAAM,EAAE,MAAM;YACd,OAAO;YACP,IAAI;YACJ,0EAA0E;YAC1E,8DAA8D;YAC9D,2EAA2E;YAC3E,yEAAyE;YACzE,wDAAwD;YACxD,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;SACpC,CAAC,CAAC;QAEH,kEAAkE;QAClE,wEAAwE;QACxE,IAAI,QAAQ,CAAC,IAAI,KAAK,gBAAgB,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,GAAG,GAAG,CAAC,EAAE,CAAC;YAC5F,MAAM,mBAAmB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,8BAA8B,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;YACxG,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,mBAAmB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;YACjF,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,WAAW,CAC5C,IAAI,CAAC,GAAG,CAAC,EAAE,EACX,IAAI,CAAC,GAAG,CAAC,WAAW,EACpB,IAAI,CAAC,QAAQ,CAAC,OAAO,EACrB,IAAI,CAAC,QAAQ,CAAC,EAAE,CACjB,CAAC;YACF,IAAI,KAAK,EAAE,OAAO,EAAE,CAAC;gBACnB,MAAM,wBAAwB,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,oBAAoB,EAAE;oBACtF,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE;oBAC7B,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS;iBACpC,CAAC,CAAC;YACL,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;YAC3B,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;YAC/D,IAAI,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;gBAC7C,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAwD,CAAC;gBACpH,IAAI,YAAY,EAAE,GAAG,KAAK,IAAI,IAAI,YAAY,EAAE,eAAe,KAAK,OAAO,EAAE,CAAC;oBAC5E,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,WAAW,CAC5C,IAAI,CAAC,GAAG,CAAC,EAAE,EACX,IAAI,CAAC,GAAG,CAAC,WAAW,EACpB,IAAI,CAAC,QAAQ,CAAC,OAAO,EACrB,IAAI,CAAC,QAAQ,CAAC,EAAE,CACjB,CAAC;oBACF,IAAI,KAAK,EAAE,OAAO,EAAE,CAAC;wBACnB,MAAM,wBAAwB,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,oBAAoB,EAAE;4BACtF,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE;4BAC7B,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS;yBACpC,CAAC,CAAC;oBACL,CAAC;oBACD,OAAO,OAAO,CAAC;gBACjB,CAAC;YACH,CAAC;YACD,MAAM,mBAAmB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,2BAA2B,CAAC,CAAC;YACnF,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,mBAAmB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC;QACnH,OAAO,QAAQ,CAAC;IAClB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,uBAAuB,CACpC,GAAmB,EACnB,aAA0C,EAC1C,eAA4C,EAC5C,QAA8B,EAC9B,SAAiB,EACjB,SAAkC;IAElC,MAAM,cAAc,GAAG,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACxD,MAAM,YAAY,GAAG,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,cAAc,IAAI,YAAY,CAAC;IAC9C,MAAM,YAAY,GAAG,MAAM,EAAE,YAAY,IAAI,QAAQ,CAAC,YAAY,CAAC;IACnE,MAAM,cAAc,GAAG,MAAM,EAAE,cAAc,IAAI,QAAQ,CAAC,cAAc,CAAC;IACzE,MAAM,QAAQ,GAAG,MAAM,EAAE,QAAQ,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACpE,MAAM,eAAe,GAAG,wBAAwB,CAAC,MAAM,EAAE,eAAe,IAAI,QAAQ,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;IAEhH,IAAI,YAAY,KAAK,UAAU,IAAI,cAAc,IAAI,eAAe,KAAK,YAAY,EAAE,CAAC;QACtF,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,EAAE,cAAc,EAAE,iBAAiB,CAAC;YAC1G,WAAW,EAAE,QAAQ,CAAC,EAAE;YACxB,QAAQ,EAAE,QAAQ,CAAC,OAAO;YAC1B,KAAK,EAAE,QAAQ,CAAC,SAAS;YACzB,MAAM,EAAE,QAAQ,CAAC,SAAS;YAC1B,GAAG,EAAE,QAAQ,CAAC,GAAG;YACjB,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC7B,OAAO,EAAE,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC;SACnD,CAAC,CAAC,CAAC;QACJ,IAAI,IAAI,EAAE,CAAC;YACT,MAAM,cAAc,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QACvF,CAAC;QACD,OAAO;IACT,CAAC;IAED,IAAI,YAAY,KAAK,UAAU,IAAI,cAAc,IAAI,QAAQ,KAAK,WAAW,IAAI,MAAM,EAAE,CAAC;QACxF,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;QACvF,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;YAC3B,MAAM,cAAc,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QACvF,CAAC;QACD,OAAO;IACT,CAAC;IAED,yEAAyE;IACzE,yEAAyE;IACzE,sDAAsD;AACxD,CAAC;AAED,KAAK,UAAU,+BAA+B,CAC5C,GAAmB,EACnB,UAAkC,EAClC,SAAiB,EACjB,SAAkC;IAElC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAEpC,MAAM,aAAa,GAAG,MAAM,oBAAoB,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAClE,MAAM,eAAe,GAAG,MAAM,sBAAsB,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IACtE,MAAM,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CACpD,uBAAuB,CAAC,GAAG,EAAE,aAAa,EAAE,eAAe,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAC7F,CAAC,CAAC,CAAC;AACN,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,CAAc,EACd,UAAkC,EAClC,SAAiB,EACjB,SAAkC,EAClC,OAAiC,EAAE;IAEnC,MAAM,+BAA+B,CAAC,sBAAsB,CAAC,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;AACvH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,MAAkB,EAClB,OAA6D,EAAE;IAE/D,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,8BAA8B,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACjF,MAAM,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAC1C,+BAA+B,CAC7B,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,MAAM,EAAE,EACzD,CAAC,KAAK,CAAC,QAAQ,CAAC,EAChB,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,SAAS,CAChB,CACF,CAAC,CAAC,CAAC;IACJ,OAAO,GAAG,CAAC,MAAM,CAAC;AACpB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,CAAc,EACd,aAAqB,EACrB,UAAqC;IAErC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IACpC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,MAAM,cAAc,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,iBAAiB,EAAE;YAC1D,WAAW,EAAE,IAAI;YACjB,UAAU,EAAE,SAAS,CAAC,SAAS;YAC/B,eAAe,EAAE,SAAS,CAAC,OAAO;YAClC,iBAAiB,EAAE,SAAS,CAAC,SAAS;YACtC,MAAM,EAAE,SAAS,CAAC,MAAM;YACxB,KAAK,EAAE,SAAS,CAAC,KAAK;YACtB,SAAS,EAAE,SAAS,CAAC,SAAS;SAC/B,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,CAAc,EACd,OAA+C;IAE/C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IACjC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,cAAc,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,iBAAiB,EAAE;YACnE,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;YAC3C,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,SAAS,EAAE,MAAM,CAAC,SAAS;SAC5B,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"deliveryRouting.js","sourceRoot":"","sources":["../../src/routes/deliveryRouting.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../src/routes/message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AA+BxC,eAAO,MAAM,aAAa,qDAAqB,CAAC"}
1
+ {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../src/routes/message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAI5B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AA+BxC,eAAO,MAAM,aAAa,qDAAqB,CAAC"}