@bradygaster/squad-sdk 0.8.0 → 0.8.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapter/client.d.ts +24 -4
- package/dist/adapter/client.d.ts.map +1 -1
- package/dist/adapter/client.js +368 -78
- package/dist/adapter/client.js.map +1 -1
- package/dist/adapter/types.d.ts +38 -0
- package/dist/adapter/types.d.ts.map +1 -1
- package/dist/agents/index.d.ts +6 -3
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +132 -23
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/lifecycle.d.ts.map +1 -1
- package/dist/agents/lifecycle.js +28 -2
- package/dist/agents/lifecycle.js.map +1 -1
- package/dist/agents/model-selector.d.ts.map +1 -1
- package/dist/agents/model-selector.js +10 -37
- package/dist/agents/model-selector.js.map +1 -1
- package/dist/casting/index.d.ts.map +1 -1
- package/dist/casting/index.js +10 -2
- package/dist/casting/index.js.map +1 -1
- package/dist/client/event-bus.d.ts.map +1 -1
- package/dist/client/event-bus.js +0 -1
- package/dist/client/event-bus.js.map +1 -1
- package/dist/client/index.d.ts +7 -4
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +22 -10
- package/dist/client/index.js.map +1 -1
- package/dist/config/init.d.ts.map +1 -1
- package/dist/config/init.js +19 -12
- package/dist/config/init.js.map +1 -1
- package/dist/coordinator/coordinator.d.ts.map +1 -1
- package/dist/coordinator/coordinator.js +73 -55
- package/dist/coordinator/coordinator.js.map +1 -1
- package/dist/coordinator/index.d.ts +19 -4
- package/dist/coordinator/index.d.ts.map +1 -1
- package/dist/coordinator/index.js +138 -21
- package/dist/coordinator/index.js.map +1 -1
- package/dist/index.d.ts +12 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -2
- package/dist/index.js.map +1 -1
- package/dist/ralph/index.d.ts +3 -1
- package/dist/ralph/index.d.ts.map +1 -1
- package/dist/ralph/index.js +83 -16
- package/dist/ralph/index.js.map +1 -1
- package/dist/resolution.d.ts +59 -0
- package/dist/resolution.d.ts.map +1 -1
- package/dist/resolution.js +145 -0
- package/dist/resolution.js.map +1 -1
- package/dist/runtime/config.d.ts +3 -2
- package/dist/runtime/config.d.ts.map +1 -1
- package/dist/runtime/config.js +7 -6
- package/dist/runtime/config.js.map +1 -1
- package/dist/runtime/constants.d.ts +35 -0
- package/dist/runtime/constants.d.ts.map +1 -0
- package/dist/runtime/constants.js +58 -0
- package/dist/runtime/constants.js.map +1 -0
- package/dist/runtime/event-bus-otel-bridge.d.ts +19 -0
- package/dist/runtime/event-bus-otel-bridge.d.ts.map +1 -0
- package/dist/runtime/event-bus-otel-bridge.js +61 -0
- package/dist/runtime/event-bus-otel-bridge.js.map +1 -0
- package/dist/runtime/event-bus-ws-bridge.d.ts +35 -0
- package/dist/runtime/event-bus-ws-bridge.d.ts.map +1 -0
- package/dist/runtime/event-bus-ws-bridge.js +55 -0
- package/dist/runtime/event-bus-ws-bridge.js.map +1 -0
- package/dist/runtime/event-payloads.d.ts +108 -0
- package/dist/runtime/event-payloads.d.ts.map +1 -0
- package/dist/runtime/event-payloads.js +28 -0
- package/dist/runtime/event-payloads.js.map +1 -0
- package/dist/runtime/health.d.ts.map +1 -1
- package/dist/runtime/health.js +2 -1
- package/dist/runtime/health.js.map +1 -1
- package/dist/runtime/otel-bridge.d.ts +52 -0
- package/dist/runtime/otel-bridge.d.ts.map +1 -0
- package/dist/runtime/otel-bridge.js +132 -0
- package/dist/runtime/otel-bridge.js.map +1 -0
- package/dist/runtime/otel-init.d.ts +72 -0
- package/dist/runtime/otel-init.d.ts.map +1 -0
- package/dist/runtime/otel-init.js +68 -0
- package/dist/runtime/otel-init.js.map +1 -0
- package/dist/runtime/otel-metrics.d.ts +42 -0
- package/dist/runtime/otel-metrics.d.ts.map +1 -0
- package/dist/runtime/otel-metrics.js +196 -0
- package/dist/runtime/otel-metrics.js.map +1 -0
- package/dist/runtime/otel.d.ts +53 -0
- package/dist/runtime/otel.d.ts.map +1 -0
- package/dist/runtime/otel.js +127 -0
- package/dist/runtime/otel.js.map +1 -0
- package/dist/runtime/squad-observer.d.ts +75 -0
- package/dist/runtime/squad-observer.d.ts.map +1 -0
- package/dist/runtime/squad-observer.js +190 -0
- package/dist/runtime/squad-observer.js.map +1 -0
- package/dist/runtime/streaming.d.ts +9 -0
- package/dist/runtime/streaming.d.ts.map +1 -1
- package/dist/runtime/streaming.js +37 -1
- package/dist/runtime/streaming.js.map +1 -1
- package/dist/tools/index.d.ts +8 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +57 -1
- package/dist/tools/index.js.map +1 -1
- package/dist/upstream/index.d.ts +8 -0
- package/dist/upstream/index.d.ts.map +1 -0
- package/dist/upstream/index.js +7 -0
- package/dist/upstream/index.js.map +1 -0
- package/dist/upstream/resolver.d.ts +37 -0
- package/dist/upstream/resolver.d.ts.map +1 -0
- package/dist/upstream/resolver.js +234 -0
- package/dist/upstream/resolver.js.map +1 -0
- package/dist/upstream/types.d.ts +55 -0
- package/dist/upstream/types.d.ts.map +1 -0
- package/dist/upstream/types.js +11 -0
- package/dist/upstream/types.js.map +1 -0
- package/package.json +84 -2
package/dist/resolution.js
CHANGED
|
@@ -2,8 +2,13 @@
|
|
|
2
2
|
* Squad directory resolution — walk-up and global path algorithms.
|
|
3
3
|
*
|
|
4
4
|
* resolveSquad() — find .squad/ by walking up from startDir to .git boundary
|
|
5
|
+
* resolveSquadPaths() — dual-root resolution (projectDir / teamDir) for remote squad mode
|
|
5
6
|
* resolveGlobalSquadPath() — platform-specific global config directory
|
|
6
7
|
*
|
|
8
|
+
* Dual-root resolution and remote mode design ported from @spboyer (Shayne Boyer)'s
|
|
9
|
+
* PR bradygaster/squad#131. Original concept: resolveSquadPaths() with config.json
|
|
10
|
+
* pointer for team identity separation.
|
|
11
|
+
*
|
|
7
12
|
* @module resolution
|
|
8
13
|
*/
|
|
9
14
|
import fs from 'node:fs';
|
|
@@ -42,6 +47,109 @@ export function resolveSquad(startDir) {
|
|
|
42
47
|
current = parent;
|
|
43
48
|
}
|
|
44
49
|
}
|
|
50
|
+
// ============================================================================
|
|
51
|
+
// Dual-root resolution (Issue #311)
|
|
52
|
+
// ============================================================================
|
|
53
|
+
/** Known squad directory names, in priority order. */
|
|
54
|
+
const SQUAD_DIR_NAMES = ['.squad', '.ai-team'];
|
|
55
|
+
/**
|
|
56
|
+
* Find the squad directory by walking up from `startDir`, checking both
|
|
57
|
+
* `.squad/` and `.ai-team/` (legacy fallback).
|
|
58
|
+
*
|
|
59
|
+
* Returns the absolute path, the directory name used, and whether it's legacy.
|
|
60
|
+
*/
|
|
61
|
+
function findSquadDir(startDir) {
|
|
62
|
+
let current = path.resolve(startDir);
|
|
63
|
+
// eslint-disable-next-line no-constant-condition
|
|
64
|
+
while (true) {
|
|
65
|
+
for (const name of SQUAD_DIR_NAMES) {
|
|
66
|
+
const candidate = path.join(current, name);
|
|
67
|
+
if (fs.existsSync(candidate) && fs.statSync(candidate).isDirectory()) {
|
|
68
|
+
return { dir: candidate, name };
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
// Stop if we hit a .git boundary
|
|
72
|
+
const gitMarker = path.join(current, '.git');
|
|
73
|
+
if (fs.existsSync(gitMarker)) {
|
|
74
|
+
return null;
|
|
75
|
+
}
|
|
76
|
+
const parent = path.dirname(current);
|
|
77
|
+
if (parent === current) {
|
|
78
|
+
return null;
|
|
79
|
+
}
|
|
80
|
+
current = parent;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Try to read and parse `.squad/config.json` (or `.ai-team/config.json`).
|
|
85
|
+
* Returns null for missing file, unreadable file, or malformed JSON.
|
|
86
|
+
*/
|
|
87
|
+
function loadDirConfig(squadDir) {
|
|
88
|
+
const configPath = path.join(squadDir, 'config.json');
|
|
89
|
+
if (!fs.existsSync(configPath)) {
|
|
90
|
+
return null;
|
|
91
|
+
}
|
|
92
|
+
try {
|
|
93
|
+
const raw = fs.readFileSync(configPath, 'utf-8');
|
|
94
|
+
const parsed = JSON.parse(raw);
|
|
95
|
+
if (parsed !== null &&
|
|
96
|
+
typeof parsed === 'object' &&
|
|
97
|
+
typeof parsed.version === 'number' &&
|
|
98
|
+
typeof parsed.teamRoot === 'string') {
|
|
99
|
+
return {
|
|
100
|
+
version: parsed.version,
|
|
101
|
+
teamRoot: parsed.teamRoot,
|
|
102
|
+
projectKey: typeof parsed.projectKey === 'string' ? parsed.projectKey : null,
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
return null;
|
|
106
|
+
}
|
|
107
|
+
catch {
|
|
108
|
+
return null;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Resolve dual-root squad paths (projectDir / teamDir).
|
|
113
|
+
*
|
|
114
|
+
* - Walks up from `startDir` looking for `.squad/` (or `.ai-team/` for legacy repos).
|
|
115
|
+
* - If `.squad/config.json` exists with a valid `teamRoot` → **remote** mode:
|
|
116
|
+
* teamDir is resolved relative to the **project root** (parent of .squad/).
|
|
117
|
+
* - Otherwise → **local** mode: projectDir === teamDir.
|
|
118
|
+
*
|
|
119
|
+
* @param startDir - Directory to start searching from. Defaults to `process.cwd()`.
|
|
120
|
+
* @returns Resolved paths, or `null` if no squad directory is found.
|
|
121
|
+
*/
|
|
122
|
+
export function resolveSquadPaths(startDir) {
|
|
123
|
+
const resolved = findSquadDir(startDir ?? process.cwd());
|
|
124
|
+
if (!resolved) {
|
|
125
|
+
return null;
|
|
126
|
+
}
|
|
127
|
+
const { dir: projectDir, name } = resolved;
|
|
128
|
+
const isLegacy = name === '.ai-team';
|
|
129
|
+
const config = loadDirConfig(projectDir);
|
|
130
|
+
if (config && config.teamRoot) {
|
|
131
|
+
// Remote mode: teamDir resolved relative to the project root (parent of .squad/)
|
|
132
|
+
const projectRoot = path.resolve(projectDir, '..');
|
|
133
|
+
const teamDir = path.resolve(projectRoot, config.teamRoot);
|
|
134
|
+
return {
|
|
135
|
+
mode: 'remote',
|
|
136
|
+
projectDir,
|
|
137
|
+
teamDir,
|
|
138
|
+
config,
|
|
139
|
+
name,
|
|
140
|
+
isLegacy,
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
// Local mode: projectDir === teamDir
|
|
144
|
+
return {
|
|
145
|
+
mode: 'local',
|
|
146
|
+
projectDir,
|
|
147
|
+
teamDir: projectDir,
|
|
148
|
+
config,
|
|
149
|
+
name,
|
|
150
|
+
isLegacy,
|
|
151
|
+
};
|
|
152
|
+
}
|
|
45
153
|
/**
|
|
46
154
|
* Return the platform-specific global Squad configuration directory.
|
|
47
155
|
*
|
|
@@ -103,4 +211,41 @@ export function ensureSquadPath(filePath, squadRoot) {
|
|
|
103
211
|
throw new Error(`Path "${resolved}" is outside the .squad/ directory ("${resolvedSquad}"). ` +
|
|
104
212
|
'All squad scratch/temp/state files must be written inside .squad/ or the system temp directory.');
|
|
105
213
|
}
|
|
214
|
+
/**
|
|
215
|
+
* Validate that a file path is within either the projectDir or teamDir
|
|
216
|
+
* (or the system temp directory). For use in dual-root / remote mode.
|
|
217
|
+
*
|
|
218
|
+
* @param filePath - Absolute path to validate.
|
|
219
|
+
* @param projectDir - Absolute path to the project-local .squad/ directory.
|
|
220
|
+
* @param teamDir - Absolute path to the team identity directory.
|
|
221
|
+
* @returns The resolved absolute filePath if it is safe.
|
|
222
|
+
* @throws If filePath is outside both roots and not in the system temp directory.
|
|
223
|
+
*/
|
|
224
|
+
export function ensureSquadPathDual(filePath, projectDir, teamDir) {
|
|
225
|
+
const resolved = path.resolve(filePath);
|
|
226
|
+
const resolvedProject = path.resolve(projectDir);
|
|
227
|
+
const resolvedTeam = path.resolve(teamDir);
|
|
228
|
+
const resolvedTmp = path.resolve(os.tmpdir());
|
|
229
|
+
// Allow paths inside the projectDir
|
|
230
|
+
if (resolved === resolvedProject || resolved.startsWith(resolvedProject + path.sep)) {
|
|
231
|
+
return resolved;
|
|
232
|
+
}
|
|
233
|
+
// Allow paths inside the teamDir
|
|
234
|
+
if (resolved === resolvedTeam || resolved.startsWith(resolvedTeam + path.sep)) {
|
|
235
|
+
return resolved;
|
|
236
|
+
}
|
|
237
|
+
// Allow paths inside the system temp directory
|
|
238
|
+
if (resolved === resolvedTmp || resolved.startsWith(resolvedTmp + path.sep)) {
|
|
239
|
+
return resolved;
|
|
240
|
+
}
|
|
241
|
+
throw new Error(`Path "${resolved}" is outside both squad roots ("${resolvedProject}", "${resolvedTeam}"). ` +
|
|
242
|
+
'All squad scratch/temp/state files must be written inside a squad directory or the system temp directory.');
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* ensureSquadPath that works with resolved dual-root paths.
|
|
246
|
+
* Convenience wrapper around ensureSquadPathDual.
|
|
247
|
+
*/
|
|
248
|
+
export function ensureSquadPathResolved(filePath, paths) {
|
|
249
|
+
return ensureSquadPathDual(filePath, paths.projectDir, paths.teamDir);
|
|
250
|
+
}
|
|
106
251
|
//# sourceMappingURL=resolution.js.map
|
package/dist/resolution.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolution.js","sourceRoot":"","sources":["../src/resolution.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"resolution.js","sourceRoot":"","sources":["../src/resolution.ts"],"names":[],"mappings":"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"}
|
package/dist/runtime/config.d.ts
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
*
|
|
7
7
|
* @module runtime/config
|
|
8
8
|
*/
|
|
9
|
+
import type { AgentRole } from './constants.js';
|
|
9
10
|
/**
|
|
10
11
|
* Model tier classification.
|
|
11
12
|
*/
|
|
@@ -19,9 +20,9 @@ export type ModelId = string;
|
|
|
19
20
|
*/
|
|
20
21
|
export type WorkType = 'feature-dev' | 'bug-fix' | 'testing' | 'documentation' | 'refactoring' | 'architecture' | 'research' | 'triage' | 'meta' | string;
|
|
21
22
|
/**
|
|
22
|
-
* Agent role for model selection.
|
|
23
|
+
* Agent role for model selection (re-exported from constants).
|
|
23
24
|
*/
|
|
24
|
-
export type AgentRole
|
|
25
|
+
export type { AgentRole } from './constants.js';
|
|
25
26
|
/**
|
|
26
27
|
* Task output type for model selection.
|
|
27
28
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/runtime/config.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/runtime/config.ts"],"names":[],"mappings":"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"}
|
package/dist/runtime/config.js
CHANGED
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
import { readFileSync, existsSync } from 'fs';
|
|
10
10
|
import { join, resolve, dirname } from 'path';
|
|
11
11
|
import { pathToFileURL } from 'url';
|
|
12
|
+
import { MODELS } from './constants.js';
|
|
12
13
|
// ============================================================================
|
|
13
14
|
// Default Configuration
|
|
14
15
|
// ============================================================================
|
|
@@ -18,19 +19,19 @@ import { pathToFileURL } from 'url';
|
|
|
18
19
|
export const DEFAULT_CONFIG = {
|
|
19
20
|
version: '1.0.0',
|
|
20
21
|
models: {
|
|
21
|
-
defaultModel:
|
|
22
|
+
defaultModel: MODELS.DEFAULT,
|
|
22
23
|
defaultTier: 'standard',
|
|
23
24
|
fallbackChains: {
|
|
24
|
-
premium: [
|
|
25
|
-
standard: [
|
|
26
|
-
fast: [
|
|
25
|
+
premium: [...MODELS.FALLBACK_CHAINS.premium],
|
|
26
|
+
standard: [...MODELS.FALLBACK_CHAINS.standard],
|
|
27
|
+
fast: [...MODELS.FALLBACK_CHAINS.fast]
|
|
27
28
|
},
|
|
28
29
|
preferSameProvider: true,
|
|
29
30
|
respectTierCeiling: true,
|
|
30
31
|
nuclearFallback: {
|
|
31
32
|
enabled: false,
|
|
32
|
-
model:
|
|
33
|
-
maxRetriesBeforeNuclear:
|
|
33
|
+
model: MODELS.NUCLEAR_FALLBACK,
|
|
34
|
+
maxRetriesBeforeNuclear: MODELS.NUCLEAR_MAX_RETRIES
|
|
34
35
|
}
|
|
35
36
|
},
|
|
36
37
|
routing: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/runtime/config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/runtime/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Central constants — single source of truth for model names, timeouts, roles.
|
|
3
|
+
* All magic values live here. Environment variables override where noted.
|
|
4
|
+
*
|
|
5
|
+
* @module runtime/constants
|
|
6
|
+
*/
|
|
7
|
+
export declare const MODELS: {
|
|
8
|
+
/** Default model for config files and new projects (env-overridable) */
|
|
9
|
+
readonly DEFAULT: string;
|
|
10
|
+
/** Default model for model-selector Layer 4 — cost-first */
|
|
11
|
+
readonly SELECTOR_DEFAULT: "claude-haiku-4.5";
|
|
12
|
+
/** Default tier for the model-selector Layer 4 fallback */
|
|
13
|
+
readonly SELECTOR_DEFAULT_TIER: "fast";
|
|
14
|
+
/** Fallback chains by tier — ordered by preference */
|
|
15
|
+
readonly FALLBACK_CHAINS: {
|
|
16
|
+
readonly premium: readonly ["claude-opus-4.6", "claude-opus-4.6-fast", "claude-opus-4.5", "claude-sonnet-4.5"];
|
|
17
|
+
readonly standard: readonly ["claude-sonnet-4.5", "gpt-5.2-codex", "claude-sonnet-4", "gpt-5.2"];
|
|
18
|
+
readonly fast: readonly ["claude-haiku-4.5", "gpt-5.1-codex-mini", "gpt-4.1", "gpt-5-mini"];
|
|
19
|
+
};
|
|
20
|
+
/** Nuclear fallback model when all chains are exhausted */
|
|
21
|
+
readonly NUCLEAR_FALLBACK: "claude-haiku-4.5";
|
|
22
|
+
/** Maximum retries before nuclear fallback engages */
|
|
23
|
+
readonly NUCLEAR_MAX_RETRIES: 3;
|
|
24
|
+
};
|
|
25
|
+
export declare const TIMEOUTS: {
|
|
26
|
+
/** Health check timeout in milliseconds */
|
|
27
|
+
readonly HEALTH_CHECK_MS: number;
|
|
28
|
+
/** Git clone timeout in milliseconds */
|
|
29
|
+
readonly GIT_CLONE_MS: number;
|
|
30
|
+
/** Plugin/marketplace fetch timeout in milliseconds */
|
|
31
|
+
readonly PLUGIN_FETCH_MS: number;
|
|
32
|
+
};
|
|
33
|
+
export declare const AGENT_ROLES: readonly ["lead", "developer", "tester", "designer", "scribe", "coordinator"];
|
|
34
|
+
export type AgentRole = typeof AGENT_ROLES[number];
|
|
35
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/runtime/constants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,eAAO,MAAM,MAAM;IACjB,wEAAwE;;IAGxE,4DAA4D;;IAG5D,2DAA2D;;IAG3D,sDAAsD;;;;;;IAsBtD,2DAA2D;;IAG3D,sDAAsD;;CAE9C,CAAC;AAMX,eAAO,MAAM,QAAQ;IACnB,2CAA2C;;IAG3C,wCAAwC;;IAGxC,uDAAuD;;CAE/C,CAAC;AAMX,eAAO,MAAM,WAAW,+EAAgF,CAAC;AACzG,MAAM,MAAM,SAAS,GAAG,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Central constants — single source of truth for model names, timeouts, roles.
|
|
3
|
+
* All magic values live here. Environment variables override where noted.
|
|
4
|
+
*
|
|
5
|
+
* @module runtime/constants
|
|
6
|
+
*/
|
|
7
|
+
// ============================================================================
|
|
8
|
+
// Models
|
|
9
|
+
// ============================================================================
|
|
10
|
+
export const MODELS = {
|
|
11
|
+
/** Default model for config files and new projects (env-overridable) */
|
|
12
|
+
DEFAULT: process.env['SQUAD_DEFAULT_MODEL'] ?? 'claude-sonnet-4.5',
|
|
13
|
+
/** Default model for model-selector Layer 4 — cost-first */
|
|
14
|
+
SELECTOR_DEFAULT: 'claude-haiku-4.5',
|
|
15
|
+
/** Default tier for the model-selector Layer 4 fallback */
|
|
16
|
+
SELECTOR_DEFAULT_TIER: 'fast',
|
|
17
|
+
/** Fallback chains by tier — ordered by preference */
|
|
18
|
+
FALLBACK_CHAINS: {
|
|
19
|
+
premium: [
|
|
20
|
+
'claude-opus-4.6',
|
|
21
|
+
'claude-opus-4.6-fast',
|
|
22
|
+
'claude-opus-4.5',
|
|
23
|
+
'claude-sonnet-4.5',
|
|
24
|
+
],
|
|
25
|
+
standard: [
|
|
26
|
+
'claude-sonnet-4.5',
|
|
27
|
+
'gpt-5.2-codex',
|
|
28
|
+
'claude-sonnet-4',
|
|
29
|
+
'gpt-5.2',
|
|
30
|
+
],
|
|
31
|
+
fast: [
|
|
32
|
+
'claude-haiku-4.5',
|
|
33
|
+
'gpt-5.1-codex-mini',
|
|
34
|
+
'gpt-4.1',
|
|
35
|
+
'gpt-5-mini',
|
|
36
|
+
],
|
|
37
|
+
},
|
|
38
|
+
/** Nuclear fallback model when all chains are exhausted */
|
|
39
|
+
NUCLEAR_FALLBACK: 'claude-haiku-4.5',
|
|
40
|
+
/** Maximum retries before nuclear fallback engages */
|
|
41
|
+
NUCLEAR_MAX_RETRIES: 3,
|
|
42
|
+
};
|
|
43
|
+
// ============================================================================
|
|
44
|
+
// Timeouts
|
|
45
|
+
// ============================================================================
|
|
46
|
+
export const TIMEOUTS = {
|
|
47
|
+
/** Health check timeout in milliseconds */
|
|
48
|
+
HEALTH_CHECK_MS: parseInt(process.env['SQUAD_HEALTH_CHECK_MS'] ?? '5000', 10),
|
|
49
|
+
/** Git clone timeout in milliseconds */
|
|
50
|
+
GIT_CLONE_MS: parseInt(process.env['SQUAD_GIT_CLONE_MS'] ?? '60000', 10),
|
|
51
|
+
/** Plugin/marketplace fetch timeout in milliseconds */
|
|
52
|
+
PLUGIN_FETCH_MS: parseInt(process.env['SQUAD_PLUGIN_FETCH_MS'] ?? '15000', 10),
|
|
53
|
+
};
|
|
54
|
+
// ============================================================================
|
|
55
|
+
// Agent Roles
|
|
56
|
+
// ============================================================================
|
|
57
|
+
export const AGENT_ROLES = ['lead', 'developer', 'tester', 'designer', 'scribe', 'coordinator'];
|
|
58
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/runtime/constants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,+EAA+E;AAC/E,SAAS;AACT,+EAA+E;AAE/E,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,wEAAwE;IACxE,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,IAAI,mBAAmB;IAElE,4DAA4D;IAC5D,gBAAgB,EAAE,kBAAkB;IAEpC,2DAA2D;IAC3D,qBAAqB,EAAE,MAAM;IAE7B,sDAAsD;IACtD,eAAe,EAAE;QACf,OAAO,EAAE;YACP,iBAAiB;YACjB,sBAAsB;YACtB,iBAAiB;YACjB,mBAAmB;SACpB;QACD,QAAQ,EAAE;YACR,mBAAmB;YACnB,eAAe;YACf,iBAAiB;YACjB,SAAS;SACV;QACD,IAAI,EAAE;YACJ,kBAAkB;YAClB,oBAAoB;YACpB,SAAS;YACT,YAAY;SACb;KACF;IAED,2DAA2D;IAC3D,gBAAgB,EAAE,kBAAkB;IAEpC,sDAAsD;IACtD,mBAAmB,EAAE,CAAC;CACd,CAAC;AAEX,+EAA+E;AAC/E,WAAW;AACX,+EAA+E;AAE/E,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,2CAA2C;IAC3C,eAAe,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,IAAI,MAAM,EAAE,EAAE,CAAC;IAE7E,wCAAwC;IACxC,YAAY,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,OAAO,EAAE,EAAE,CAAC;IAExE,uDAAuD;IACvD,eAAe,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,IAAI,OAAO,EAAE,EAAE,CAAC;CACtE,CAAC;AAEX,+EAA+E;AAC/E,cAAc;AACd,+EAA+E;AAE/E,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,CAAU,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* EventBus → OTel Span Bridge (Issue #304)
|
|
3
|
+
*
|
|
4
|
+
* Subscribes to EventBus events and creates OpenTelemetry spans for each.
|
|
5
|
+
* Complements the existing otel-bridge.ts which handles TelemetryEvent
|
|
6
|
+
* (dot-separated names like squad.init). This bridge handles runtime
|
|
7
|
+
* SquadEvent types (colon-separated like session:created).
|
|
8
|
+
*
|
|
9
|
+
* @module runtime/event-bus-otel-bridge
|
|
10
|
+
*/
|
|
11
|
+
import type { EventBus, UnsubscribeFn } from './event-bus.js';
|
|
12
|
+
/**
|
|
13
|
+
* Attach an OTel span bridge to an EventBus.
|
|
14
|
+
* Every event emitted on the bus produces a corresponding OTel span.
|
|
15
|
+
*
|
|
16
|
+
* @returns Unsubscribe function to detach the bridge.
|
|
17
|
+
*/
|
|
18
|
+
export declare function attachOTelBridge(bus: EventBus): UnsubscribeFn;
|
|
19
|
+
//# sourceMappingURL=event-bus-otel-bridge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-bus-otel-bridge.d.ts","sourceRoot":"","sources":["../../src/runtime/event-bus-otel-bridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,KAAK,EAAE,QAAQ,EAAc,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAG1E;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,QAAQ,GAAG,aAAa,CAuC7D"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* EventBus → OTel Span Bridge (Issue #304)
|
|
3
|
+
*
|
|
4
|
+
* Subscribes to EventBus events and creates OpenTelemetry spans for each.
|
|
5
|
+
* Complements the existing otel-bridge.ts which handles TelemetryEvent
|
|
6
|
+
* (dot-separated names like squad.init). This bridge handles runtime
|
|
7
|
+
* SquadEvent types (colon-separated like session:created).
|
|
8
|
+
*
|
|
9
|
+
* @module runtime/event-bus-otel-bridge
|
|
10
|
+
*/
|
|
11
|
+
import { SpanStatusCode } from '@opentelemetry/api';
|
|
12
|
+
import { getTracer } from './otel.js';
|
|
13
|
+
import { isSquadEventOfType } from './event-payloads.js';
|
|
14
|
+
/**
|
|
15
|
+
* Attach an OTel span bridge to an EventBus.
|
|
16
|
+
* Every event emitted on the bus produces a corresponding OTel span.
|
|
17
|
+
*
|
|
18
|
+
* @returns Unsubscribe function to detach the bridge.
|
|
19
|
+
*/
|
|
20
|
+
export function attachOTelBridge(bus) {
|
|
21
|
+
return bus.subscribeAll((event) => {
|
|
22
|
+
const tracer = getTracer('squad-sdk');
|
|
23
|
+
const spanName = `squad.event.${event.type.replace(':', '.')}`;
|
|
24
|
+
const attrs = {
|
|
25
|
+
'squad.event.type': event.type,
|
|
26
|
+
};
|
|
27
|
+
if (event.sessionId)
|
|
28
|
+
attrs['squad.session.id'] = event.sessionId;
|
|
29
|
+
if (event.agentName)
|
|
30
|
+
attrs['squad.agent.name'] = event.agentName;
|
|
31
|
+
// Extract payload attributes for known event types
|
|
32
|
+
if (isSquadEventOfType(event, 'session:error')) {
|
|
33
|
+
attrs['squad.error'] = event.payload.error;
|
|
34
|
+
attrs['squad.error.agent'] = event.payload.agentName;
|
|
35
|
+
}
|
|
36
|
+
else if (isSquadEventOfType(event, 'session:tool_call')) {
|
|
37
|
+
attrs['squad.tool.name'] = event.payload.toolName;
|
|
38
|
+
if (event.payload.resultType) {
|
|
39
|
+
attrs['squad.tool.result'] = event.payload.resultType;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
else if (isSquadEventOfType(event, 'coordinator:routing')) {
|
|
43
|
+
attrs['squad.routing.phase'] = event.payload.phase;
|
|
44
|
+
}
|
|
45
|
+
else if (isSquadEventOfType(event, 'agent:milestone')) {
|
|
46
|
+
attrs['squad.milestone.event'] = event.payload.event;
|
|
47
|
+
attrs['squad.milestone.agent'] = event.payload.agentName;
|
|
48
|
+
}
|
|
49
|
+
else if (isSquadEventOfType(event, 'pool:health')) {
|
|
50
|
+
attrs['squad.pool.active'] = event.payload.activeSessions;
|
|
51
|
+
attrs['squad.pool.available'] = event.payload.availableSlots;
|
|
52
|
+
attrs['squad.pool.queued'] = event.payload.queuedRequests;
|
|
53
|
+
}
|
|
54
|
+
const span = tracer.startSpan(spanName, { attributes: attrs });
|
|
55
|
+
if (event.type === 'session:error') {
|
|
56
|
+
span.setStatus({ code: SpanStatusCode.ERROR });
|
|
57
|
+
}
|
|
58
|
+
span.end();
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=event-bus-otel-bridge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-bus-otel-bridge.js","sourceRoot":"","sources":["../../src/runtime/event-bus-otel-bridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEzD;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,GAAa;IAC5C,OAAO,GAAG,CAAC,YAAY,CAAC,CAAC,KAAiB,EAAE,EAAE;QAC5C,MAAM,MAAM,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;QACtC,MAAM,QAAQ,GAAG,eAAe,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;QAE/D,MAAM,KAAK,GAA8C;YACvD,kBAAkB,EAAE,KAAK,CAAC,IAAI;SAC/B,CAAC;QACF,IAAI,KAAK,CAAC,SAAS;YAAE,KAAK,CAAC,kBAAkB,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC;QACjE,IAAI,KAAK,CAAC,SAAS;YAAE,KAAK,CAAC,kBAAkB,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC;QAEjE,mDAAmD;QACnD,IAAI,kBAAkB,CAAC,KAAK,EAAE,eAAe,CAAC,EAAE,CAAC;YAC/C,KAAK,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAC3C,KAAK,CAAC,mBAAmB,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;QACvD,CAAC;aAAM,IAAI,kBAAkB,CAAC,KAAK,EAAE,mBAAmB,CAAC,EAAE,CAAC;YAC1D,KAAK,CAAC,iBAAiB,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;YAClD,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;gBAC7B,KAAK,CAAC,mBAAmB,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;YACxD,CAAC;QACH,CAAC;aAAM,IAAI,kBAAkB,CAAC,KAAK,EAAE,qBAAqB,CAAC,EAAE,CAAC;YAC5D,KAAK,CAAC,qBAAqB,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACrD,CAAC;aAAM,IAAI,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,CAAC,EAAE,CAAC;YACxD,KAAK,CAAC,uBAAuB,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YACrD,KAAK,CAAC,uBAAuB,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;QAC3D,CAAC;aAAM,IAAI,kBAAkB,CAAC,KAAK,EAAE,aAAa,CAAC,EAAE,CAAC;YACpD,KAAK,CAAC,mBAAmB,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC;YAC1D,KAAK,CAAC,sBAAsB,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC;YAC7D,KAAK,CAAC,mBAAmB,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC;QAC5D,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;QAE/D,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;YACnC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* EventBus to WebSocket Bridge (Issue #304)
|
|
3
|
+
*
|
|
4
|
+
* Broadcasts EventBus events over a WebSocket server so external
|
|
5
|
+
* consumers (e.g., SquadOffice visualization) can subscribe to
|
|
6
|
+
* real-time SDK events without coupling to OTel.
|
|
7
|
+
*
|
|
8
|
+
* @module runtime/event-bus-ws-bridge
|
|
9
|
+
*/
|
|
10
|
+
import type { EventBus } from './event-bus.js';
|
|
11
|
+
export interface WSBridgeOptions {
|
|
12
|
+
/** WebSocket server port. Defaults to 6277. */
|
|
13
|
+
port?: number;
|
|
14
|
+
/** Optional host to bind to. Defaults to '127.0.0.1'. */
|
|
15
|
+
host?: string;
|
|
16
|
+
}
|
|
17
|
+
export interface WSBridgeHandle {
|
|
18
|
+
/** Stop the bridge and close the WebSocket server. */
|
|
19
|
+
close: () => Promise<void>;
|
|
20
|
+
/** The port the WebSocket server is listening on. */
|
|
21
|
+
port: number;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Start a WebSocket server that broadcasts every EventBus event
|
|
25
|
+
* as a JSON message to all connected clients.
|
|
26
|
+
*
|
|
27
|
+
* Message format matches the SquadOffice WSMessage envelope:
|
|
28
|
+
* ```json
|
|
29
|
+
* { "kind": "event", "payload": { ...SquadEvent... } }
|
|
30
|
+
* ```
|
|
31
|
+
*
|
|
32
|
+
* @returns A handle to close the bridge.
|
|
33
|
+
*/
|
|
34
|
+
export declare function startWSBridge(bus: EventBus, options?: WSBridgeOptions): WSBridgeHandle;
|
|
35
|
+
//# sourceMappingURL=event-bus-ws-bridge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-bus-ws-bridge.d.ts","sourceRoot":"","sources":["../../src/runtime/event-bus-ws-bridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAA6B,MAAM,gBAAgB,CAAC;AAE1E,MAAM,WAAW,eAAe;IAC9B,+CAA+C;IAC/C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yDAAyD;IACzD,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,cAAc;IAC7B,sDAAsD;IACtD,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,qDAAqD;IACrD,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAE,QAAQ,EACb,OAAO,GAAE,eAAoB,GAC5B,cAAc,CA2BhB"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* EventBus to WebSocket Bridge (Issue #304)
|
|
3
|
+
*
|
|
4
|
+
* Broadcasts EventBus events over a WebSocket server so external
|
|
5
|
+
* consumers (e.g., SquadOffice visualization) can subscribe to
|
|
6
|
+
* real-time SDK events without coupling to OTel.
|
|
7
|
+
*
|
|
8
|
+
* @module runtime/event-bus-ws-bridge
|
|
9
|
+
*/
|
|
10
|
+
import { WebSocketServer, WebSocket } from 'ws';
|
|
11
|
+
/**
|
|
12
|
+
* Start a WebSocket server that broadcasts every EventBus event
|
|
13
|
+
* as a JSON message to all connected clients.
|
|
14
|
+
*
|
|
15
|
+
* Message format matches the SquadOffice WSMessage envelope:
|
|
16
|
+
* ```json
|
|
17
|
+
* { "kind": "event", "payload": { ...SquadEvent... } }
|
|
18
|
+
* ```
|
|
19
|
+
*
|
|
20
|
+
* @returns A handle to close the bridge.
|
|
21
|
+
*/
|
|
22
|
+
export function startWSBridge(bus, options = {}) {
|
|
23
|
+
const port = options.port ?? 6277;
|
|
24
|
+
const host = options.host ?? '127.0.0.1';
|
|
25
|
+
const wss = new WebSocketServer({ port, host });
|
|
26
|
+
const unsubscribe = bus.subscribeAll((event) => {
|
|
27
|
+
const message = JSON.stringify({
|
|
28
|
+
kind: 'event',
|
|
29
|
+
payload: serializeEvent(event),
|
|
30
|
+
});
|
|
31
|
+
for (const client of wss.clients) {
|
|
32
|
+
if (client.readyState === WebSocket.OPEN) {
|
|
33
|
+
client.send(message);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
return {
|
|
38
|
+
port,
|
|
39
|
+
close: () => new Promise((resolve, reject) => {
|
|
40
|
+
unsubscribe();
|
|
41
|
+
wss.close((err) => (err ? reject(err) : resolve()));
|
|
42
|
+
}),
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
/** Serialize a SquadEvent for JSON transport (Date to ISO string). */
|
|
46
|
+
function serializeEvent(event) {
|
|
47
|
+
return {
|
|
48
|
+
type: event.type,
|
|
49
|
+
sessionId: event.sessionId,
|
|
50
|
+
agentName: event.agentName,
|
|
51
|
+
payload: event.payload,
|
|
52
|
+
timestamp: event.timestamp.toISOString(),
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=event-bus-ws-bridge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-bus-ws-bridge.js","sourceRoot":"","sources":["../../src/runtime/event-bus-ws-bridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAiBhD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,aAAa,CAC3B,GAAa,EACb,UAA2B,EAAE;IAE7B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC;IAClC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,WAAW,CAAC;IAEzC,MAAM,GAAG,GAAG,IAAI,eAAe,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAEhD,MAAM,WAAW,GAAkB,GAAG,CAAC,YAAY,CAAC,CAAC,KAAiB,EAAE,EAAE;QACxE,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;YAC7B,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,cAAc,CAAC,KAAK,CAAC;SAC/B,CAAC,CAAC;QAEH,KAAK,MAAM,MAAM,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YACjC,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;gBACzC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,IAAI;QACJ,KAAK,EAAE,GAAG,EAAE,CACV,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACpC,WAAW,EAAE,CAAC;YACd,GAAG,CAAC,KAAK,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC9D,CAAC,CAAC;KACL,CAAC;AACJ,CAAC;AAED,sEAAsE;AACtE,SAAS,cAAc,CAAC,KAAiB;IACvC,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE;KACzC,CAAC;AACJ,CAAC"}
|