@synap-core/cli 1.13.0 → 1.13.1-next.20261102.246dc73
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 +13 -3
- package/dist/build-info.json +2 -3
- package/dist/commands/agents.js +12 -2
- package/dist/commands/agents.js.map +1 -1
- package/dist/commands/capability.d.ts +86 -0
- package/dist/commands/capability.js +117 -30
- package/dist/commands/capability.js.map +1 -1
- package/dist/commands/context.js +2 -1
- package/dist/commands/context.js.map +1 -1
- package/dist/commands/data-extra.d.ts +13 -0
- package/dist/commands/data-extra.js +23 -2
- package/dist/commands/data-extra.js.map +1 -1
- package/dist/commands/doctor.d.ts +18 -0
- package/dist/commands/doctor.js +28 -1
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/init.js +4 -2
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/keys-request.d.ts +48 -0
- package/dist/commands/keys-request.js +236 -0
- package/dist/commands/keys-request.js.map +1 -0
- package/dist/commands/keys-request.test.d.ts +1 -0
- package/dist/commands/keys-request.test.js +176 -0
- package/dist/commands/keys-request.test.js.map +1 -0
- package/dist/commands/knowledge.d.ts +42 -5
- package/dist/commands/knowledge.js +90 -27
- package/dist/commands/knowledge.js.map +1 -1
- package/dist/commands/market.d.ts +89 -31
- package/dist/commands/market.js +215 -222
- package/dist/commands/market.js.map +1 -1
- package/dist/commands/mcp.d.ts +1 -1
- package/dist/commands/mcp.js +14 -9
- package/dist/commands/mcp.js.map +1 -1
- package/dist/commands/pods.js +6 -2
- package/dist/commands/pods.js.map +1 -1
- package/dist/commands/proposals-actions.js +7 -1
- package/dist/commands/proposals-actions.js.map +1 -1
- package/dist/commands/providers.d.ts +22 -6
- package/dist/commands/providers.js +39 -32
- package/dist/commands/providers.js.map +1 -1
- package/dist/commands/raycast.d.ts +15 -0
- package/dist/commands/raycast.js +36 -10
- package/dist/commands/raycast.js.map +1 -1
- package/dist/commands/status.js +12 -6
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/statusline.backoff.test.js +13 -3
- package/dist/commands/statusline.backoff.test.js.map +1 -1
- package/dist/commands/statusline.d.ts +104 -9
- package/dist/commands/statusline.js +392 -148
- package/dist/commands/statusline.js.map +1 -1
- package/dist/commands/statusline.line2.test.d.ts +15 -0
- package/dist/commands/statusline.line2.test.js +226 -0
- package/dist/commands/statusline.line2.test.js.map +1 -0
- package/dist/commands/statusline.needs-you.test.d.ts +1 -0
- package/dist/commands/statusline.needs-you.test.js +17 -0
- package/dist/commands/statusline.needs-you.test.js.map +1 -0
- package/dist/commands/statusline.now.test.d.ts +10 -0
- package/dist/commands/statusline.now.test.js +250 -0
- package/dist/commands/statusline.now.test.js.map +1 -0
- package/dist/commands/tracks.d.ts +1 -0
- package/dist/commands/tracks.js +4 -0
- package/dist/commands/tracks.js.map +1 -1
- package/dist/commands/upload.js +12 -0
- package/dist/commands/upload.js.map +1 -1
- package/dist/commands/wait.d.ts +124 -0
- package/dist/commands/wait.js +384 -0
- package/dist/commands/wait.js.map +1 -0
- package/dist/commands/wait.test.d.ts +8 -0
- package/dist/commands/wait.test.js +308 -0
- package/dist/commands/wait.test.js.map +1 -0
- package/dist/commands/worker-github-app.d.ts +63 -0
- package/dist/commands/worker-github-app.js +161 -0
- package/dist/commands/worker-github-app.js.map +1 -0
- package/dist/commands/worker-github-app.test.d.ts +1 -0
- package/dist/commands/worker-github-app.test.js +102 -0
- package/dist/commands/worker-github-app.test.js.map +1 -0
- package/dist/commands/worker-github-broker.d.ts +39 -0
- package/dist/commands/worker-github-broker.js +106 -0
- package/dist/commands/worker-github-broker.js.map +1 -0
- package/dist/commands/worker-github-broker.test.d.ts +1 -0
- package/dist/commands/worker-github-broker.test.js +90 -0
- package/dist/commands/worker-github-broker.test.js.map +1 -0
- package/dist/commands/worker-runs.test.d.ts +1 -0
- package/dist/commands/worker-runs.test.js +150 -0
- package/dist/commands/worker-runs.test.js.map +1 -0
- package/dist/commands/worker-worktrees.d.ts +34 -0
- package/dist/commands/worker-worktrees.js +87 -0
- package/dist/commands/worker-worktrees.js.map +1 -0
- package/dist/commands/worker.d.ts +192 -5
- package/dist/commands/worker.js +467 -45
- package/dist/commands/worker.js.map +1 -1
- package/dist/commands/worker.test.js +269 -3
- package/dist/commands/worker.test.js.map +1 -1
- package/dist/index.js +59 -4
- package/dist/index.js.map +1 -1
- package/dist/lib/agents-config.d.ts +9 -0
- package/dist/lib/agents-config.js +20 -0
- package/dist/lib/agents-config.js.map +1 -1
- package/dist/lib/atomic-file.d.ts +20 -1
- package/dist/lib/atomic-file.js +100 -2
- package/dist/lib/atomic-file.js.map +1 -1
- package/dist/lib/auth.d.ts +25 -0
- package/dist/lib/auth.js +49 -9
- package/dist/lib/auth.js.map +1 -1
- package/dist/lib/box/job-server.js +4 -0
- package/dist/lib/box/job-server.js.map +1 -1
- package/dist/lib/bridge-invocation.test.d.ts +1 -0
- package/dist/lib/bridge-invocation.test.js +75 -0
- package/dist/lib/bridge-invocation.test.js.map +1 -0
- package/dist/lib/bridge-status.d.ts +144 -0
- package/dist/lib/bridge-status.js +227 -0
- package/dist/lib/bridge-status.js.map +1 -0
- package/dist/lib/bridge-status.test.d.ts +6 -0
- package/dist/lib/bridge-status.test.js +197 -0
- package/dist/lib/bridge-status.test.js.map +1 -0
- package/dist/lib/client-header.test.js +19 -1
- package/dist/lib/client-header.test.js.map +1 -1
- package/dist/lib/conversation-headers.d.ts +67 -2
- package/dist/lib/conversation-headers.js +122 -6
- package/dist/lib/conversation-headers.js.map +1 -1
- package/dist/lib/conversation-headers.test.d.ts +1 -0
- package/dist/lib/conversation-headers.test.js +78 -0
- package/dist/lib/conversation-headers.test.js.map +1 -0
- package/dist/lib/credential-class.d.ts +12 -1
- package/dist/lib/credential-class.js +20 -0
- package/dist/lib/credential-class.js.map +1 -1
- package/dist/lib/device-connect.d.ts +45 -0
- package/dist/lib/device-connect.js +60 -0
- package/dist/lib/device-connect.js.map +1 -1
- package/dist/lib/goal-words.js +6 -3
- package/dist/lib/goal-words.js.map +1 -1
- package/dist/lib/hub-client.d.ts +59 -1
- package/dist/lib/hub-client.js +130 -36
- package/dist/lib/hub-client.js.map +1 -1
- package/dist/lib/key-locations.d.ts +3 -3
- package/dist/lib/key-locations.js +3 -39
- package/dist/lib/key-locations.js.map +1 -1
- package/dist/lib/machine-instance.d.ts +7 -5
- package/dist/lib/machine-instance.js +7 -5
- package/dist/lib/machine-instance.js.map +1 -1
- package/dist/lib/mcp-bridge.d.ts +43 -0
- package/dist/lib/mcp-bridge.js +199 -11
- package/dist/lib/mcp-bridge.js.map +1 -1
- package/dist/lib/mcp-bridge.test.js +194 -2
- package/dist/lib/mcp-bridge.test.js.map +1 -1
- package/dist/lib/mcp-call.d.ts +5 -1
- package/dist/lib/mcp-call.js +7 -6
- package/dist/lib/mcp-call.js.map +1 -1
- package/dist/lib/mcp-connector-url.test.d.ts +1 -0
- package/dist/lib/mcp-connector-url.test.js +13 -0
- package/dist/lib/mcp-connector-url.test.js.map +1 -0
- package/dist/lib/mcp-snippets.d.ts +16 -0
- package/dist/lib/mcp-snippets.js +20 -2
- package/dist/lib/mcp-snippets.js.map +1 -1
- package/dist/lib/now-line.d.ts +66 -0
- package/dist/lib/now-line.js +193 -0
- package/dist/lib/now-line.js.map +1 -0
- package/dist/lib/now-line.test.d.ts +5 -0
- package/dist/lib/now-line.test.js +177 -0
- package/dist/lib/now-line.test.js.map +1 -0
- package/dist/lib/package-updates.d.ts +66 -0
- package/dist/lib/package-updates.js +76 -0
- package/dist/lib/package-updates.js.map +1 -0
- package/dist/lib/pod.d.ts +0 -4
- package/dist/lib/pod.js +0 -7
- package/dist/lib/pod.js.map +1 -1
- package/dist/lib/register-claude-code-mcp.test.js +19 -0
- package/dist/lib/register-claude-code-mcp.test.js.map +1 -1
- package/dist/lib/safe-open.d.ts +5 -3
- package/dist/lib/safe-open.js +9 -8
- package/dist/lib/safe-open.js.map +1 -1
- package/dist/lib/self-host.d.ts +17 -0
- package/dist/lib/self-host.js +24 -0
- package/dist/lib/self-host.js.map +1 -0
- package/dist/lib/targets.d.ts +31 -0
- package/dist/lib/targets.js +100 -104
- package/dist/lib/targets.js.map +1 -1
- package/dist/lib/template-lifecycle.d.ts +0 -31
- package/dist/lib/template-lifecycle.js +0 -74
- package/dist/lib/template-lifecycle.js.map +1 -1
- package/dist/lib/term.d.ts +24 -0
- package/dist/lib/term.js +52 -0
- package/dist/lib/term.js.map +1 -0
- package/dist/lib/term.test.d.ts +1 -0
- package/dist/lib/term.test.js +29 -0
- package/dist/lib/term.test.js.map +1 -0
- package/dist/lib/transcript-index.d.ts +94 -0
- package/dist/lib/transcript-index.js +321 -0
- package/dist/lib/transcript-index.js.map +1 -0
- package/dist/lib/transcript-index.test.d.ts +10 -0
- package/dist/lib/transcript-index.test.js +200 -0
- package/dist/lib/transcript-index.test.js.map +1 -0
- package/dist/lib/wait-help.d.ts +11 -0
- package/dist/lib/wait-help.js +25 -0
- package/dist/lib/wait-help.js.map +1 -0
- package/dist/lib/wait-state.d.ts +57 -0
- package/dist/lib/wait-state.js +114 -0
- package/dist/lib/wait-state.js.map +1 -0
- package/package.json +2 -2
- package/skills/synap/SKILL.md +81 -44
- package/skills/synap/code-skills.md +15 -1
- package/skills/synap/concepts.md +36 -26
- package/skills/synap/document-embeds.md +15 -1
- package/skills/synap/focus-sessions.md +4 -4
- package/skills/synap/from-intent.md +2 -2
- package/skills/synap/governance-rules.md +2 -0
- package/skills/synap/hand-off.md +10 -6
- package/skills/synap/reflexes.md +4 -4
- package/skills/synap/work-model.md +1 -1
- package/skills/synap/writing-titles.md +7 -0
- package/skills/synap-app/SKILL.md +2 -2
- package/skills/synap-app/overview.md +2 -2
- package/skills/synap-market/SKILL.md +1 -1
- package/skills/synap-market/governance-and-catalog.md +1 -1
- package/skills/synap-schema/SKILL.md +4 -1
- package/skills/synap-schema/intent-vocabulary-ssot.md +4 -1
- package/dist/commands/template.d.ts +0 -42
- package/dist/commands/template.js +0 -191
- package/dist/commands/template.js.map +0 -1
- package/dist/lib/browser-auth.d.ts +0 -35
- package/dist/lib/browser-auth.js +0 -170
- package/dist/lib/browser-auth.js.map +0 -1
- package/dist/lib/openclaw.d.ts +0 -32
- package/dist/lib/openclaw.js +0 -165
- package/dist/lib/openclaw.js.map +0 -1
- package/dist/lib/seed.d.ts +0 -13
- package/dist/lib/seed.js +0 -135
- package/dist/lib/seed.js.map +0 -1
package/dist/lib/hub-client.d.ts
CHANGED
|
@@ -1,4 +1,33 @@
|
|
|
1
1
|
import { HubRestClient } from "@synap-core/hub-rest-client";
|
|
2
|
+
/**
|
|
3
|
+
* The pod's `code` on a 403 that refused a LIMITED key at the door (a key
|
|
4
|
+
* whose grant is not unbounded full access), whatever the door: a read no
|
|
5
|
+
* grant bounds yet, or a door that acts on everything the person owns.
|
|
6
|
+
* synap-backend `routers/hub-protocol/_middleware/auth.ts`.
|
|
7
|
+
*/
|
|
8
|
+
export declare const GRANT_DOOR_UNSUPPORTED_CODE = "GRANT_DOOR_UNSUPPORTED";
|
|
9
|
+
/**
|
|
10
|
+
* The code a pod puts on a 403 that refused a write the calling key's GRANT
|
|
11
|
+
* does not cover (synap-backend `utils/grant-write-check.ts` `GRANT_DENIED`,
|
|
12
|
+
* added to every Hub REST denial by `_middleware/grant-denial-code.ts`), as
|
|
13
|
+
* `code` (or `reasonCode`, when the door set its own `code`), with the refused
|
|
14
|
+
* `action`.
|
|
15
|
+
*/
|
|
16
|
+
export declare const GRANT_DENIED_CODE = "GRANT_DENIED";
|
|
17
|
+
/**
|
|
18
|
+
* How an OLDER pod words the same refusal, with no code (`{ error }` only):
|
|
19
|
+
* read only when the body carries no `GRANT_DENIED` code.
|
|
20
|
+
*/
|
|
21
|
+
export declare const GRANT_DENIAL_PREFIX = "This key's grant does not allow";
|
|
22
|
+
/**
|
|
23
|
+
* A 403 the pod sent because the calling key's grant leaves the action out:
|
|
24
|
+
* a limited key (a computer's or an agent's) refused by design, never a
|
|
25
|
+
* missing workspace. `action` is the refused action key when the pod named it
|
|
26
|
+
* (`workspace.update`). The code first; the words only for an older pod.
|
|
27
|
+
*/
|
|
28
|
+
export declare function grantDenialOf(err: unknown): {
|
|
29
|
+
action?: string;
|
|
30
|
+
} | null;
|
|
2
31
|
/**
|
|
3
32
|
* A failed Hub call, carrying the structured facts callers need to branch on.
|
|
4
33
|
*
|
|
@@ -12,6 +41,13 @@ export declare class HubError extends Error {
|
|
|
12
41
|
readonly status: number;
|
|
13
42
|
readonly code?: string;
|
|
14
43
|
readonly reason?: string;
|
|
44
|
+
/**
|
|
45
|
+
* What the pod itself said, without the `Hub <METHOD> <path> failed` prefix
|
|
46
|
+
* `message` carries. Read a hint's words from here, never from `message`:
|
|
47
|
+
* the path is in `message`, so `/workspace/i` over it matched every refusal
|
|
48
|
+
* on a `/workspaces` route (finding de33a075).
|
|
49
|
+
*/
|
|
50
|
+
readonly detail?: string;
|
|
15
51
|
readonly body?: unknown;
|
|
16
52
|
readonly rawBody: string;
|
|
17
53
|
readonly path: string;
|
|
@@ -24,6 +60,7 @@ export declare class HubError extends Error {
|
|
|
24
60
|
message: string;
|
|
25
61
|
status: number;
|
|
26
62
|
code?: string;
|
|
63
|
+
detail?: string;
|
|
27
64
|
reason?: string;
|
|
28
65
|
body?: unknown;
|
|
29
66
|
rawBody: string;
|
|
@@ -79,7 +116,14 @@ export declare function helpFooterLine(): void;
|
|
|
79
116
|
* in utils/logger so the logger stays domain-agnostic and the taxonomy and its
|
|
80
117
|
* presentation sit in one file. Always closes with the one-time help footer.
|
|
81
118
|
*/
|
|
82
|
-
export declare function renderHubError(err: unknown
|
|
119
|
+
export declare function renderHubError(err: unknown, opts?: {
|
|
120
|
+
/**
|
|
121
|
+
* Where the PERSON does what a limited key was refused (a grant denial):
|
|
122
|
+
* the command knows its own door, this module does not. Without it the
|
|
123
|
+
* hint names full access in general.
|
|
124
|
+
*/
|
|
125
|
+
personDoor?: string;
|
|
126
|
+
}): void;
|
|
83
127
|
export interface HubConfig {
|
|
84
128
|
podUrl: string;
|
|
85
129
|
apiKey: string;
|
|
@@ -137,6 +181,20 @@ export declare function attachActiveSessionId(sessionId: string): SessionAttachT
|
|
|
137
181
|
* which reads as the command failing.
|
|
138
182
|
*/
|
|
139
183
|
export declare function detachActiveSessionId(podUrl?: string): string | undefined;
|
|
184
|
+
/**
|
|
185
|
+
* Never wait more than this in total on one request. 12 waits of up to 75s
|
|
186
|
+
* was ~15 minutes of a terminal that looked hung; past this budget the call
|
|
187
|
+
* fails and says so.
|
|
188
|
+
*/
|
|
189
|
+
export declare const HUB_429_MAX_TOTAL_WAIT_MS = 150000;
|
|
190
|
+
/**
|
|
191
|
+
* The wait (ms) a pod 429 asks for, capped at 75s so a bad proxy header never
|
|
192
|
+
* parks the importer. The pod sends the wait in three shapes, and this reads
|
|
193
|
+
* all of them: the `Retry-After` header (seconds), a JSON body's numeric
|
|
194
|
+
* `retryAfter` (hub commands door) or `cause.retryAfterSec`, and the text
|
|
195
|
+
* "Retry after 60s." the key limiter writes into its message.
|
|
196
|
+
*/
|
|
197
|
+
export declare function retryAfterMs(res: Response, bodyText: string): number;
|
|
140
198
|
export declare function hubGet(path: string, params: Record<string, string | number | undefined>, cfg: HubConfig, timeoutMs?: number): Promise<unknown>;
|
|
141
199
|
export declare function hubPost(path: string, body: unknown, cfg: HubConfig, timeoutMs?: number): Promise<unknown>;
|
|
142
200
|
/**
|
package/dist/lib/hub-client.js
CHANGED
|
@@ -47,6 +47,47 @@ function resolveProjectIdForPod(podUrl, opts) {
|
|
|
47
47
|
}
|
|
48
48
|
return undefined;
|
|
49
49
|
}
|
|
50
|
+
/**
|
|
51
|
+
* The pod's `code` on a 403 that refused a LIMITED key at the door (a key
|
|
52
|
+
* whose grant is not unbounded full access), whatever the door: a read no
|
|
53
|
+
* grant bounds yet, or a door that acts on everything the person owns.
|
|
54
|
+
* synap-backend `routers/hub-protocol/_middleware/auth.ts`.
|
|
55
|
+
*/
|
|
56
|
+
export const GRANT_DOOR_UNSUPPORTED_CODE = "GRANT_DOOR_UNSUPPORTED";
|
|
57
|
+
/**
|
|
58
|
+
* The code a pod puts on a 403 that refused a write the calling key's GRANT
|
|
59
|
+
* does not cover (synap-backend `utils/grant-write-check.ts` `GRANT_DENIED`,
|
|
60
|
+
* added to every Hub REST denial by `_middleware/grant-denial-code.ts`), as
|
|
61
|
+
* `code` (or `reasonCode`, when the door set its own `code`), with the refused
|
|
62
|
+
* `action`.
|
|
63
|
+
*/
|
|
64
|
+
export const GRANT_DENIED_CODE = "GRANT_DENIED";
|
|
65
|
+
/**
|
|
66
|
+
* How an OLDER pod words the same refusal, with no code (`{ error }` only):
|
|
67
|
+
* read only when the body carries no `GRANT_DENIED` code.
|
|
68
|
+
*/
|
|
69
|
+
export const GRANT_DENIAL_PREFIX = "This key's grant does not allow";
|
|
70
|
+
/**
|
|
71
|
+
* A 403 the pod sent because the calling key's grant leaves the action out:
|
|
72
|
+
* a limited key (a computer's or an agent's) refused by design, never a
|
|
73
|
+
* missing workspace. `action` is the refused action key when the pod named it
|
|
74
|
+
* (`workspace.update`). The code first; the words only for an older pod.
|
|
75
|
+
*/
|
|
76
|
+
export function grantDenialOf(err) {
|
|
77
|
+
if (!(err instanceof HubError) || err.status !== 403)
|
|
78
|
+
return null;
|
|
79
|
+
const body = err.body && typeof err.body === "object" && !Array.isArray(err.body)
|
|
80
|
+
? err.body
|
|
81
|
+
: undefined;
|
|
82
|
+
if (err.code === GRANT_DENIED_CODE || body?.reasonCode === GRANT_DENIED_CODE) {
|
|
83
|
+
return typeof body?.action === "string" && body.action ? { action: body.action } : {};
|
|
84
|
+
}
|
|
85
|
+
const said = err.detail ?? "";
|
|
86
|
+
if (!said.startsWith(GRANT_DENIAL_PREFIX))
|
|
87
|
+
return null;
|
|
88
|
+
const named = /^This key's grant does not allow "([^"]+)"/.exec(said);
|
|
89
|
+
return named ? { action: named[1] } : {};
|
|
90
|
+
}
|
|
50
91
|
/**
|
|
51
92
|
* A failed Hub call, carrying the structured facts callers need to branch on.
|
|
52
93
|
*
|
|
@@ -60,6 +101,13 @@ export class HubError extends Error {
|
|
|
60
101
|
status;
|
|
61
102
|
code;
|
|
62
103
|
reason;
|
|
104
|
+
/**
|
|
105
|
+
* What the pod itself said, without the `Hub <METHOD> <path> failed` prefix
|
|
106
|
+
* `message` carries. Read a hint's words from here, never from `message`:
|
|
107
|
+
* the path is in `message`, so `/workspace/i` over it matched every refusal
|
|
108
|
+
* on a `/workspaces` route (finding de33a075).
|
|
109
|
+
*/
|
|
110
|
+
detail;
|
|
63
111
|
body;
|
|
64
112
|
rawBody;
|
|
65
113
|
path;
|
|
@@ -74,6 +122,7 @@ export class HubError extends Error {
|
|
|
74
122
|
this.status = init.status;
|
|
75
123
|
this.code = init.code;
|
|
76
124
|
this.reason = init.reason;
|
|
125
|
+
this.detail = init.detail;
|
|
77
126
|
this.body = init.body;
|
|
78
127
|
this.rawBody = init.rawBody;
|
|
79
128
|
this.path = init.path;
|
|
@@ -270,6 +319,7 @@ function hubError(method, path, status, rawBody, suffix, ctx) {
|
|
|
270
319
|
status,
|
|
271
320
|
code,
|
|
272
321
|
reason,
|
|
322
|
+
detail,
|
|
273
323
|
body: parsed,
|
|
274
324
|
rawBody,
|
|
275
325
|
path,
|
|
@@ -315,13 +365,13 @@ export function helpFooterLine() {
|
|
|
315
365
|
* in utils/logger so the logger stays domain-agnostic and the taxonomy and its
|
|
316
366
|
* presentation sit in one file. Always closes with the one-time help footer.
|
|
317
367
|
*/
|
|
318
|
-
export function renderHubError(err) {
|
|
319
|
-
renderHubErrorBody(err);
|
|
368
|
+
export function renderHubError(err, opts = {}) {
|
|
369
|
+
renderHubErrorBody(err, opts);
|
|
320
370
|
// ONE central place every failed Hub command flows through — append the help
|
|
321
371
|
// footer here so it prints once per failed command (guarded), not per line.
|
|
322
372
|
helpFooterLine();
|
|
323
373
|
}
|
|
324
|
-
function renderHubErrorBody(err) {
|
|
374
|
+
function renderHubErrorBody(err, opts) {
|
|
325
375
|
// Hints use log.hint (stderr), not log.dim (stdout): a hint belongs to the
|
|
326
376
|
// error it explains, and splitting one message across two streams means
|
|
327
377
|
// `2>/dev/null` shows a bare hint with no error above it.
|
|
@@ -400,16 +450,37 @@ function renderHubErrorBody(err) {
|
|
|
400
450
|
// template or data problem. Only add the generic pod-fault hint when the body
|
|
401
451
|
// gave nothing better than the status phrase.
|
|
402
452
|
const hasSpecificCause = !!err.rawBody && !err.message.endsWith("the pod hit an internal error");
|
|
403
|
-
// A
|
|
404
|
-
//
|
|
405
|
-
//
|
|
406
|
-
//
|
|
407
|
-
const
|
|
453
|
+
// A limited key refused at the door: the pod says so in a structured `code`
|
|
454
|
+
// (synap-backend access/grant-door-fence.ts, the Hub auth middleware), for a
|
|
455
|
+
// read door no grant bounds yet and for a door that acts on everything the
|
|
456
|
+
// person owns. It says nothing about any workspace.
|
|
457
|
+
const limitedKeyRefusal = err.status === 403 && err.code === GRANT_DOOR_UNSUPPORTED_CODE;
|
|
458
|
+
// A limited key whose grant leaves this action out (no code: the pod's
|
|
459
|
+
// words, `grantDenialOf`). Refused by design; its words often name a
|
|
460
|
+
// workspace ("workspace.update", "in workspace <id>"), which is no reason to
|
|
461
|
+
// say the workspace is missing.
|
|
462
|
+
const grantDenial = grantDenialOf(err);
|
|
463
|
+
// A 403 whose OWN words name a workspace: the real cause is almost always
|
|
464
|
+
// "that workspace doesn't exist or isn't accessible ON THIS POD" (a stale
|
|
465
|
+
// saved workspace id after a pod switch), not a scopes problem — name it +
|
|
466
|
+
// the exact next command instead of the generic "credentials" hint. The
|
|
467
|
+
// pod's words (`detail`), never `message`: that one carries the path.
|
|
468
|
+
const namesWorkspace = !limitedKeyRefusal && !grantDenial && /workspace/i.test(err.detail ?? "");
|
|
408
469
|
if (err.status >= 500) {
|
|
409
470
|
if (!hasSpecificCause) {
|
|
410
471
|
log.hint("The pod hit an internal error — check the pod logs for the stack trace.");
|
|
411
472
|
}
|
|
412
473
|
}
|
|
474
|
+
else if (limitedKeyRefusal) {
|
|
475
|
+
log.hint(`This key is limited (a computer's or an agent's key), and the pod does not let a limited key use ${err.method} ${err.path}. Nothing is wrong with your workspace.`);
|
|
476
|
+
log.hint("Until your pod opens this door to limited keys, do it with full access: in the Synap app, or with a full-access key in SYNAP_HUB_API_KEY.");
|
|
477
|
+
}
|
|
478
|
+
else if (grantDenial) {
|
|
479
|
+
const what = grantDenial.action ? `"${grantDenial.action}"` : "this action";
|
|
480
|
+
log.hint(`This key may not do ${what}: it is a limited key (a computer's or an agent's), and its grant leaves that out on purpose. Nothing is wrong with your workspace.`);
|
|
481
|
+
log.hint(opts.personDoor ??
|
|
482
|
+
"Do it yourself with full access: in the Synap app or pod admin.");
|
|
483
|
+
}
|
|
413
484
|
else if (err.status === 403 && namesWorkspace) {
|
|
414
485
|
// Name the exact workspace + pod this call used: the usual cause is a global
|
|
415
486
|
// active workspace left over from ANOTHER pod (a stale `synap use` after a
|
|
@@ -740,6 +811,12 @@ const HUB_429_MAX_RETRIES = 12;
|
|
|
740
811
|
const HUB_429_DEFAULT_WAIT_MS = 62_000;
|
|
741
812
|
/** Never sleep more than this on a single 429 (proxies sometimes send 180+). */
|
|
742
813
|
const HUB_429_MAX_WAIT_MS = 75_000;
|
|
814
|
+
/**
|
|
815
|
+
* Never wait more than this in total on one request. 12 waits of up to 75s
|
|
816
|
+
* was ~15 minutes of a terminal that looked hung; past this budget the call
|
|
817
|
+
* fails and says so.
|
|
818
|
+
*/
|
|
819
|
+
export const HUB_429_MAX_TOTAL_WAIT_MS = 150_000;
|
|
743
820
|
/**
|
|
744
821
|
* Client-side request budget — stay UNDER the server limit so we rarely 429.
|
|
745
822
|
* Default 80/min is safe for pods still on the old 100/min auth limit.
|
|
@@ -782,26 +859,59 @@ async function acquireHubSlot() {
|
|
|
782
859
|
}
|
|
783
860
|
}
|
|
784
861
|
/**
|
|
785
|
-
*
|
|
786
|
-
*
|
|
862
|
+
* The wait (ms) a pod 429 asks for, capped at 75s so a bad proxy header never
|
|
863
|
+
* parks the importer. The pod sends the wait in three shapes, and this reads
|
|
864
|
+
* all of them: the `Retry-After` header (seconds), a JSON body's numeric
|
|
865
|
+
* `retryAfter` (hub commands door) or `cause.retryAfterSec`, and the text
|
|
866
|
+
* "Retry after 60s." the key limiter writes into its message.
|
|
787
867
|
*/
|
|
788
|
-
function retryAfterMs(res, bodyText) {
|
|
868
|
+
export function retryAfterMs(res, bodyText) {
|
|
869
|
+
const cap = (sec) => Math.min(Math.max(sec * 1000, 1_000), HUB_429_MAX_WAIT_MS);
|
|
870
|
+
const positive = (n) => typeof n === "number" && Number.isFinite(n) && n > 0;
|
|
789
871
|
const h = res.headers.get("retry-after");
|
|
790
872
|
if (h) {
|
|
791
873
|
const sec = parseInt(h, 10);
|
|
792
|
-
if (
|
|
793
|
-
return
|
|
874
|
+
if (positive(sec))
|
|
875
|
+
return cap(sec);
|
|
876
|
+
}
|
|
877
|
+
try {
|
|
878
|
+
const body = JSON.parse(bodyText);
|
|
879
|
+
const cause = body?.cause;
|
|
880
|
+
for (const v of [body?.retryAfter, body?.retryAfterSec, cause?.retryAfterSec]) {
|
|
881
|
+
if (positive(v))
|
|
882
|
+
return cap(v);
|
|
794
883
|
}
|
|
795
884
|
}
|
|
885
|
+
catch {
|
|
886
|
+
// not JSON: fall through to the text shape
|
|
887
|
+
}
|
|
796
888
|
const m = bodyText.match(/retry after\s+(\d+)\s*s/i);
|
|
797
889
|
if (m) {
|
|
798
890
|
const sec = parseInt(m[1], 10);
|
|
799
|
-
if (
|
|
800
|
-
return
|
|
801
|
-
}
|
|
891
|
+
if (positive(sec))
|
|
892
|
+
return cap(sec);
|
|
802
893
|
}
|
|
803
894
|
return HUB_429_DEFAULT_WAIT_MS;
|
|
804
895
|
}
|
|
896
|
+
/**
|
|
897
|
+
* After a 429: say what is happening, sleep the pod's wait, or give up with a
|
|
898
|
+
* plain error once the retry count or the total wait budget is spent. Both
|
|
899
|
+
* the JSON and the multipart doors use it, so they cannot drift.
|
|
900
|
+
*/
|
|
901
|
+
async function waitOutRateLimit(res, state, method, path, label) {
|
|
902
|
+
state.attempt++;
|
|
903
|
+
const bodyText = await res.text().catch(() => "");
|
|
904
|
+
if (state.attempt > HUB_429_MAX_RETRIES) {
|
|
905
|
+
throw hubError(method, path, 429, bodyText, `after ${HUB_429_MAX_RETRIES} retries`);
|
|
906
|
+
}
|
|
907
|
+
const wait = retryAfterMs(res, bodyText);
|
|
908
|
+
if (state.waitedMs + wait > HUB_429_MAX_TOTAL_WAIT_MS) {
|
|
909
|
+
throw hubError(method, path, 429, bodyText, `after waiting ${Math.round(state.waitedMs / 1000)}s (rate-limited; the pod is up, try again in a minute)`);
|
|
910
|
+
}
|
|
911
|
+
console.error(`[hub] rate-limited; the pod is up; retrying in ${Math.ceil(wait / 1000)}s (${label}, retry ${state.attempt}/${HUB_429_MAX_RETRIES})`);
|
|
912
|
+
state.waitedMs += wait;
|
|
913
|
+
await sleep(wait);
|
|
914
|
+
}
|
|
805
915
|
/**
|
|
806
916
|
* fetch with client pacing + automatic 429 backoff.
|
|
807
917
|
*
|
|
@@ -811,7 +921,7 @@ function retryAfterMs(res, bodyText) {
|
|
|
811
921
|
async function hubFetchWithRetry(url, init, label, timeoutMs) {
|
|
812
922
|
const [labelMethod, ...labelRest] = label.split(" ");
|
|
813
923
|
const labelPath = labelRest.join(" ");
|
|
814
|
-
|
|
924
|
+
const rl = { attempt: 0, waitedMs: 0 };
|
|
815
925
|
for (;;) {
|
|
816
926
|
await acquireHubSlot();
|
|
817
927
|
let res;
|
|
@@ -825,15 +935,7 @@ async function hubFetchWithRetry(url, init, label, timeoutMs) {
|
|
|
825
935
|
}
|
|
826
936
|
if (res.status !== 429)
|
|
827
937
|
return res;
|
|
828
|
-
|
|
829
|
-
if (attempt > HUB_429_MAX_RETRIES) {
|
|
830
|
-
const bodyText = await res.text().catch(() => "");
|
|
831
|
-
throw hubError(labelMethod, labelPath, 429, bodyText, `after ${HUB_429_MAX_RETRIES} retries`);
|
|
832
|
-
}
|
|
833
|
-
const bodyText = await res.text().catch(() => "");
|
|
834
|
-
const wait = retryAfterMs(res, bodyText);
|
|
835
|
-
console.error(`[hub] 429 rate limit on ${label} — waiting ${Math.ceil(wait / 1000)}s (retry ${attempt}/${HUB_429_MAX_RETRIES})`);
|
|
836
|
-
await sleep(wait);
|
|
938
|
+
await waitOutRateLimit(res, rl, labelMethod, labelPath, label);
|
|
837
939
|
}
|
|
838
940
|
}
|
|
839
941
|
export async function hubGet(path, params, cfg,
|
|
@@ -915,7 +1017,7 @@ export async function hubPostMultipart(path, form, cfg, timeoutMs = 120_000) {
|
|
|
915
1017
|
* can only be read once).
|
|
916
1018
|
*/
|
|
917
1019
|
export async function hubPostMultipartRetryable(path, buildForm, cfg, timeoutMs = 120_000) {
|
|
918
|
-
|
|
1020
|
+
const rl = { attempt: 0, waitedMs: 0 };
|
|
919
1021
|
for (;;) {
|
|
920
1022
|
await acquireHubSlot();
|
|
921
1023
|
const form = buildForm();
|
|
@@ -941,15 +1043,7 @@ export async function hubPostMultipartRetryable(path, buildForm, cfg, timeoutMs
|
|
|
941
1043
|
}
|
|
942
1044
|
return res.json();
|
|
943
1045
|
}
|
|
944
|
-
|
|
945
|
-
if (attempt > HUB_429_MAX_RETRIES) {
|
|
946
|
-
const bodyText = await res.text().catch(() => "");
|
|
947
|
-
throw hubError("POST multipart", path, 429, bodyText, `after ${HUB_429_MAX_RETRIES} retries`);
|
|
948
|
-
}
|
|
949
|
-
const bodyText = await res.text().catch(() => "");
|
|
950
|
-
const wait = retryAfterMs(res, bodyText);
|
|
951
|
-
console.error(`[hub] 429 rate limit on POST multipart ${path} — waiting ${Math.ceil(wait / 1000)}s (retry ${attempt}/${HUB_429_MAX_RETRIES})`);
|
|
952
|
-
await sleep(wait);
|
|
1046
|
+
await waitOutRateLimit(res, rl, "POST multipart", path, `POST multipart ${path}`);
|
|
953
1047
|
}
|
|
954
1048
|
}
|
|
955
1049
|
export async function hubPatch(path, body, cfg) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hub-client.js","sourceRoot":"","sources":["../../src/lib/hub-client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hub-client.js","sourceRoot":"","sources":["../../src/lib/hub-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,0BAA0B,EAC1B,gBAAgB,EAChB,uBAAuB,EACvB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,kBAAkB,GACnB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,SAAS,EACT,cAAc,GACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,EACL,sBAAsB,EACtB,0BAA0B,EAC1B,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AACzC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B;;;;;;;;;;GAUG;AACH,SAAS,sBAAsB,CAC7B,MAAc,EACd,IAMC;IAED,IAAI,IAAI,CAAC,aAAa;QAAE,OAAO,IAAI,CAAC,aAAa,CAAC;IAClD,IAAI,IAAI,CAAC,gBAAgB;QAAE,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAExD,gFAAgF;IAChF,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC,UAAU,CAAC;IAEpE,MAAM,QAAQ,GAAG,eAAe,EAAE,CAAC;IACnC,MAAM,OAAO,GAAG,uBAAuB,EAAE,CAAC;IAC1C,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;QAClE,IAAI,QAAQ,IAAI,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;YAC9D,OAAO,OAAO,CAAC,SAAS,CAAC;QAC3B,CAAC;QACD,+CAA+C;QAC/C,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,kFAAkF;IAClF,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;IACpC,IAAI,MAAM,IAAI,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;QACnD,OAAO,kBAAkB,EAAE,IAAI,SAAS,CAAC;IAC3C,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,wBAAwB,CAAC;AAEpE;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,cAAc,CAAC;AAEhD;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,iCAAiC,CAAC;AAErE;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,GAAY;IACxC,IAAI,CAAC,CAAC,GAAG,YAAY,QAAQ,CAAC,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IAClE,MAAM,IAAI,GACR,GAAG,CAAC,IAAI,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;QAClE,CAAC,CAAE,GAAG,CAAC,IAAgC;QACvC,CAAC,CAAC,SAAS,CAAC;IAChB,IAAI,GAAG,CAAC,IAAI,KAAK,iBAAiB,IAAI,IAAI,EAAE,UAAU,KAAK,iBAAiB,EAAE,CAAC;QAC7E,OAAO,OAAO,IAAI,EAAE,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACxF,CAAC;IACD,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;IAC9B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC;QAAE,OAAO,IAAI,CAAC;IACvD,MAAM,KAAK,GAAG,4CAA4C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtE,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC3C,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,OAAO,QAAS,SAAQ,KAAK;IACxB,MAAM,CAAS;IACf,IAAI,CAAU;IACd,MAAM,CAAU;IACzB;;;;;OAKG;IACM,MAAM,CAAU;IAChB,IAAI,CAAW;IACf,OAAO,CAAS;IAChB,IAAI,CAAS;IACb,MAAM,CAAS;IACxB,4EAA4E;IACnE,MAAM,CAAU;IACzB,yEAAyE;IAChE,WAAW,CAAU;IAE9B,YAAY,IAYX;QACC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpB,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IACtC,CAAC;CACF;AAED;;;;;;;GAOG;AACH,MAAM,OAAO,eAAgB,SAAQ,KAAK;IACxC,8EAA8E;IACrE,IAAI,CAAS;IACb,MAAM,CAAS;IACf,IAAI,CAAS;IACb,MAAM,CAAS;IACxB,yEAAyE;IAChE,IAAI,CAAS;IAEtB,YAAY,IAQX;QACC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAC3C,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IACxB,CAAC;CACF;AAED,mFAAmF;AACnF,SAAS,QAAQ,CAAC,GAAW;IAC3B,IAAI,CAAC;QACH,OAAO,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,GAAG,CAAC;IACb,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,YAAY,CACnB,GAAY,EACZ,GAAW,EACX,MAAc,EACd,IAAY,EACZ,SAAiB;IAEjB,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC7B,MAAM,IAAI,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IAClD,MAAM,KAAK,GAAI,GAAkC,EAAE,KAAK,CAAC;IACzD,MAAM,OAAO,GACX,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAQ,KAA4B,CAAC,IAAI,KAAK,QAAQ;QAC1F,CAAC,CAAC,CAAE,KAA0B,CAAC,IAAI,CAAC;QACpC,CAAC,CAAC,EAAE,CAAC;IAET,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,MAAc,EAAE,IAAY,EAAE,EAAE,CAC1D,IAAI,eAAe,CAAC;QAClB,OAAO,EAAE,OAAO,MAAM,IAAI,IAAI,YAAY,MAAM,EAAE;QAClD,IAAI;QACJ,MAAM;QACN,IAAI;QACJ,MAAM;QACN,IAAI;QACJ,KAAK,EAAE,GAAG;KACX,CAAC,CAAC;IAEL,iFAAiF;IACjF,mEAAmE;IACnE,IACE,IAAI,KAAK,cAAc;QACvB,IAAI,KAAK,YAAY;QACrB,OAAO,KAAK,WAAW;QACvB,OAAO,KAAK,yBAAyB;QACrC,OAAO,KAAK,yBAAyB,EACrC,CAAC;QACD,OAAO,IAAI,CACT,SAAS,EACT,+BAA+B,MAAM,UAAU,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAC9E,+HAA+H,CAChI,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;QACvD,OAAO,IAAI,CACT,OAAO,EACP,sCAAsC,MAAM,EAAE,EAC9C,OAAO,KAAK,WAAW;YACrB,CAAC,CAAC,2EAA2E;YAC7E,CAAC,CAAC,gHAAgH,CACrH,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,KAAK,cAAc,EAAE,CAAC;QAC/B,OAAO,IAAI,CACT,OAAO,EACP,cAAc,MAAM,yBAAyB,EAC7C,8GAA8G,CAC/G,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,KAAK,YAAY,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACpD,OAAO,IAAI,CACT,OAAO,EACP,qBAAqB,MAAM,0BAA0B,EACrD,wGAAwG,CACzG,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,KAAK,aAAa,IAAI,OAAO,KAAK,cAAc,EAAE,CAAC;QAC5D,OAAO,IAAI,CACT,OAAO,EACP,uBAAuB,MAAM,EAAE,EAC/B,0FAA0F,CAC3F,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,OAAO,KAAK,iCAAiC,IAAI,OAAO,KAAK,6BAA6B,EAAE,CAAC;QACnM,OAAO,IAAI,CACT,OAAO,EACP,0BAA0B,MAAM,kBAAkB,OAAO,GAAG,EAC5D,6FAA6F,CAC9F,CAAC;IACJ,CAAC;IAED,+EAA+E;IAC/E,8CAA8C;IAC9C,MAAM,MAAM,GAAG,OAAO;QACpB,CAAC,CAAC,8BAA8B,MAAM,KAAK,OAAO,GAAG;QACrD,CAAC,CAAC,8BAA8B,MAAM,EAAE,CAAC;IAC3C,OAAO,IAAI,CACT,OAAO,IAAI,SAAS,EACpB,MAAM,EACN,wEAAwE,CACzE,CAAC;AACJ,CAAC;AAED,2EAA2E;AAC3E,SAAS,YAAY,CAAC,MAAc;IAClC,IAAI,MAAM,IAAI,GAAG;QAAE,OAAO,+BAA+B,CAAC;IAC1D,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,GAAG;YACN,OAAO,yCAAyC,CAAC;QACnD,KAAK,GAAG;YACN,OAAO,0CAA0C,CAAC;QACpD,KAAK,GAAG;YACN,OAAO,gCAAgC,CAAC;QAC1C,KAAK,GAAG;YACN,OAAO,wCAAwC,CAAC;QAClD,KAAK,GAAG;YACN,OAAO,8CAA8C,CAAC;QACxD,KAAK,GAAG;YACN,OAAO,mCAAmC,CAAC;QAC7C;YACE,OAAO,uCAAuC,CAAC;IACnD,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,aAAa,CACpB,MAAc,EACd,OAAe;IAEf,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAC/B,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;IAEtD,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,4EAA4E;QAC5E,4DAA4D;QAC5D,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC7C,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IAClF,CAAC;IAED,kGAAkG;IAClG,2EAA2E;IAC3E,yEAAyE;IACzE,wEAAwE;IACxE,oEAAoE;IACpE,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAwC,CAAC;QAC/D,MAAM,GAAG,GAAG,KAAK,EAAE,KAA4C,CAAC;QAChE,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YACnC,MAAM,IAAI,GAAG,GAAG,CAAC,IAA2C,CAAC;YAC7D,MAAM,GAAG,IAAI,IAAI,GAAG,CAAC;QACvB,CAAC;IACH,CAAC;SAAM,IACL,MAAM;QACN,OAAO,MAAM,KAAK,QAAQ;QAC1B,OAAO,IAAK,MAAkC,EAC9C,CAAC;QACD,kEAAkE;QAClE,0EAA0E;QAC1E,gEAAgE;QAChE,uEAAuE;QACvE,MAAM,MAAM,GAAI,MAAkC,CAAC,KAAK,CAAC;QACzD,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YACzC,MAAM,MAAM,GAAG,MAAiC,CAAC;YACjD,MAAM,IAAI,GAAG,MAAM,CAAC,IAA2C,CAAC;YAChE,MAAM,GAAG,IAAI,IAAI,MAAM,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QACzC,MAAM,CAAC,GAAG,MAAiC,CAAC;QAC5C,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;QAC7D,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;QACnE,MAAM,GAAG,GAAG,CAAC,CAAU,EAAsB,EAAE,CAC7C,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC7C,iEAAiE;QACjE,6EAA6E;QAC7E,6EAA6E;QAC7E,4EAA4E;QAC5E,8EAA8E;QAC9E,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAC/B,MAAM,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAChC,MAAM,WAAW,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAClC,MAAM,MAAM,GACV,OAAO;YACP,CAAC,UAAU,IAAI,WAAW;gBACxB,CAAC,CAAC,GAAG,UAAU,KAAK,WAAW,EAAE;gBACjC,CAAC,CAAC,UAAU,IAAI,WAAW,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;QACzD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IAC1C,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;AAClD,CAAC;AAED,qDAAqD;AACrD,SAAS,QAAQ,CACf,MAAc,EACd,IAAY,EACZ,MAAc,EACd,OAAe,EACf,MAAe,EACf,GAA+C;IAE/C,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxE,OAAO,IAAI,QAAQ,CAAC;QAClB,OAAO,EAAE,OAAO,MAAM,IAAI,IAAI,iBAAiB,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,EAAE;QAChG,MAAM;QACN,IAAI;QACJ,MAAM;QACN,MAAM;QACN,IAAI,EAAE,MAAM;QACZ,OAAO;QACP,IAAI;QACJ,MAAM;QACN,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;QACtD,WAAW,EAAE,GAAG,EAAE,WAAW;KAC9B,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,qCAAqC,CAAC;AACjE,MAAM,kBAAkB,GAAG,+BAA+B,CAAC;AAE3D,yEAAyE;AACzE,SAAS,QAAQ,CAAC,GAAW,EAAE,KAAa;IAC1C,OAAO,WAAW,GAAG,SAAS,KAAK,gBAAgB,CAAC;AACtD,CAAC;AAED;;;;GAIG;AACH,IAAI,UAAU,GAAG,KAAK,CAAC;AAEvB;;;;;;GAMG;AACH,MAAM,UAAU,cAAc;IAC5B,IAAI,UAAU;QAAE,OAAO;IACvB,UAAU,GAAG,IAAI,CAAC;IAClB,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAChF,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CACP,iCAAiC,IAAI,CAAC,WAAW,CAAC,0BAA0B,IAAI,CAAC,kBAAkB,CAAC,GAAG,CACxG,CACF,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAC5B,GAAY,EACZ,OAOI,EAAE;IAEN,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC9B,6EAA6E;IAC7E,4EAA4E;IAC5E,cAAc,EAAE,CAAC;AACnB,CAAC;AAED,SAAS,kBAAkB,CAAC,GAAY,EAAE,IAA6B;IACrE,2EAA2E;IAC3E,wEAAwE;IACxE,0DAA0D;IAC1D,IAAI,GAAG,YAAY,eAAe,EAAE,CAAC;QACnC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACvB,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnB,OAAO;IACT,CAAC;IACD,IAAI,GAAG,YAAY,aAAa,EAAE,CAAC;QACjC,2CAA2C;QAC3C,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACvB,OAAO;IACT,CAAC;IACD,IAAI,CAAC,CAAC,GAAG,YAAY,QAAQ,CAAC,EAAE,CAAC;QAC/B,GAAG,CAAC,KAAK,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5D,OAAO;IACT,CAAC;IACD,yEAAyE;IACzE,+EAA+E;IAC/E,gFAAgF;IAChF,4EAA4E;IAC5E,yCAAyC;IACzC,MAAM,OAAO,GAAG,GAAG,CAAC,IAEP,CAAC;IACd,MAAM,UAAU,GAAG,OAAO,EAAE,UAAU,CAAC;IACvC,IAAI,UAAU,KAAK,MAAM,IAAI,UAAU,KAAK,eAAe,EAAE,CAAC;QAC5D,MAAM,QAAQ,GAAG,OAAO,EAAE,WAAW;YACnC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;YACjC,CAAC,CAAC,mBAAmB,CAAC;QACxB,GAAG,CAAC,KAAK,CACP,OAAO,QAAQ,yEAAyE,CACzF,CAAC;QACF,GAAG,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;QACxE,GAAG,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;QAC3D,OAAO;IACT,CAAC;IACD,IAAI,UAAU,KAAK,gBAAgB,EAAE,CAAC;QACpC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACvB,GAAG,CAAC,IAAI,CACN,wFAAwF,CACzF,CAAC;QACF,OAAO;IACT,CAAC;IACD,+EAA+E;IAC/E,4EAA4E;IAC5E,+EAA+E;IAC/E,yEAAyE;IACzE,gFAAgF;IAChF,6EAA6E;IAC7E,MAAM,SAAS,GAAG,GAAG,CAAC,IAMT,CAAC;IACd,MAAM,YAAY,GAAG,SAAS,EAAE,YAAY,CAAC;IAC7C,IAAI,YAAY,KAAK,eAAe,EAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,SAAS,EAAE,UAAU,EAAE,QAAQ,CAAC;QACjD,GAAG,CAAC,KAAK,CACP,QAAQ;YACN,CAAC,CAAC,QAAQ,QAAQ,yEAAyE,QAAQ,KAAK;YACxG,CAAC,CAAC,+FAA+F,CACpG,CAAC;QACF,OAAO;IACT,CAAC;IACD,IAAI,YAAY,KAAK,eAAe,EAAE,CAAC;QACrC,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,aAAa,CAAC;YAC3D,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,MAAM,CAC5B,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CACtD;YACH,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,KAAK,CACP,aAAa,CAAC,MAAM,GAAG,CAAC;YACtB,CAAC,CAAC,8BAA8B,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC1D,CAAC,CAAC,4BAA4B,CACjC,CAAC;QACF,OAAO;IACT,CAAC;IACD,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACvB,6EAA6E;IAC7E,uEAAuE;IACvE,qCAAqC;IACrC,MAAM,OAAO,GACX,OAAQ,GAAG,CAAC,IAA0C,EAAE,OAAO,KAAK,QAAQ;QAC1E,CAAC,CAAE,GAAG,CAAC,IAA4B,CAAC,OAAO;QAC3C,CAAC,CAAC,SAAS,CAAC;IAChB,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,IAAI,OAAO,EAAE,CAAC;QACjC,GAAG,CAAC,IAAI,CAAC,YAAY,OAAO,EAAE,CAAC,CAAC;IAClC,CAAC;IACD,2EAA2E;IAC3E,uEAAuE;IACvE,yEAAyE;IACzE,8EAA8E;IAC9E,8CAA8C;IAC9C,MAAM,gBAAgB,GACpB,CAAC,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,+BAA+B,CAAC,CAAC;IAC1E,4EAA4E;IAC5E,6EAA6E;IAC7E,2EAA2E;IAC3E,oDAAoD;IACpD,MAAM,iBAAiB,GACrB,GAAG,CAAC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,2BAA2B,CAAC;IACjE,uEAAuE;IACvE,qEAAqE;IACrE,6EAA6E;IAC7E,gCAAgC;IAChC,MAAM,WAAW,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IACvC,0EAA0E;IAC1E,0EAA0E;IAC1E,2EAA2E;IAC3E,wEAAwE;IACxE,sEAAsE;IACtE,MAAM,cAAc,GAClB,CAAC,iBAAiB,IAAI,CAAC,WAAW,IAAI,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IAC5E,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,GAAG,CAAC,IAAI,CAAC,yEAAyE,CAAC,CAAC;QACtF,CAAC;IACH,CAAC;SAAM,IAAI,iBAAiB,EAAE,CAAC;QAC7B,GAAG,CAAC,IAAI,CACN,oGAAoG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,yCAAyC,CACpK,CAAC;QACF,GAAG,CAAC,IAAI,CACN,2IAA2I,CAC5I,CAAC;IACJ,CAAC;SAAM,IAAI,WAAW,EAAE,CAAC;QACvB,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC;QAC5E,GAAG,CAAC,IAAI,CACN,uBAAuB,IAAI,qIAAqI,CACjK,CAAC;QACF,GAAG,CAAC,IAAI,CACN,IAAI,CAAC,UAAU;YACb,iEAAiE,CACpE,CAAC;IACJ,CAAC;SAAM,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,IAAI,cAAc,EAAE,CAAC;QAChD,6EAA6E;QAC7E,2EAA2E;QAC3E,wDAAwD;QACxD,IAAI,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YAClC,oEAAoE;YACpE,oEAAoE;YACpE,yEAAyE;YACzE,uEAAuE;YACvE,0EAA0E;YAC1E,2EAA2E;YAC3E,GAAG,CAAC,IAAI,CAAC,kBAAkB,GAAG,CAAC,WAAW,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;YAChE,GAAG,CAAC,IAAI,CAAC,iHAAiH,CAAC,CAAC;YAC5H,GAAG,CAAC,IAAI,CAAC,sHAAsH,CAAC,CAAC;QACnI,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,IAAI,CAAC,kHAAkH,CAAC,CAAC;QAC/H,CAAC;IACH,CAAC;SAAM,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QACpD,GAAG,CAAC,IAAI,CAAC,6FAA6F,CAAC,CAAC;IAC1G,CAAC;SAAM,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QAC9B,sEAAsE;QACtE,wEAAwE;QACxE,wEAAwE;QACxE,qEAAqE;QACrE,+DAA+D;QAC/D,mDAAmD;QACnD,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;YACjD,GAAG,CAAC,IAAI,CAAC,8FAA8F,CAAC,CAAC;QAC3G,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,IAAI,CAAC,uHAAuH,CAAC,CAAC;QACpI,CAAC;IACH,CAAC;AACH,CAAC;AA2BD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;AAE9C,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,GAAc;IAChD,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK;QAAE,OAAO,GAAG,CAAC,MAAM,CAAC;IAC1D,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3C,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAC1B,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;IAC9C,MAAM,EAAE,GAAG,MAAM,CAAE,EAA8B,CAAC,EAAE,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IACpE,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAChC,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,GAAc,EAAE,QAAgB;IAC1D,6EAA6E;IAC7E,IAAI,CAAC,GAAG,CAAC,MAAM;QAAE,OAAO;IACxB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CACb,sCAAsC,QAAQ,IAAI;YAClD,+EAA+E,CAChF,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAA2C;IAChF,2EAA2E;IAC3E,8EAA8E;IAC9E,4EAA4E;IAC5E,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,IAAI,WAAW,EAAE,CAAC;QAChB,2EAA2E;QAC3E,4EAA4E;QAC5E,uEAAuE;QACvE,MAAM,YAAY,GAAG,gBAAgB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAC1D,MAAM,MAAM,GACV,0BAA0B,CAAC,YAAY,CAAC;YACxC,4EAA4E;YAC5E,8EAA8E;YAC9E,SAAS,CAAC;QACZ,OAAO;YACL,MAAM,EAAE,WAAW,CAAC,MAAM;YAC1B,MAAM,EAAE,WAAW,CAAC,SAAS;YAC7B,iFAAiF;YACjF,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,WAAW,CAAC,WAAW,IAAI,SAAS;YACjD,WAAW,EAAE,MAAM;YACnB,SAAS,EAAE,sBAAsB,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC;SAC1D,CAAC;IACJ,CAAC;IACD,mCAAmC;IACnC,IAAI,IAAI,EAAE,MAAM,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC;QACjC,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,KAAK;SAC3C,CAAC;IACJ,CAAC;IACD,kEAAkE;IAClE,MAAM,aAAa,GAAG,oBAAoB,EAAE,CAAC;IAC7C,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,QAAQ,GAAG,eAAe,EAAE,CAAC;QACnC,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,OAAO,CAAC,CAAC;QACxE,MAAM,MAAM,GAAG,UAAU,EAAE,MAAM,CAAC,MAAM,IAAI,kBAAkB,EAAE,EAAE,MAAM,IAAI,EAAE,CAAC;QAC/E,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;QAC/C,OAAO;YACL,MAAM;YACN,MAAM,EAAE,aAAa,CAAC,MAAM;YAC5B,wEAAwE;YACxE,iEAAiE;YACjE,MAAM,EAAE,KAAK;YACb,oEAAoE;YACpE,mEAAmE;YACnE,qEAAqE;YACrE,WAAW,EAAE,aAAa,CAAC,WAAW,IAAI,SAAS;YACnD,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;SACrD,CAAC;IACJ,CAAC;IACD,4DAA4D;IAC5D,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;IACzC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;IAC7C,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;IAC1C,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;IAC/C,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IACpD,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;IAChD,0EAA0E;IAC1E,qEAAqE;IACrE,2EAA2E;IAC3E,0EAA0E;IAC1E,yEAAyE;IACzE,0DAA0D;IAC1D,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;QACrB,0EAA0E;QAC1E,sEAAsE;QACtE,sEAAsE;QACtE,yEAAyE;QACzE,uEAAuE;QACvE,wEAAwE;QACxE,oEAAoE;QACpE,yEAAyE;QACzE,oCAAoC;QACpC,MAAM,SAAS,GAAG,0BAA0B,CAAC;YAC3C,MAAM;YACN,MAAM;YACN,OAAO;YACP,OAAO,EAAE,kBAAkB,CAAC,aAAa,EAAE,MAAM,CAAC;SACnD,CAAC,CAAC;QACH,IAAI,SAAS,CAAC,WAAW,EAAE,CAAC;YAC1B,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,mGAAmG,MAAM,yDAAyD,CACnK,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;QAChC,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;QAChC,MAAM,WAAW,GAAG,SAAS,CAAC,WAAW,CAAC;QAC1C,sEAAsE;QACtE,2EAA2E;QAC3E,0EAA0E;QAC1E,kEAAkE;QAClE,0CAA0C;QAC1C,MAAM,IAAI,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;QAC7C,4EAA4E;QAC5E,yEAAyE;QACzE,yEAAyE;QACzE,yEAAyE;QACzE,8CAA8C;QAC9C,MAAM,OAAO,GAAG,0BAA0B,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC;QACzD,OAAO;YACL,MAAM,EAAE,MAAM;YACd,MAAM;YACN,MAAM;YACN,WAAW;YACX,qEAAqE;YACrE,0DAA0D;YAC1D,WAAW,EACT,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,WAAW;gBACpB,YAAY;gBACZ,0BAA0B,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;YACtD,mEAAmE;YACnE,6EAA6E;YAC7E,iEAAiE;YACjE,iEAAiE;YACjE,SAAS,EAAE,sBAAsB,CAAC,MAAM,EAAE;gBACxC,aAAa,EAAE,IAAI,EAAE,SAAS;gBAC9B,gBAAgB,EAAE,OAAO,EAAE,SAAS;gBACpC,UAAU;gBACV,eAAe,EAAE,IAAI;aACtB,CAAC;YACF,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;SACrD,CAAC;IACJ,CAAC;IACD,4BAA4B;IAC5B,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;IACpC,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IACvE,6EAA6E;IAC7E,mEAAmE;IACnE,MAAM,UAAU,GAAG,uBAAuB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC1D,MAAM,aAAa,GAAG,0BAA0B,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC;IACtE,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,MAAM,EAAE,MAAM,CAAC,SAAS;QACxB,0EAA0E;QAC1E,gEAAgE;QAChE,MAAM,EAAE,KAAK;QACb,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,SAAS;QAC5C,yEAAyE;QACzE,uDAAuD;QACvD,WAAW,EACT,UAAU,EAAE,WAAW,IAAI,aAAa,EAAE,WAAW,IAAI,oBAAoB,EAAE;QACjF,0EAA0E;QAC1E,SAAS,EAAE,sBAAsB,CAAC,MAAM,CAAC,MAAM,EAAE;YAC/C,aAAa,EAAE,UAAU,EAAE,SAAS;YACpC,gBAAgB,EAAE,aAAa,EAAE,SAAS;SAC3C,CAAC;KACH,CAAC;AACJ,CAAC;AAED,iFAAiF;AACjF,EAAE;AACF,mDAAmD;AACnD,EAAE;AACF,8EAA8E;AAC9E,EAAE;AACF,gFAAgF;AAChF,qEAAqE;AACrE,2CAA2C;AAC3C,EAAE;AACF,gFAAgF;AAChF,+EAA+E;AAC/E,gEAAgE;AAEhE,8EAA8E;AAC9E,MAAM,mBAAmB,GAAG,gBAAgB,CAAC;AAE7C,IAAI,6BAA6B,GAAG,KAAK,CAAC;AAE1C;;;;;;;;;;;;;GAaG;AACH,SAAS,wBAAwB;IAC/B,IAAI,6BAA6B;QAAE,OAAO;IAC1C,6BAA6B,GAAG,IAAI,CAAC;IACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,mBAAmB,CAAC,CAAC;IAC1D,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;QAAE,OAAO;IAClC,IAAI,EAAsB,CAAC;IAC3B,IAAI,CAAC;QACH,EAAE,GAAG,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,SAAS,CAAC;IAC1D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO;IACT,CAAC;IACD,IAAI,CAAC;QACH,IAAI,EAAE;YAAE,kBAAkB,CAAC,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC,CAAC;QACnD,UAAU,CAAC,QAAQ,CAAC,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,6DAA6D;IACvE,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,uCAAuC,EAAE,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,kCAAkC,CAAC,CAAC,CAAC,oBAAoB,KAAK,CACvI,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAe;IACpD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;IAC7C,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAC5B,wBAAwB,EAAE,CAAC;IAC3B,MAAM,eAAe,GAAG,uBAAuB,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC;IACxE,IAAI,eAAe;QAAE,OAAO,eAAe,CAAC;IAC5C,MAAM,GAAG,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC;IAC/C,OAAO,GAAG,CAAC,CAAC,CAAC,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3E,CAAC;AAKD;;;;;;;;GAQG;AACH,MAAM,UAAU,qBAAqB,CAAC,SAAiB;IACrD,MAAM,aAAa,GAAG,kBAAkB,EAAE,CAAC;IAC3C,IAAI,aAAa,EAAE,CAAC;QAClB,SAAS,CAAC,aAAa,EAAE,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC,CAAC;QACxD,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,kBAAkB,CAAC,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC,CAAC;IAClD,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAe;IACnD,MAAM,QAAQ,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,aAAa,GAAG,kBAAkB,EAAE,CAAC;IAC3C,IAAI,aAAa;QAAE,cAAc,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;IACnE,uBAAuB,CAAC,gBAAgB,CAAC,CAAC;IAC1C,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;GAKG;AACH,SAAS,cAAc,CAAC,GAAe;IACrC,MAAM,EAAE,GAAG,sBAAsB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC/C,OAAO;QACL,GAAG,YAAY,CAAC,WAAW,CAAC;QAC5B,GAAG,mBAAmB,CAAC,kBAAkB,EAAE,CAAC;QAC5C,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACtC,CAAC;AACJ,CAAC;AAED,gFAAgF;AAChF,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAC/B,6EAA6E;AAC7E,MAAM,uBAAuB,GAAG,MAAM,CAAC;AACvC,gFAAgF;AAChF,MAAM,mBAAmB,GAAG,MAAM,CAAC;AACnC;;;;GAIG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,OAAO,CAAC;AAEjD;;;;GAIG;AACH,SAAS,YAAY;IACnB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;IACtC,IAAI,GAAG,EAAE,CAAC;QACR,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC5B,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE;YAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,MAAM,oBAAoB,GAAa,EAAE,CAAC;AAE1C,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AAC/C,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,cAAc;IAC3B,MAAM,GAAG,GAAG,YAAY,EAAE,CAAC;IAC3B,SAAS,CAAC;QACR,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,OACE,oBAAoB,CAAC,MAAM,GAAG,CAAC;YAC/B,oBAAoB,CAAC,CAAC,CAAE,GAAG,GAAG,GAAG,MAAM,EACvC,CAAC;YACD,oBAAoB,CAAC,KAAK,EAAE,CAAC;QAC/B,CAAC;QACD,IAAI,oBAAoB,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;YACtC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC/B,OAAO;QACT,CAAC;QACD,MAAM,IAAI,GAAG,oBAAoB,CAAC,CAAC,CAAE,GAAG,MAAM,GAAG,GAAG,GAAG,EAAE,CAAC;QAC1D,IAAI,IAAI,GAAG,GAAG,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CACX,iBAAiB,oBAAoB,CAAC,MAAM,IAAI,GAAG,2BAA2B,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CACxG,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IAClC,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,GAAa,EAAE,QAAgB;IAC1D,MAAM,GAAG,GAAG,CAAC,GAAW,EAAE,EAAE,CAC1B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,EAAE,KAAK,CAAC,EAAE,mBAAmB,CAAC,CAAC;IAC7D,MAAM,QAAQ,GAAG,CAAC,CAAU,EAAe,EAAE,CAC3C,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACvD,MAAM,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IACzC,IAAI,CAAC,EAAE,CAAC;QACN,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5B,IAAI,QAAQ,CAAC,GAAG,CAAC;YAAE,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IACD,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAmC,CAAC;QACpE,MAAM,KAAK,GAAG,IAAI,EAAE,KAA4C,CAAC;QACjE,KAAK,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,CAAC,EAAE,CAAC;YAC9E,IAAI,QAAQ,CAAC,CAAC,CAAC;gBAAE,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,2CAA2C;IAC7C,CAAC;IACD,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;IACrD,IAAI,CAAC,EAAE,CAAC;QACN,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC/B,IAAI,QAAQ,CAAC,GAAG,CAAC;YAAE,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,uBAAuB,CAAC;AACjC,CAAC;AAOD;;;;GAIG;AACH,KAAK,UAAU,gBAAgB,CAC7B,GAAa,EACb,KAAqB,EACrB,MAAc,EACd,IAAY,EACZ,KAAa;IAEb,KAAK,CAAC,OAAO,EAAE,CAAC;IAChB,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IAClD,IAAI,KAAK,CAAC,OAAO,GAAG,mBAAmB,EAAE,CAAC;QACxC,MAAM,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,SAAS,mBAAmB,UAAU,CAAC,CAAC;IACtF,CAAC;IACD,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACzC,IAAI,KAAK,CAAC,QAAQ,GAAG,IAAI,GAAG,yBAAyB,EAAE,CAAC;QACtD,MAAM,QAAQ,CACZ,MAAM,EACN,IAAI,EACJ,GAAG,EACH,QAAQ,EACR,iBAAiB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,wDAAwD,CAC3G,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,KAAK,CACX,kDAAkD,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,KAAK,WAAW,KAAK,CAAC,OAAO,IAAI,mBAAmB,GAAG,CACtI,CAAC;IACF,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC;IACvB,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;AACpB,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,iBAAiB,CAC9B,GAAW,EACX,IAAiB,EACjB,KAAa,EACb,SAAiB;IAEjB,MAAM,CAAC,WAAW,EAAE,GAAG,SAAS,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACrD,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,EAAE,GAAmB,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;IACvD,SAAS,CAAC;QACR,MAAM,cAAc,EAAE,CAAC;QACvB,IAAI,GAAa,CAAC;QAClB,IAAI,CAAC;YACH,GAAG,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,YAAY,aAAa;gBAAE,MAAM,GAAG,CAAC;YAC5C,MAAM,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG;YAAE,OAAO,GAAG,CAAC;QACnC,MAAM,gBAAgB,CAAC,GAAG,EAAE,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IACjE,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,IAAY,EACZ,MAAmD,EACnD,GAAc;AACd,wEAAwE;AACxE,qEAAqE;AACrE,SAAS,GAAG,MAAM;IAElB,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,WAAW,IAAI,EAAE,CAAC,CAAC;IACpD,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5C,IAAI,CAAC,KAAK,SAAS;YAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1D,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,iBAAiB,CACjC,GAAG,CAAC,QAAQ,EAAE,EACd;QACE,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,GAAG,CAAC,MAAM,EAAE,EAAE,GAAG,cAAc,CAAC,GAAG,CAAC,EAAE;QAC1E,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC;KACvC,EACD,OAAO,IAAI,EAAE,EACb,SAAS,CACV,CAAC;IACF,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;AACpB,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,IAAa,EAAE,GAAc;IACnD,MAAM,IAAI,GACR,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,aAAa,IAAI,IAAI;QACvD,CAAC,CAAE,IAAkC,CAAC,WAAW;QACjD,CAAC,CAAC,SAAS,CAAC;IAChB,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC;AAC9E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,IAAY,EACZ,IAAa,EACb,GAAc;AACd,8EAA8E;AAC9E,0EAA0E;AAC1E,wCAAwC;AACxC,SAAS,GAAG,MAAM;IAElB,MAAM,GAAG,GAAG,MAAM,iBAAiB,CACjC,GAAG,GAAG,CAAC,MAAM,WAAW,IAAI,EAAE,EAC9B;QACE,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,GAAG,CAAC,MAAM,EAAE;YACrC,cAAc,EAAE,kBAAkB;YAClC,GAAG,cAAc,CAAC,GAAG,CAAC;SACvB;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;QAC1B,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC;KACvC,EACD,QAAQ,IAAI,EAAE,EACd,SAAS,CACV,CAAC;IACF,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAClD,MAAM,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE;YAC5D,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,WAAW,EAAE,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC;SACvC,CAAC,CAAC;IACL,CAAC;IACD,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;AACpB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAAY,EACZ,IAAc,EACd,GAAc,EACd,SAAS,GAAG,OAAO;IAEnB,MAAM,GAAG,GAAG,MAAM,iBAAiB,CACjC,GAAG,GAAG,CAAC,MAAM,WAAW,IAAI,EAAE,EAC9B;QACE,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,GAAG,CAAC,MAAM,EAAE,EAAE,GAAG,cAAc,CAAC,GAAG,CAAC,EAAE;QAC1E,IAAI,EAAE,IAAI;QACV,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC;KACvC,EACD,kBAAkB,IAAI,EAAE,EACxB,SAAS,CACV,CAAC;IACF,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAClD,MAAM,QAAQ,CAAC,gBAAgB,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;IAC/E,CAAC;IACD,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;AACpB,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,IAAY,EACZ,SAAyB,EACzB,GAAc,EACd,SAAS,GAAG,OAAO;IAEnB,MAAM,EAAE,GAAmB,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;IACvD,SAAS,CAAC;QACR,MAAM,cAAc,EAAE,CAAC;QACvB,MAAM,IAAI,GAAG,SAAS,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC,MAAM,WAAW,IAAI,EAAE,CAAC;QAC3C,IAAI,GAAa,CAAC;QAClB,IAAI,CAAC;YACH,GAAG,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE;gBACxB,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,GAAG,CAAC,MAAM,EAAE,EAAE,GAAG,cAAc,CAAC,GAAG,CAAC,EAAE;gBAC1E,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC;aACvC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,YAAY,aAAa;gBAAE,MAAM,GAAG,CAAC;YAC5C,MAAM,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,gBAAgB,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACvB,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACZ,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;gBAClD,MAAM,QAAQ,CAAC,gBAAgB,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;YAC/E,CAAC;YACD,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;QACpB,CAAC;QACD,MAAM,gBAAgB,CAAC,GAAG,EAAE,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,kBAAkB,IAAI,EAAE,CAAC,CAAC;IACpF,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,IAAY,EAAE,IAAa,EAAE,GAAc;IACxE,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC,MAAM,WAAW,IAAI,EAAE,CAAC;IAC3C,IAAI,GAAa,CAAC;IAClB,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE;YACxB,MAAM,EAAE,OAAO;YACf,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,GAAG,CAAC,MAAM,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,GAAG,cAAc,CAAC,GAAG,CAAC,EAAE;YAC9G,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YAC1B,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;SACpC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,aAAa;YAAE,MAAM,GAAG,CAAC;QAC5C,MAAM,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAClD,MAAM,QAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE;YAC7D,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,WAAW,EAAE,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC;SACvC,CAAC,CAAC;IACL,CAAC;IACD,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;AACpB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAAY,EAAE,GAAc;IAC1D,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC,MAAM,WAAW,IAAI,EAAE,CAAC;IAC3C,IAAI,GAAa,CAAC;IAClB,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE;YACxB,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,GAAG,CAAC,MAAM,EAAE,EAAE,GAAG,cAAc,CAAC,GAAG,CAAC,EAAE;YAC1E,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;SACpC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,aAAa;YAAE,MAAM,GAAG,CAAC;QAC5C,MAAM,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAClD,MAAM,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACtC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,GAAc;IAC1C,OAAO,IAAI,aAAa,CAAC;QACvB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,WAAW,EAAE,GAAG,CAAC,WAAW;KAC7B,CAAC,CAAC;AACL,CAAC;AAED,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC"}
|
|
@@ -25,6 +25,7 @@
|
|
|
25
25
|
* `TARGETS` by the caller); everything else is derived from `home`, so tests
|
|
26
26
|
* run on a temp HOME and never see the person's real files.
|
|
27
27
|
*/
|
|
28
|
+
import { stripJsonc } from "./atomic-file.js";
|
|
28
29
|
export type KeyRole = "person" | "agent";
|
|
29
30
|
export type KeyLocationKind = "profile" | "agent-key-by-pod" | "agent-key" | "pending" | "claude-settings-env" | "claude-mcp-header"
|
|
30
31
|
/** An MCP entry in another client's own config file (Cursor, Codex, Zed…). */
|
|
@@ -72,8 +73,8 @@ export interface KeyInventory {
|
|
|
72
73
|
locations: KeyLocation[];
|
|
73
74
|
unchecked: UncheckedLocation[];
|
|
74
75
|
}
|
|
75
|
-
/**
|
|
76
|
-
export
|
|
76
|
+
/** JSONC → JSON (one implementation, shared with the config writers). */
|
|
77
|
+
export { stripJsonc };
|
|
77
78
|
/** `~/…` for display. */
|
|
78
79
|
export declare function tildify(file: string, home: string): string;
|
|
79
80
|
export declare const SHELL_RC_FILES: string[];
|
|
@@ -117,4 +118,3 @@ export declare function keysToProbe(locations: KeyLocation[]): string[];
|
|
|
117
118
|
* injects, or a shell rc. Empty = set by something the doctor cannot see.
|
|
118
119
|
*/
|
|
119
120
|
export declare function envKeySetBy(locations: KeyLocation[], envKey: string): KeyLocation[];
|
|
120
|
-
export {};
|
|
@@ -28,6 +28,7 @@
|
|
|
28
28
|
import fs from "node:fs";
|
|
29
29
|
import path from "node:path";
|
|
30
30
|
import YAML from "yaml";
|
|
31
|
+
import { stripJsonc } from "./atomic-file.js";
|
|
31
32
|
const norm = (u) => u.replace(/\/+$/, "");
|
|
32
33
|
/** File text, `null` ONLY when it does not exist; any other failure is a reason. */
|
|
33
34
|
function readText(file) {
|
|
@@ -41,45 +42,8 @@ function readText(file) {
|
|
|
41
42
|
return { ok: false, reason: `could not be read (${code ?? err.message})` };
|
|
42
43
|
}
|
|
43
44
|
}
|
|
44
|
-
/**
|
|
45
|
-
export
|
|
46
|
-
let out = "";
|
|
47
|
-
let i = 0;
|
|
48
|
-
let inStr = false;
|
|
49
|
-
while (i < text.length) {
|
|
50
|
-
const c = text[i];
|
|
51
|
-
if (inStr) {
|
|
52
|
-
out += c;
|
|
53
|
-
if (c === "\\") {
|
|
54
|
-
out += text[i + 1] ?? "";
|
|
55
|
-
i += 2;
|
|
56
|
-
continue;
|
|
57
|
-
}
|
|
58
|
-
if (c === '"')
|
|
59
|
-
inStr = false;
|
|
60
|
-
i++;
|
|
61
|
-
continue;
|
|
62
|
-
}
|
|
63
|
-
if (c === '"') {
|
|
64
|
-
inStr = true;
|
|
65
|
-
out += c;
|
|
66
|
-
i++;
|
|
67
|
-
}
|
|
68
|
-
else if (c === "/" && text[i + 1] === "/") {
|
|
69
|
-
while (i < text.length && text[i] !== "\n")
|
|
70
|
-
i++;
|
|
71
|
-
}
|
|
72
|
-
else if (c === "/" && text[i + 1] === "*") {
|
|
73
|
-
const end = text.indexOf("*/", i + 2);
|
|
74
|
-
i = end < 0 ? text.length : end + 2;
|
|
75
|
-
}
|
|
76
|
-
else {
|
|
77
|
-
out += c;
|
|
78
|
-
i++;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
return out.replace(/,(\s*[}\]])/g, "$1");
|
|
82
|
-
}
|
|
45
|
+
/** JSONC → JSON (one implementation, shared with the config writers). */
|
|
46
|
+
export { stripJsonc };
|
|
83
47
|
function readJsonObject(file, jsonc = false) {
|
|
84
48
|
const t = readText(file);
|
|
85
49
|
if (!t.ok || t.value === null)
|