@animalabs/agent-framework 0.5.6 → 0.6.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.
- package/dist/src/agent.d.ts +20 -4
- package/dist/src/agent.d.ts.map +1 -1
- package/dist/src/agent.js +45 -14
- package/dist/src/agent.js.map +1 -1
- package/dist/src/framework.d.ts +220 -5
- package/dist/src/framework.d.ts.map +1 -1
- package/dist/src/framework.js +1489 -69
- package/dist/src/framework.js.map +1 -1
- package/dist/src/gate/event-gate.d.ts +71 -1
- package/dist/src/gate/event-gate.d.ts.map +1 -1
- package/dist/src/gate/event-gate.js +292 -9
- package/dist/src/gate/event-gate.js.map +1 -1
- package/dist/src/gate/gate-script-worker.d.ts +2 -0
- package/dist/src/gate/gate-script-worker.d.ts.map +1 -0
- package/dist/src/gate/gate-script-worker.js +69 -0
- package/dist/src/gate/gate-script-worker.js.map +1 -0
- package/dist/src/gate/gate-script.d.ts +44 -0
- package/dist/src/gate/gate-script.d.ts.map +1 -0
- package/dist/src/gate/gate-script.js +164 -0
- package/dist/src/gate/gate-script.js.map +1 -0
- package/dist/src/gate/types.d.ts +35 -3
- package/dist/src/gate/types.d.ts.map +1 -1
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +2 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/mcpl/channel-registry.d.ts +93 -1
- package/dist/src/mcpl/channel-registry.d.ts.map +1 -1
- package/dist/src/mcpl/channel-registry.js +260 -6
- package/dist/src/mcpl/channel-registry.js.map +1 -1
- package/dist/src/mcpl/checkpoint-manager.d.ts +7 -0
- package/dist/src/mcpl/checkpoint-manager.d.ts.map +1 -1
- package/dist/src/mcpl/checkpoint-manager.js +15 -0
- package/dist/src/mcpl/checkpoint-manager.js.map +1 -1
- package/dist/src/mcpl/conversation-router.d.ts +161 -0
- package/dist/src/mcpl/conversation-router.d.ts.map +1 -0
- package/dist/src/mcpl/conversation-router.js +179 -0
- package/dist/src/mcpl/conversation-router.js.map +1 -0
- package/dist/src/mcpl/feature-set-manager.d.ts.map +1 -1
- package/dist/src/mcpl/feature-set-manager.js +10 -1
- package/dist/src/mcpl/feature-set-manager.js.map +1 -1
- package/dist/src/mcpl/index.d.ts +2 -0
- package/dist/src/mcpl/index.d.ts.map +1 -1
- package/dist/src/mcpl/index.js +2 -0
- package/dist/src/mcpl/index.js.map +1 -1
- package/dist/src/mcpl/push-handler.d.ts.map +1 -1
- package/dist/src/mcpl/push-handler.js +1 -0
- package/dist/src/mcpl/push-handler.js.map +1 -1
- package/dist/src/mcpl/server-connection.d.ts +35 -30
- package/dist/src/mcpl/server-connection.d.ts.map +1 -1
- package/dist/src/mcpl/server-connection.js +149 -206
- package/dist/src/mcpl/server-connection.js.map +1 -1
- package/dist/src/mcpl/transport.d.ts +98 -0
- package/dist/src/mcpl/transport.d.ts.map +1 -0
- package/dist/src/mcpl/transport.js +281 -0
- package/dist/src/mcpl/transport.js.map +1 -0
- package/dist/src/mcpl/types.d.ts +42 -2
- package/dist/src/mcpl/types.d.ts.map +1 -1
- package/dist/src/mcpl/types.js.map +1 -1
- package/dist/src/module-registry.d.ts +5 -1
- package/dist/src/module-registry.d.ts.map +1 -1
- package/dist/src/module-registry.js +16 -2
- package/dist/src/module-registry.js.map +1 -1
- package/dist/src/modules/discord/index.d.ts +10 -0
- package/dist/src/modules/discord/index.d.ts.map +1 -1
- package/dist/src/modules/discord/index.js +83 -0
- package/dist/src/modules/discord/index.js.map +1 -1
- package/dist/src/prose-segments.d.ts +18 -0
- package/dist/src/prose-segments.d.ts.map +1 -0
- package/dist/src/prose-segments.js +39 -0
- package/dist/src/prose-segments.js.map +1 -0
- package/dist/src/runtime/liveness-watchdog-worker.d.ts +2 -0
- package/dist/src/runtime/liveness-watchdog-worker.d.ts.map +1 -0
- package/dist/src/runtime/liveness-watchdog-worker.js +57 -0
- package/dist/src/runtime/liveness-watchdog-worker.js.map +1 -0
- package/dist/src/runtime/liveness-watchdog.d.ts +36 -0
- package/dist/src/runtime/liveness-watchdog.d.ts.map +1 -0
- package/dist/src/runtime/liveness-watchdog.js +106 -0
- package/dist/src/runtime/liveness-watchdog.js.map +1 -0
- package/dist/src/tool-result-history.d.ts +17 -0
- package/dist/src/tool-result-history.d.ts.map +1 -0
- package/dist/src/tool-result-history.js +60 -0
- package/dist/src/tool-result-history.js.map +1 -0
- package/dist/src/types/agent.d.ts +21 -0
- package/dist/src/types/agent.d.ts.map +1 -1
- package/dist/src/types/framework.d.ts +22 -0
- package/dist/src/types/framework.d.ts.map +1 -1
- package/dist/src/types/module.d.ts +27 -0
- package/dist/src/types/module.d.ts.map +1 -1
- package/dist/src/types/trace.d.ts +28 -0
- package/dist/src/types/trace.d.ts.map +1 -1
- package/dist/test/channel-registry-routing.test.d.ts +2 -0
- package/dist/test/channel-registry-routing.test.d.ts.map +1 -0
- package/dist/test/channel-registry-routing.test.js +182 -0
- package/dist/test/channel-registry-routing.test.js.map +1 -0
- package/dist/test/checkpoint-attribution.test.d.ts +2 -0
- package/dist/test/checkpoint-attribution.test.d.ts.map +1 -0
- package/dist/test/checkpoint-attribution.test.js +40 -0
- package/dist/test/checkpoint-attribution.test.js.map +1 -0
- package/dist/test/conversation-router.test.d.ts +2 -0
- package/dist/test/conversation-router.test.d.ts.map +1 -0
- package/dist/test/conversation-router.test.js +160 -0
- package/dist/test/conversation-router.test.js.map +1 -0
- package/dist/test/conversation-routing.test.d.ts +7 -0
- package/dist/test/conversation-routing.test.d.ts.map +1 -0
- package/dist/test/conversation-routing.test.js +203 -0
- package/dist/test/conversation-routing.test.js.map +1 -0
- package/dist/test/event-gate-policy-mutation.test.d.ts +2 -0
- package/dist/test/event-gate-policy-mutation.test.d.ts.map +1 -0
- package/dist/test/event-gate-policy-mutation.test.js +137 -0
- package/dist/test/event-gate-policy-mutation.test.js.map +1 -0
- package/dist/test/event-gate-script.test.d.ts +2 -0
- package/dist/test/event-gate-script.test.d.ts.map +1 -0
- package/dist/test/event-gate-script.test.js +95 -0
- package/dist/test/event-gate-script.test.js.map +1 -0
- package/dist/test/event-gate-tags.test.d.ts +2 -0
- package/dist/test/event-gate-tags.test.d.ts.map +1 -0
- package/dist/test/event-gate-tags.test.js +76 -0
- package/dist/test/event-gate-tags.test.js.map +1 -0
- package/dist/test/framework.test.js +73 -1
- package/dist/test/framework.test.js.map +1 -1
- package/dist/test/helpers/mock-membrane.d.ts +41 -0
- package/dist/test/helpers/mock-membrane.d.ts.map +1 -0
- package/dist/test/helpers/mock-membrane.js +161 -0
- package/dist/test/helpers/mock-membrane.js.map +1 -0
- package/dist/test/inference-failure-observability.test.d.ts +2 -0
- package/dist/test/inference-failure-observability.test.d.ts.map +1 -0
- package/dist/test/inference-failure-observability.test.js +75 -0
- package/dist/test/inference-failure-observability.test.js.map +1 -0
- package/dist/test/liveness-watchdog.test.d.ts +2 -0
- package/dist/test/liveness-watchdog.test.d.ts.map +1 -0
- package/dist/test/liveness-watchdog.test.js +78 -0
- package/dist/test/liveness-watchdog.test.js.map +1 -0
- package/dist/test/mcpl-ws-transport.test.d.ts +2 -0
- package/dist/test/mcpl-ws-transport.test.d.ts.map +1 -0
- package/dist/test/mcpl-ws-transport.test.js +155 -0
- package/dist/test/mcpl-ws-transport.test.js.map +1 -0
- package/dist/test/prose-segments.test.d.ts +2 -0
- package/dist/test/prose-segments.test.d.ts.map +1 -0
- package/dist/test/prose-segments.test.js +52 -0
- package/dist/test/prose-segments.test.js.map +1 -0
- package/dist/test/tool-result-history.test.d.ts +7 -0
- package/dist/test/tool-result-history.test.d.ts.map +1 -0
- package/dist/test/tool-result-history.test.js +77 -0
- package/dist/test/tool-result-history.test.js.map +1 -0
- package/dist/test/trunk-channel-routing.test.d.ts +19 -0
- package/dist/test/trunk-channel-routing.test.d.ts.map +1 -0
- package/dist/test/trunk-channel-routing.test.js +175 -0
- package/dist/test/trunk-channel-routing.test.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -3
- package/src/agent.ts +53 -18
- package/src/framework.ts +1685 -71
- package/src/gate/event-gate.ts +297 -9
- package/src/gate/gate-script-worker.ts +73 -0
- package/src/gate/gate-script.ts +180 -0
- package/src/gate/types.ts +36 -3
- package/src/index.ts +12 -0
- package/src/mcpl/channel-registry.ts +331 -6
- package/src/mcpl/checkpoint-manager.ts +16 -0
- package/src/mcpl/conversation-router.ts +284 -0
- package/src/mcpl/feature-set-manager.ts +14 -1
- package/src/mcpl/index.ts +12 -0
- package/src/mcpl/push-handler.ts +1 -0
- package/src/mcpl/server-connection.ts +157 -224
- package/src/mcpl/transport.ts +307 -0
- package/src/mcpl/types.ts +49 -2
- package/src/module-registry.ts +25 -2
- package/src/modules/discord/index.ts +93 -0
- package/src/prose-segments.ts +42 -0
- package/src/runtime/liveness-watchdog-worker.ts +66 -0
- package/src/runtime/liveness-watchdog.ts +122 -0
- package/src/tool-result-history.ts +57 -0
- package/src/types/agent.ts +21 -0
- package/src/types/framework.ts +24 -0
- package/src/types/module.ts +29 -0
- package/src/types/trace.ts +36 -0
package/dist/src/agent.d.ts
CHANGED
|
@@ -27,15 +27,16 @@ export declare class Agent {
|
|
|
27
27
|
* request native thinking from the provider. Signatures on response thinking
|
|
28
28
|
* blocks are preserved through Chronicle.
|
|
29
29
|
*/
|
|
30
|
-
readonly thinking:
|
|
31
|
-
enabled: boolean;
|
|
32
|
-
budgetTokens?: number;
|
|
33
|
-
} | undefined;
|
|
30
|
+
readonly thinking: AgentConfig['thinking'];
|
|
34
31
|
private _state;
|
|
35
32
|
private _inferenceStartedAt;
|
|
36
33
|
private _streamId;
|
|
37
34
|
lastStreamInputTokens: number;
|
|
38
35
|
maxStreamTokens: number;
|
|
36
|
+
/** Per-agent context compile budget (input tokens). When unset, the
|
|
37
|
+
* ContextManager's built-in default applies. reserveForResponse uses
|
|
38
|
+
* this agent's maxTokens. */
|
|
39
|
+
contextBudgetTokens?: number;
|
|
39
40
|
private contextManager;
|
|
40
41
|
private membrane;
|
|
41
42
|
constructor(config: AgentConfig, contextManager: ContextManager, membrane: Membrane);
|
|
@@ -65,6 +66,9 @@ export declare class Agent {
|
|
|
65
66
|
* Step 1 of the inference pipeline — callers can inspect/modify the result
|
|
66
67
|
* before building a request.
|
|
67
68
|
*/
|
|
69
|
+
/** Resolve the compile budget: explicit arg wins, else the per-agent
|
|
70
|
+
* configured context budget (if any), else the ContextManager default. */
|
|
71
|
+
private resolveBudget;
|
|
68
72
|
compileContext(budget?: TokenBudget): Promise<CompileResult>;
|
|
69
73
|
/**
|
|
70
74
|
* Compile the context with injections.
|
|
@@ -91,6 +95,18 @@ export declare class Agent {
|
|
|
91
95
|
* Returns the stream — the caller (framework) iterates it.
|
|
92
96
|
*/
|
|
93
97
|
startStream(availableTools: ToolDefinition[], budget?: TokenBudget): Promise<StartStreamResult>;
|
|
98
|
+
/**
|
|
99
|
+
* Build the membrane-normalized request that WOULD be emitted for this
|
|
100
|
+
* agent's next activation, given the supplied tools and injections.
|
|
101
|
+
*
|
|
102
|
+
* This is the single source of truth for request assembly, shared by the
|
|
103
|
+
* real activation path (`startStreamWithInjections`) and debug/preview
|
|
104
|
+
* tooling (`Framework.previewActivation`). It is pure and non-mutating:
|
|
105
|
+
* it does not touch agent state and does not call the membrane, and
|
|
106
|
+
* `ContextManager.compile` is itself side-effect-free (compression runs in
|
|
107
|
+
* the background). Safe to call regardless of the agent's current status.
|
|
108
|
+
*/
|
|
109
|
+
buildActivationRequest(availableTools: ToolDefinition[], injections?: ContextInjection[], budget?: TokenBudget): Promise<NormalizedRequest>;
|
|
94
110
|
/**
|
|
95
111
|
* Start a yielding stream with context injections.
|
|
96
112
|
* Same as startStream but passes injections through to compile.
|
package/dist/src/agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAqB,iBAAiB,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/agent.ts"],"names":[],"mappings":"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"}
|
package/dist/src/agent.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { isAbortedResponse } from '@animalabs/membrane';
|
|
2
|
+
import { toolResultDataToHistoryString } from './tool-result-history.js';
|
|
2
3
|
/**
|
|
3
4
|
* An agent wraps a context manager and manages inference state.
|
|
4
5
|
*/
|
|
@@ -27,6 +28,10 @@ export class Agent {
|
|
|
27
28
|
_streamId = 0;
|
|
28
29
|
lastStreamInputTokens = 0;
|
|
29
30
|
maxStreamTokens;
|
|
31
|
+
/** Per-agent context compile budget (input tokens). When unset, the
|
|
32
|
+
* ContextManager's built-in default applies. reserveForResponse uses
|
|
33
|
+
* this agent's maxTokens. */
|
|
34
|
+
contextBudgetTokens;
|
|
30
35
|
contextManager;
|
|
31
36
|
membrane;
|
|
32
37
|
constructor(config, contextManager, membrane) {
|
|
@@ -39,6 +44,7 @@ export class Agent {
|
|
|
39
44
|
this.temperature = config.temperature;
|
|
40
45
|
this.thinking = config.thinking;
|
|
41
46
|
this.maxStreamTokens = config.maxStreamTokens ?? 150_000;
|
|
47
|
+
this.contextBudgetTokens = config.contextBudgetTokens;
|
|
42
48
|
this.contextManager = contextManager;
|
|
43
49
|
this.membrane = membrane;
|
|
44
50
|
}
|
|
@@ -91,8 +97,17 @@ export class Agent {
|
|
|
91
97
|
* Step 1 of the inference pipeline — callers can inspect/modify the result
|
|
92
98
|
* before building a request.
|
|
93
99
|
*/
|
|
100
|
+
/** Resolve the compile budget: explicit arg wins, else the per-agent
|
|
101
|
+
* configured context budget (if any), else the ContextManager default. */
|
|
102
|
+
resolveBudget(budget) {
|
|
103
|
+
if (budget)
|
|
104
|
+
return budget;
|
|
105
|
+
if (this.contextBudgetTokens === undefined)
|
|
106
|
+
return undefined;
|
|
107
|
+
return { maxTokens: this.contextBudgetTokens, reserveForResponse: this.maxTokens };
|
|
108
|
+
}
|
|
94
109
|
async compileContext(budget) {
|
|
95
|
-
return this.contextManager.compile(budget);
|
|
110
|
+
return this.contextManager.compile(this.resolveBudget(budget));
|
|
96
111
|
}
|
|
97
112
|
/**
|
|
98
113
|
* Compile the context with injections.
|
|
@@ -100,7 +115,7 @@ export class Agent {
|
|
|
100
115
|
* to the context manager so they are merged into the compiled messages.
|
|
101
116
|
*/
|
|
102
117
|
async compileWithInjections(budget, injections) {
|
|
103
|
-
return this.contextManager.compile(budget, injections);
|
|
118
|
+
return this.contextManager.compile(this.resolveBudget(budget), injections);
|
|
104
119
|
}
|
|
105
120
|
// ==========================================================================
|
|
106
121
|
// Inference (backward-compatible)
|
|
@@ -222,16 +237,17 @@ export class Agent {
|
|
|
222
237
|
return this.startStreamWithInjections(availableTools, undefined, budget);
|
|
223
238
|
}
|
|
224
239
|
/**
|
|
225
|
-
*
|
|
226
|
-
*
|
|
240
|
+
* Build the membrane-normalized request that WOULD be emitted for this
|
|
241
|
+
* agent's next activation, given the supplied tools and injections.
|
|
242
|
+
*
|
|
243
|
+
* This is the single source of truth for request assembly, shared by the
|
|
244
|
+
* real activation path (`startStreamWithInjections`) and debug/preview
|
|
245
|
+
* tooling (`Framework.previewActivation`). It is pure and non-mutating:
|
|
246
|
+
* it does not touch agent state and does not call the membrane, and
|
|
247
|
+
* `ContextManager.compile` is itself side-effect-free (compression runs in
|
|
248
|
+
* the background). Safe to call regardless of the agent's current status.
|
|
227
249
|
*/
|
|
228
|
-
async
|
|
229
|
-
if (this._state.status !== 'idle') {
|
|
230
|
-
throw new Error(`Agent ${this.name} cannot start stream in state ${this._state.status}`);
|
|
231
|
-
}
|
|
232
|
-
this._streamId++;
|
|
233
|
-
this._inferenceStartedAt = Date.now();
|
|
234
|
-
this.lastStreamInputTokens = 0;
|
|
250
|
+
async buildActivationRequest(availableTools, injections, budget) {
|
|
235
251
|
let { messages, systemInjections } = await this.compileWithInjections(budget, injections);
|
|
236
252
|
// Safety: ensure messages don't end with an assistant message.
|
|
237
253
|
// Some models reject trailing assistant messages ("prefill not supported"),
|
|
@@ -242,7 +258,7 @@ export class Agent {
|
|
|
242
258
|
content: [{ type: 'text', text: '[Continue]' }],
|
|
243
259
|
}];
|
|
244
260
|
}
|
|
245
|
-
|
|
261
|
+
return {
|
|
246
262
|
messages,
|
|
247
263
|
system: this.buildSystemPrompt(systemInjections),
|
|
248
264
|
config: {
|
|
@@ -255,6 +271,19 @@ export class Agent {
|
|
|
255
271
|
promptCaching: true,
|
|
256
272
|
assistantParticipant: this.name,
|
|
257
273
|
};
|
|
274
|
+
}
|
|
275
|
+
/**
|
|
276
|
+
* Start a yielding stream with context injections.
|
|
277
|
+
* Same as startStream but passes injections through to compile.
|
|
278
|
+
*/
|
|
279
|
+
async startStreamWithInjections(availableTools, injections, budget) {
|
|
280
|
+
if (this._state.status !== 'idle') {
|
|
281
|
+
throw new Error(`Agent ${this.name} cannot start stream in state ${this._state.status}`);
|
|
282
|
+
}
|
|
283
|
+
this._streamId++;
|
|
284
|
+
this._inferenceStartedAt = Date.now();
|
|
285
|
+
this.lastStreamInputTokens = 0;
|
|
286
|
+
const request = await this.buildActivationRequest(availableTools, injections, budget);
|
|
258
287
|
const stream = this.membrane.streamYielding(request, {
|
|
259
288
|
emitTokens: true,
|
|
260
289
|
emitBlocks: false,
|
|
@@ -403,13 +432,15 @@ export class Agent {
|
|
|
403
432
|
return { toolCalls, speechContent };
|
|
404
433
|
}
|
|
405
434
|
buildToolResultMessages(results) {
|
|
406
|
-
// Tool results go as a user message with tool_result blocks
|
|
435
|
+
// Tool results go as a user message with tool_result blocks. The history
|
|
436
|
+
// serializer turns MCP image blocks into `[image: type, size]` so the
|
|
437
|
+
// persisted transcript stays small and survives truncation.
|
|
407
438
|
const content = results.map((r) => ({
|
|
408
439
|
type: 'tool_result',
|
|
409
440
|
toolUseId: r.id,
|
|
410
441
|
content: r.result.isError
|
|
411
442
|
? r.result.error ?? 'Unknown error'
|
|
412
|
-
:
|
|
443
|
+
: toolResultDataToHistoryString(r.result.data),
|
|
413
444
|
isError: r.result.isError,
|
|
414
445
|
}));
|
|
415
446
|
return [{
|
package/dist/src/agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/agent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAqBxD;;GAEG;AACH,MAAM,OAAO,KAAK;IACP,IAAI,CAAS;IACb,KAAK,CAAS;IACd,YAAY,CAAS;IACrB,YAAY,CAAmB;IAC/B,cAAc,CAAmB;IACjC,SAAS,CAAS;IAC3B;;;;;OAKG;IACM,WAAW,CAAqB;IACzC;;;;OAIG;IACM,QAAQ,CAA0D;IAEnE,MAAM,GAAe,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IACxC,mBAAmB,GAAG,CAAC,CAAC;IACxB,SAAS,GAAG,CAAC,CAAC;IACtB,qBAAqB,GAAG,CAAC,CAAC;IAC1B,eAAe,CAAS;IAChB,cAAc,CAAiB;IAC/B,QAAQ,CAAW;IAE3B,YACE,MAAmB,EACnB,cAA8B,EAC9B,QAAkB;QAElB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QACxC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,KAAK,CAAC;QACjD,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,IAAI,KAAK,CAAC;QACrD,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC;QAC1C,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAChC,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,IAAI,OAAO,CAAC;QACzD,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,IAAI,IAAI;QACN,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;SAC3B,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,QAAgB;QACzB,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,MAAc;QAC7B,IAAI,IAAI,CAAC,cAAc,KAAK,KAAK,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;IAED,6EAA6E;IAC7E,mBAAmB;IACnB,6EAA6E;IAE7E;;;;OAIG;IACH,KAAK,CAAC,cAAc,CAAC,MAAoB;QACvC,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,qBAAqB,CACzB,MAAoB,EACpB,UAA+B;QAE/B,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACzD,CAAC;IAED,6EAA6E;IAC7E,kCAAkC;IAClC,6EAA6E;IAE7E;;;OAGG;IACH,KAAK,CAAC,YAAY,CAChB,cAAgC,EAChC,MAAoB,EACpB,UAA4B,EAAE;QAE9B,OAAO,IAAI,CAAC,0BAA0B,CAAC,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACrF,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,0BAA0B,CAC9B,cAAgC,EAChC,UAA+B,EAC/B,MAAoB,EACpB,OAA0B;QAE1B,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,IAAI,uBAAuB,CAAC,CAAC;QAC7D,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,mBAAmB,EAAE,CAAC;YAC/C,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,IAAI,8BAA8B,CAAC,CAAC;QACpE,CAAC;QAED,oCAAoC;QACpC,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAEpE,6CAA6C;QAC7C,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAE5F,4CAA4C;QAC5C,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YACnC,MAAM,kBAAkB,GAAG,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YACjF,QAAQ,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,CAAC;QACvC,CAAC;QAED,MAAM,OAAO,GAAsB;YACjC,QAAQ;YACR,MAAM,EAAE,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC;YAChD,MAAM,EAAE;gBACN,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;gBACxE,GAAG,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;aAChE;YACD,KAAK,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YAC3C,oBAAoB,EAAE,IAAI,CAAC,IAAI;SAChC,CAAC;QAEF,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;QAC9C,IAAI,OAAO,EAAE,MAAM,EAAE,CAAC;YACpB,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC3B,eAAe,CAAC,KAAK,EAAE,CAAC;YAC1B,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1F,CAAC;QACH,CAAC;QAED,yBAAyB;QACzB,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACtC,MAAM,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;QAC3E,IAAI,CAAC,MAAM,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAC;QAElF,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC;YAEtC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,IAAI,CAAC,MAAM,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;gBACjC,OAAO,MAAM,CAAC;YAChB,CAAC;YAED,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChC,2BAA2B;gBAC3B,MAAM,OAAO,GAAG,IAAI,GAAG,EAA+B,CAAC;gBACvD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;oBACpC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE;wBACnB,EAAE,EAAE,IAAI,CAAC,EAAE;wBACX,IAAI,EAAE,IAAI,CAAC,IAAI;wBACf,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;qBACtB,CAAC,CAAC;gBACL,CAAC;gBACD,IAAI,CAAC,MAAM,GAAG,EAAE,MAAM,EAAE,mBAAmB,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;YACxE,CAAC;iBAAM,CAAC;gBACN,qBAAqB;gBACrB,IAAI,CAAC,MAAM,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;YACnC,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,4BAA4B;YAC5B,IAAI,CAAC,MAAM,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;YACjC,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACH,iBAAiB,CAAC,MAAkB,EAAE,MAAkB;QACtD,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,mBAAmB,EAAE,CAAC;YAC/C,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,IAAI,2BAA2B,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,sBAAsB,MAAM,EAAE,CAAC,CAAC;QAClD,CAAC;QAED,iCAAiC;QACjC,MAAM,SAAS,GAAsB;YACnC,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM;YACN,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,SAAS;SAC3C,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAEtC,yCAAyC;QACzC,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACnC,IAAI,CAAC,MAAM,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACpG,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,WAAW,CACf,cAAgC,EAChC,MAAoB;QAEpB,OAAO,IAAI,CAAC,yBAAyB,CAAC,cAAc,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IAC3E,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,yBAAyB,CAC7B,cAAgC,EAChC,UAA+B,EAC/B,MAAoB;QAEpB,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,IAAI,iCAAiC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAC3F,CAAC;QAED,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACtC,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAC;QAE/B,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAE1F,+DAA+D;QAC/D,4EAA4E;QAC5E,wEAAwE;QACxE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,WAAW,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;YACpF,QAAQ,GAAG,CAAC,GAAG,QAAQ,EAAE;oBACvB,WAAW,EAAE,MAAM;oBACnB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;iBAChD,CAAC,CAAC;QACL,CAAC;QAED,MAAM,OAAO,GAAsB;YACjC,QAAQ;YACR,MAAM,EAAE,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC;YAChD,MAAM,EAAE;gBACN,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;gBACxE,GAAG,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;aAChE;YACD,KAAK,EAAE,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS;YAC7D,aAAa,EAAE,IAAI;YACnB,oBAAoB,EAAE,IAAI,CAAC,IAAI;SAChC,CAAC;QAEF,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO,EAAE;YACnD,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC;QAC9C,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAC7B,CAAC;IAED;;;OAGG;IACH,oBAAoB,CAAC,KAAiB,EAAE,MAAsB;QAC5D,MAAM,OAAO,GAAG,IAAI,GAAG,EAA+B,CAAC;QACvD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE;gBACnB,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;aACtB,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,EAAE,MAAM,EAAE,mBAAmB,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC;IAChF,CAAC;IAED;;;OAGG;IACH,oBAAoB,CAAC,OAAuB;QAC1C,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,MAAsB;QACjC,IAAI,CAAC,MAAM,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,YAAY;QACV,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YACvC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QAC9B,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,mBAAmB,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAC5E,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QAC9B,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,mBAAmB,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC;IACpF,CAAC;IAED;;OAEG;IACH,iBAAiB;QACf,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,mBAAmB,EAAE,CAAC;YAC/C,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,MAAM,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,iBAAiB;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED;;OAEG;IACK,iBAAiB,CAAC,gBAAgC;QACxD,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;QAED,MAAM,YAAY,GAAG,gBAAgB;aAClC,MAAM,CAAC,CAAC,KAAK,EAA4C,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC;aAClF,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAE9B,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;QAED,OAAO,IAAI,CAAC,YAAY,GAAG,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5D,CAAC;IAED,cAAc,CAAC,MAAe;QAC5B,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YACvC,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,mBAAmB,CAAC;YACzD,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC1C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;QACvC,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,WAAW;YAClC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,mBAAmB,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YACvE,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,mBAAmB,CAAC;YACzD,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;QACvC,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,KAAK,CAAC,WAAW,CACvB,OAA0B,EAC1B,MAAoB;QAEpB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAEjE,IAAI,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC;YAChC,MAAM,cAAc,GAAG,QAAQ,CAAC,cAAc,IAAI,EAAE,CAAC;YACrD,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC,yBAAyB,CAAC,cAAc,CAAC,CAAC;YACpF,OAAO;gBACL,SAAS;gBACT,aAAa;gBACb,KAAK,EAAE,QAAQ,CAAC,YAAY;gBAC5B,UAAU,EAAE,OAAO;gBACnB,OAAO,EAAE,IAAI;gBACb,WAAW,EAAE,QAAQ,CAAC,MAAM;aAC7B,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEtF,oCAAoC;QACpC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE5D,OAAO;YACL,SAAS;YACT,aAAa;YACb,GAAG,EAAE,QAAQ,CAAC,GAAG;YACjB,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,UAAU,EAAE,QAAQ,CAAC,UAAU;SAChC,CAAC;IACJ,CAAC;IAEO,yBAAyB,CAAC,OAAuB;QAIvD,MAAM,SAAS,GAAe,EAAE,CAAC;QACjC,MAAM,aAAa,GAAmB,EAAE,CAAC;QAEzC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC9B,SAAS,CAAC,IAAI,CAAC;oBACb,EAAE,EAAE,KAAK,CAAC,EAAE;oBACZ,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;iBACnB,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACjC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;QAED,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;IACtC,CAAC;IAEO,uBAAuB,CAAC,OAA4B;QAC1D,4DAA4D;QAC5D,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAClC,IAAI,EAAE,aAAsB;YAC5B,SAAS,EAAE,CAAC,CAAC,EAAE;YACf,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO;gBACvB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,eAAe;gBACnC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;YACjC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO;SAC1B,CAAC,CAAC,CAAC;QAEJ,OAAO,CAAC;gBACN,WAAW,EAAE,MAAM;gBACnB,OAAO;aACR,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/agent.ts"],"names":[],"mappings":"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"}
|
package/dist/src/framework.d.ts
CHANGED
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
import { JsStore } from '@animalabs/chronicle';
|
|
2
|
-
import type { Membrane } from '@animalabs/membrane';
|
|
2
|
+
import type { Membrane, NormalizedRequest } from '@animalabs/membrane';
|
|
3
3
|
import { ContextManager } from '@animalabs/context-manager';
|
|
4
4
|
import type { FrameworkConfig, TraceEventListener, InferenceLogQuery, InferenceLogQueryResult, InferenceLogEntryWithId, ProcessLogQuery, ProcessLogQueryResult, ProcessLogEntryWithId, ProcessEvent, ToolCall, ToolResult, AgentConfig, Module } from './types/index.js';
|
|
5
5
|
import { Agent } from './agent.js';
|
|
6
6
|
import { ChannelRegistry } from './mcpl/channel-registry.js';
|
|
7
|
+
import { ConversationRouter } from './mcpl/conversation-router.js';
|
|
7
8
|
import type { SessionUsageSnapshot } from './usage/types.js';
|
|
8
|
-
/**
|
|
9
|
-
* The main agent framework.
|
|
10
|
-
*/
|
|
11
9
|
export declare class AgentFramework {
|
|
12
10
|
private store;
|
|
13
11
|
private ownsStore;
|
|
@@ -18,6 +16,16 @@ export declare class AgentFramework {
|
|
|
18
16
|
private inferencePolicy;
|
|
19
17
|
private errorPolicy;
|
|
20
18
|
private pendingRequests;
|
|
19
|
+
/**
|
|
20
|
+
* Per-agent channel that triggered the agent's CURRENT inference turn, if any
|
|
21
|
+
* (item-3 redux). Read by the ChannelRegistry's `activeChannelResolver` to
|
|
22
|
+
* route a single-trunk agent's plain-text speech back to the channel it is
|
|
23
|
+
* answering, instead of the process-global most-recent-inbound locus that a
|
|
24
|
+
* concurrent message elsewhere can hijack. Set at turn start (or cleared for a
|
|
25
|
+
* heartbeat / no-trigger turn) in startAgentStream; overwritten by the next
|
|
26
|
+
* turn. Never read between turns (a given agent runs one turn at a time).
|
|
27
|
+
*/
|
|
28
|
+
private activeTriggerChannels;
|
|
21
29
|
private running;
|
|
22
30
|
private loopPromise;
|
|
23
31
|
private traceListeners;
|
|
@@ -27,11 +35,19 @@ export declare class AgentFramework {
|
|
|
27
35
|
private processLoggingBroadcast;
|
|
28
36
|
private activeStreams;
|
|
29
37
|
private pendingAssistantBlocks;
|
|
38
|
+
/** Per-agent count of consecutive exhausted inferences (reset on any success).
|
|
39
|
+
* Drives hard-down escalation — see noteInferenceExhausted. */
|
|
40
|
+
private consecutiveInferenceFailures;
|
|
41
|
+
/** N consecutive failed inferences ⇒ the agent is treated as hard-down and
|
|
42
|
+
* escalated loudly to stderr. */
|
|
43
|
+
private readonly inferenceFailureEscalationThreshold;
|
|
30
44
|
/** Name of the primary (non-ephemeral) agent for routing framework messages. */
|
|
31
45
|
private primaryAgentName;
|
|
32
46
|
private deferredMessages;
|
|
33
47
|
private turnCounters;
|
|
34
48
|
private redoStacks;
|
|
49
|
+
/** Liveness watchdog (fail hard on a wedged main thread). Null unless enabled. */
|
|
50
|
+
private livenessWatchdog;
|
|
35
51
|
private mcplServerRegistry;
|
|
36
52
|
private featureSetManager;
|
|
37
53
|
private scopeManager;
|
|
@@ -40,6 +56,21 @@ export declare class AgentFramework {
|
|
|
40
56
|
private inferenceRouter;
|
|
41
57
|
private channelRegistry;
|
|
42
58
|
private checkpointManager;
|
|
59
|
+
/** Per-channel conversation routing (null unless config.conversations set). */
|
|
60
|
+
private conversationRouter;
|
|
61
|
+
/** Agent configs by name — fork agents are built from the template's config. */
|
|
62
|
+
private agentConfigs;
|
|
63
|
+
/**
|
|
64
|
+
* Fork agent → its home channel. Permanent (unlike router bindings, which
|
|
65
|
+
* expire): publish/injection scoping must survive unbinding so the closure
|
|
66
|
+
* turn still lands in the right channel.
|
|
67
|
+
*/
|
|
68
|
+
private conversationAgentHomes;
|
|
69
|
+
/** Last idle-TTL sweep timestamp. */
|
|
70
|
+
private lastConversationSweep;
|
|
71
|
+
/** Forks whose TTL closure turn has been queued — disposed (removed from
|
|
72
|
+
* agents/agentConfigs/conversationAgentHomes) when their stream ends. */
|
|
73
|
+
private closingConversationAgents;
|
|
43
74
|
private mcplTools;
|
|
44
75
|
private mcplToolRefreshInFlight;
|
|
45
76
|
private mcplToolRefreshPending;
|
|
@@ -69,7 +100,7 @@ export declare class AgentFramework {
|
|
|
69
100
|
/**
|
|
70
101
|
* Add a trace event listener for observability.
|
|
71
102
|
*/
|
|
72
|
-
onTrace(listener: TraceEventListener): void;
|
|
103
|
+
onTrace(listener: TraceEventListener): () => void;
|
|
73
104
|
/**
|
|
74
105
|
* Public accessor for the MCPL channel registry.
|
|
75
106
|
* Null when no MCPL servers are configured.
|
|
@@ -97,6 +128,11 @@ export declare class AgentFramework {
|
|
|
97
128
|
* Get all agents.
|
|
98
129
|
*/
|
|
99
130
|
getAllAgents(): Agent[];
|
|
131
|
+
/**
|
|
132
|
+
* Get the per-channel conversation router (null unless config.conversations
|
|
133
|
+
* was set). Exposed for modules/UIs that surface active engagements.
|
|
134
|
+
*/
|
|
135
|
+
getConversationRouter(): ConversationRouter | null;
|
|
100
136
|
/**
|
|
101
137
|
* Abort an in-flight inference for an agent.
|
|
102
138
|
*/
|
|
@@ -109,6 +145,34 @@ export declare class AgentFramework {
|
|
|
109
145
|
* Get all available tools from all modules and MCPL servers.
|
|
110
146
|
*/
|
|
111
147
|
getAllTools(): import('./types/index.js').ToolDefinition[];
|
|
148
|
+
/**
|
|
149
|
+
* Build the membrane-normalized request that WOULD be emitted if `agentName`
|
|
150
|
+
* were activated right now — WITHOUT running inference, opening a stream, or
|
|
151
|
+
* mutating agent state. Intended for debug/preview tooling.
|
|
152
|
+
*
|
|
153
|
+
* Transparency contract (default): the preview is side-effect-free and
|
|
154
|
+
* leaves no trace on the system. It does only read-only work —
|
|
155
|
+
* `ContextManager.compile` (which never triggers compression itself;
|
|
156
|
+
* compression runs in the background out-of-band), tool filtering, and
|
|
157
|
+
* system-prompt assembly — then delegates to `Agent.buildActivationRequest`.
|
|
158
|
+
* No tokens are spent, nothing is written to Chronicle, and no external
|
|
159
|
+
* MCPL server is contacted.
|
|
160
|
+
*
|
|
161
|
+
* The trade-off is fidelity: the dynamically-gathered ContextInjection[]
|
|
162
|
+
* (module `gatherContext` + MCPL `beforeInference` hooks) are NOT included
|
|
163
|
+
* by default, because gathering them is not transparent —
|
|
164
|
+
* - module `gatherContext` can run inference (e.g. RetrievalModule makes
|
|
165
|
+
* Haiku calls — real token cost and latency), and
|
|
166
|
+
* - MCPL `beforeInference` hooks are arbitrary RPCs to external servers
|
|
167
|
+
* with side effects, and a preview never sends the paired
|
|
168
|
+
* `afterInference`, which can leave a stateful server half-open.
|
|
169
|
+
*
|
|
170
|
+
* Pass `{ injections: true }` to opt into full-fidelity gathering and accept
|
|
171
|
+
* those side effects (byte-faithful to a real activation's injected context).
|
|
172
|
+
*/
|
|
173
|
+
previewActivation(agentName: string, opts?: {
|
|
174
|
+
injections?: boolean;
|
|
175
|
+
}): Promise<NormalizedRequest>;
|
|
112
176
|
/**
|
|
113
177
|
* Check if process logging is enabled.
|
|
114
178
|
*/
|
|
@@ -124,6 +188,22 @@ export declare class AgentFramework {
|
|
|
124
188
|
* Get a registered module by name.
|
|
125
189
|
*/
|
|
126
190
|
getModule(name: string): Module | null;
|
|
191
|
+
/**
|
|
192
|
+
* Add or replace (upsert) a gate policy at runtime. Validated and persisted
|
|
193
|
+
* to gate.json; hot-applied in memory. Throws if no gate is configured or the
|
|
194
|
+
* policy is invalid. `position: 'prepend'` puts a wake rule ahead of broad
|
|
195
|
+
* defer/debounce rules (first match wins).
|
|
196
|
+
*/
|
|
197
|
+
addGatePolicy(rawPolicy: unknown, options?: {
|
|
198
|
+
position?: 'append' | 'prepend';
|
|
199
|
+
}): import('./gate/types.js').GatePolicy;
|
|
200
|
+
/**
|
|
201
|
+
* Remove a gate policy by name at runtime. Returns false if it didn't exist.
|
|
202
|
+
* Throws if no gate is configured.
|
|
203
|
+
*/
|
|
204
|
+
removeGatePolicy(name: string): boolean;
|
|
205
|
+
/** Current gate policy names (freshest on-disk view). Empty when no gate. */
|
|
206
|
+
getGatePolicyNames(): string[];
|
|
127
207
|
/**
|
|
128
208
|
* Get the Membrane instance.
|
|
129
209
|
*/
|
|
@@ -170,6 +250,44 @@ export declare class AgentFramework {
|
|
|
170
250
|
* Query inference logs.
|
|
171
251
|
* Returns entries with summary info (doesn't resolve blobs).
|
|
172
252
|
*/
|
|
253
|
+
/** Synthesized sleep/wake tool definitions (present when a gate is wired). */
|
|
254
|
+
private static readonly SLEEP_TOOLS;
|
|
255
|
+
/** Synthesized wake-rule tools: add/remove a gate.json policy at runtime.
|
|
256
|
+
* Present when a gate is wired. They write validated policies into the
|
|
257
|
+
* hot-reloaded gate.json (same validation as load), so a rule takes effect
|
|
258
|
+
* immediately and survives restart. */
|
|
259
|
+
private static readonly WAKE_RULE_TOOLS;
|
|
260
|
+
/** Discoverability for event tags (MCPL RFC-001): the reserved chat:* core,
|
|
261
|
+
* each connected server's declared tag ontology, and gate.js status. */
|
|
262
|
+
private static readonly EVENT_TAGS_TOOL;
|
|
263
|
+
/** Reserved chat:* core vocabulary (MCPL RFC-001 §4) — short descriptions so
|
|
264
|
+
* the agent can author rules without reading the spec. */
|
|
265
|
+
private static readonly CHAT_CORE_TAGS;
|
|
266
|
+
/** Refusal category → Discord reaction emoji. Unknown categories get 🛑. */
|
|
267
|
+
private static readonly REFUSAL_REACTIONS;
|
|
268
|
+
/**
|
|
269
|
+
* Mark an inference refusal visibly: react on the message that holds the
|
|
270
|
+
* conversational locus (the most recent incoming channel message) with a
|
|
271
|
+
* category-specific emoji. Best-effort — failures are logged, never thrown,
|
|
272
|
+
* and non-Discord loci are silently skipped.
|
|
273
|
+
*/
|
|
274
|
+
private reactToRefusal;
|
|
275
|
+
/**
|
|
276
|
+
* Handle a `host/command` request from an MCPL surface server (e.g. a
|
|
277
|
+
* Discord slash command). Currently supports:
|
|
278
|
+
*
|
|
279
|
+
* undo — revert the last N inference turns (branch-based, see
|
|
280
|
+
* `undoLastTurn`). The response includes the last message the agent
|
|
281
|
+
* would see in its context after the undo, obtained via the transparent
|
|
282
|
+
* `previewActivation` render (no inference, no Chronicle writes).
|
|
283
|
+
*/
|
|
284
|
+
private handleHostCommand;
|
|
285
|
+
/**
|
|
286
|
+
* The last message the agent would see in its context right now, via the
|
|
287
|
+
* transparent `previewActivation` render (no inference, no Chronicle
|
|
288
|
+
* writes). Returns null if the preview fails or the context is empty.
|
|
289
|
+
*/
|
|
290
|
+
private lastVisiblePreview;
|
|
173
291
|
queryInferenceLogs(query?: InferenceLogQuery): InferenceLogQueryResult;
|
|
174
292
|
/**
|
|
175
293
|
* Get a specific inference log entry by sequence number.
|
|
@@ -248,10 +366,66 @@ export declare class AgentFramework {
|
|
|
248
366
|
* This replaces the old MCPLModule.onProcess() message conversion.
|
|
249
367
|
*/
|
|
250
368
|
private handleMcplChannelIncoming;
|
|
369
|
+
/**
|
|
370
|
+
* Route an incoming channel message through the ConversationRouter:
|
|
371
|
+
* deliver to the channel's bound fork agent, spawning it from the template
|
|
372
|
+
* agent first when the bind policy matches. Unrouted messages are dropped —
|
|
373
|
+
* the template ("trunk") is a dormant warm checkpoint, not a listener.
|
|
374
|
+
*/
|
|
375
|
+
private routeConversationIncoming;
|
|
376
|
+
/**
|
|
377
|
+
* Spawn a persistent per-channel conversation agent ("fork") from the
|
|
378
|
+
* template agent: own ContextManager under `conversations/{name}`, seeded
|
|
379
|
+
* with a copy of the template's compiled context (the SubagentModule
|
|
380
|
+
* wholesale-copy pattern), registered in the event loop like any agent —
|
|
381
|
+
* but never primary.
|
|
382
|
+
*/
|
|
383
|
+
private createConversationAgent;
|
|
384
|
+
/** Persist the router's generation counters (see hydration in create()). */
|
|
385
|
+
private persistConversationRouterState;
|
|
386
|
+
/**
|
|
387
|
+
* Remove a closed conversation fork from the framework: its closure turn
|
|
388
|
+
* has finished, so the home mapping has served its purpose and keeping the
|
|
389
|
+
* agent registered would just grow every agent scan and broadcast filter
|
|
390
|
+
* forever. The fork's context stays in Chronicle for investigation.
|
|
391
|
+
*/
|
|
392
|
+
private disposeConversationAgent;
|
|
393
|
+
/**
|
|
394
|
+
* Scope MCPL context injections for a conversation-bound agent: drop
|
|
395
|
+
* injections that are another open channel's context (injection namespace
|
|
396
|
+
* = channelId by adapter convention), keep its own channel and anything
|
|
397
|
+
* that isn't channel context.
|
|
398
|
+
*/
|
|
399
|
+
private scopeInjectionsForAgent;
|
|
400
|
+
/**
|
|
401
|
+
* Idle-TTL sweep for conversation bindings (runs at most once per minute
|
|
402
|
+
* from the event loop). Expired forks get a final system-initiated closure
|
|
403
|
+
* turn — publish scoping still works because the agent's home channel
|
|
404
|
+
* mapping is permanent — and the channel unbinds immediately, so the next
|
|
405
|
+
* qualifying message spawns a fresh fork from the current template.
|
|
406
|
+
*/
|
|
407
|
+
private sweepExpiredConversations;
|
|
251
408
|
/**
|
|
252
409
|
* Convert an MCPL push event to a context message.
|
|
253
410
|
*/
|
|
254
411
|
private handleMcplPushEvent;
|
|
412
|
+
/**
|
|
413
|
+
* Derive the MCPL composite channel id (the outbound routing locus) for a
|
|
414
|
+
* push event from its server-defined `origin`, if it carries one.
|
|
415
|
+
*
|
|
416
|
+
* Discord DMs are the motivating case: discord-mcpl forwards them via
|
|
417
|
+
* push/event (the DM channel is closed), so they never pass through
|
|
418
|
+
* channels/incoming and their channel is never registered — leaving the
|
|
419
|
+
* agent's reply with nowhere to route (item-3 redux, DM sub-case). Prefers an
|
|
420
|
+
* explicit `origin.mcplChannelId` (a surface declaring its own composite id —
|
|
421
|
+
* the surface-agnostic contract); otherwise reconstructs the Discord form
|
|
422
|
+
* `discord:{guildId|dm}:{channelId}` from origin fields, matching
|
|
423
|
+
* discord-mcpl's `mcplChannelId()` / `parseMcplChannelId()` convention so the
|
|
424
|
+
* fix works even against a discord-mcpl build that predates `mcplChannelId`.
|
|
425
|
+
* Returns undefined for push events with no channel provenance (heartbeats,
|
|
426
|
+
* timers), which correctly keep the global fallback.
|
|
427
|
+
*/
|
|
428
|
+
private derivePushEventChannel;
|
|
255
429
|
private processInferenceRequests;
|
|
256
430
|
private startAgentStream;
|
|
257
431
|
private driveStream;
|
|
@@ -263,6 +437,14 @@ export declare class AgentFramework {
|
|
|
263
437
|
executeToolCall(call: ToolCall): Promise<ToolResult>;
|
|
264
438
|
private executeMcplToolCall;
|
|
265
439
|
private toMembraneToolResult;
|
|
440
|
+
/**
|
|
441
|
+
* If `data` is an MCP tool-result content array carrying at least one image,
|
|
442
|
+
* convert to Membrane's native ToolResultContentBlock[]. Returns null when
|
|
443
|
+
* the array is text-only (let JSON path handle it; saves a code path).
|
|
444
|
+
* `maxChars`, when provided, caps each accompanying text block so an image
|
|
445
|
+
* inlined alongside an enormous text payload can't blow the context.
|
|
446
|
+
*/
|
|
447
|
+
private tryNativeToolResultContent;
|
|
266
448
|
private getMaxToolResultChars;
|
|
267
449
|
private logInference;
|
|
268
450
|
private logProcessEvent;
|
|
@@ -280,6 +462,22 @@ export declare class AgentFramework {
|
|
|
280
462
|
private queryMessages;
|
|
281
463
|
private createFrameworkState;
|
|
282
464
|
private emitTrace;
|
|
465
|
+
/**
|
|
466
|
+
* Handle a fully-exhausted inference (the agent could not produce a response
|
|
467
|
+
* this turn, after retries). Severity here is high — the agent can't think
|
|
468
|
+
* at all — yet historically the only durable record was a buried field in
|
|
469
|
+
* llm-calls.jsonl. This surfaces it three ways:
|
|
470
|
+
*
|
|
471
|
+
* 1. stderr — always, with the underlying API reason. The place an
|
|
472
|
+
* operator greps; previously empty in headless mode.
|
|
473
|
+
* 2. chronicle marker — a `[inference-failed]` message so the agent itself
|
|
474
|
+
* learns its turn failed and why (otherwise it's an experiential blank,
|
|
475
|
+
* indistinguishable from "not addressed"). addMessage does NOT request
|
|
476
|
+
* inference, so this never causes a retry/wake loop.
|
|
477
|
+
* 3. escalation — after N consecutive failures the agent is hard-down;
|
|
478
|
+
* log that loudly (a repeated identical failure is the textbook signal).
|
|
479
|
+
*/
|
|
480
|
+
private noteInferenceExhausted;
|
|
283
481
|
/**
|
|
284
482
|
* Initialize all MCPL subsystems and connect configured servers.
|
|
285
483
|
* Fail-open: individual server connection failures don't prevent framework startup.
|
|
@@ -316,6 +514,23 @@ export declare class AgentFramework {
|
|
|
316
514
|
* Dispatch a synthesized channel tool call.
|
|
317
515
|
*/
|
|
318
516
|
private dispatchChannelToolCall;
|
|
517
|
+
/**
|
|
518
|
+
* Handle the synthesized `wake_add_rule` / `wake_remove_rule` tools: mutate
|
|
519
|
+
* the hot-reloaded gate.json at runtime. Validation lives in the EventGate
|
|
520
|
+
* (same path as gate.json load), so an invalid rule is surfaced as a tool
|
|
521
|
+
* error and nothing is written.
|
|
522
|
+
*/
|
|
523
|
+
private dispatchWakeRuleToolCall;
|
|
524
|
+
/**
|
|
525
|
+
* Handle the synthesized `sleep` / `wake` tools. `sleep` arms the gate's
|
|
526
|
+
* suppression window, optionally announces in the sticky channel, and ends
|
|
527
|
+
* the turn (the agent goes idle immediately). `wake` clears sleep.
|
|
528
|
+
*/
|
|
529
|
+
private dispatchSleepToolCall;
|
|
530
|
+
/** Aggregate the event-tag vocabulary: reserved chat:* core + each connected
|
|
531
|
+
* server's declared tag ontology + gate.js status. */
|
|
532
|
+
private buildEventTagsResult;
|
|
533
|
+
private dispatchEventTagsToolCall;
|
|
319
534
|
private dispatchGateToolCall;
|
|
320
535
|
private buildBeforeInferenceParams;
|
|
321
536
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"framework.d.ts","sourceRoot":"","sources":["../../src/framework.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,KAAK,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"framework.d.ts","sourceRoot":"","sources":["../../src/framework.ts"],"names":[],"mappings":"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"}
|