agentfootprint 2.3.0 → 2.5.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/README.md +293 -247
- package/dist/adapters/llm/AnthropicProvider.js +2 -2
- package/dist/adapters/llm/AnthropicProvider.js.map +1 -1
- package/dist/adapters/llm/BedrockProvider.js +2 -2
- package/dist/adapters/llm/BedrockProvider.js.map +1 -1
- package/dist/adapters/llm/BrowserAnthropicProvider.js +96 -28
- package/dist/adapters/llm/BrowserAnthropicProvider.js.map +1 -1
- package/dist/adapters/llm/OpenAIProvider.js +2 -2
- package/dist/adapters/llm/OpenAIProvider.js.map +1 -1
- package/dist/adapters/memory/agentcore.js +9 -3
- package/dist/adapters/memory/agentcore.js.map +1 -1
- package/dist/adapters/memory/redis.js +9 -3
- package/dist/adapters/memory/redis.js.map +1 -1
- package/dist/core/Agent.js +493 -79
- package/dist/core/Agent.js.map +1 -1
- package/dist/core/flowchartAsTool.js +188 -0
- package/dist/core/flowchartAsTool.js.map +1 -0
- package/dist/core/outputSchema.js +119 -0
- package/dist/core/outputSchema.js.map +1 -0
- package/dist/core/slots/buildSystemPromptSlot.js +8 -0
- package/dist/core/slots/buildSystemPromptSlot.js.map +1 -1
- package/dist/core/slots/buildToolsSlot.js +56 -5
- package/dist/core/slots/buildToolsSlot.js.map +1 -1
- package/dist/esm/adapters/llm/AnthropicProvider.js +2 -2
- package/dist/esm/adapters/llm/AnthropicProvider.js.map +1 -1
- package/dist/esm/adapters/llm/BedrockProvider.js +2 -2
- package/dist/esm/adapters/llm/BedrockProvider.js.map +1 -1
- package/dist/esm/adapters/llm/BrowserAnthropicProvider.js +96 -28
- package/dist/esm/adapters/llm/BrowserAnthropicProvider.js.map +1 -1
- package/dist/esm/adapters/llm/OpenAIProvider.js +2 -2
- package/dist/esm/adapters/llm/OpenAIProvider.js.map +1 -1
- package/dist/esm/adapters/memory/agentcore.js +9 -3
- package/dist/esm/adapters/memory/agentcore.js.map +1 -1
- package/dist/esm/adapters/memory/redis.js +9 -3
- package/dist/esm/adapters/memory/redis.js.map +1 -1
- package/dist/esm/core/Agent.js +492 -78
- package/dist/esm/core/Agent.js.map +1 -1
- package/dist/esm/core/flowchartAsTool.js +184 -0
- package/dist/esm/core/flowchartAsTool.js.map +1 -0
- package/dist/esm/core/outputSchema.js +113 -0
- package/dist/esm/core/outputSchema.js.map +1 -0
- package/dist/esm/core/slots/buildSystemPromptSlot.js +8 -0
- package/dist/esm/core/slots/buildSystemPromptSlot.js.map +1 -1
- package/dist/esm/core/slots/buildToolsSlot.js +56 -5
- package/dist/esm/core/slots/buildToolsSlot.js.map +1 -1
- package/dist/esm/index.js +34 -5
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib/injection-engine/SkillRegistry.js +181 -0
- package/dist/esm/lib/injection-engine/SkillRegistry.js.map +1 -0
- package/dist/esm/lib/injection-engine/factories/defineSkill.js +35 -0
- package/dist/esm/lib/injection-engine/factories/defineSkill.js.map +1 -1
- package/dist/esm/lib/injection-engine/index.js +9 -1
- package/dist/esm/lib/injection-engine/index.js.map +1 -1
- package/dist/esm/lib/injection-engine/skillTools.js +125 -0
- package/dist/esm/lib/injection-engine/skillTools.js.map +1 -0
- package/dist/esm/lib/injection-engine/types.js +8 -0
- package/dist/esm/lib/injection-engine/types.js.map +1 -1
- package/dist/esm/lib/lazyRequire.js +33 -0
- package/dist/esm/lib/lazyRequire.js.map +1 -0
- package/dist/esm/lib/mcp/mcpClient.js +4 -6
- package/dist/esm/lib/mcp/mcpClient.js.map +1 -1
- package/dist/esm/llm-providers.js +31 -0
- package/dist/esm/llm-providers.js.map +1 -0
- package/dist/esm/locales/index.js +144 -0
- package/dist/esm/locales/index.js.map +1 -0
- package/dist/esm/memory-providers.js +44 -0
- package/dist/esm/memory-providers.js.map +1 -0
- package/dist/esm/providers.js +11 -0
- package/dist/esm/providers.js.map +1 -1
- package/dist/esm/recorders/core/contextEngineering.js +155 -0
- package/dist/esm/recorders/core/contextEngineering.js.map +1 -0
- package/dist/esm/recorders/observability/commentary/commentaryTemplates.js +6 -1
- package/dist/esm/recorders/observability/commentary/commentaryTemplates.js.map +1 -1
- package/dist/esm/security/PermissionPolicy.js +135 -0
- package/dist/esm/security/PermissionPolicy.js.map +1 -0
- package/dist/esm/security/index.js +38 -0
- package/dist/esm/security/index.js.map +1 -0
- package/dist/esm/tool-providers/gatedTools.js +52 -0
- package/dist/esm/tool-providers/gatedTools.js.map +1 -0
- package/dist/esm/tool-providers/index.js +43 -0
- package/dist/esm/tool-providers/index.js.map +1 -0
- package/dist/esm/tool-providers/skillScopedTools.js +63 -0
- package/dist/esm/tool-providers/skillScopedTools.js.map +1 -0
- package/dist/esm/tool-providers/staticTools.js +33 -0
- package/dist/esm/tool-providers/staticTools.js.map +1 -0
- package/dist/esm/tool-providers/types.js +53 -0
- package/dist/esm/tool-providers/types.js.map +1 -0
- package/dist/index.js +57 -12
- package/dist/index.js.map +1 -1
- package/dist/lib/injection-engine/SkillRegistry.js +185 -0
- package/dist/lib/injection-engine/SkillRegistry.js.map +1 -0
- package/dist/lib/injection-engine/factories/defineSkill.js +37 -1
- package/dist/lib/injection-engine/factories/defineSkill.js.map +1 -1
- package/dist/lib/injection-engine/index.js +14 -1
- package/dist/lib/injection-engine/index.js.map +1 -1
- package/dist/lib/injection-engine/skillTools.js +130 -0
- package/dist/lib/injection-engine/skillTools.js.map +1 -0
- package/dist/lib/injection-engine/types.js +8 -0
- package/dist/lib/injection-engine/types.js.map +1 -1
- package/dist/lib/lazyRequire.js +37 -0
- package/dist/lib/lazyRequire.js.map +1 -0
- package/dist/lib/mcp/mcpClient.js +4 -6
- package/dist/lib/mcp/mcpClient.js.map +1 -1
- package/dist/llm-providers.js +47 -0
- package/dist/llm-providers.js.map +1 -0
- package/dist/locales/index.js +149 -0
- package/dist/locales/index.js.map +1 -0
- package/dist/memory-providers.js +49 -0
- package/dist/memory-providers.js.map +1 -0
- package/dist/providers.js +11 -0
- package/dist/providers.js.map +1 -1
- package/dist/recorders/core/contextEngineering.js +161 -0
- package/dist/recorders/core/contextEngineering.js.map +1 -0
- package/dist/recorders/observability/commentary/commentaryTemplates.js +6 -1
- package/dist/recorders/observability/commentary/commentaryTemplates.js.map +1 -1
- package/dist/security/PermissionPolicy.js +139 -0
- package/dist/security/PermissionPolicy.js.map +1 -0
- package/dist/security/index.js +42 -0
- package/dist/security/index.js.map +1 -0
- package/dist/tool-providers/gatedTools.js +56 -0
- package/dist/tool-providers/gatedTools.js.map +1 -0
- package/dist/tool-providers/index.js +51 -0
- package/dist/tool-providers/index.js.map +1 -0
- package/dist/tool-providers/skillScopedTools.js +67 -0
- package/dist/tool-providers/skillScopedTools.js.map +1 -0
- package/dist/tool-providers/staticTools.js +37 -0
- package/dist/tool-providers/staticTools.js.map +1 -0
- package/dist/tool-providers/types.js +54 -0
- package/dist/tool-providers/types.js.map +1 -0
- package/dist/types/adapters/llm/AnthropicProvider.d.ts.map +1 -1
- package/dist/types/adapters/llm/BedrockProvider.d.ts.map +1 -1
- package/dist/types/adapters/llm/BrowserAnthropicProvider.d.ts.map +1 -1
- package/dist/types/adapters/llm/OpenAIProvider.d.ts.map +1 -1
- package/dist/types/adapters/memory/agentcore.d.ts +7 -1
- package/dist/types/adapters/memory/agentcore.d.ts.map +1 -1
- package/dist/types/adapters/memory/redis.d.ts +7 -1
- package/dist/types/adapters/memory/redis.d.ts.map +1 -1
- package/dist/types/core/Agent.d.ts +216 -2
- package/dist/types/core/Agent.d.ts.map +1 -1
- package/dist/types/core/flowchartAsTool.d.ts +161 -0
- package/dist/types/core/flowchartAsTool.d.ts.map +1 -0
- package/dist/types/core/outputSchema.d.ts +128 -0
- package/dist/types/core/outputSchema.d.ts.map +1 -0
- package/dist/types/core/slots/buildSystemPromptSlot.d.ts.map +1 -1
- package/dist/types/core/slots/buildToolsSlot.d.ts +10 -0
- package/dist/types/core/slots/buildToolsSlot.d.ts.map +1 -1
- package/dist/types/index.d.ts +8 -4
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/lib/injection-engine/SkillRegistry.d.ts +148 -0
- package/dist/types/lib/injection-engine/SkillRegistry.d.ts.map +1 -0
- package/dist/types/lib/injection-engine/factories/defineSkill.d.ts +99 -0
- package/dist/types/lib/injection-engine/factories/defineSkill.d.ts.map +1 -1
- package/dist/types/lib/injection-engine/index.d.ts +5 -2
- package/dist/types/lib/injection-engine/index.d.ts.map +1 -1
- package/dist/types/lib/injection-engine/skillTools.d.ts +73 -0
- package/dist/types/lib/injection-engine/skillTools.d.ts.map +1 -0
- package/dist/types/lib/injection-engine/types.d.ts +28 -0
- package/dist/types/lib/injection-engine/types.d.ts.map +1 -1
- package/dist/types/lib/lazyRequire.d.ts +30 -0
- package/dist/types/lib/lazyRequire.d.ts.map +1 -0
- package/dist/types/lib/mcp/mcpClient.d.ts.map +1 -1
- package/dist/types/llm-providers.d.ts +31 -0
- package/dist/types/llm-providers.d.ts.map +1 -0
- package/dist/types/locales/index.d.ts +133 -0
- package/dist/types/locales/index.d.ts.map +1 -0
- package/dist/types/memory-providers.d.ts +41 -0
- package/dist/types/memory-providers.d.ts.map +1 -0
- package/dist/types/providers.d.ts +11 -0
- package/dist/types/providers.d.ts.map +1 -1
- package/dist/types/recorders/core/contextEngineering.d.ts +137 -0
- package/dist/types/recorders/core/contextEngineering.d.ts.map +1 -0
- package/dist/types/recorders/observability/commentary/commentaryTemplates.d.ts.map +1 -1
- package/dist/types/security/PermissionPolicy.d.ts +125 -0
- package/dist/types/security/PermissionPolicy.d.ts.map +1 -0
- package/dist/types/security/index.d.ts +40 -0
- package/dist/types/security/index.d.ts.map +1 -0
- package/dist/types/tool-providers/gatedTools.d.ts +37 -0
- package/dist/types/tool-providers/gatedTools.d.ts.map +1 -0
- package/dist/types/tool-providers/index.d.ts +42 -0
- package/dist/types/tool-providers/index.d.ts.map +1 -0
- package/dist/types/tool-providers/skillScopedTools.d.ts +46 -0
- package/dist/types/tool-providers/skillScopedTools.d.ts.map +1 -0
- package/dist/types/tool-providers/staticTools.d.ts +22 -0
- package/dist/types/tool-providers/staticTools.d.ts.map +1 -0
- package/dist/types/tool-providers/types.d.ts +103 -0
- package/dist/types/tool-providers/types.d.ts.map +1 -0
- package/package.json +62 -9
- package/README.proposed.md +0 -258
- package/dist/instructions.js +0 -21
- package/dist/instructions.js.map +0 -1
- package/dist/lib/instructions/defineInstruction.js +0 -35
- package/dist/lib/instructions/defineInstruction.js.map +0 -1
- package/dist/lib/instructions/evaluator.js +0 -38
- package/dist/lib/instructions/evaluator.js.map +0 -1
- package/dist/lib/instructions/index.js +0 -48
- package/dist/lib/instructions/index.js.map +0 -1
- package/dist/lib/instructions/types.js +0 -22
- package/dist/lib/instructions/types.js.map +0 -1
- package/dist/memory/conversationHelpers.js +0 -39
- package/dist/memory/conversationHelpers.js.map +0 -1
- package/dist/types/instructions.d.ts +0 -5
- package/dist/types/instructions.d.ts.map +0 -1
- package/dist/types/lib/instructions/defineInstruction.d.ts +0 -22
- package/dist/types/lib/instructions/defineInstruction.d.ts.map +0 -1
- package/dist/types/lib/instructions/evaluator.d.ts +0 -11
- package/dist/types/lib/instructions/evaluator.d.ts.map +0 -1
- package/dist/types/lib/instructions/index.d.ts +0 -44
- package/dist/types/lib/instructions/index.d.ts.map +0 -1
- package/dist/types/lib/instructions/types.d.ts +0 -100
- package/dist/types/lib/instructions/types.d.ts.map +0 -1
- package/dist/types/memory/conversationHelpers.d.ts +0 -19
- package/dist/types/memory/conversationHelpers.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../../src/core/Agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../../src/core/Agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* flowchartAsTool — wrap a footprintjs `FlowChart` as an Agent `Tool`.
|
|
3
|
+
*
|
|
4
|
+
* The Block A7 piece. footprintjs is the substrate; agentfootprint is
|
|
5
|
+
* the agent layer above it. When a multi-step procedure is already
|
|
6
|
+
* expressed as a footprintjs flowchart (intake validation, refund
|
|
7
|
+
* processing, claim adjudication — anything with branches, loops, or
|
|
8
|
+
* decision evidence), let the LLM call it as ONE tool. The flowchart's
|
|
9
|
+
* step-by-step recorders, narrative, and pause/resume continue to work
|
|
10
|
+
* exactly as they do outside the agent.
|
|
11
|
+
*
|
|
12
|
+
* Why this matters:
|
|
13
|
+
*
|
|
14
|
+
* 1. **Composition over re-write.** A team with a non-trivial
|
|
15
|
+
* footprintjs flowchart shouldn't have to flatten it into N
|
|
16
|
+
* separate tools to expose it to an agent. Wrap it once.
|
|
17
|
+
*
|
|
18
|
+
* 2. **Observability stays free.** Every flowchart stage emits typed
|
|
19
|
+
* events. The Agent's recorders see the wrapping tool call;
|
|
20
|
+
* footprintjs's recorders see everything inside. Two layers,
|
|
21
|
+
* one observation tree.
|
|
22
|
+
*
|
|
23
|
+
* 3. **Pause/resume composes.** A pausable handler inside the
|
|
24
|
+
* flowchart pauses the inner executor; the outer agent treats
|
|
25
|
+
* the pause as an unfinished tool call. Resume the agent and the
|
|
26
|
+
* inner flowchart resumes from its checkpoint. (Today: surfaces
|
|
27
|
+
* the pause as a thrown error with the checkpoint attached;
|
|
28
|
+
* polished agent-side pause integration in v2.6.)
|
|
29
|
+
*
|
|
30
|
+
* Pattern: Adapter (GoF) over `FlowChartExecutor.run()`. Translates
|
|
31
|
+
* `Tool.execute(args, ctx)` into `executor.run({ input: args,
|
|
32
|
+
* env: { signal: ctx.signal } })` and the result back to a
|
|
33
|
+
* string via `resultMapper` (or a default JSON stringify).
|
|
34
|
+
*
|
|
35
|
+
* Role: Layer-6 (Agent) → Layer-1 (footprintjs) bridge. Pure
|
|
36
|
+
* interop; no new abstraction in either layer.
|
|
37
|
+
*
|
|
38
|
+
* @example Single-stage flowchart as a tool
|
|
39
|
+
* import { flowChart } from 'footprintjs';
|
|
40
|
+
* import { flowchartAsTool } from 'agentfootprint';
|
|
41
|
+
*
|
|
42
|
+
* const refundChart = flowChart<{ orderId: string; reason: string }>(
|
|
43
|
+
* 'RefundFlow',
|
|
44
|
+
* async (scope) => {
|
|
45
|
+
* const refundId = await refundService.process(scope.$getArgs().orderId);
|
|
46
|
+
* scope.refundId = refundId;
|
|
47
|
+
* },
|
|
48
|
+
* 'refund-flow',
|
|
49
|
+
* ).build();
|
|
50
|
+
*
|
|
51
|
+
* const refundTool = flowchartAsTool({
|
|
52
|
+
* name: 'process_refund',
|
|
53
|
+
* description: 'Process a refund for an order. Returns refundId on success.',
|
|
54
|
+
* inputSchema: {
|
|
55
|
+
* type: 'object',
|
|
56
|
+
* properties: {
|
|
57
|
+
* orderId: { type: 'string' },
|
|
58
|
+
* reason: { type: 'string' },
|
|
59
|
+
* },
|
|
60
|
+
* required: ['orderId', 'reason'],
|
|
61
|
+
* },
|
|
62
|
+
* flowchart: refundChart,
|
|
63
|
+
* resultMapper: (snapshot) =>
|
|
64
|
+
* JSON.stringify({ refundId: snapshot.values.refundId, status: 'processed' }),
|
|
65
|
+
* });
|
|
66
|
+
*
|
|
67
|
+
* agent.tool(refundTool);
|
|
68
|
+
*
|
|
69
|
+
* @example Multi-stage flowchart with decide() + recorders
|
|
70
|
+
* const triageChart = flowChart<TriageState>('Triage', validateInput, 'validate')
|
|
71
|
+
* .addDeciderFunction('Classify', classifyDecider, 'classify')
|
|
72
|
+
* .addFunctionBranch('high', 'Escalate', escalate)
|
|
73
|
+
* .addFunctionBranch('low', 'Auto-handle', autoHandle)
|
|
74
|
+
* .end()
|
|
75
|
+
* .build();
|
|
76
|
+
*
|
|
77
|
+
* const triageTool = flowchartAsTool({
|
|
78
|
+
* name: 'triage_request',
|
|
79
|
+
* description: 'Triage an incoming request and return the decision.',
|
|
80
|
+
* inputSchema: { ... },
|
|
81
|
+
* flowchart: triageChart,
|
|
82
|
+
* });
|
|
83
|
+
*/
|
|
84
|
+
import { FlowChartExecutor } from 'footprintjs';
|
|
85
|
+
import { defineTool } from './tools.js';
|
|
86
|
+
/**
|
|
87
|
+
* Wrap a footprintjs `FlowChart` as a `Tool` the Agent's LLM can call.
|
|
88
|
+
*
|
|
89
|
+
* On execute:
|
|
90
|
+
* 1. Constructs a fresh `FlowChartExecutor(flowchart)` per call (so
|
|
91
|
+
* consecutive invocations don't share state).
|
|
92
|
+
* 2. Calls `executor.run({ input: args, env: { signal } })` with the
|
|
93
|
+
* LLM-supplied args + the agent's abort signal.
|
|
94
|
+
* 3. If the run paused, throws an Error with the checkpoint attached
|
|
95
|
+
* (`error.checkpoint`) so the agent loop can surface it. Polished
|
|
96
|
+
* agent-side pause integration is v2.6 work.
|
|
97
|
+
* 4. If the run completed, calls `resultMapper(snapshot)` (or the
|
|
98
|
+
* default JSON.stringify) and returns the string.
|
|
99
|
+
* 5. If the run threw, the error propagates — the Agent's
|
|
100
|
+
* tool-call handler converts it to a synthetic error string for
|
|
101
|
+
* the LLM to see + recover from.
|
|
102
|
+
*/
|
|
103
|
+
export function flowchartAsTool(opts) {
|
|
104
|
+
if (!opts.name || opts.name.trim().length === 0) {
|
|
105
|
+
throw new Error('flowchartAsTool: `name` is required and must be non-empty.');
|
|
106
|
+
}
|
|
107
|
+
if (!opts.description || opts.description.length === 0) {
|
|
108
|
+
throw new Error(`flowchartAsTool(${opts.name}): \`description\` is required.`);
|
|
109
|
+
}
|
|
110
|
+
if (!opts.flowchart) {
|
|
111
|
+
throw new Error(`flowchartAsTool(${opts.name}): \`flowchart\` is required.`);
|
|
112
|
+
}
|
|
113
|
+
const mapper = opts.resultMapper ?? ((snapshot) => JSON.stringify(snapshot.values));
|
|
114
|
+
return defineTool({
|
|
115
|
+
name: opts.name,
|
|
116
|
+
description: opts.description,
|
|
117
|
+
inputSchema: opts.inputSchema,
|
|
118
|
+
execute: async (args, ctx) => {
|
|
119
|
+
const executor = new FlowChartExecutor(opts.flowchart);
|
|
120
|
+
const env = {};
|
|
121
|
+
if (ctx.signal)
|
|
122
|
+
env.signal = ctx.signal;
|
|
123
|
+
await executor.run({ input: args, env });
|
|
124
|
+
if (executor.isPaused()) {
|
|
125
|
+
const err = new Error(`flowchartAsTool(${opts.name}): inner flowchart paused. ` +
|
|
126
|
+
`Agent-side pause integration lands in v2.6. The checkpoint is on err.checkpoint.`);
|
|
127
|
+
err.checkpoint = executor.getCheckpoint();
|
|
128
|
+
throw err;
|
|
129
|
+
}
|
|
130
|
+
const raw = executor.getSnapshot();
|
|
131
|
+
// footprintjs's RuntimeSnapshot exposes `sharedState` for the
|
|
132
|
+
// merged scope. Older betas used `values`; we accept either to
|
|
133
|
+
// remain robust against minor drift.
|
|
134
|
+
const sharedState = raw.sharedState ??
|
|
135
|
+
raw.values ??
|
|
136
|
+
{};
|
|
137
|
+
const snapshot = {
|
|
138
|
+
values: sharedState,
|
|
139
|
+
narrative: extractNarrative(raw, executor),
|
|
140
|
+
};
|
|
141
|
+
try {
|
|
142
|
+
return mapper(snapshot);
|
|
143
|
+
}
|
|
144
|
+
catch (e) {
|
|
145
|
+
// Preserve the consumer's error string but mark the envelope
|
|
146
|
+
// so the LLM can see it was a result-mapper error and not the
|
|
147
|
+
// flowchart itself.
|
|
148
|
+
const reason = e instanceof Error ? e.message : String(e);
|
|
149
|
+
return `[mapper-error: ${reason}]`;
|
|
150
|
+
}
|
|
151
|
+
},
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Pull the narrative entries off the snapshot or executor in a
|
|
156
|
+
* defensive way — footprintjs's snapshot shape is RuntimeSnapshot but
|
|
157
|
+
* the public field names vary across minor versions. We probe known
|
|
158
|
+
* shapes and fall back to an empty array.
|
|
159
|
+
*
|
|
160
|
+
* The executor exposes `getNarrativeEntries()` which is the canonical
|
|
161
|
+
* source today; we prefer that, then fall back to snapshot fields.
|
|
162
|
+
*/
|
|
163
|
+
function extractNarrative(raw, executor) {
|
|
164
|
+
if (executor && typeof executor.getNarrativeEntries === 'function') {
|
|
165
|
+
try {
|
|
166
|
+
const entries = executor.getNarrativeEntries();
|
|
167
|
+
if (Array.isArray(entries)) {
|
|
168
|
+
return entries;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
catch {
|
|
172
|
+
// fall through to snapshot probe
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
if (!raw || typeof raw !== 'object')
|
|
176
|
+
return [];
|
|
177
|
+
const candidate = raw.narrative ??
|
|
178
|
+
raw.narrativeEntries;
|
|
179
|
+
if (Array.isArray(candidate)) {
|
|
180
|
+
return candidate;
|
|
181
|
+
}
|
|
182
|
+
return [];
|
|
183
|
+
}
|
|
184
|
+
//# sourceMappingURL=flowchartAsTool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flowchartAsTool.js","sourceRoot":"","sources":["../../../src/core/flowchartAsTool.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* outputSchema — declarative terminal contract for an Agent's final answer.
|
|
3
|
+
*
|
|
4
|
+
* The Block A6 piece. Lets a consumer say:
|
|
5
|
+
*
|
|
6
|
+
* "Whatever this agent says at the end of a run, it MUST be JSON
|
|
7
|
+
* matching this Zod (or Zod-like) schema. Auto-instruct the LLM,
|
|
8
|
+
* parse + validate the final answer for me."
|
|
9
|
+
*
|
|
10
|
+
* Why a typed contract matters: agentic code that calls an LLM and
|
|
11
|
+
* then JSON.parses the string answer is brittle. The schema serves
|
|
12
|
+
* three jobs at once:
|
|
13
|
+
*
|
|
14
|
+
* 1. **Instruction**: a system-prompt sentence telling the LLM the
|
|
15
|
+
* output shape (auto-generated from `schema.description` /
|
|
16
|
+
* JSON-schema introspection where available, or from a consumer-
|
|
17
|
+
* supplied `instruction` override).
|
|
18
|
+
*
|
|
19
|
+
* 2. **Validation**: a `parser.parse(rawString)` step on the run's
|
|
20
|
+
* final answer, throwing `OutputSchemaError` on parse / shape
|
|
21
|
+
* failure rather than returning malformed data.
|
|
22
|
+
*
|
|
23
|
+
* 3. **Type narrowing**: `agent.runTyped({...})` returns the inferred
|
|
24
|
+
* shape `T` instead of `string`, so callers stop reaching for
|
|
25
|
+
* `as MyType` casts.
|
|
26
|
+
*
|
|
27
|
+
* Pattern: Strategy (GoF) over the parser interface; structural
|
|
28
|
+
* duck-typing (Zod / Valibot / ArkType / hand-written —
|
|
29
|
+
* anything with a `parse(unknown): T` method satisfies it).
|
|
30
|
+
*
|
|
31
|
+
* Role: Layer-6 (Agent) — terminal contract on the run output.
|
|
32
|
+
* NOT a context-engineering Injection per se, but composes
|
|
33
|
+
* with the InjectionEngine (auto-injects an Instruction).
|
|
34
|
+
*
|
|
35
|
+
* @example zod schema
|
|
36
|
+
* import { z } from 'zod';
|
|
37
|
+
* const Output = z.object({ status: z.enum(['ok', 'err']), items: z.array(z.string()) });
|
|
38
|
+
*
|
|
39
|
+
* const agent = Agent.create({ ... })
|
|
40
|
+
* .system('You answer support tickets.')
|
|
41
|
+
* .outputSchema(Output)
|
|
42
|
+
* .build();
|
|
43
|
+
*
|
|
44
|
+
* const typed = await agent.runTyped({ message: 'list pending tickets' });
|
|
45
|
+
* typed.status; // narrowed to 'ok' | 'err'
|
|
46
|
+
*
|
|
47
|
+
* @example valibot / arktype / hand-written parser
|
|
48
|
+
* const Output = { parse(v: unknown): MyType { ... } };
|
|
49
|
+
* const agent = Agent.create({...}).outputSchema(Output, { instruction: '...' }).build();
|
|
50
|
+
*/
|
|
51
|
+
/**
|
|
52
|
+
* Thrown by `agent.parseOutput(...)` / `agent.runTyped(...)` when the
|
|
53
|
+
* agent's final answer fails JSON parsing OR schema validation.
|
|
54
|
+
*
|
|
55
|
+
* `cause` carries the underlying parse error (Zod's ZodError, etc.).
|
|
56
|
+
* `rawOutput` carries the agent's untyped string output so callers
|
|
57
|
+
* can log / persist the failed response for triage.
|
|
58
|
+
*/
|
|
59
|
+
export class OutputSchemaError extends Error {
|
|
60
|
+
rawOutput;
|
|
61
|
+
stage;
|
|
62
|
+
cause;
|
|
63
|
+
constructor(message, opts) {
|
|
64
|
+
super(message);
|
|
65
|
+
this.name = 'OutputSchemaError';
|
|
66
|
+
this.rawOutput = opts.rawOutput;
|
|
67
|
+
this.stage = opts.stage;
|
|
68
|
+
if (opts.cause !== undefined)
|
|
69
|
+
this.cause = opts.cause;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Default instruction template — used when `opts.instruction` is not
|
|
74
|
+
* provided. Concatenates the parser's `.description` (if present) so
|
|
75
|
+
* Zod schemas authored with `.describe('...')` propagate naturally.
|
|
76
|
+
*/
|
|
77
|
+
export function buildDefaultInstruction(parser) {
|
|
78
|
+
const tail = parser.description ? ` The output shape: ${parser.description}.` : '';
|
|
79
|
+
return ('Respond ONLY with valid JSON matching the output schema. ' +
|
|
80
|
+
'Do NOT include prose, markdown fences, or explanatory text.' +
|
|
81
|
+
tail);
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Parse + validate a raw string answer against a parser. Used by
|
|
85
|
+
* `agent.parseOutput()` / `agent.runTyped()`. Centralized here so
|
|
86
|
+
* both call sites share identical error-mapping behavior.
|
|
87
|
+
*
|
|
88
|
+
* Two-stage error reporting:
|
|
89
|
+
* - JSON parse failure → `stage: 'json-parse'` (LLM emitted prose
|
|
90
|
+
* or malformed JSON)
|
|
91
|
+
* - Schema validation failure → `stage: 'schema-validate'` (JSON
|
|
92
|
+
* was valid but didn't match the contracted shape)
|
|
93
|
+
*/
|
|
94
|
+
export function applyOutputSchema(raw, parser) {
|
|
95
|
+
let parsed;
|
|
96
|
+
try {
|
|
97
|
+
parsed = JSON.parse(raw);
|
|
98
|
+
}
|
|
99
|
+
catch (cause) {
|
|
100
|
+
throw new OutputSchemaError('Agent final answer is not valid JSON. The LLM emitted prose or malformed JSON.', { rawOutput: raw, stage: 'json-parse', cause });
|
|
101
|
+
}
|
|
102
|
+
try {
|
|
103
|
+
return parser.parse(parsed);
|
|
104
|
+
}
|
|
105
|
+
catch (cause) {
|
|
106
|
+
throw new OutputSchemaError('Agent final answer parsed as JSON but failed schema validation.', {
|
|
107
|
+
rawOutput: raw,
|
|
108
|
+
stage: 'schema-validate',
|
|
109
|
+
cause,
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
//# sourceMappingURL=outputSchema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"outputSchema.js","sourceRoot":"","sources":["../../../src/core/outputSchema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AA6CH;;;;;;;GAOG;AACH,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IACjC,SAAS,CAAS;IAClB,KAAK,CAAmC;IAC/B,KAAK,CAAW;IAElC,YACE,OAAe,EACf,IAAqF;QAErF,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;QAChC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAChC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;YAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IACxD,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAAmC;IACzE,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,sBAAsB,MAAM,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACnF,OAAO,CACL,2DAA2D;QAC3D,6DAA6D;QAC7D,IAAI,CACL,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAAI,GAAW,EAAE,MAA6B;IAC7E,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,iBAAiB,CACzB,gFAAgF,EAChF,EAAE,SAAS,EAAE,GAAG,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAC/C,CAAC;IACJ,CAAC;IACD,IAAI,CAAC;QACH,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,iBAAiB,CAAC,iEAAiE,EAAE;YAC7F,SAAS,EAAE,GAAG;YACd,KAAK,EAAE,iBAAiB;YACxB,KAAK;SACN,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
|
|
@@ -60,6 +60,14 @@ export function buildSystemPromptSlot(config) {
|
|
|
60
60
|
const promptContent = inj.inject.systemPrompt;
|
|
61
61
|
if (!promptContent || promptContent.length === 0)
|
|
62
62
|
continue;
|
|
63
|
+
// Block C — per-mode dispatch. Skills with surfaceMode='tool-only'
|
|
64
|
+
// do NOT land in the system slot; their body is delivered via
|
|
65
|
+
// the read_skill tool result instead. Other modes (system-prompt,
|
|
66
|
+
// both, auto, or absent) keep the current v2.4 path: body lands
|
|
67
|
+
// here. 'both' lands here AND in the tool result; the duplication
|
|
68
|
+
// is intentional belt-and-suspenders for high-stakes skills.
|
|
69
|
+
if (inj.flavor === 'skill' && inj.surfaceMode === 'tool-only')
|
|
70
|
+
continue;
|
|
63
71
|
injections.push({
|
|
64
72
|
contentSummary: truncate(promptContent, 80),
|
|
65
73
|
contentHash: fnv1a(`sp:${inj.flavor}:${inj.id}:${promptContent}`),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildSystemPromptSlot.js","sourceRoot":"","sources":["../../../../src/core/slots/buildSystemPromptSlot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAEjE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AA6B5D;;;;;;;;GAQG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAA8B;IAClE,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC;IAC3C,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,sBAAsB,CAAC;IACvD,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;IAEnC,OAAO,SAAS,CACd,SAAS,EACT,KAAK,EAAE,KAA2C,EAAE,EAAE;QACpD,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,EAAgD,CAAC;QAC5E,MAAM,QAAQ,GAAG,OAAO,YAAY,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;QAE9F,MAAM,UAAU,GAAsB,EAAE,CAAC;QAEzC,+DAA+D;QAC/D,gEAAgE;QAChE,6DAA6D;QAC7D,8DAA8D;QAC9D,+DAA+D;QAC/D,0BAA0B;QAC1B,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpC,UAAU,CAAC,IAAI,CAAC;gBACd,cAAc,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;gBACtC,WAAW,EAAE,KAAK,CAAC,MAAM,QAAQ,EAAE,CAAC;gBACpC,IAAI,EAAE,eAAe;gBACrB,MAAM,EAAE,MAAM;gBACd,MAAM;gBACN,UAAU,EAAE,QAAQ;aACrB,CAAC,CAAC;QACL,CAAC;QAED,2DAA2D;QAC3D,2DAA2D;QAC3D,kEAAkE;QAClE,8DAA8D;QAC9D,mEAAmE;QACnE,sDAAsD;QACtD,MAAM,gBAAgB,GACnB,KAAK,CAAC,SAAS,CAAC,kBAAkB,CAA4C,IAAI,EAAE,CAAC;QACxF,KAAK,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;YACnC,MAAM,aAAa,GAAG,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC;YAC9C,IAAI,CAAC,aAAa,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YAC3D,UAAU,CAAC,IAAI,CAAC;gBACd,cAAc,EAAE,QAAQ,CAAC,aAAa,EAAE,EAAE,CAAC;gBAC3C,WAAW,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,EAAE,IAAI,aAAa,EAAE,CAAC;gBACjE,IAAI,EAAE,eAAe;gBACrB,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,QAAQ,EAAE,GAAG,CAAC,EAAE;gBAChB,MAAM,EAAE,GAAG,CAAC,WAAW,IAAI,GAAG,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,EAAE,UAAU;gBAC7D,UAAU,EAAE,aAAa;aAC1B,CAAC,CAAC;QACL,CAAC;QAED,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QAC1D,KAAK,CAAC,SAAS,CACb,gBAAgB,CAAC,aAAa,EAC9B,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,IAAI,CAAC,EAAE,UAAU,EAAE,SAAS,CAAC,CACzE,CAAC;IACJ,CAAC,EACD,SAAS,EACT,SAAS,EACT,4BAA4B,CAC7B,CAAC,KAAK,EAAE,CAAC;AACZ,CAAC"}
|
|
1
|
+
{"version":3,"file":"buildSystemPromptSlot.js","sourceRoot":"","sources":["../../../../src/core/slots/buildSystemPromptSlot.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,6 +26,7 @@ import { composeSlot, fnv1a, truncate } from './helpers.js';
|
|
|
26
26
|
export function buildToolsSlot(config) {
|
|
27
27
|
const budgetCap = config.budgetCap ?? 2000;
|
|
28
28
|
const tools = config.tools;
|
|
29
|
+
const toolProvider = config.toolProvider;
|
|
29
30
|
return flowChart('Compose', (scope) => {
|
|
30
31
|
const args = scope.$getArgs();
|
|
31
32
|
const iteration = args.iteration ?? 1;
|
|
@@ -47,6 +48,38 @@ export function buildToolsSlot(config) {
|
|
|
47
48
|
position: i,
|
|
48
49
|
};
|
|
49
50
|
});
|
|
51
|
+
// Block A5/Neo follow-up: when an external `ToolProvider` is
|
|
52
|
+
// configured, consult it per iteration. Closure-held in
|
|
53
|
+
// `toolProvider` since scope can't carry functions. The provider
|
|
54
|
+
// sees `{ iteration, activeSkillId, identity }` so dynamic
|
|
55
|
+
// chains (`gatedTools`, `skillScopedTools`) react to the
|
|
56
|
+
// current activation state.
|
|
57
|
+
const providerSchemas = [];
|
|
58
|
+
if (toolProvider) {
|
|
59
|
+
const activatedIds = scope.$getValue('activatedInjectionIds') ?? [];
|
|
60
|
+
const identity = scope.$getValue('runIdentity');
|
|
61
|
+
const ctx = {
|
|
62
|
+
iteration,
|
|
63
|
+
...(activatedIds.length > 0 && { activeSkillId: activatedIds[activatedIds.length - 1] }),
|
|
64
|
+
...(identity && { identity }),
|
|
65
|
+
};
|
|
66
|
+
const visibleTools = toolProvider.list(ctx);
|
|
67
|
+
for (const t of visibleTools) {
|
|
68
|
+
const schema = t.schema;
|
|
69
|
+
providerSchemas.push(schema);
|
|
70
|
+
const summary = `${schema.name}: ${schema.description}`;
|
|
71
|
+
injections.push({
|
|
72
|
+
contentSummary: truncate(summary, 80),
|
|
73
|
+
contentHash: fnv1a(`tool:provider:${schema.name}`),
|
|
74
|
+
slot: 'tools',
|
|
75
|
+
source: 'registry',
|
|
76
|
+
sourceId: schema.name,
|
|
77
|
+
reason: `tool provider${toolProvider.id ? ` '${toolProvider.id}'` : ''}`,
|
|
78
|
+
rawContent: summary,
|
|
79
|
+
position: tools.length + providerSchemas.length - 1,
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
}
|
|
50
83
|
// Active Injections targeting the tools slot (Skills with
|
|
51
84
|
// tools=[…]). Filter activeInjections by `inject.tools`.
|
|
52
85
|
const activeInjections = scope.$getValue('activeInjections') ?? [];
|
|
@@ -67,15 +100,33 @@ export function buildToolsSlot(config) {
|
|
|
67
100
|
sourceId: inj.id,
|
|
68
101
|
reason: `${inj.flavor} '${inj.id}' unlocked tool '${schema.name}'`,
|
|
69
102
|
rawContent: summary,
|
|
70
|
-
position: tools.length + dynamicSchemas.length - 1,
|
|
103
|
+
position: tools.length + providerSchemas.length + dynamicSchemas.length - 1,
|
|
71
104
|
});
|
|
72
105
|
}
|
|
73
106
|
}
|
|
74
107
|
scope.$setValue(INJECTION_KEYS.TOOLS, injections);
|
|
75
|
-
//
|
|
76
|
-
//
|
|
77
|
-
|
|
78
|
-
|
|
108
|
+
// Merge schemas from all three sources, deduping by tool name.
|
|
109
|
+
// Order: static .tool() registry FIRST (auto-attached read_skill
|
|
110
|
+
// / list_skills land here when `.skills(registry)` is wired),
|
|
111
|
+
// then external `.toolProvider()` output, then per-skill
|
|
112
|
+
// inject.tools. First occurrence wins.
|
|
113
|
+
//
|
|
114
|
+
// Why dedupe matters: Neo wires `gatedTools(staticTools([listSkills,
|
|
115
|
+
// readSkill]), policy.isAllowed)` AND calls `.skills(registry)`
|
|
116
|
+
// — the framework auto-attaches its own `read_skill` from the
|
|
117
|
+
// skill registry, AND the consumer's toolProvider emits one too.
|
|
118
|
+
// Without dedupe both reach the LLM and Anthropic rejects the
|
|
119
|
+
// request: "tools: Tool names must be unique."
|
|
120
|
+
const seen = new Set();
|
|
121
|
+
const merged = [];
|
|
122
|
+
for (const t of [...tools, ...providerSchemas, ...dynamicSchemas]) {
|
|
123
|
+
if (seen.has(t.name))
|
|
124
|
+
continue;
|
|
125
|
+
seen.add(t.name);
|
|
126
|
+
merged.push(t);
|
|
127
|
+
}
|
|
128
|
+
scope.toolSchemas = merged;
|
|
129
|
+
scope.$setValue(COMPOSITION_KEYS.SLOT_COMPOSED, composeSlot('tools', iteration, injections, budgetCap, toolProvider ? 'registry+provider+injections' : 'registry+injections'));
|
|
79
130
|
}, 'compose', undefined, 'Compose tools slot').build();
|
|
80
131
|
}
|
|
81
132
|
//# sourceMappingURL=buildToolsSlot.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildToolsSlot.js","sourceRoot":"","sources":["../../../../src/core/slots/buildToolsSlot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"buildToolsSlot.js","sourceRoot":"","sources":["../../../../src/core/slots/buildToolsSlot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAGjE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAsB5D;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc,CAAC,MAAuB;IACpD,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC;IAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC3B,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;IAEzC,OAAO,SAAS,CACd,SAAS,EACT,CAAC,KAAoC,EAAE,EAAE;QACvC,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,EAA0B,CAAC;QACtD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC;QAEtC,MAAM,UAAU,GAAsB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACvD,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;YAC9C,4DAA4D;YAC5D,2DAA2D;YAC3D,sDAAsD;YACtD,qDAAqD;YACrD,sCAAsC;YACtC,OAAO;gBACL,cAAc,EAAE,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;gBACrC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;gBACrD,IAAI,EAAE,OAAO;gBACb,MAAM,EAAE,UAAU;gBAClB,QAAQ,EAAE,CAAC,CAAC,IAAI;gBAChB,MAAM,EAAE,eAAe;gBACvB,UAAU,EAAE,OAAO;gBACnB,QAAQ,EAAE,CAAC;aACZ,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,6DAA6D;QAC7D,wDAAwD;QACxD,iEAAiE;QACjE,2DAA2D;QAC3D,yDAAyD;QACzD,4BAA4B;QAC5B,MAAM,eAAe,GAAoB,EAAE,CAAC;QAC5C,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,YAAY,GACf,KAAK,CAAC,SAAS,CAAC,uBAAuB,CAAmC,IAAI,EAAE,CAAC;YACpF,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,aAAa,CAEjC,CAAC;YACd,MAAM,GAAG,GAAwB;gBAC/B,SAAS;gBACT,GAAG,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,aAAa,EAAE,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;gBACxF,GAAG,CAAC,QAAQ,IAAI,EAAE,QAAQ,EAAE,CAAC;aAC9B,CAAC;YACF,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC5C,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;gBACxB,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC7B,MAAM,OAAO,GAAG,GAAG,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,WAAW,EAAE,CAAC;gBACxD,UAAU,CAAC,IAAI,CAAC;oBACd,cAAc,EAAE,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;oBACrC,WAAW,EAAE,KAAK,CAAC,iBAAiB,MAAM,CAAC,IAAI,EAAE,CAAC;oBAClD,IAAI,EAAE,OAAO;oBACb,MAAM,EAAE,UAAU;oBAClB,QAAQ,EAAE,MAAM,CAAC,IAAI;oBACrB,MAAM,EAAE,gBAAgB,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,YAAY,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;oBACxE,UAAU,EAAE,OAAO;oBACnB,QAAQ,EAAE,KAAK,CAAC,MAAM,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC;iBACpD,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,0DAA0D;QAC1D,yDAAyD;QACzD,MAAM,gBAAgB,GACnB,KAAK,CAAC,SAAS,CAAC,kBAAkB,CAAsC,IAAI,EAAE,CAAC;QAClF,MAAM,cAAc,GAAoB,EAAE,CAAC;QAC3C,KAAK,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;YACnC,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC;YAClC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YACjD,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;gBAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;gBAC3B,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC5B,MAAM,OAAO,GAAG,GAAG,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,WAAW,EAAE,CAAC;gBACxD,UAAU,CAAC,IAAI,CAAC;oBACd,cAAc,EAAE,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;oBACrC,WAAW,EAAE,KAAK,CAAC,QAAQ,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,EAAE,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;oBACjE,IAAI,EAAE,OAAO;oBACb,MAAM,EAAE,GAAG,CAAC,MAAM;oBAClB,QAAQ,EAAE,GAAG,CAAC,EAAE;oBAChB,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,EAAE,oBAAoB,MAAM,CAAC,IAAI,GAAG;oBAClE,UAAU,EAAE,OAAO;oBACnB,QAAQ,EAAE,KAAK,CAAC,MAAM,GAAG,eAAe,CAAC,MAAM,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC;iBAC5E,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QAClD,+DAA+D;QAC/D,iEAAiE;QACjE,8DAA8D;QAC9D,yDAAyD;QACzD,uCAAuC;QACvC,EAAE;QACF,qEAAqE;QACrE,gEAAgE;QAChE,8DAA8D;QAC9D,iEAAiE;QACjE,8DAA8D;QAC9D,+CAA+C;QAC/C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,MAAM,MAAM,GAAoB,EAAE,CAAC;QACnC,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,EAAE,GAAG,eAAe,EAAE,GAAG,cAAc,CAAC,EAAE,CAAC;YAClE,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;gBAAE,SAAS;YAC/B,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACjB,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;QACD,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC;QAC3B,KAAK,CAAC,SAAS,CACb,gBAAgB,CAAC,aAAa,EAC9B,WAAW,CACT,OAAO,EACP,SAAS,EACT,UAAU,EACV,SAAS,EACT,YAAY,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,qBAAqB,CACtE,CACF,CAAC;IACJ,CAAC,EACD,SAAS,EACT,SAAS,EACT,oBAAoB,CACrB,CAAC,KAAK,EAAE,CAAC;AACZ,CAAC"}
|