agent-nuvira 3.3.11 → 3.3.13
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 +32 -1
- package/dist/agents/agents/reasoner.d.ts.map +1 -1
- package/dist/agents/agents/reasoner.js +13 -0
- package/dist/agents/agents/reasoner.js.map +1 -1
- package/dist/agents/orchestrator.d.ts.map +1 -1
- package/dist/agents/orchestrator.js +56 -20
- package/dist/agents/orchestrator.js.map +1 -1
- package/dist/cli/chat.d.ts +36 -0
- package/dist/cli/chat.d.ts.map +1 -1
- package/dist/cli/chat.js +456 -43
- package/dist/cli/chat.js.map +1 -1
- package/dist/cli/cli-program.d.ts.map +1 -1
- package/dist/cli/cli-program.js +8 -0
- package/dist/cli/cli-program.js.map +1 -1
- package/dist/cli/config.d.ts.map +1 -1
- package/dist/cli/config.js +35 -4
- package/dist/cli/config.js.map +1 -1
- package/dist/cli/execute.d.ts.map +1 -1
- package/dist/cli/execute.js +14 -0
- package/dist/cli/execute.js.map +1 -1
- package/dist/cli/knowledge.d.ts +23 -0
- package/dist/cli/knowledge.d.ts.map +1 -0
- package/dist/cli/knowledge.js +132 -0
- package/dist/cli/knowledge.js.map +1 -0
- package/dist/cli/loop-executor.d.ts.map +1 -1
- package/dist/cli/loop-executor.js +57 -13
- package/dist/cli/loop-executor.js.map +1 -1
- package/dist/cli/omniroute-control.d.ts +88 -0
- package/dist/cli/omniroute-control.d.ts.map +1 -0
- package/dist/cli/omniroute-control.js +179 -0
- package/dist/cli/omniroute-control.js.map +1 -0
- package/dist/cli/omniroute.d.ts +21 -0
- package/dist/cli/omniroute.d.ts.map +1 -0
- package/dist/cli/omniroute.js +67 -0
- package/dist/cli/omniroute.js.map +1 -0
- package/dist/cli/tool-install-prompt.d.ts +58 -0
- package/dist/cli/tool-install-prompt.d.ts.map +1 -1
- package/dist/cli/tool-install-prompt.js +137 -0
- package/dist/cli/tool-install-prompt.js.map +1 -1
- package/dist/cli/weak-model-prompt.d.ts +16 -7
- package/dist/cli/weak-model-prompt.d.ts.map +1 -1
- package/dist/cli/weak-model-prompt.js +24 -8
- package/dist/cli/weak-model-prompt.js.map +1 -1
- package/dist/config/types.d.ts +44 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/context/cache.d.ts +35 -1
- package/dist/context/cache.d.ts.map +1 -1
- package/dist/context/cache.js +31 -2
- package/dist/context/cache.js.map +1 -1
- package/dist/context/history.d.ts +21 -0
- package/dist/context/history.d.ts.map +1 -1
- package/dist/context/history.js +50 -0
- package/dist/context/history.js.map +1 -1
- package/dist/gateway/hook-contract.d.ts +173 -0
- package/dist/gateway/hook-contract.d.ts.map +1 -0
- package/dist/gateway/hook-contract.js +352 -0
- package/dist/gateway/hook-contract.js.map +1 -0
- package/dist/gateway/hooks.d.ts.map +1 -1
- package/dist/gateway/hooks.js +14 -0
- package/dist/gateway/hooks.js.map +1 -1
- package/dist/inference/interface.d.ts +17 -0
- package/dist/inference/interface.d.ts.map +1 -1
- package/dist/inference/model-catalog.d.ts +17 -0
- package/dist/inference/model-catalog.d.ts.map +1 -1
- package/dist/inference/model-catalog.js +42 -7
- package/dist/inference/model-catalog.js.map +1 -1
- package/dist/inference/model-id-validation.d.ts +57 -0
- package/dist/inference/model-id-validation.d.ts.map +1 -0
- package/dist/inference/model-id-validation.js +127 -0
- package/dist/inference/model-id-validation.js.map +1 -0
- package/dist/inference/openai-compat-adapter.d.ts.map +1 -1
- package/dist/inference/openai-compat-adapter.js +12 -1
- package/dist/inference/openai-compat-adapter.js.map +1 -1
- package/dist/inference/provider-catalog.d.ts +11 -0
- package/dist/inference/provider-catalog.d.ts.map +1 -1
- package/dist/inference/provider-catalog.js +80 -0
- package/dist/inference/provider-catalog.js.map +1 -1
- package/dist/inference/route-resolver.d.ts +2 -8
- package/dist/inference/route-resolver.d.ts.map +1 -1
- package/dist/inference/route-resolver.js +17 -0
- package/dist/inference/route-resolver.js.map +1 -1
- package/dist/inference/tool-call-utils.d.ts +4 -3
- package/dist/inference/tool-call-utils.d.ts.map +1 -1
- package/dist/inference/tool-call-utils.js +26 -12
- package/dist/inference/tool-call-utils.js.map +1 -1
- package/dist/inference/tools.d.ts +1 -0
- package/dist/inference/tools.d.ts.map +1 -1
- package/dist/inference/tools.js +20 -3
- package/dist/inference/tools.js.map +1 -1
- package/dist/learning/agentic-route-gate.d.ts +104 -0
- package/dist/learning/agentic-route-gate.d.ts.map +1 -0
- package/dist/learning/agentic-route-gate.js +125 -0
- package/dist/learning/agentic-route-gate.js.map +1 -0
- package/dist/learning/auto-router.d.ts +89 -0
- package/dist/learning/auto-router.d.ts.map +1 -1
- package/dist/learning/auto-router.js +188 -8
- package/dist/learning/auto-router.js.map +1 -1
- package/dist/learning/build-prerequisites.d.ts +68 -0
- package/dist/learning/build-prerequisites.d.ts.map +1 -0
- package/dist/learning/build-prerequisites.js +267 -0
- package/dist/learning/build-prerequisites.js.map +1 -0
- package/dist/learning/continuation-intent.d.ts +43 -0
- package/dist/learning/continuation-intent.d.ts.map +1 -0
- package/dist/learning/continuation-intent.js +82 -0
- package/dist/learning/continuation-intent.js.map +1 -0
- package/dist/learning/error-repair.d.ts +23 -1
- package/dist/learning/error-repair.d.ts.map +1 -1
- package/dist/learning/error-repair.js +58 -0
- package/dist/learning/error-repair.js.map +1 -1
- package/dist/learning/knowledge-base.d.ts +124 -0
- package/dist/learning/knowledge-base.d.ts.map +1 -0
- package/dist/learning/knowledge-base.js +337 -0
- package/dist/learning/knowledge-base.js.map +1 -0
- package/dist/learning/model-harness.d.ts +19 -0
- package/dist/learning/model-harness.d.ts.map +1 -1
- package/dist/learning/model-harness.js +27 -0
- package/dist/learning/model-harness.js.map +1 -1
- package/dist/learning/model-selection.d.ts +2 -1
- package/dist/learning/model-selection.d.ts.map +1 -1
- package/dist/learning/model-selection.js +35 -2
- package/dist/learning/model-selection.js.map +1 -1
- package/dist/learning/project-docs.d.ts +83 -0
- package/dist/learning/project-docs.d.ts.map +1 -0
- package/dist/learning/project-docs.js +132 -0
- package/dist/learning/project-docs.js.map +1 -0
- package/dist/learning/prompt-budget.d.ts +91 -0
- package/dist/learning/prompt-budget.d.ts.map +1 -0
- package/dist/learning/prompt-budget.js +99 -0
- package/dist/learning/prompt-budget.js.map +1 -0
- package/dist/learning/quota-ledger.d.ts +13 -0
- package/dist/learning/quota-ledger.d.ts.map +1 -1
- package/dist/learning/quota-ledger.js +28 -0
- package/dist/learning/quota-ledger.js.map +1 -1
- package/dist/learning/reasoning-trace.d.ts +55 -2
- package/dist/learning/reasoning-trace.d.ts.map +1 -1
- package/dist/learning/reasoning-trace.js +48 -0
- package/dist/learning/reasoning-trace.js.map +1 -1
- package/dist/learning/resilient-call.d.ts.map +1 -1
- package/dist/learning/resilient-call.js +16 -3
- package/dist/learning/resilient-call.js.map +1 -1
- package/dist/learning/routing-history.d.ts +13 -0
- package/dist/learning/routing-history.d.ts.map +1 -1
- package/dist/learning/routing-history.js.map +1 -1
- package/dist/learning/seeded-benchmark.d.ts +14 -0
- package/dist/learning/seeded-benchmark.d.ts.map +1 -1
- package/dist/learning/seeded-benchmark.js +43 -4
- package/dist/learning/seeded-benchmark.js.map +1 -1
- package/dist/learning/turn-report.d.ts +78 -0
- package/dist/learning/turn-report.d.ts.map +1 -0
- package/dist/learning/turn-report.js +140 -0
- package/dist/learning/turn-report.js.map +1 -0
- package/dist/security/secret-scan.d.ts +156 -0
- package/dist/security/secret-scan.d.ts.map +1 -0
- package/dist/security/secret-scan.js +525 -0
- package/dist/security/secret-scan.js.map +1 -0
- package/dist/tools/edit-verification.d.ts +2 -11
- package/dist/tools/edit-verification.d.ts.map +1 -1
- package/dist/tools/edit-verification.js +33 -1
- package/dist/tools/edit-verification.js.map +1 -1
- package/dist/tools/loop-skill-hint.d.ts +51 -0
- package/dist/tools/loop-skill-hint.d.ts.map +1 -1
- package/dist/tools/loop-skill-hint.js +87 -2
- package/dist/tools/loop-skill-hint.js.map +1 -1
- package/dist/tools/plan-store.d.ts +126 -3
- package/dist/tools/plan-store.d.ts.map +1 -1
- package/dist/tools/plan-store.js +290 -6
- package/dist/tools/plan-store.js.map +1 -1
- package/dist/tools/registry.d.ts +20 -1
- package/dist/tools/registry.d.ts.map +1 -1
- package/dist/tools/registry.js +165 -4
- package/dist/tools/registry.js.map +1 -1
- package/dist/tools/remediation-ladder.d.ts +91 -0
- package/dist/tools/remediation-ladder.d.ts.map +1 -0
- package/dist/tools/remediation-ladder.js +308 -0
- package/dist/tools/remediation-ladder.js.map +1 -0
- package/dist/tools/run-terminal.d.ts.map +1 -1
- package/dist/tools/run-terminal.js +60 -2
- package/dist/tools/run-terminal.js.map +1 -1
- package/dist/tools/skills-hub.d.ts +7 -0
- package/dist/tools/skills-hub.d.ts.map +1 -1
- package/dist/tools/skills-hub.js +11 -2
- package/dist/tools/skills-hub.js.map +1 -1
- package/dist/tools/step-artifact.d.ts +35 -0
- package/dist/tools/step-artifact.d.ts.map +1 -0
- package/dist/tools/step-artifact.js +154 -0
- package/dist/tools/step-artifact.js.map +1 -0
- package/dist/tools/tool-loop.d.ts +35 -0
- package/dist/tools/tool-loop.d.ts.map +1 -1
- package/dist/tools/tool-loop.js +284 -9
- package/dist/tools/tool-loop.js.map +1 -1
- package/dist/tools/toolsets.js +4 -4
- package/dist/tools/toolsets.js.map +1 -1
- package/dist/tools/worktree.d.ts +11 -2
- package/dist/tools/worktree.d.ts.map +1 -1
- package/dist/tools/worktree.js +11 -2
- package/dist/tools/worktree.js.map +1 -1
- package/dist/utils/effect-verification.js +1 -1
- package/dist/utils/effect-verification.js.map +1 -1
- package/dist/web-dashboard/chat-console.d.ts +21 -1
- package/dist/web-dashboard/chat-console.d.ts.map +1 -1
- package/dist/web-dashboard/chat-console.js +33 -5
- package/dist/web-dashboard/chat-console.js.map +1 -1
- package/dist/web-dashboard/server.d.ts +29 -0
- package/dist/web-dashboard/server.d.ts.map +1 -1
- package/dist/web-dashboard/server.js +410 -5
- package/dist/web-dashboard/server.js.map +1 -1
- package/dist/web-dashboard/src/types.d.ts +137 -0
- package/dist/web-dashboard/src/types.d.ts.map +1 -1
- package/dist/web-dashboard/workspace-guard.d.ts +7 -0
- package/dist/web-dashboard/workspace-guard.d.ts.map +1 -1
- package/dist/web-dashboard/workspace-guard.js +70 -0
- package/dist/web-dashboard/workspace-guard.js.map +1 -1
- package/package.json +4 -1
- package/src/web-dashboard/public/assets/index-DhiuR4S2.js +210 -0
- package/src/web-dashboard/public/assets/index-DhiuR4S2.js.map +1 -0
- package/src/web-dashboard/public/assets/index-tK8Y2qHB.css +1 -0
- package/src/web-dashboard/public/index.html +2 -2
- package/src/web-dashboard/public/assets/index-BdKf5Xw2.js +0 -207
- package/src/web-dashboard/public/assets/index-BdKf5Xw2.js.map +0 -1
- package/src/web-dashboard/public/assets/index-C9eBskc9.css +0 -1
package/dist/tools/skills-hub.js
CHANGED
|
@@ -76,6 +76,7 @@ export class GitHubSource {
|
|
|
76
76
|
tags: meta.tags?.split(',').map((t) => t.trim()),
|
|
77
77
|
source,
|
|
78
78
|
sourceHash: createHash('sha256').update(content).digest('hex'),
|
|
79
|
+
content,
|
|
79
80
|
};
|
|
80
81
|
}
|
|
81
82
|
}
|
|
@@ -135,6 +136,7 @@ export class LocalSource {
|
|
|
135
136
|
tags: meta.tags?.split(',').map((t) => t.trim()),
|
|
136
137
|
source,
|
|
137
138
|
sourceHash: createHash('sha256').update(content).digest('hex'),
|
|
139
|
+
content,
|
|
138
140
|
};
|
|
139
141
|
}
|
|
140
142
|
}
|
|
@@ -184,8 +186,15 @@ export class SkillsHubManager {
|
|
|
184
186
|
rmSync(skillDir, { recursive: true });
|
|
185
187
|
}
|
|
186
188
|
mkdirSync(skillDir, { recursive: true });
|
|
187
|
-
// Write SKILL.md
|
|
188
|
-
|
|
189
|
+
// Write SKILL.md. The FULL source (frontmatter + body) is what makes the
|
|
190
|
+
// skill usable — see SkillManifest.content. Regenerating only frontmatter
|
|
191
|
+
// here silently discarded the methodology, so an installed skill loaded as
|
|
192
|
+
// an empty shell. Fall back to a frontmatter stub only if a source adapter
|
|
193
|
+
// genuinely returned no content (defensive; every adapter sets it).
|
|
194
|
+
const skillMd = manifest.content && manifest.content.trim().length > 0
|
|
195
|
+
? manifest.content
|
|
196
|
+
: `---\nname: ${manifest.name}\nversion: ${manifest.version}\ndescription: ${manifest.description}\n---\n\n`;
|
|
197
|
+
writeFileSync(join(skillDir, 'SKILL.md'), skillMd, 'utf-8');
|
|
189
198
|
// Update lock file
|
|
190
199
|
const lock = this.readLock();
|
|
191
200
|
lock[manifest.name] = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skills-hub.js","sourceRoot":"","sources":["../../src/tools/skills-hub.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAU,MAAM,SAAS,CAAC;AAC1G,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,IAAI,EAAW,MAAM,WAAW,CAAC;AAG1C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"skills-hub.js","sourceRoot":"","sources":["../../src/tools/skills-hub.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Step artifacts — a step that names a FILE is not done until that file exists.
|
|
3
|
+
*
|
|
4
|
+
* WHY (A6). A plan is a claim about the future, and marking a step `done` is a
|
|
5
|
+
* claim about the past. On the `cal` Android run the plan included producing an
|
|
6
|
+
* APK; the build failed, but nothing tied the step's DONE state to the artifact
|
|
7
|
+
* it named, so the checklist could — and did — advance past work that was never
|
|
8
|
+
* delivered. A step whose description names an artifact is verifiable, so it is
|
|
9
|
+
* verified: `plan_todo` refuses to mark it done while the file is absent.
|
|
10
|
+
*
|
|
11
|
+
* The extraction is deliberately CONSERVATIVE. It fires only on tokens that are
|
|
12
|
+
* unambiguously file-like (a quoted path, a slash-containing path, or a token
|
|
13
|
+
* with a known file extension) and skips anything it cannot be sure about —
|
|
14
|
+
* URLs, globs, flags, version numbers, prose. A false "artifact missing" that
|
|
15
|
+
* blocks a legitimate step is worse than missing a check, so when in doubt the
|
|
16
|
+
* token is ignored.
|
|
17
|
+
*/
|
|
18
|
+
/**
|
|
19
|
+
* Extract candidate artifact paths from a step description. Returns a deduped
|
|
20
|
+
* list, in first-seen order. Never throws.
|
|
21
|
+
*/
|
|
22
|
+
export declare function extractArtifactPaths(description: string): string[];
|
|
23
|
+
export interface ArtifactCheck {
|
|
24
|
+
/** Paths that were checked, as written in the description. */
|
|
25
|
+
checked: string[];
|
|
26
|
+
/** The subset that does not exist in the workspace. */
|
|
27
|
+
missing: string[];
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Check the artifacts a step names against the workspace. When `cwd` is absent
|
|
31
|
+
* nothing is checked (there is no workspace to check against) — the caller must
|
|
32
|
+
* treat an empty `missing` as "no verdict", not as "present".
|
|
33
|
+
*/
|
|
34
|
+
export declare function checkStepArtifacts(description: string, cwd: string | undefined): ArtifactCheck;
|
|
35
|
+
//# sourceMappingURL=step-artifact.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"step-artifact.d.ts","sourceRoot":"","sources":["../../src/tools/step-artifact.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AA4BH;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,CAwBlE;AAED,MAAM,WAAW,aAAa;IAC5B,8DAA8D;IAC9D,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,uDAAuD;IACvD,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,aAAa,CAyB9F"}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Step artifacts — a step that names a FILE is not done until that file exists.
|
|
3
|
+
*
|
|
4
|
+
* WHY (A6). A plan is a claim about the future, and marking a step `done` is a
|
|
5
|
+
* claim about the past. On the `cal` Android run the plan included producing an
|
|
6
|
+
* APK; the build failed, but nothing tied the step's DONE state to the artifact
|
|
7
|
+
* it named, so the checklist could — and did — advance past work that was never
|
|
8
|
+
* delivered. A step whose description names an artifact is verifiable, so it is
|
|
9
|
+
* verified: `plan_todo` refuses to mark it done while the file is absent.
|
|
10
|
+
*
|
|
11
|
+
* The extraction is deliberately CONSERVATIVE. It fires only on tokens that are
|
|
12
|
+
* unambiguously file-like (a quoted path, a slash-containing path, or a token
|
|
13
|
+
* with a known file extension) and skips anything it cannot be sure about —
|
|
14
|
+
* URLs, globs, flags, version numbers, prose. A false "artifact missing" that
|
|
15
|
+
* blocks a legitimate step is worse than missing a check, so when in doubt the
|
|
16
|
+
* token is ignored.
|
|
17
|
+
*/
|
|
18
|
+
import { existsSync, readdirSync } from 'node:fs';
|
|
19
|
+
import { isAbsolute, join, resolve } from 'node:path';
|
|
20
|
+
/** Extensions that make a bare token file-like. Keep this list pragmatic. */
|
|
21
|
+
const ARTIFACT_EXT = /\.(apk|aab|aar|jar|zip|tar|tgz|gz|md|mdx|txt|json|ya?ml|toml|xml|html?|css|js|mjs|cjs|ts|tsx|jsx|py|rb|go|rs|java|kt|kts|gradle|properties|lock|pdf|png|jpe?g|gif|svg|webp|sh|bash|csv|tsv|xlsx?|docx?|pptx?|bin|exe|dll|so|dylib|whl|ipynb)$/i;
|
|
22
|
+
/**
|
|
23
|
+
* Tokens that must never be treated as artifacts even when they look file-like:
|
|
24
|
+
* URLs, globs, flags, and prose fragments.
|
|
25
|
+
*/
|
|
26
|
+
function isExcluded(token) {
|
|
27
|
+
if (!token)
|
|
28
|
+
return true;
|
|
29
|
+
if (/^https?:\/\//i.test(token) || token.includes('://'))
|
|
30
|
+
return true;
|
|
31
|
+
if (/[<>*?{}()=]/.test(token))
|
|
32
|
+
return true; // globs, prose, assignments
|
|
33
|
+
if (token.startsWith('-'))
|
|
34
|
+
return true; // flags
|
|
35
|
+
if (token.startsWith('~'))
|
|
36
|
+
return true; // home-relative — machine-local, not the project's
|
|
37
|
+
if (token.includes(' '))
|
|
38
|
+
return true;
|
|
39
|
+
return false;
|
|
40
|
+
}
|
|
41
|
+
/** Strip wrapping punctuation a description commonly puts around a path. */
|
|
42
|
+
function cleanToken(raw) {
|
|
43
|
+
return raw.replace(/^[`"'([{<]+/, '').replace(/[`"'\])}>,.;:!?]+$/, '');
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Extract candidate artifact paths from a step description. Returns a deduped
|
|
47
|
+
* list, in first-seen order. Never throws.
|
|
48
|
+
*/
|
|
49
|
+
export function extractArtifactPaths(description) {
|
|
50
|
+
const text = String(description ?? '');
|
|
51
|
+
if (!text)
|
|
52
|
+
return [];
|
|
53
|
+
const out = [];
|
|
54
|
+
const seen = new Set();
|
|
55
|
+
const push = (raw) => {
|
|
56
|
+
const token = cleanToken(raw);
|
|
57
|
+
if (isExcluded(token))
|
|
58
|
+
return;
|
|
59
|
+
const looksLikePath = token.includes('/') && !token.endsWith('/');
|
|
60
|
+
const hasExtension = ARTIFACT_EXT.test(token);
|
|
61
|
+
if (!looksLikePath && !hasExtension)
|
|
62
|
+
return;
|
|
63
|
+
// A slash-containing token must still look like a filename at the end
|
|
64
|
+
// (`src/foo`) unless it carries a known extension.
|
|
65
|
+
if (looksLikePath && !hasExtension && !/[^/]\.[a-z0-9]+$/i.test(token))
|
|
66
|
+
return;
|
|
67
|
+
if (seen.has(token))
|
|
68
|
+
return;
|
|
69
|
+
seen.add(token);
|
|
70
|
+
out.push(token);
|
|
71
|
+
};
|
|
72
|
+
// Quoted / backticked spans first — the strongest signal.
|
|
73
|
+
for (const m of text.matchAll(/[`"']([^`"']+)[`"']/g))
|
|
74
|
+
push(m[1]);
|
|
75
|
+
// Then any whitespace-separated token.
|
|
76
|
+
for (const m of text.matchAll(/\S+/g))
|
|
77
|
+
push(m[0]);
|
|
78
|
+
return out;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Check the artifacts a step names against the workspace. When `cwd` is absent
|
|
82
|
+
* nothing is checked (there is no workspace to check against) — the caller must
|
|
83
|
+
* treat an empty `missing` as "no verdict", not as "present".
|
|
84
|
+
*/
|
|
85
|
+
export function checkStepArtifacts(description, cwd) {
|
|
86
|
+
const paths = extractArtifactPaths(description);
|
|
87
|
+
if (!cwd || paths.length === 0)
|
|
88
|
+
return { checked: paths, missing: [] };
|
|
89
|
+
const missing = [];
|
|
90
|
+
for (const p of paths) {
|
|
91
|
+
try {
|
|
92
|
+
// A token that names a LOCATION is checked there directly. A BARE file
|
|
93
|
+
// name (`local.properties`, `app-debug.apk`) has no location, and a step
|
|
94
|
+
// routinely names an artifact that a tool wrote into a subdirectory
|
|
95
|
+
// (`android/local.properties`, `android/app/build/outputs/apk/debug/`).
|
|
96
|
+
// Resolving a bare name against the workspace ROOT produced false
|
|
97
|
+
// "missing" verdicts on the live run — it refused to mark a `local.properties`
|
|
98
|
+
// step done after the file had been written one level down. A bare name is
|
|
99
|
+
// therefore searched for in the workspace before it is called missing.
|
|
100
|
+
if (isAbsolute(p) || p.includes('/')) {
|
|
101
|
+
const abs = isAbsolute(p) ? p : resolve(cwd, p);
|
|
102
|
+
if (!existsSync(abs))
|
|
103
|
+
missing.push(p);
|
|
104
|
+
}
|
|
105
|
+
else if (!basenameExists(cwd, p)) {
|
|
106
|
+
missing.push(p);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
catch {
|
|
110
|
+
// An unreadable path is not proof of absence — stay silent.
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
return { checked: paths, missing };
|
|
114
|
+
}
|
|
115
|
+
/** Directories never worth descending into when locating a named artifact. */
|
|
116
|
+
const SEARCH_SKIP_DIRS = new Set(['node_modules', '.git', '.gradle', '.idea', '.vscode']);
|
|
117
|
+
/** Bounds so a workspace walk can never become the expensive part of a plan update. */
|
|
118
|
+
const SEARCH_MAX_DEPTH = 6;
|
|
119
|
+
const SEARCH_MAX_DIRS = 4000;
|
|
120
|
+
/**
|
|
121
|
+
* Does a file with this basename exist anywhere in the (bounded) workspace? Used
|
|
122
|
+
* only for a token that names no directory, so a step that calls `app-debug.apk`
|
|
123
|
+
* an artifact is satisfied by the APK under `android/.../apk/debug/` — while a
|
|
124
|
+
* name that exists nowhere is still genuinely missing.
|
|
125
|
+
*/
|
|
126
|
+
function basenameExists(cwd, name) {
|
|
127
|
+
const target = name.toLowerCase();
|
|
128
|
+
const queue = [{ dir: cwd, depth: 0 }];
|
|
129
|
+
let visited = 0;
|
|
130
|
+
while (queue.length > 0) {
|
|
131
|
+
if (++visited > SEARCH_MAX_DIRS)
|
|
132
|
+
break;
|
|
133
|
+
const { dir, depth } = queue.shift();
|
|
134
|
+
let entries;
|
|
135
|
+
try {
|
|
136
|
+
entries = readdirSync(dir, { withFileTypes: true });
|
|
137
|
+
}
|
|
138
|
+
catch {
|
|
139
|
+
continue;
|
|
140
|
+
}
|
|
141
|
+
for (const e of entries) {
|
|
142
|
+
if (e.isDirectory()) {
|
|
143
|
+
if (depth < SEARCH_MAX_DEPTH && !SEARCH_SKIP_DIRS.has(e.name)) {
|
|
144
|
+
queue.push({ dir: join(dir, e.name), depth: depth + 1 });
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
else if (e.isFile() && e.name.toLowerCase() === target) {
|
|
148
|
+
return true;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
return false;
|
|
153
|
+
}
|
|
154
|
+
//# sourceMappingURL=step-artifact.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"step-artifact.js","sourceRoot":"","sources":["../../src/tools/step-artifact.ts"],"names":[],"mappings":"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"}
|
|
@@ -65,6 +65,12 @@ export interface StepResponse {
|
|
|
65
65
|
/** Provider-owned opaque data echoed back on replay (Gemini thoughtSignature). */
|
|
66
66
|
providerMeta?: Record<string, unknown>;
|
|
67
67
|
}>;
|
|
68
|
+
/**
|
|
69
|
+
* The model's `reasoning_content` for this step, when it returned one. Carried
|
|
70
|
+
* onto the assistant message so a thinking model (DeepSeek v4) can be handed
|
|
71
|
+
* its own prior reasoning back — see {@link ToolMessage.reasoningContent}.
|
|
72
|
+
*/
|
|
73
|
+
reasoningContent?: string;
|
|
68
74
|
/**
|
|
69
75
|
* Which transport ACTUALLY carried this step's tool calls, in the same
|
|
70
76
|
* vocabulary the subagent child announces
|
|
@@ -236,6 +242,17 @@ export interface ToolLoopOptions {
|
|
|
236
242
|
* model that still does nothing ends the turn as before — but now flagged.
|
|
237
243
|
*/
|
|
238
244
|
requireAction?: boolean;
|
|
245
|
+
/**
|
|
246
|
+
* PLAN GATE (E2, default ON). When a request DIRECTS work on the workspace and
|
|
247
|
+
* the turn is about to run its FIRST mutating tool call having declared no
|
|
248
|
+
* plan, the loop spends ONE bounded nudge asking the model to declare a short
|
|
249
|
+
* plan with `plan_todo` first. The nudge is ADVISORY (like every other gate):
|
|
250
|
+
* it never blocks the call, it only makes the plan → track → verify contract
|
|
251
|
+
* structural rather than optional — and the residual (a turn that still
|
|
252
|
+
* mutated without planning) is visible in the TurnReport as `planned:false`.
|
|
253
|
+
* Set false to restore the pre-gate behaviour.
|
|
254
|
+
*/
|
|
255
|
+
requirePlan?: boolean;
|
|
239
256
|
/**
|
|
240
257
|
* G18 — OBSERVABILITY SINK for the loop's non-LLM facts: every tool call that
|
|
241
258
|
* ran (name, args, ok/error, duration), every gate DECISION (a nudge spent,
|
|
@@ -531,6 +548,15 @@ export declare const NO_PROGRESS_STALL_STEPS = 4;
|
|
|
531
548
|
* where an extra pass earns its latency.
|
|
532
549
|
*/
|
|
533
550
|
export declare const SELF_REVIEW_MIN_STEPS = 6;
|
|
551
|
+
/**
|
|
552
|
+
* S5 — how many `plan_todo` UPDATE calls one turn may make. The guard refuses
|
|
553
|
+
* repeated CREATES (the observed planner loop) but must allow updates, because
|
|
554
|
+
* an update is how the user's checklist advances; this cap only stops a model
|
|
555
|
+
* that replaces doing the work with spamming status changes. It sits well above
|
|
556
|
+
* a genuine multi-step job (the largest real plans in the tree are single
|
|
557
|
+
* digits) and far below a loop.
|
|
558
|
+
*/
|
|
559
|
+
export declare const PLAN_TODO_UPDATE_CAP = 64;
|
|
534
560
|
/** Default continuations granted per turn when the option is omitted. */
|
|
535
561
|
export declare const DEFAULT_MAX_CONTINUATIONS = 2;
|
|
536
562
|
/** Default extra steps granted per continuation. */
|
|
@@ -640,6 +666,15 @@ export declare function detectUnfulfilledIntentPromise(content: string): boolean
|
|
|
640
666
|
*/
|
|
641
667
|
export declare function detectFailedBuildSuccessClaim(content: string, actions: readonly ExecutedAction[]): boolean;
|
|
642
668
|
export declare function runToolLoop(opts: ToolLoopOptions): Promise<ToolLoopResult>;
|
|
669
|
+
/**
|
|
670
|
+
* The bounded PLAN-REQUIRED nudge (E2) — one advisory step telling the model to
|
|
671
|
+
* declare a short plan before it mutates.
|
|
672
|
+
*
|
|
673
|
+
* Names the ask, states the contract (plan first, then work), and closes the
|
|
674
|
+
* failure mode the nudge exists for: planning that REPLACES the work; the last
|
|
675
|
+
* line forbids exactly that dormancy.
|
|
676
|
+
*/
|
|
677
|
+
export declare function planRequiredNudge(ask: string): string;
|
|
643
678
|
/**
|
|
644
679
|
* The bounded ZERO-ACTION correction — the loop telling the model, in one step,
|
|
645
680
|
* that a directed request has not been touched yet.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-loop.d.ts","sourceRoot":"","sources":["../../src/tools/tool-loop.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAA4B,KAAK,WAAW,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAChG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAM9D,OAAO,EAAoC,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAW7F,OAAO,EAAc,KAAK,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAqB7E,OAAO,EAOL,QAAQ,EACR,KAAK,gBAAgB,EACtB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAsB,KAAK,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAQlF,OAAO,EAQL,KAAK,gBAAgB,EACtB,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"tool-loop.d.ts","sourceRoot":"","sources":["../../src/tools/tool-loop.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAA4B,KAAK,WAAW,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAChG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAM9D,OAAO,EAAoC,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAW7F,OAAO,EAAc,KAAK,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAqB7E,OAAO,EAOL,QAAQ,EACR,KAAK,gBAAgB,EACtB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAsB,KAAK,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAQlF,OAAO,EAQL,KAAK,gBAAgB,EACtB,MAAM,wBAAwB,CAAC;AAgBhC,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AA8FhF;;;;;;;;GAQG;AACH,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC,UAAU,EAAE,KAAK,GAAG,WAAW,CAAC,CAAC;AAEnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAWlE,OAAO,EAAE,KAAK,WAAW,EAAE,CAAC;AAmC5B;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAKnF;AAaD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,aAAa,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM;IAI5E,iFAAiF;eACtE,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,IAAI;IAa9C,sDAAsD;uBACtC,OAAO;EAI1B;AAED,+EAA+E;AAC/E,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,4CAA4C;IAC5C,SAAS,EAAE,KAAK,CAAC;QACf,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACnC,kFAAkF;QAClF,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACxC,CAAC,CAAC;IACH;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;;;;;;;;;;;;OAgBG;IACH,SAAS,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;CACxC;AAED,mFAAmF;AACnF,MAAM,WAAW,YAAY;IAC3B;;;;;;;;;;;;;;;;;;OAkBG;IACH,SAAS,CACP,QAAQ,EAAE,WAAW,EAAE,EACvB,WAAW,EAAE,cAAc,EAAE,EAC7B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,EACjC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,YAAY,CAAC,CAAC;IACzB,iFAAiF;IACjF,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5F,sFAAsF;IACtF,WAAW,CAAC,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IACvC,6EAA6E;IAC7E,OAAO,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,eAAe;IAC9B,wEAAwE;IACxE,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,6DAA6D;IAC7D,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IAChC;;;;;;;;;;OAUG;IACH,IAAI,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IACzB;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAC3B;;;;;;;;;OASG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;;;OAQG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;;;;;;;OAYG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;;;;;;;;;;;;OAcG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;;;;;;OASG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;;;;;;;;;OAeG;IACH,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;IAC/C;;;;;;;;;;OAUG;IACH,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE;QACd,MAAM,EAAE,SAAS,WAAW,EAAE,CAAC;QAC/B,KAAK,EAAE,MAAM,CAAC;QACd,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;QACnC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;KACjC,KAAK,IAAI,CAAC;IACX;;;;;;;;;OASG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,yDAAyD;IACzD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,+EAA+E;IAC/E,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,8EAA8E;IAC9E,OAAO,EAAE,WAAW,CAAC;IACrB,IAAI,EAAE,YAAY,CAAC;IACnB;;;;;;;;;OASG;IACH,WAAW,CAAC,EAAE,MAAM,WAAW,GAAG,IAAI,CAAC;IACvC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,uDAAuD;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB,yDAAyD;IACzD,SAAS,EAAE,kBAAkB,EAAE,CAAC;IAChC,8EAA8E;IAC9E,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,sBAAsB;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,2DAA2D;IAC3D,OAAO,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;;;;OAQG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC;;;;;;;;;;OAUG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;;;;;OAQG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;;;;;;;;OAUG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;;;;OASG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;;;;;OAQG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;;;;OASG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;;;;;;;;OASG;IACH,SAAS,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;CACxC;AAED,0EAA0E;AAC1E,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAQ5D;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,YAAY,CAAC,WAAW,CAAC,CAAA;CAAE,CA6F5G;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAO7D;AA0BD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,wBAAwB,EAAE,WAAW,CAAC,MAAM,CAOvD,CAAC;AAEH,+EAA+E;AAC/E,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAExD;AAeD;;;;;;;;GAQG;AACH,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC;;;;;;;;;;GAUG;AACH,eAAO,MAAM,uBAAuB,IAAI,CAAC;AACzC;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,IAAI,CAAC;AACvC;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,KAAK,CAAC;AACvC,yEAAyE;AACzE,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,oDAAoD;AACpD,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAC5C;;;;;;GAMG;AACH,eAAO,MAAM,gCAAgC,IAAI,CAAC;AAClD,eAAO,MAAM,iCAAiC,KAAK,CAAC;AACpD,gFAAgF;AAChF,eAAO,MAAM,qBAAqB,OAAQ,CAAC;AAE3C;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAIrE;AAOD;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,2DAA2D;IAC3D,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B,6DAA6D;IAC7D,iBAAiB,EAAE,OAAO,CAAC;IAC3B,qFAAqF;IACrF,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,oFAAoF;IACpF,oBAAoB,EAAE,gBAAgB,EAAE,CAAC;IACzC;;;;;OAKG;IACH,eAAe,EAAE,cAAc,EAAE,CAAC;IAClC;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;CACxC;AA8qDD;;;;;;;;;;GAUG;AACH,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAYnG;AAuDD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAevE;AA6BD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,SAAS,cAAc,EAAE,GACjC,OAAO,CAkBT;AA6ED,wBAAsB,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAoFhF;AA8HD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CASrD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CASnD;AAmCD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG;IAAE,IAAI,CAAC,EAAE,aAAa,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAuCpG;AAmBD,0EAA0E;AAC1E,eAAO,MAAM,2BAA2B,SAAU,CAAC;AAanD;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,WAAW,EAAE,EACrB,QAAQ,GAAE,MAAoC,GAC7C;IAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAyD5C;AAUD,4EAA4E;AAC5E,eAAO,MAAM,kBAAkB,uDAAkD,CAAC;AAElF;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE;IACrC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IAChC,eAAe,EAAE,SAAS,cAAc,EAAE,CAAC;CAC5C,GAAG,MAAM,CA2BT;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAW5E;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAanD"}
|