@zhixuan92/multi-model-agent-mcp 2.7.4 → 2.8.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 +108 -4
- package/dist/cli.d.ts +23 -2
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +108 -91
- package/dist/cli.js.map +1 -1
- package/dist/http/auth.d.ts +8 -0
- package/dist/http/auth.d.ts.map +1 -0
- package/dist/http/auth.js +43 -0
- package/dist/http/auth.js.map +1 -0
- package/dist/http/cwd-validator.d.ts +11 -0
- package/dist/http/cwd-validator.d.ts.map +1 -0
- package/dist/http/cwd-validator.js +31 -0
- package/dist/http/cwd-validator.js.map +1 -0
- package/dist/http/lifecycle-handlers.d.ts +12 -0
- package/dist/http/lifecycle-handlers.d.ts.map +1 -0
- package/dist/http/lifecycle-handlers.js +87 -0
- package/dist/http/lifecycle-handlers.js.map +1 -0
- package/dist/http/loopback.d.ts +10 -0
- package/dist/http/loopback.d.ts.map +1 -0
- package/dist/http/loopback.js +34 -0
- package/dist/http/loopback.js.map +1 -0
- package/dist/http/project-registry.d.ts +48 -0
- package/dist/http/project-registry.d.ts.map +1 -0
- package/dist/http/project-registry.js +119 -0
- package/dist/http/project-registry.js.map +1 -0
- package/dist/http/session-router.d.ts +33 -0
- package/dist/http/session-router.d.ts.map +1 -0
- package/dist/http/session-router.js +62 -0
- package/dist/http/session-router.js.map +1 -0
- package/dist/http/status-endpoint.d.ts +20 -0
- package/dist/http/status-endpoint.d.ts.map +1 -0
- package/dist/http/status-endpoint.js +85 -0
- package/dist/http/status-endpoint.js.map +1 -0
- package/dist/http/transport.d.ts +14 -0
- package/dist/http/transport.d.ts.map +1 -0
- package/dist/http/transport.js +209 -0
- package/dist/http/transport.js.map +1 -0
- package/dist/status-cli.d.ts +2 -0
- package/dist/status-cli.d.ts.map +1 -0
- package/dist/status-cli.js +68 -0
- package/dist/status-cli.js.map +1 -0
- package/package.json +4 -3
package/README.md
CHANGED
|
@@ -94,13 +94,43 @@ For Codex CLI, Claude Desktop, and Cursor setup, see the [full guide](https://gi
|
|
|
94
94
|
|
|
95
95
|
Diagnostic logging is OFF by default.
|
|
96
96
|
|
|
97
|
-
|
|
97
|
+
It stays disabled when the `diagnostics` block is absent or when `diagnostics.log` is `false` in `~/.multi-model/config.json`.
|
|
98
98
|
|
|
99
|
-
|
|
99
|
+
To capture a crash/disconnect log to send us, add a `diagnostics` block to your config.
|
|
100
100
|
|
|
101
|
-
|
|
101
|
+
Minimal example:
|
|
102
102
|
|
|
103
|
-
|
|
103
|
+
```json
|
|
104
|
+
{
|
|
105
|
+
"diagnostics": { "log": true }
|
|
106
|
+
}
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
Full config shape example:
|
|
110
|
+
|
|
111
|
+
```json
|
|
112
|
+
{
|
|
113
|
+
"agents": {
|
|
114
|
+
"standard": { "type": "codex", "model": "codex-mini-latest" },
|
|
115
|
+
"complex": { "type": "claude", "model": "claude-sonnet-4-20250514" }
|
|
116
|
+
},
|
|
117
|
+
"defaults": {
|
|
118
|
+
"timeoutMs": 1800000,
|
|
119
|
+
"maxCostUSD": 10,
|
|
120
|
+
"tools": "full"
|
|
121
|
+
},
|
|
122
|
+
"diagnostics": {
|
|
123
|
+
"log": true,
|
|
124
|
+
"logDir": "/some/path"
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
`diagnostics.logDir` is optional; when omitted, logs default to `~/.multi-model/logs/`.
|
|
130
|
+
|
|
131
|
+
When enabled, the server appends JSONL records to `mcp-YYYY-MM-DD.jsonl` in append mode.
|
|
132
|
+
|
|
133
|
+
Only crash/disconnect diagnostic events are logged: `startup`, `request_start`, `request_complete`, `shutdown`, and `error`. This is a crash-diagnosis log, not a progress feed.
|
|
104
134
|
|
|
105
135
|
## Setup & Configuration
|
|
106
136
|
|
|
@@ -108,6 +138,80 @@ See the full setup guide with config examples, client-specific instructions, and
|
|
|
108
138
|
|
|
109
139
|
→ **[github.com/zhixuan312/multi-model-agent](https://github.com/zhixuan312/multi-model-agent#quick-start)**
|
|
110
140
|
|
|
141
|
+
## Running as an HTTP daemon
|
|
142
|
+
|
|
143
|
+
The default transport is stdio — Claude Code spawns one `mmagent` process per session. When the Claude Code session ends (compaction, `/clear`, exit), the process dies; the next tool call has to start a fresh one.
|
|
144
|
+
|
|
145
|
+
To survive Claude Code lifecycle events, run `mmagent` as a long-running HTTP daemon. Multiple Claude Code sessions can connect to the same daemon (each pointing at its own project directory), and a client reconnect reuses the project's in-memory stores.
|
|
146
|
+
|
|
147
|
+
### Start the daemon
|
|
148
|
+
|
|
149
|
+
Foreground (quickest way to try):
|
|
150
|
+
|
|
151
|
+
```bash
|
|
152
|
+
mmagent serve --http
|
|
153
|
+
# → http://127.0.0.1:7312
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
Background (macOS launchd / Linux systemd): see `scripts/README.md`.
|
|
157
|
+
|
|
158
|
+
### Point Claude Code at the daemon
|
|
159
|
+
|
|
160
|
+
In each project's `.mcp.json`:
|
|
161
|
+
|
|
162
|
+
```jsonc
|
|
163
|
+
{
|
|
164
|
+
"mcpServers": {
|
|
165
|
+
"multi-model-agent": {
|
|
166
|
+
"url": "http://127.0.0.1:7312/?cwd=/absolute/path/to/project"
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
Two projects = two `.mcp.json` files, each with a different `?cwd=`.
|
|
173
|
+
|
|
174
|
+
### Auth (optional)
|
|
175
|
+
|
|
176
|
+
For shared development machines:
|
|
177
|
+
|
|
178
|
+
```jsonc
|
|
179
|
+
// ~/.multi-model/config.json
|
|
180
|
+
{
|
|
181
|
+
"transport": {
|
|
182
|
+
"mode": "http",
|
|
183
|
+
"http": { "auth": { "enabled": true } }
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
On startup, `mmagent` generates a random token at `~/.multi-model/runtime/token` (mode 600). Paste it into `.mcp.json`:
|
|
189
|
+
|
|
190
|
+
```jsonc
|
|
191
|
+
{
|
|
192
|
+
"url": "http://127.0.0.1:7312/?cwd=...",
|
|
193
|
+
"headers": { "Authorization": "Bearer <token-from-that-file>" }
|
|
194
|
+
}
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
### Check daemon status
|
|
198
|
+
|
|
199
|
+
```bash
|
|
200
|
+
mmagent status
|
|
201
|
+
# mmagent 2.8.0 · pid 6821 · uptime 3h 24m · http://127.0.0.1:7312
|
|
202
|
+
# Projects (2):
|
|
203
|
+
# /Users/me/project-X 1 sess 7 batches last seen 8s ago
|
|
204
|
+
# /Users/me/project-Y 1 sess 2 batches last seen 4m ago
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
### Upgrades
|
|
208
|
+
|
|
209
|
+
`npm i -g @zhixuan92/multi-model-agent-mcp@latest` writes the new binary but does not restart the running daemon. Restart manually:
|
|
210
|
+
|
|
211
|
+
- **launchd**: `launchctl kickstart -k gui/$(id -u)/com.zhixuan92.mmagent`
|
|
212
|
+
- **systemd**: `systemctl --user restart mmagent`
|
|
213
|
+
- **foreground**: `Ctrl-C` and run `mmagent serve --http` again.
|
|
214
|
+
|
|
111
215
|
## License
|
|
112
216
|
|
|
113
217
|
[MIT](./LICENSE) — Copyright (c) 2026 Zhang Zhixuan
|
package/dist/cli.d.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
3
3
|
import { z } from 'zod';
|
|
4
4
|
import { runTasks } from '@zhixuan92/multi-model-agent-core/run-tasks';
|
|
5
|
-
import type { MultiModelConfig, DiagnosticLogger } from '@zhixuan92/multi-model-agent-core';
|
|
5
|
+
import type { MultiModelConfig, DiagnosticLogger, ProjectContext } from '@zhixuan92/multi-model-agent-core';
|
|
6
6
|
export { computeTimings, computeBatchProgress, computeAggregateCost } from './tools/batch-response.js';
|
|
7
7
|
export declare const SERVER_NAME = "multi-model-agent";
|
|
8
8
|
export declare const ASSISTANT_MODEL_NAME = "GPT-5";
|
|
@@ -17,7 +17,23 @@ export declare function buildTaskSchema(availableAgents: [string, ...string[]]):
|
|
|
17
17
|
done: z.ZodOptional<z.ZodString>;
|
|
18
18
|
contextBlockIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
19
19
|
}, z.core.$strict>;
|
|
20
|
-
|
|
20
|
+
/**
|
|
21
|
+
* Batch cache for `retry_tasks`. Every `delegate_tasks` call stashes the
|
|
22
|
+
* original `TaskSpec[]` under a UUID so the caller can later ask us to
|
|
23
|
+
* re-dispatch specific indices without re-transmitting the briefs. Two
|
|
24
|
+
* bounds (enforced by `BatchCache` in core):
|
|
25
|
+
*
|
|
26
|
+
* - TTL (30 min from creation): keeps stale batches from lingering
|
|
27
|
+
* through a long session. TTL is from-creation (not from-last-access).
|
|
28
|
+
* - LRU cap (100 entries): prevents unbounded growth from a chatty
|
|
29
|
+
* caller that never retries.
|
|
30
|
+
*
|
|
31
|
+
* The `BatchCache` instance lives on `projectContext.batchCache` so it is
|
|
32
|
+
* shared across all sessions attached to the same project root.
|
|
33
|
+
*/
|
|
34
|
+
export declare function buildMcpServer(config: Parameters<typeof runTasks>[1], logger: DiagnosticLogger, options: {
|
|
35
|
+
projectContext: ProjectContext;
|
|
36
|
+
sessionId?: string;
|
|
21
37
|
/** Character threshold that triggers auto-switch from 'full' to
|
|
22
38
|
* 'summary' response mode when the caller uses `responseMode: 'auto'`
|
|
23
39
|
* (the default). Defaults to 65_536, tuned for Claude Code's inline
|
|
@@ -55,4 +71,9 @@ export declare function discoverConfig(): Promise<MultiModelConfig>;
|
|
|
55
71
|
export declare function installStdioLifecycleHandlers(logger: DiagnosticLogger): void;
|
|
56
72
|
/** Test-only. Not exported from the package public surface. */
|
|
57
73
|
export declare function __resetStdioLifecycleHandlersForTests(): void;
|
|
74
|
+
export declare function parseHttpFlags(args: string[]): {
|
|
75
|
+
mode: 'http';
|
|
76
|
+
port?: number;
|
|
77
|
+
bind?: string;
|
|
78
|
+
} | undefined;
|
|
58
79
|
//# sourceMappingURL=cli.d.ts.map
|
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAQA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,QAAQ,EAAE,MAAM,6CAA6C,CAAC;AAEvE,OAAO,KAAK,EACV,gBAAgB,EAOhB,gBAAgB,
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAQA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,QAAQ,EAAE,MAAM,6CAA6C,CAAC;AAEvE,OAAO,KAAK,EACV,gBAAgB,EAOhB,gBAAgB,EAChB,cAAc,EACf,MAAM,mCAAmC,CAAC;AAmB3C,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEvG,eAAO,MAAM,WAAW,sBAAsB,CAAC;AAC/C,eAAO,MAAM,oBAAoB,UAAU,CAAC;AAG5C,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC;AAmBD,eAAO,MAAM,cAAc,QAAc,CAAC;AAE1C,wBAAgB,eAAe,CAAC,eAAe,EAAE,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;;;;;;;;mBAkBrE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,EACtC,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE;IACP,cAAc,EAAE,cAAc,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;wEAKoE;IACpE,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,+EAA+E;IAC/E,qBAAqB,CAAC,EAAE,OAAO,QAAQ,CAAC;CACzC,aAiWF;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,gBAAgB,CAAC,CA4BhE;AAWD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAoE5E;AAED,+DAA+D;AAC/D,wBAAgB,qCAAqC,IAAI,IAAI,CAa5D;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAYzG"}
|
package/dist/cli.js
CHANGED
|
@@ -11,7 +11,7 @@ import { z } from 'zod';
|
|
|
11
11
|
import { loadConfigFromFile } from '@zhixuan92/multi-model-agent-core/config/load';
|
|
12
12
|
import { parseConfig } from '@zhixuan92/multi-model-agent-core/config/schema';
|
|
13
13
|
import { runTasks } from '@zhixuan92/multi-model-agent-core/run-tasks';
|
|
14
|
-
import {
|
|
14
|
+
import { createDiagnosticLogger, createProjectContext } from '@zhixuan92/multi-model-agent-core';
|
|
15
15
|
import { renderProviderRoutingMatrix } from './routing/render-provider-routing-matrix.js';
|
|
16
16
|
import { computeTimings, computeBatchProgress, computeAggregateCost, } from './tools/batch-response.js';
|
|
17
17
|
import { buildUnifiedResponse, withDiagnostics } from './tools/shared.js';
|
|
@@ -23,7 +23,6 @@ import { registerReviewCode } from './tools/review-code.js';
|
|
|
23
23
|
import { registerVerifyWork } from './tools/verify-work.js';
|
|
24
24
|
import { compileDelegateTasks } from '@zhixuan92/multi-model-agent-core/intake/compilers/delegate';
|
|
25
25
|
import { runIntakePipeline } from '@zhixuan92/multi-model-agent-core/intake/pipeline';
|
|
26
|
-
import { ClarificationStore } from '@zhixuan92/multi-model-agent-core/intake/clarification-store';
|
|
27
26
|
import { registerConfirmClarifications } from './tools/confirm-clarifications.js';
|
|
28
27
|
export { computeTimings, computeBatchProgress, computeAggregateCost } from './tools/batch-response.js';
|
|
29
28
|
export const SERVER_NAME = 'multi-model-agent';
|
|
@@ -64,34 +63,18 @@ export function buildTaskSchema(availableAgents) {
|
|
|
64
63
|
* Batch cache for `retry_tasks`. Every `delegate_tasks` call stashes the
|
|
65
64
|
* original `TaskSpec[]` under a UUID so the caller can later ask us to
|
|
66
65
|
* re-dispatch specific indices without re-transmitting the briefs. Two
|
|
67
|
-
* bounds:
|
|
66
|
+
* bounds (enforced by `BatchCache` in core):
|
|
68
67
|
*
|
|
69
68
|
* - TTL (30 min from creation): keeps stale batches from lingering
|
|
70
|
-
* through a long session. TTL is from-creation (not from-last-access)
|
|
71
|
-
* matching `InMemoryContextBlockStore` — a batch used at minute 29
|
|
72
|
-
* still dies at minute 30. Access does NOT refresh the expiry.
|
|
69
|
+
* through a long session. TTL is from-creation (not from-last-access).
|
|
73
70
|
* - LRU cap (100 entries): prevents unbounded growth from a chatty
|
|
74
|
-
* caller that never retries.
|
|
75
|
-
* *used*, not least-recently-inserted): a batch that is still being
|
|
76
|
-
* retried stays hot and a newer but unused batch will be evicted
|
|
77
|
-
* first. This matters when a caller is iterating on one task while
|
|
78
|
-
* dispatching unrelated batches in parallel.
|
|
71
|
+
* caller that never retries.
|
|
79
72
|
*
|
|
80
|
-
*
|
|
81
|
-
*
|
|
82
|
-
*
|
|
83
|
-
* LRU implementation note: we use JavaScript's `Map` which preserves
|
|
84
|
-
* insertion order on iteration. To "touch" an entry on access, we
|
|
85
|
-
* `delete` it and re-`set` it, which moves it to the end of the
|
|
86
|
-
* iteration order. `Map.keys().next().value` is then the oldest-*accessed*
|
|
87
|
-
* entry (not the oldest-inserted entry), giving us O(1) LRU without a
|
|
88
|
-
* separate priority structure. The helpers `touchBatch` (on access) and
|
|
89
|
-
* the eviction loop in `rememberBatch` (on insert) are the only two
|
|
90
|
-
* places that mutate the Map.
|
|
73
|
+
* The `BatchCache` instance lives on `projectContext.batchCache` so it is
|
|
74
|
+
* shared across all sessions attached to the same project root.
|
|
91
75
|
*/
|
|
92
|
-
const BATCH_TTL_MS = 30 * 60 * 1000;
|
|
93
|
-
const BATCH_MAX = 100;
|
|
94
76
|
export function buildMcpServer(config, logger, options) {
|
|
77
|
+
const { projectContext } = options;
|
|
95
78
|
const agentKeys = config.agents ? Object.keys(config.agents) : [];
|
|
96
79
|
if (agentKeys.length === 0) {
|
|
97
80
|
throw new Error('buildMcpServer requires at least one configured agent.');
|
|
@@ -103,9 +86,9 @@ export function buildMcpServer(config, logger, options) {
|
|
|
103
86
|
}
|
|
104
87
|
const resolvedThreshold = envThreshold
|
|
105
88
|
?? config.defaults.largeResponseThresholdChars
|
|
106
|
-
?? options
|
|
89
|
+
?? options.largeResponseThresholdChars
|
|
107
90
|
?? DEFAULT_LARGE_RESPONSE_THRESHOLD_CHARS;
|
|
108
|
-
const runTasksImpl = options
|
|
91
|
+
const runTasksImpl = options._testRunTasksOverride ?? runTasks;
|
|
109
92
|
// Resolve parentModel once: env var > config > undefined
|
|
110
93
|
const resolvedParentModel = process.env.PARENT_MODEL_NAME || config.defaults.parentModel || undefined;
|
|
111
94
|
function injectDefaults(tasks) {
|
|
@@ -116,7 +99,7 @@ export function buildMcpServer(config, logger, options) {
|
|
|
116
99
|
timeoutMs: config.defaults.timeoutMs,
|
|
117
100
|
maxCostUSD: config.defaults.maxCostUSD,
|
|
118
101
|
sandboxPolicy: config.defaults.sandboxPolicy,
|
|
119
|
-
cwd:
|
|
102
|
+
cwd: projectContext.cwd,
|
|
120
103
|
reviewPolicy: 'full',
|
|
121
104
|
effort: undefined,
|
|
122
105
|
parentModel: resolvedParentModel,
|
|
@@ -127,41 +110,10 @@ export function buildMcpServer(config, logger, options) {
|
|
|
127
110
|
name: SERVER_NAME,
|
|
128
111
|
version: SERVER_VERSION,
|
|
129
112
|
});
|
|
130
|
-
//
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
const
|
|
134
|
-
// Clarification store for intake clarification flow
|
|
135
|
-
const clarificationStore = new ClarificationStore();
|
|
136
|
-
// Per-server batch cache for `retry_tasks`. See the LRU comment block
|
|
137
|
-
// above for eviction semantics.
|
|
138
|
-
const batchCache = new Map();
|
|
139
|
-
const rememberBatch = (tasks) => {
|
|
140
|
-
const id = randomUUID();
|
|
141
|
-
batchCache.set(id, { tasks, expiresAt: Date.now() + BATCH_TTL_MS });
|
|
142
|
-
// Evict the least-recently-USED entry (not least-recently-inserted).
|
|
143
|
-
// `touchBatch` below moves accessed entries to the end of insertion
|
|
144
|
-
// order, so `keys().next().value` is the true LRU head.
|
|
145
|
-
while (batchCache.size > BATCH_MAX) {
|
|
146
|
-
const lru = batchCache.keys().next().value;
|
|
147
|
-
if (lru)
|
|
148
|
-
batchCache.delete(lru);
|
|
149
|
-
else
|
|
150
|
-
break;
|
|
151
|
-
}
|
|
152
|
-
return id;
|
|
153
|
-
};
|
|
154
|
-
/**
|
|
155
|
-
* Mark a batch as recently used by reinserting it at the tail of the
|
|
156
|
-
* Map's iteration order. `touchBatch` is called on every successful
|
|
157
|
-
* `retry_tasks` lookup so a frequently-retried batch does not get
|
|
158
|
-
* evicted by `rememberBatch`'s LRU loop. Does NOT refresh the TTL —
|
|
159
|
-
* expiry stays at the original creation time.
|
|
160
|
-
*/
|
|
161
|
-
const touchBatch = (id, entry) => {
|
|
162
|
-
batchCache.delete(id);
|
|
163
|
-
batchCache.set(id, entry);
|
|
164
|
-
};
|
|
113
|
+
// Stores sourced from projectContext — shared across all sessions for this project.
|
|
114
|
+
const contextBlockStore = projectContext.contextBlocks;
|
|
115
|
+
const clarificationStore = projectContext.clarifications;
|
|
116
|
+
const batchCache = projectContext.batchCache;
|
|
165
117
|
const availableAgents = agentKeys;
|
|
166
118
|
server.tool('delegate_tasks', 'General-purpose task dispatch — use only when no specialized route fits. ' +
|
|
167
119
|
'Try specialized tools first: audit_document (auditing), review_code (reviewing), verify_work (verifying), debug_task (debugging), execute_plan (implementing from a written plan/spec file on disk). ' +
|
|
@@ -198,8 +150,9 @@ export function buildMcpServer(config, logger, options) {
|
|
|
198
150
|
// Execute ready tasks through normal dispatch
|
|
199
151
|
let results = [];
|
|
200
152
|
const readySpecs = intakeResult.ready.map(r => r.task);
|
|
201
|
-
const batchId =
|
|
153
|
+
const batchId = batchCache.remember(readySpecs.length > 0 ? readySpecs : tasks);
|
|
202
154
|
const batchStartMs = Date.now();
|
|
155
|
+
let batchAborted = false;
|
|
203
156
|
try {
|
|
204
157
|
if (readySpecs.length > 0) {
|
|
205
158
|
const resolvedTasks = injectDefaults(readySpecs);
|
|
@@ -210,11 +163,23 @@ export function buildMcpServer(config, logger, options) {
|
|
|
210
163
|
intakeResult.intakeProgress.executedDrafts = results.length;
|
|
211
164
|
}
|
|
212
165
|
}
|
|
166
|
+
catch (err) {
|
|
167
|
+
batchAborted = true;
|
|
168
|
+
throw err;
|
|
169
|
+
}
|
|
213
170
|
finally {
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
171
|
+
if (batchAborted) {
|
|
172
|
+
try {
|
|
173
|
+
batchCache.abort(batchId);
|
|
174
|
+
}
|
|
175
|
+
catch { /* already terminal */ }
|
|
176
|
+
}
|
|
177
|
+
else {
|
|
178
|
+
try {
|
|
179
|
+
batchCache.complete(batchId, results);
|
|
180
|
+
}
|
|
181
|
+
catch { /* already terminal */ }
|
|
182
|
+
}
|
|
218
183
|
}
|
|
219
184
|
const wallClockMs = Date.now() - batchStartMs;
|
|
220
185
|
// Create clarification set if needed
|
|
@@ -289,19 +254,12 @@ export function buildMcpServer(config, logger, options) {
|
|
|
289
254
|
.describe('Zero-based indices (into the original batch) of the tasks to re-run'),
|
|
290
255
|
}, async ({ batchId, taskIndices }) => {
|
|
291
256
|
const batch = batchCache.get(batchId);
|
|
292
|
-
if (!batch
|
|
293
|
-
// Proactively drop the expired entry so subsequent lookups see
|
|
294
|
-
// the same "unknown" result and the cache doesn't slowly fill
|
|
295
|
-
// with stale rows that are never touched again.
|
|
296
|
-
if (batch)
|
|
297
|
-
batchCache.delete(batchId);
|
|
257
|
+
if (!batch) {
|
|
298
258
|
throw new Error(`batch "${batchId}" is unknown or expired — re-dispatch with full task specs via delegate_tasks`);
|
|
299
259
|
}
|
|
300
|
-
// Mark this batch as recently used so the LRU eviction
|
|
301
|
-
//
|
|
302
|
-
|
|
303
|
-
// still dies at minute 30 even if it's retried heavily.
|
|
304
|
-
touchBatch(batchId, batch);
|
|
260
|
+
// Mark this batch as recently used so the LRU eviction does not
|
|
261
|
+
// drop a hot entry when newer batches arrive. Does NOT refresh TTL.
|
|
262
|
+
batchCache.touch(batchId);
|
|
305
263
|
for (const i of taskIndices) {
|
|
306
264
|
if (i < 0 || i >= batch.tasks.length) {
|
|
307
265
|
throw new Error(`index ${i} is out of range for batch ${batchId} (size ${batch.tasks.length})`);
|
|
@@ -310,18 +268,32 @@ export function buildMcpServer(config, logger, options) {
|
|
|
310
268
|
const subset = taskIndices.map((i) => batch.tasks[i]);
|
|
311
269
|
// Create a fresh batch for the retried tasks so the original batch
|
|
312
270
|
// entry is preserved and get_batch_slice can still retrieve it.
|
|
313
|
-
const retryBatchId =
|
|
271
|
+
const retryBatchId = batchCache.remember(subset);
|
|
314
272
|
const batchStartMs = Date.now();
|
|
315
273
|
let results = [];
|
|
274
|
+
let retryAborted = false;
|
|
316
275
|
try {
|
|
317
276
|
results = await runTasksImpl(injectDefaults(subset), config, {
|
|
318
277
|
runtime: { contextBlockStore },
|
|
319
278
|
});
|
|
320
279
|
}
|
|
280
|
+
catch (err) {
|
|
281
|
+
retryAborted = true;
|
|
282
|
+
throw err;
|
|
283
|
+
}
|
|
321
284
|
finally {
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
285
|
+
if (retryAborted) {
|
|
286
|
+
try {
|
|
287
|
+
batchCache.abort(retryBatchId);
|
|
288
|
+
}
|
|
289
|
+
catch { /* already terminal */ }
|
|
290
|
+
}
|
|
291
|
+
else {
|
|
292
|
+
try {
|
|
293
|
+
batchCache.complete(retryBatchId, results);
|
|
294
|
+
}
|
|
295
|
+
catch { /* already terminal */ }
|
|
296
|
+
}
|
|
325
297
|
}
|
|
326
298
|
const wallClockMs = Date.now() - batchStartMs;
|
|
327
299
|
// Apply auto-escape truncation
|
|
@@ -346,9 +318,7 @@ batch is expired or evicted, re-dispatch via delegate_tasks with the full specs.
|
|
|
346
318
|
taskIndex: z.number().int().min(0).optional().describe('0-based task index. Omit for all tasks.'),
|
|
347
319
|
}, async ({ batchId, taskIndex }) => {
|
|
348
320
|
const entry = batchCache.get(batchId);
|
|
349
|
-
if (!entry
|
|
350
|
-
if (entry)
|
|
351
|
-
batchCache.delete(batchId);
|
|
321
|
+
if (!entry) {
|
|
352
322
|
return {
|
|
353
323
|
content: [{
|
|
354
324
|
type: 'text',
|
|
@@ -356,7 +326,7 @@ batch is expired or evicted, re-dispatch via delegate_tasks with the full specs.
|
|
|
356
326
|
}],
|
|
357
327
|
};
|
|
358
328
|
}
|
|
359
|
-
|
|
329
|
+
batchCache.touch(batchId);
|
|
360
330
|
if (!entry.results) {
|
|
361
331
|
return {
|
|
362
332
|
content: [{
|
|
@@ -398,7 +368,7 @@ batch is expired or evicted, re-dispatch via delegate_tasks with the full specs.
|
|
|
398
368
|
registerExecutePlan(server, config, logger, contextBlockStore);
|
|
399
369
|
registerReviewCode(server, config, logger, contextBlockStore);
|
|
400
370
|
registerVerifyWork(server, config, logger, contextBlockStore);
|
|
401
|
-
registerConfirmClarifications(server, config, logger, clarificationStore, runTasksImpl,
|
|
371
|
+
registerConfirmClarifications(server, config, logger, clarificationStore, runTasksImpl, batchCache.remember.bind(batchCache));
|
|
402
372
|
return server;
|
|
403
373
|
}
|
|
404
374
|
/**
|
|
@@ -535,14 +505,34 @@ export function __resetStdioLifecycleHandlersForTests() {
|
|
|
535
505
|
process.off('SIGABRT', installedLifecycleHandlers.signals.SIGABRT);
|
|
536
506
|
installedLifecycleHandlers = null;
|
|
537
507
|
}
|
|
508
|
+
export function parseHttpFlags(args) {
|
|
509
|
+
if (!args.includes('--http'))
|
|
510
|
+
return undefined;
|
|
511
|
+
const portIdx = args.indexOf('--port');
|
|
512
|
+
const bindIdx = args.indexOf('--bind');
|
|
513
|
+
let port;
|
|
514
|
+
if (portIdx >= 0 && args[portIdx + 1]) {
|
|
515
|
+
const n = Number.parseInt(args[portIdx + 1], 10);
|
|
516
|
+
if (!Number.isFinite(n) || n <= 0)
|
|
517
|
+
throw new Error(`--port requires a positive integer, got: ${args[portIdx + 1]}`);
|
|
518
|
+
port = n;
|
|
519
|
+
}
|
|
520
|
+
const bind = bindIdx >= 0 ? args[bindIdx + 1] : undefined;
|
|
521
|
+
return { mode: 'http', port, bind };
|
|
522
|
+
}
|
|
538
523
|
async function main() {
|
|
539
524
|
const args = process.argv.slice(2);
|
|
525
|
+
if (args[0] === 'status') {
|
|
526
|
+
const { runStatusCli } = await import('./status-cli.js');
|
|
527
|
+
await runStatusCli(args.slice(1));
|
|
528
|
+
return;
|
|
529
|
+
}
|
|
540
530
|
if (args[0] === '--help' || args[0] === '-h') {
|
|
541
|
-
console.log('Usage: multi-model-agent serve [--config <path>]');
|
|
531
|
+
console.log('Usage: multi-model-agent serve [--http [--port N] [--bind ADDR]] [--config <path>]');
|
|
542
532
|
process.exit(0);
|
|
543
533
|
}
|
|
544
534
|
if (args[0] !== 'serve') {
|
|
545
|
-
console.error('Usage: multi-model-agent serve [--config <path>]');
|
|
535
|
+
console.error('Usage: multi-model-agent serve [--http [--port N] [--bind ADDR]] [--config <path>]');
|
|
546
536
|
process.exit(1);
|
|
547
537
|
}
|
|
548
538
|
const config = await discoverConfig();
|
|
@@ -551,14 +541,41 @@ async function main() {
|
|
|
551
541
|
console.error('No agents configured. Create ~/.multi-model/config.json or pass --config <path>.');
|
|
552
542
|
process.exit(1);
|
|
553
543
|
}
|
|
554
|
-
const
|
|
544
|
+
const httpFlags = parseHttpFlags(args);
|
|
545
|
+
if (httpFlags) {
|
|
546
|
+
const effectiveConfig = {
|
|
547
|
+
...config,
|
|
548
|
+
transport: {
|
|
549
|
+
mode: 'http',
|
|
550
|
+
http: {
|
|
551
|
+
...config.transport.http,
|
|
552
|
+
...(httpFlags.port !== undefined ? { port: httpFlags.port } : {}),
|
|
553
|
+
...(httpFlags.bind !== undefined ? { bind: httpFlags.bind } : {}),
|
|
554
|
+
},
|
|
555
|
+
},
|
|
556
|
+
};
|
|
557
|
+
const { startHttpDaemon } = await import('./http/transport.js');
|
|
558
|
+
await startHttpDaemon(effectiveConfig);
|
|
559
|
+
return;
|
|
560
|
+
}
|
|
561
|
+
if (config.transport.mode === 'http') {
|
|
562
|
+
// config says http mode even though CLI flag was absent
|
|
563
|
+
const { startHttpDaemon } = await import('./http/transport.js');
|
|
564
|
+
await startHttpDaemon(config);
|
|
565
|
+
return;
|
|
566
|
+
}
|
|
567
|
+
// stdio path — unchanged from today
|
|
568
|
+
const enabled = config.diagnostics?.log ?? false;
|
|
569
|
+
const logDir = config.diagnostics?.logDir;
|
|
570
|
+
const logger = createDiagnosticLogger({ enabled, logDir });
|
|
555
571
|
logger.startup(SERVER_VERSION);
|
|
556
572
|
const diagnosticLogPath = logger.expectedPath();
|
|
557
573
|
if (diagnosticLogPath !== undefined) {
|
|
558
574
|
process.stderr.write(`[multi-model-agent] diagnostic log: ${diagnosticLogPath}\n`);
|
|
559
575
|
}
|
|
560
576
|
installStdioLifecycleHandlers(logger);
|
|
561
|
-
const
|
|
577
|
+
const projectContext = createProjectContext(process.cwd());
|
|
578
|
+
const server = buildMcpServer(config, logger, { projectContext });
|
|
562
579
|
const transport = new StdioServerTransport();
|
|
563
580
|
await server.connect(transport);
|
|
564
581
|
}
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,UAAU,EAAc,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,kBAAkB,EAAE,MAAM,+CAA+C,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,MAAM,iDAAiD,CAAC;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,6CAA6C,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAYjG,OAAO,EAAE,2BAA2B,EAAE,MAAM,6CAA6C,CAAC;AAE1F,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,6DAA6D,CAAC;AACnG,OAAO,EAAE,iBAAiB,EAAE,MAAM,mDAAmD,CAAC;AACtF,OAAO,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AAElF,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEvG,MAAM,CAAC,MAAM,WAAW,GAAG,mBAAmB,CAAC;AAC/C,MAAM,CAAC,MAAM,oBAAoB,GAAG,OAAO,CAAC;AAC5C,MAAM,sCAAsC,GAAG,MAAM,CAAC;AAEtD,MAAM,UAAU,gBAAgB;IAC9B,OAAO,WAAW,oBAAoB,8CAA8C,CAAC;AACvF,CAAC;AAED,SAAS,gBAAgB,CAAC,CAAqB;IAC7C,IAAI,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IACzB,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACjC,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE;QAAE,OAAO,CAAC,CAAC;IACpE,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,sEAAsE;AACtE,yEAAyE;AACzE,qEAAqE;AACrE,uEAAuE;AACvE,kEAAkE;AAClE,wEAAwE;AACxE,uEAAuE;AACvE,+BAA+B;AAC/B,MAAM,cAAc,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACtD,MAAM,GAAG,GAAG,cAAc,CAAC,iBAAiB,CAAwB,CAAC;AACrE,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAC,OAAO,CAAC;AAE1C,MAAM,UAAU,eAAe,CAAC,eAAsC;IACpE,OAAO,CAAC,CAAC,MAAM,CAAC;QACd,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CACzB,iCAAiC,CAClC;QACD,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACpD,mHAAmH,CACpH;QACD,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAChD,yHAAyH,CAC1H;QACD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAClC,qGAAqG,CACtG;QACD,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACtD,uDAAuD,CACxD;KACF,CAAC,CAAC,MAAM,EAAE,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,cAAc,CAC5B,MAAsC,EACtC,MAAwB,EACxB,OAYC;IAED,MAAM,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC;IACnC,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAClE,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC5E,CAAC;IAED,+CAA+C;IAC/C,MAAM,YAAY,GAAG,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;IAC9F,IAAI,OAAO,CAAC,GAAG,CAAC,0CAA0C,KAAK,SAAS,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QACvG,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,2EAA2E,OAAO,CAAC,GAAG,CAAC,0CAA0C,wCAAwC,CAC1K,CAAC;IACJ,CAAC;IACD,MAAM,iBAAiB,GACrB,YAAY;WACT,MAAM,CAAC,QAAQ,CAAC,2BAA2B;WAC3C,OAAO,CAAC,2BAA2B;WACnC,sCAAsC,CAAC;IAC5C,MAAM,YAAY,GAAG,OAAO,CAAC,qBAAqB,IAAI,QAAQ,CAAC;IAE/D,yDAAyD;IACzD,MAAM,mBAAmB,GACvB,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,MAAM,CAAC,QAAQ,CAAC,WAAW,IAAI,SAAS,CAAC;IAE5E,SAAS,cAAc,CAAC,KAAiB;QACvC,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACrB,GAAG,CAAC;YACJ,SAAS,EAAE,CAAC,CAAC,SAAkC;YAC/C,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK;YAC5B,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,SAAS;YACpC,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,UAAU;YACtC,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC,aAAa;YAC5C,GAAG,EAAE,cAAc,CAAC,GAAG;YACvB,YAAY,EAAE,MAAM;YACpB,MAAM,EAAE,SAAS;YACjB,WAAW,EAAE,mBAAmB;YAChC,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC,CAAC;IACN,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;QAC3B,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,cAAc;KACxB,CAAC,CAAC;IAEH,oFAAoF;IACpF,MAAM,iBAAiB,GAAG,cAAc,CAAC,aAAa,CAAC;IACvD,MAAM,kBAAkB,GAAG,cAAc,CAAC,cAAc,CAAC;IACzD,MAAM,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC;IAE7C,MAAM,eAAe,GAAG,SAAkC,CAAC;IAE3D,MAAM,CAAC,IAAI,CACT,gBAAgB,EAChB,2EAA2E;QACzE,uMAAuM;QACvM,yHAAyH;QACzH,0DAA0D;QAC1D,8HAA8H;QAC9H,qIAAqI;QACrI,2BAA2B,CAAC,MAAM,CAAC,EACrC;QACE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,uCAAuC,CAAC;KACnG,EACD,eAAe,CAAC,gBAAgB,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE;QACnE,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,EAAE,aAAa,CAAC;QAC5C,MAAM,aAAa,GACjB,OAAO,QAAQ,KAAK,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ;YAC1D,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,SAAS,CAAC;QAChB,IAAI,eAAe,GAAG,CAAC,CAAC;QACxB,MAAM,YAAY,GAAG,aAAa,KAAK,SAAS;YAC9C,CAAC,CAAC,CAAC,SAAiB,EAAE,KAA2B,EAAE,EAAE;gBACjD,eAAe,IAAI,CAAC,CAAC;gBACrB,MAAM,QAAQ,GAAG,SAAS,SAAS,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACzD,KAAK,KAAK,CAAC,gBAAgB,CAAC;oBAC1B,MAAM,EAAE,wBAAwB;oBAChC,MAAM,EAAE;wBACN,aAAa;wBACb,QAAQ,EAAE,eAAe;wBACzB,OAAO,EAAE,QAAQ;qBAClB;iBACF,CAAC,CAAC;YACL,CAAC;YACH,CAAC,CAAC,SAAS,CAAC;QAEd,wDAAwD;QACxD,MAAM,SAAS,GAAG,UAAU,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,oBAAoB,CAAC,KAAkH,EAAE,SAAS,CAAC,CAAC;QACnK,MAAM,YAAY,GAAG,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;QAE1E,8CAA8C;QAC9C,IAAI,OAAO,GAAgB,EAAE,CAAC;QAC9B,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACvD,MAAM,OAAO,GAAG,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAE,KAAoB,CAAC,CAAC;QAEhG,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAChC,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC;YACH,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1B,MAAM,aAAa,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;gBACjD,OAAO,GAAG,MAAM,YAAY,CAAC,aAAa,EAAE,MAAM,EAAE;oBAClD,UAAU,EAAE,YAAY;oBACxB,OAAO,EAAE,EAAE,iBAAiB,EAAE;iBAC/B,CAAC,CAAC;gBACH,YAAY,CAAC,cAAc,CAAC,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;YAC9D,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,YAAY,GAAG,IAAI,CAAC;YACpB,MAAM,GAAG,CAAC;QACZ,CAAC;gBAAS,CAAC;YACT,IAAI,YAAY,EAAE,CAAC;gBACjB,IAAI,CAAC;oBAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,CAAC;YACrE,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC;oBAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,CAAC;YACjF,CAAC;QACH,CAAC;QACD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC;QAE9C,qCAAqC;QACrC,IAAI,eAAmC,CAAC;QACxC,IAAI,YAAY,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3C,MAAM,YAAY,GAAG,YAAY,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACzD,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,OAAO,CAAE;gBACjD,SAAS,EAAE,CAAC,CAAC,SAAS;gBACtB,UAAU,EAAE,CAAC;aACd,CAAC,CAAC,CAAC;YACJ,eAAe,GAAG,kBAAkB,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACrE,CAAC;QAED,+BAA+B;QAC/B,MAAM,gBAAgB,GAAG,eAAe,CACtC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,EACxG,OAAO,EACP,iBAAiB,CAClB,CAAC;QAEF,OAAO,oBAAoB,CAAC;YAC1B,OAAO;YACP,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YAC9E,KAAK,EAAE,UAAU;YACjB,WAAW;YACX,WAAW,EAAE,mBAAmB;YAChC,eAAe;YACf,cAAc,EAAE,YAAY,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS;SACjG,CAAC,CAAC;IACL,CAAC,CAAC,CACH,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,wBAAwB,EACxB,wFAAwF;QACtF,0BAA0B;QAC1B,iFAAiF;QACjF,wEAAwE;QACxE,sFAAsF;QACtF,oBAAoB;QACpB,+EAA+E;QAC/E,mFAAmF;QACnF,iFAAiF;QACjF,kEAAkE;QAClE,iFAAiF;QACjF,kFAAkF;QAClF,gFAAgF;QAChF,kFAAkF;QAClF,wFAAwF;QACxF,qBAAqB;QACrB,uFAAuF;QACvF,kCAAkC;QAClC,uEAAuE;QACvE,uEAAuE;QACvE,sEAAsE;QACtE,YAAY;QACZ,uEAAuE;QACvE,iFAAiF;QACjF,4FAA4F,EAC9F;QACE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;QACjF,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;KACrD,EACD,KAAK,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACxB,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAC3D,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;SACnG,CAAC;IACJ,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,aAAa,EACb,iEAAiE;QAC/D,gBAAgB;QAChB,yEAAyE;QACzE,+FAA+F;QAC/F,iGAAiG;QACjG,6DAA6D;QAC7D,kEAAkE;QAClE,6DAA6D;QAC7D,0DAA0D;QAC1D,qFAAqF;QACrF,gFAAgF,EAClF;QACE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;QACrF,WAAW,EAAE,CAAC;aACX,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC;aACrC,QAAQ,CAAC,qEAAqE,CAAC;KACnF,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE;QACjC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CACb,UAAU,OAAO,+EAA+E,CACjG,CAAC;QACJ,CAAC;QACD,gEAAgE;QAChE,oEAAoE;QACpE,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC1B,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;YAC5B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;gBACrC,MAAM,IAAI,KAAK,CACb,SAAS,CAAC,8BAA8B,OAAO,UAAU,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAC/E,CAAC;YACJ,CAAC;QACH,CAAC;QACD,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAEtD,mEAAmE;QACnE,gEAAgE;QAChE,MAAM,YAAY,GAAG,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAEjD,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAChC,IAAI,OAAO,GAAgB,EAAE,CAAC;QAC9B,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,YAAY,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE;gBAC3D,OAAO,EAAE,EAAE,iBAAiB,EAAE;aAC/B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,YAAY,GAAG,IAAI,CAAC;YACpB,MAAM,GAAG,CAAC;QACZ,CAAC;gBAAS,CAAC;YACT,IAAI,YAAY,EAAE,CAAC;gBACjB,IAAI,CAAC;oBAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,CAAC;YAC1E,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC;oBAAC,UAAU,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,CAAC;YACtF,CAAC;QACH,CAAC;QACD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC;QAE9C,+BAA+B;QAC/B,MAAM,gBAAgB,GAAG,eAAe,CACtC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,EACxG,YAAY,EACZ,iBAAiB,CAClB,CAAC;QAEF,OAAO,oBAAoB,CAAC;YAC1B,OAAO,EAAE,YAAY;YACrB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YAC9E,KAAK,EAAE,MAAM;YACb,WAAW;YACX,WAAW,EAAE,mBAAmB;SACjC,CAAC,CAAC;IACL,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,iBAAiB,EACjB;;;;;;;iFAO6E,EAC7E;QACE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8DAA8D,CAAC;QAC5F,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;KAClG,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE;QAC/B,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,UAAU,OAAO,wIAAwI;qBAChK,CAAC;aACH,CAAC;QACJ,CAAC;QAED,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAE1B,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,UAAU,OAAO,oEAAoE;qBAC5F,CAAC;aACH,CAAC;QACJ,CAAC;QAED,IAAI,SAAS,KAAK,SAAS,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACpF,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,aAAa,SAAS,4BAA4B,OAAO,SAAS,KAAK,CAAC,OAAO,CAAC,MAAM,+BAA+B,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI;qBACxJ,CAAC;aACH,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GAAG,SAAS,KAAK,SAAS;YACrC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAC5B,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;QAElB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,CAAC;QAChF,MAAM,OAAO,GAAG,cAAc,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC3D,MAAM,aAAa,GAAG,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC1D,MAAM,aAAa,GAAG,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAE1D,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACnB,OAAO;wBACP,OAAO;wBACP,aAAa;wBACb,aAAa;wBACb,OAAO;qBACR,EAAE,IAAI,EAAE,CAAC,CAAC;iBACZ,CAAC;SACH,CAAC;IACJ,CAAC,CACF,CAAC;IAEF,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;IACjE,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAC7D,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAC/D,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAC9D,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAE9D,6BAA6B,CAC3B,MAAM,EACN,MAAM,EACN,MAAM,EACN,kBAAkB,EAClB,YAAY,EACZ,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CACrC,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc;IAClC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEnC,uBAAuB;IACvB,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC/C,IAAI,aAAa,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,EAAE,CAAC;QAClD,OAAO,kBAAkB,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC;IACrD,CAAC;IAED,4CAA4C;IAC5C,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAC/C,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAED,gCAAgC;IAChC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;IAC3E,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC/B,OAAO,kBAAkB,CAAC,WAAW,CAAC,CAAC;IACzC,CAAC;IAED,8CAA8C;IAC9C,OAAO,WAAW,CAAC;QACjB,MAAM,EAAE;YACN,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,mBAAmB,EAAE;YACxD,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,mBAAmB,EAAE;SACxD;KACF,CAAC,CAAC;AACL,CAAC;AAED,IAAI,0BAA0B,GAO1B,IAAI,CAAC;AAET;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,6BAA6B,CAAC,MAAwB;IACpE,IAAI,0BAA0B,KAAK,IAAI,EAAE,CAAC;QACxC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qFAAqF,CAAC,CAAC;QAC5G,OAAO;IACT,CAAC;IACD,MAAM,WAAW,GAAG,CAAC,GAA0B,EAAE,EAAE;QACjD,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACzB,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;YAChC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAChB,OAAO;QACT,CAAC;QACD,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;QACtC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qCAAqC,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC;QAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC;IACF,MAAM,QAAQ,GAAG,GAAG,EAAE;QACpB,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC7B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC;IACF,MAAM,QAAQ,GAAG,CAAC,GAAU,EAAE,EAAE;QAC9B,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC;QACvC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;QACrC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,0CAA0C,GAAG,CAAC,KAAK,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC7F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC;IACF,MAAM,SAAS,GAAG,CAAC,MAAe,EAAE,EAAE;QACpC,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAG,MAAM,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC1F,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,2CAA2C,KAAK,IAAI,CAAC,CAAC;QAC3E,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;QACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IACtC,CAAC,CAAC;IACF,MAAM,OAAO,GAAG;QACd,OAAO,EAAE,GAAG,EAAE;YACZ,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAC3B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,EAAE,GAAG,EAAE;YACX,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC1B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,EAAE,GAAG,EAAE;YACZ,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAC3B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,EAAE,GAAG,EAAE;YACX,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC1B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,EAAE,GAAG,EAAE;YACZ,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAC3B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;KACF,CAAC;IACF,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACxC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAClC,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAC;IAC1C,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC;IAC5C,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IACvC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IACvC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IACvC,0BAA0B,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;AACnG,CAAC;AAED,+DAA+D;AAC/D,MAAM,UAAU,qCAAqC;IACnD,IAAI,0BAA0B,KAAK,IAAI;QAAE,OAAO;IAChD,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,0BAA0B,CAAC,WAAW,CAAC,CAAC;IACpE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,0BAA0B,CAAC,QAAQ,CAAC,CAAC;IAC9D,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,0BAA0B,CAAC,QAAQ,CAAC,CAAC;IACtE,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,0BAA0B,CAAC,SAAS,CAAC,CAAC;IACxE,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,0BAA0B,CAAC,UAAU,CAAC,CAAC;IACjE,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,0BAA0B,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACnE,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,0BAA0B,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACjE,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,0BAA0B,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACnE,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,0BAA0B,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACjE,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,0BAA0B,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACnE,0BAA0B,GAAG,IAAI,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAAc;IAC3C,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,SAAS,CAAC;IAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACvC,IAAI,IAAwB,CAAC;IAC7B,IAAI,OAAO,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,CAAC;QACtC,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACjD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;QACpH,IAAI,GAAG,CAAC,CAAC;IACX,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1D,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACtC,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEnC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QACzB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;QACzD,MAAM,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAClC,OAAO;IACT,CAAC;IAED,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,oFAAoF,CAAC,CAAC;QAClG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QACxB,OAAO,CAAC,KAAK,CAAC,oFAAoF,CAAC,CAAC;QACpG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,cAAc,EAAE,CAAC;IACtC,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAEnE,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,KAAK,CAAC,kFAAkF,CAAC,CAAC;QAClG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IACvC,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,eAAe,GAAG;YACtB,GAAG,MAAM;YACT,SAAS,EAAE;gBACT,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE;oBACJ,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI;oBACxB,GAAG,CAAC,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACjE,GAAG,CAAC,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAClE;aACF;SACF,CAAC;QACF,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAChE,MAAM,eAAe,CAAC,eAAe,CAAC,CAAC;QACvC,OAAO;IACT,CAAC;IAED,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QACrC,wDAAwD;QACxD,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAChE,MAAM,eAAe,CAAC,MAAM,CAAC,CAAC;QAC9B,OAAO;IACT,CAAC;IAED,oCAAoC;IACpC,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,EAAE,GAAG,IAAI,KAAK,CAAC;IACjD,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC;IAC1C,MAAM,MAAM,GAAG,sBAAsB,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IAC3D,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IAC/B,MAAM,iBAAiB,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC;IAChD,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;QACpC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uCAAuC,iBAAiB,IAAI,CAAC,CAAC;IACrF,CAAC;IACD,6BAA6B,CAAC,MAAM,CAAC,CAAC;IAEtC,MAAM,cAAc,GAAG,oBAAoB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC;IAClE,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC;AAED,uCAAuC;AACvC,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAChD,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE;IACxB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IACnC,IAAI,CAAC;QACH,OAAO,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IACxE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC,EAAE,CAAC;AACL,IAAI,WAAW,EAAE,CAAC;IAChB,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACnB,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;QAC7B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare function loadToken(tokenPath: string): string;
|
|
2
|
+
export declare function validateAuthHeader(header: string | undefined, expected: string): {
|
|
3
|
+
ok: true;
|
|
4
|
+
} | {
|
|
5
|
+
ok: false;
|
|
6
|
+
reason: 'missing' | 'malformed' | 'mismatch';
|
|
7
|
+
};
|
|
8
|
+
//# sourceMappingURL=auth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/http/auth.ts"],"names":[],"mappings":"AAUA,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAkBnD;AAED,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,QAAQ,EAAE,MAAM,GACf;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,UAAU,CAAA;CAAE,CAU5E"}
|