circle-ir-ai 2.8.18 → 2.8.20

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/CHANGELOG.md CHANGED
@@ -5,6 +5,189 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [2.8.20] - 2026-06-13
9
+
10
+ ### Changed — circle-ir 3.39.0 → 3.48.0
11
+
12
+ Drop-in engine bump pulling in 9 minor releases of `circle-ir` (3.40
13
+ through 3.48). No API surface changes — all 49 test files (746 pass +
14
+ 3 skipped) and typecheck/build pass against the new core. Public
15
+ exports unchanged.
16
+
17
+ This release rolls up the cognium-ai#88 parse-failure visibility work
18
+ from 2.8.19 (never published to npm — see the 2.8.19 entry below for
19
+ the full feature description) together with the circle-ir bump into
20
+ a single npm artifact.
21
+
22
+ The new circle-ir versions ship taint-engine and pass improvements
23
+ (see https://github.com/cogniumhq/circle-ir for per-version detail).
24
+ `circle-ir-ai` consumes the new core through its existing `analyze()`
25
+ import — no consumer-facing code change here.
26
+
27
+ Cascade plan (separate commits, follow-ups in this monorepo):
28
+ - `cognium-ai` 2.8.17 → 2.8.18: `circle-ir` 3.39 → 3.48, `circle-ir-ai`
29
+ dep `^2.8.18` → `^2.8.20`.
30
+ - `mcp-server` 0.4.3 → 0.4.4: same engine bump.
31
+ - `circle-pack` 1.20.7 → 1.20.8: same engine bump + `@cognium-ai/mcp-server`
32
+ → `^0.4.4`.
33
+
34
+ ## [2.8.19] - 2026-06-12
35
+
36
+ ### Added — Parser-failure visibility + per-file timeout hardening (cognium-ai#88)
37
+
38
+ Tree-sitter / `circle-ir.analyze()` failures were being silently swallowed
39
+ in the scanner's static and LLM-enriched paths. Symptom: scans against
40
+ real-world corpora (CoreNLP `DefaultTeXHyphenData.java` triggering a
41
+ RangeError stack overflow, several files with `Error: terminated` from
42
+ worker crashes, generic parse errors) returned `findings: []` and the
43
+ file looked clean. No record of which files failed, why, or how many
44
+ ended up in scan output. The LLM-enriched path additionally had no
45
+ `withTimeout` wrapper around the synchronous Tree-sitter parse — the
46
+ static path was already protected from sync-wedging at scanner.ts:565
47
+ but the Mastra `runPatternMatch` path was not.
48
+
49
+ This release surfaces parser failures as a structured, additive JSON
50
+ field on every `ScanResult`, gives them stable stderr markers, and
51
+ extends `withTimeout` protection to the Mastra path.
52
+
53
+ - **NEW `src/security-scan/parse-failure.ts`** — `ParseFailureReason`
54
+ enum (`'stack_overflow' | 'timeout' | 'terminated' | 'parse_error'`),
55
+ `ParseFailure` record (`{ file, language, reason, message,
56
+ analysisTimeMs? }`), and `classifyParseFailure(error: unknown)`
57
+ classifier. Classification order is fixed (matters for the
58
+ pathological case where a RangeError's message happens to start with
59
+ `Timeout after Nms:` — `instanceof RangeError` wins):
60
+ 1. `error instanceof RangeError` → `stack_overflow`
61
+ 2. `/^Timeout after \d+ms:/.test(message)` → `timeout`
62
+ 3. `/terminated/i.test(message)` → `terminated`
63
+ 4. default → `parse_error`
64
+ Non-Error throwables (string / object / null / undefined) classify as
65
+ `parse_error` with best-effort `String()` conversion.
66
+ - **NEW `src/utils/with-timeout.ts`** — lifted `withTimeout` out of
67
+ `src/security-scan/scanner.ts` so the Mastra `runPatternMatch` path
68
+ can share the same wrapper without re-importing the scanner module
69
+ (avoids a circular import). The reject message format
70
+ (`Timeout after Nms: <label>`) is now stable contract that
71
+ `classifyParseFailure` keys off to attribute `reason: 'timeout'`.
72
+ - **EXTENDED `src/security-scan/scanner.ts` types** — `FileResult` gains
73
+ optional `parseFailure?: ParseFailure` (analyze threw) and
74
+ `skipped?: { reason: string }` (preFlightSkip short-circuit). The
75
+ two are disjoint by construction — a file is either skipped before
76
+ parse or it tried to parse and may have failed. `ScanResult` gains
77
+ `parseFailures: ParseFailure[]` (always present, may be empty — JSON
78
+ consumers that spread `{ ...result }` see the field on every scan).
79
+ `ScanSummary` gains `filesParseFailed: number` + `filesSkipped: number`
80
+ counters.
81
+ - **REFACTORED scanner.ts catches + preFlightSkip** — removed three
82
+ `if (this.verbose)` gates that were swallowing failures:
83
+ - **preFlightSkip path** (was scanner.ts:573, verbose-gated): always
84
+ emits `[SKIP] <relpath>: <reason>` to stderr; FileResult now carries
85
+ `skipped: { reason }`.
86
+ - **Static-path catch** (was scanner.ts:684–696, verbose-gated):
87
+ always emits `[PARSER_FAIL] <relpath>: <reason>: <message>`;
88
+ FileResult now carries `parseFailure` populated from
89
+ `classifyParseFailure(error)`.
90
+ - **LLM-path outer catch** (was scanner.ts:811–859, verbose-gated):
91
+ always emits `[LLM_FAIL] <relpath>: <message>`; still falls through
92
+ to static analyzer.
93
+ - **LLM-path inner catch** (was a bare `catch {}` at scanner.ts:850
94
+ with no binding — fully silent fallback failure): now
95
+ `catch (fallbackError)` with `[PARSER_FAIL]` emit + parseFailure
96
+ population.
97
+ - **`Scanner.scan()` aggregation** — walks `fileResults`, collects every
98
+ `f.parseFailure` into `result.parseFailures`, counts `f.skipped` into
99
+ `summary.filesSkipped`. Summary `filesParseFailed === parseFailures.length`
100
+ by construction.
101
+ - **`formatScanReport` summary lines** (additive, only render when > 0):
102
+ - `Parser errors: N file(s) failed (run with --show-parse-errors to see)`
103
+ - `Files skipped (pre-flight): N`
104
+ Clean scans (no parse failures, no skips) produce byte-identical
105
+ output to 2.8.18 — the additive lines stay invisible.
106
+ - **EXTENDED `src/agents/mastra/workflow.ts` `runPatternMatch`** — now
107
+ takes `fileTimeoutMs?: number` (default 30000); wraps the
108
+ `analyze(sourceCode, filePath, language, ...)` call in
109
+ `withTimeout(..., fileTimeoutMs, filePath)` so the LLM-enriched path
110
+ has timeout parity with the static path. Propagated through
111
+ `analyzeFile` options and `Scanner.analyzeFileWithLLM` so
112
+ `this.fileTimeoutMs` flows end-to-end. On timeout, the analyze
113
+ rejection bubbles up to `analyzeFileWithLLM`'s outer catch → emits
114
+ `[LLM_FAIL]` → static fallback. If static also times out, the inner
115
+ catch records a structured `parseFailure` with `reason: 'timeout'`.
116
+
117
+ ### JSON schema (additive, back-compat)
118
+
119
+ ```jsonc
120
+ {
121
+ "meta": { /* unchanged */ },
122
+ "findings": [ /* unchanged */ ],
123
+ "byOWASP": { /* unchanged */ },
124
+ "files": [
125
+ {
126
+ "path": ".../DefaultTeXHyphenData.java",
127
+ "language": "java",
128
+ "loc": 0,
129
+ "findings": [],
130
+ "analysisTimeMs": 12340,
131
+ "parseFailure": { // NEW (optional)
132
+ "file": ".../DefaultTeXHyphenData.java",
133
+ "language": "java",
134
+ "reason": "stack_overflow",
135
+ "message": "Maximum call stack size exceeded",
136
+ "analysisTimeMs": 12340
137
+ }
138
+ }
139
+ ],
140
+ "parseFailures": [ /* NEW: always present, may be [] */ ],
141
+ "summary": {
142
+ /* existing */
143
+ "filesParseFailed": 1, // NEW
144
+ "filesSkipped": 0 // NEW
145
+ }
146
+ }
147
+ ```
148
+
149
+ ### Stderr markers (always on, no `--verbose` required)
150
+
151
+ ```
152
+ [SKIP] camel/.../HugeGenerated.java: file too large
153
+ [PARSER_FAIL] CoreNLP/.../DefaultTeXHyphenData.java: stack_overflow: Maximum call stack size exceeded
154
+ [PARSER_FAIL] camel/.../HugeGenerated.java: timeout: Timeout after 30000ms: .../HugeGenerated.java
155
+ [LLM_FAIL] elide-core/.../PathRouteResolver.java: Error: terminated
156
+ ```
157
+
158
+ ### Tests (+18)
159
+
160
+ - **NEW `tests/parse-failure.test.ts`** (10 tests) — unit coverage for
161
+ `classifyParseFailure`: RangeError → `stack_overflow`; `Timeout
162
+ after Nms:` → `timeout`; `terminated` (case-insensitive) →
163
+ `terminated`; generic Error / string / object / null / undefined
164
+ → `parse_error`; RangeError-beats-Timeout precedence; "Timeout"
165
+ prefix-only matching.
166
+ - **NEW `tests/scanner-parse-failures.test.ts`** (8 tests) —
167
+ integration coverage:
168
+ - `formatScanReport` renders `Parser errors:` / `Files skipped`
169
+ lines only when counts > 0 (5 tests, including back-compat
170
+ omission on clean scans).
171
+ - `scanDirectory` end-to-end with `MAX_FILE_BYTES=10` forces every
172
+ Java file in a tmpdir to preFlightSkip; asserts
173
+ `summary.filesSkipped === 2`, FileResult `.skipped` populated,
174
+ `parseFailures: []`, stderr `[SKIP]` markers fire without
175
+ `--verbose`.
176
+ - Empty-dir scan: asserts `parseFailures` always present as Array,
177
+ `filesParseFailed === 0`, `filesSkipped === 0`.
178
+
179
+ ### Out of scope (deferred)
180
+
181
+ - Tree-sitter **error-tolerant parse mode** — requires upstream
182
+ `circle-ir` PR (CoreNLP `DefaultTeXHyphenData.java` is the
183
+ repro). Filed at close-out of cognium-ai#88.
184
+ - Extended `preFlightSkip` heuristics (max nesting depth, generated-
185
+ code patterns) — defer until corpus data shows clear thresholds.
186
+ - **LLM JSON parse error aggregation** is already captured by #87's
187
+ `--deep` mode (`attemptOutcome: 'parse_error'` + `responseSnippet`).
188
+ - SARIF `runs[].invocations[].toolExecutionNotifications` — add
189
+ when a SARIF consumer asks.
190
+
8
191
  ## [2.8.18] - 2026-06-12
9
192
 
10
193
  ### Added — Deep LLM debug mode (cognium-ai#87)
@@ -80,6 +80,13 @@ export declare function analyzeFile(filePath: string, sourceCode: string, option
80
80
  verificationStrategy?: VerificationStrategy;
81
81
  llmConfig?: Partial<LLMConfig>;
82
82
  disabledPasses?: string[];
83
+ /**
84
+ * #88: per-file `analyze()` timeout (ms). Plumbed through to
85
+ * `runPatternMatch`'s `withTimeout` wrap so the Mastra path is
86
+ * protected from sync Tree-sitter wedges the same way the static
87
+ * path is. Defaults to 30000 (matches `SecurityScanner.fileTimeoutMs`).
88
+ */
89
+ fileTimeoutMs?: number;
83
90
  }): Promise<WorkflowOutput>;
84
91
  /**
85
92
  * Stream security analysis with progress updates
@@ -1 +1 @@
1
- {"version":3,"file":"workflow.d.ts","sourceRoot":"","sources":["../../../src/agents/mastra/workflow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow.d.ts","sourceRoot":"","sources":["../../../src/agents/mastra/workflow.ts"],"names":[],"mappings":"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"}
@@ -16,15 +16,24 @@ export { patternMatchStep, enrichStep, mergeStep, verifyStep, reportStep, } from
16
16
  // Core Pipeline Functions (non-Mastra)
17
17
  // ============================================================================
18
18
  /**
19
- * Run pattern matching step
19
+ * Run pattern matching step.
20
+ *
21
+ * #88: wrapped in `withTimeout` to match the static-path protection
22
+ * (scanner.ts `analyzeFile`). Pre-#88 the Mastra path called
23
+ * `analyze()` raw, so a Tree-sitter wedge would hang the whole LLM
24
+ * pipeline. Timeout is `fileTimeoutMs` (default 30s, override via
25
+ * `analyzeFile({ fileTimeoutMs })`). The reject message format
26
+ * `Timeout after Nms: <label>` is what `classifyParseFailure` keys
27
+ * off to attribute the failure as `reason: 'timeout'`.
20
28
  */
21
- async function runPatternMatch(filePath, sourceCode, language, disabledPasses) {
29
+ async function runPatternMatch(filePath, sourceCode, language, disabledPasses, fileTimeoutMs = 30000) {
22
30
  const { analyze, isAnalyzerInitialized } = await import('circle-ir');
23
31
  const { ensureAnalyzerInitialized } = await import('../../utils/analyzer-init.js');
32
+ const { withTimeout } = await import('../../utils/with-timeout.js');
24
33
  if (!isAnalyzerInitialized()) {
25
34
  await ensureAnalyzerInitialized();
26
35
  }
27
- const result = await analyze(sourceCode, filePath, language, disabledPasses && disabledPasses.length > 0 ? { disabledPasses } : undefined);
36
+ const result = await withTimeout(analyze(sourceCode, filePath, language, disabledPasses && disabledPasses.length > 0 ? { disabledPasses } : undefined), fileTimeoutMs, filePath);
28
37
  return {
29
38
  patternSources: result.taint.sources,
30
39
  patternSinks: result.taint.sinks,
@@ -569,8 +578,9 @@ export async function analyzeFile(filePath, sourceCode, options) {
569
578
  const verificationStrategy = options?.verificationStrategy ?? 'prioritized'; // Solution 2: default to smart sampling
570
579
  const llmConfig = options?.llmConfig;
571
580
  const disabledPasses = options?.disabledPasses;
581
+ const fileTimeoutMs = options?.fileTimeoutMs ?? 30000;
572
582
  const patternStartTime = Date.now();
573
- const patternResult = await runPatternMatch(filePath, sourceCode, language, disabledPasses);
583
+ const patternResult = await runPatternMatch(filePath, sourceCode, language, disabledPasses, fileTimeoutMs);
574
584
  const patternMatchTimeMs = Date.now() - patternStartTime;
575
585
  const enrichResult = await runEnrich(filePath, sourceCode, patternResult.types, patternResult.imports, patternResult.patternSources, patternResult.patternSinks, enableEnrichment, language, llmConfig);
576
586
  const mergeResult = runMerge(patternResult.patternSources, patternResult.patternSinks, enrichResult.enrichmentResult, confidenceThreshold, sourceCode, filePath);
@@ -1 +1 @@
1
- {"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../../src/agents/mastra/workflow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../../src/agents/mastra/workflow.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Parse-failure classifier (cognium-ai#88).
3
+ *
4
+ * Top-100 Java scans showed circle-ir.analyze() failures (Tree-sitter
5
+ * stack overflow on CoreNLP `DefaultTeXHyphenData.java`, "Error: terminated"
6
+ * on multiple files, per-file timeouts, generic parse errors) being silently
7
+ * swallowed by the scanner — the file looked clean with `findings: []` and
8
+ * no record of *why* it failed reached scan output.
9
+ *
10
+ * This module gives the scanner a single small type + classifier so each
11
+ * catch site can emit a structured `ParseFailure` instead of a bare empty
12
+ * FileResult. The aggregate flows out via `ScanResult.parseFailures[]` and
13
+ * `ScanSummary.filesParseFailed`.
14
+ *
15
+ * circle-ir's parser throws generic `Error` (no structured discriminator),
16
+ * so classification happens locally by sniffing the error type/message.
17
+ * A follow-up upstream `circle-ir` issue tracks adding a real
18
+ * `ParseError` subclass + error-tolerant Tree-sitter parse mode.
19
+ */
20
+ import type { SupportedLanguage } from 'circle-ir';
21
+ /**
22
+ * Why a file's analyze() call failed. Stable string values — these are
23
+ * surfaced in JSON output and stderr lines, so renaming is a breaking
24
+ * change to consumers.
25
+ */
26
+ export type ParseFailureReason = 'stack_overflow' | 'timeout' | 'terminated' | 'parse_error';
27
+ /**
28
+ * Structured record of a single per-file analyze() failure. Lives on
29
+ * `FileResult.parseFailure?` (optional, present only when the file
30
+ * failed) and is aggregated into `ScanResult.parseFailures[]`.
31
+ */
32
+ export interface ParseFailure {
33
+ /** Absolute path to the file that failed (mirrors FileResult.path). */
34
+ file: string;
35
+ /** Detected language for the file. */
36
+ language: SupportedLanguage;
37
+ /** Classifier output — one of the four reasons above. */
38
+ reason: ParseFailureReason;
39
+ /** Original error message (best-effort `String(err)` if not Error). */
40
+ message: string;
41
+ /** Wall-clock ms spent before the failure, for triage. */
42
+ analysisTimeMs?: number;
43
+ }
44
+ /**
45
+ * Classify an unknown thrown value into a stable `ParseFailureReason`
46
+ * plus its message string.
47
+ *
48
+ * Order matters:
49
+ * 1. `RangeError` → stack_overflow (Tree-sitter blows the V8 stack on
50
+ * pathological inputs like the CoreNLP `DefaultTeXHyphenData.java`
51
+ * auto-generated data table).
52
+ * 2. `Timeout after \d+ms:` → timeout (the prefix is emitted by
53
+ * `withTimeout()` in scanner.ts).
54
+ * 3. /terminated/i in the message → terminated (Tree-sitter worker
55
+ * death, seen on elide-core sources).
56
+ * 4. Default → parse_error.
57
+ *
58
+ * The four cases are deliberately disjoint and cheap — no async,
59
+ * no I/O — so every catch site can call this unconditionally.
60
+ */
61
+ export declare function classifyParseFailure(error: unknown): {
62
+ reason: ParseFailureReason;
63
+ message: string;
64
+ };
65
+ //# sourceMappingURL=parse-failure.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-failure.d.ts","sourceRoot":"","sources":["../../src/security-scan/parse-failure.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAEnD;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAC1B,gBAAgB,GAChB,SAAS,GACT,YAAY,GACZ,aAAa,CAAC;AAElB;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,uEAAuE;IACvE,IAAI,EAAE,MAAM,CAAC;IACb,sCAAsC;IACtC,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,yDAAyD;IACzD,MAAM,EAAE,kBAAkB,CAAC;IAC3B,uEAAuE;IACvE,OAAO,EAAE,MAAM,CAAC;IAChB,0DAA0D;IAC1D,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG;IACpD,MAAM,EAAE,kBAAkB,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;CACjB,CAgBA"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Classify an unknown thrown value into a stable `ParseFailureReason`
3
+ * plus its message string.
4
+ *
5
+ * Order matters:
6
+ * 1. `RangeError` → stack_overflow (Tree-sitter blows the V8 stack on
7
+ * pathological inputs like the CoreNLP `DefaultTeXHyphenData.java`
8
+ * auto-generated data table).
9
+ * 2. `Timeout after \d+ms:` → timeout (the prefix is emitted by
10
+ * `withTimeout()` in scanner.ts).
11
+ * 3. /terminated/i in the message → terminated (Tree-sitter worker
12
+ * death, seen on elide-core sources).
13
+ * 4. Default → parse_error.
14
+ *
15
+ * The four cases are deliberately disjoint and cheap — no async,
16
+ * no I/O — so every catch site can call this unconditionally.
17
+ */
18
+ export function classifyParseFailure(error) {
19
+ if (error instanceof RangeError) {
20
+ return { reason: 'stack_overflow', message: error.message };
21
+ }
22
+ if (error instanceof Error) {
23
+ if (/^Timeout after \d+ms:/.test(error.message)) {
24
+ return { reason: 'timeout', message: error.message };
25
+ }
26
+ if (/terminated/i.test(error.message)) {
27
+ return { reason: 'terminated', message: error.message };
28
+ }
29
+ return { reason: 'parse_error', message: error.message };
30
+ }
31
+ // Non-Error throwable (string, number, plain object, …). Stringify
32
+ // best-effort and surface as a generic parse_error.
33
+ return { reason: 'parse_error', message: String(error) };
34
+ }
35
+ //# sourceMappingURL=parse-failure.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-failure.js","sourceRoot":"","sources":["../../src/security-scan/parse-failure.ts"],"names":[],"mappings":"AAkDA;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAc;IAIjD,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;QAChC,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;IAC9D,CAAC;IACD,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,IAAI,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YAChD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;QACvD,CAAC;QACD,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YACtC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;QAC1D,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;IAC3D,CAAC;IACD,mEAAmE;IACnE,oDAAoD;IACpD,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;AAC3D,CAAC"}
@@ -9,6 +9,8 @@
9
9
  */
10
10
  import { type Finding, type SupportedLanguage } from 'circle-ir';
11
11
  import { type OWASPMapping } from './owasp-mapping.js';
12
+ import { type ParseFailure } from './parse-failure.js';
13
+ export type { ParseFailure, ParseFailureReason } from './parse-failure.js';
12
14
  export interface ScanOptions {
13
15
  /** Repository URL or local path */
14
16
  target: string;
@@ -61,6 +63,12 @@ export interface ScanResult {
61
63
  summary: ScanSummary;
62
64
  /** Per-file results */
63
65
  files: FileResult[];
66
+ /**
67
+ * #88: aggregate of every file's `parseFailure` (Tree-sitter stack
68
+ * overflow, withTimeout reject, worker terminated, generic parse
69
+ * error). Always present, may be empty. JSON-stable.
70
+ */
71
+ parseFailures: ParseFailure[];
64
72
  }
65
73
  export interface ScanMeta {
66
74
  /** Target repository or path */
@@ -115,6 +123,18 @@ export interface ScanSummary {
115
123
  file: string;
116
124
  count: number;
117
125
  }>;
126
+ /**
127
+ * #88: count of files whose analyze() call threw (Tree-sitter
128
+ * crash, withTimeout reject, parse error). 0 means clean scan;
129
+ * matches the length of `ScanResult.parseFailures`.
130
+ */
131
+ filesParseFailed: number;
132
+ /**
133
+ * #88: count of files skipped by preFlightSkip (too-large,
134
+ * minified, auto-generated). Distinct from parse failures —
135
+ * these never reached analyze().
136
+ */
137
+ filesSkipped: number;
118
138
  }
119
139
  export interface FileResult {
120
140
  path: string;
@@ -122,6 +142,21 @@ export interface FileResult {
122
142
  loc: number;
123
143
  findings: ScanFinding[];
124
144
  analysisTimeMs: number;
145
+ /**
146
+ * #88: populated when analyze() throws (Tree-sitter stack overflow,
147
+ * withTimeout reject, worker terminated, generic parse error).
148
+ * Absent on success and on pre-flight skips. Mirrors the entry in
149
+ * `ScanResult.parseFailures[]`.
150
+ */
151
+ parseFailure?: ParseFailure;
152
+ /**
153
+ * #88: populated when `preFlightSkip` short-circuited the file
154
+ * before analyze() (too-large, minified, auto-generated). Distinct
155
+ * from `parseFailure` so summary counts stay disjoint.
156
+ */
157
+ skipped?: {
158
+ reason: string;
159
+ };
125
160
  }
126
161
  export declare class SecurityScanner {
127
162
  private workDir;
@@ -1 +1 @@
1
- {"version":3,"file":"scanner.d.ts","sourceRoot":"","sources":["../../src/security-scan/scanner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scanner.d.ts","sourceRoot":"","sources":["../../src/security-scan/scanner.ts"],"names":[],"mappings":"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"}
@@ -14,31 +14,14 @@ import { minimatch } from 'minimatch';
14
14
  import { analyze, generateFindings, } from 'circle-ir';
15
15
  import { ensureAnalyzerInitialized } from '../utils/analyzer-init.js';
16
16
  import { preFlightSkip } from '../utils/file-skip.js';
17
+ import { withTimeout } from '../utils/with-timeout.js';
17
18
  import { analyzeFile as mastraAnalyzeFile } from '../agents/mastra/workflow.js';
18
19
  import { getOWASPMapping } from './owasp-mapping.js';
19
20
  import { isSuppressedSinkShape } from './sink-filters.js';
21
+ import { classifyParseFailure } from './parse-failure.js';
20
22
  // ============================================================================
21
23
  // Scanner Implementation
22
24
  // ============================================================================
23
- /**
24
- * Run a function with a timeout. Returns the result or throws on timeout.
25
- */
26
- function withTimeout(promise, timeoutMs, label) {
27
- return new Promise((resolve, reject) => {
28
- const timer = setTimeout(() => {
29
- reject(new Error(`Timeout after ${timeoutMs}ms: ${label}`));
30
- }, timeoutMs);
31
- promise
32
- .then((result) => {
33
- clearTimeout(timer);
34
- resolve(result);
35
- })
36
- .catch((err) => {
37
- clearTimeout(timer);
38
- reject(err);
39
- });
40
- });
41
- }
42
25
  export class SecurityScanner {
43
26
  workDir;
44
27
  verbose;
@@ -358,15 +341,17 @@ export class SecurityScanner {
358
341
  // protection. See src/utils/file-skip.ts.
359
342
  const flight = preFlightSkip(filePath);
360
343
  if (flight.skip) {
361
- if (this.verbose) {
362
- console.error(` [SKIP] ${relativePath}: ${flight.reason}`);
363
- }
344
+ // #88: always-on (drops the prior `if (this.verbose)` gate).
345
+ // Sits next to the new `[PARSER_FAIL]` marker so users see
346
+ // every reason a file produced 0 findings.
347
+ console.error(`[SKIP] ${relativePath}: ${flight.reason}`);
364
348
  return {
365
349
  path: absolutePath,
366
350
  language,
367
351
  loc: 0,
368
352
  findings: [],
369
353
  analysisTimeMs: Date.now() - startTime,
354
+ skipped: { reason: flight.reason ?? 'preFlightSkip' },
370
355
  };
371
356
  }
372
357
  const content = flight.content;
@@ -484,15 +469,27 @@ export class SecurityScanner {
484
469
  };
485
470
  }
486
471
  catch (error) {
487
- if (this.verbose) {
488
- console.error(`Error analyzing ${relativePath}: ${error}`);
489
- }
472
+ // #88: was `if (this.verbose) console.error(...)` — files that
473
+ // crashed analyze() looked identical to clean files in scan
474
+ // output. Now always emit `[PARSER_FAIL]` to stderr and populate
475
+ // a structured `parseFailure` on the returned FileResult so
476
+ // Scanner.scan() can aggregate into ScanResult.parseFailures[].
477
+ const analysisTimeMs = Date.now() - startTime;
478
+ const { reason, message } = classifyParseFailure(error);
479
+ console.error(`[PARSER_FAIL] ${relativePath}: ${reason}: ${message}`);
490
480
  return {
491
481
  path: absolutePath,
492
482
  language,
493
483
  loc: 0,
494
484
  findings: [],
495
- analysisTimeMs: Date.now() - startTime,
485
+ analysisTimeMs,
486
+ parseFailure: {
487
+ file: absolutePath,
488
+ language,
489
+ reason,
490
+ message,
491
+ analysisTimeMs,
492
+ },
496
493
  };
497
494
  }
498
495
  }
@@ -504,10 +501,13 @@ export class SecurityScanner {
504
501
  const findings = [];
505
502
  try {
506
503
  // Run LLM-enhanced analysis via Mastra workflow
504
+ // #88: pass fileTimeoutMs so runPatternMatch wraps analyze() in
505
+ // withTimeout (parity with the static path at scanner.ts:565-569).
507
506
  const mastraResult = await mastraAnalyzeFile(filePath, content, {
508
507
  language,
509
508
  enableEnrichment: true,
510
509
  enableVerification: false, // Verification adds latency, enrichment is the key value
510
+ fileTimeoutMs: this.fileTimeoutMs,
511
511
  });
512
512
  // Convert Mastra vulnerabilities to ScanFinding format
513
513
  for (const vuln of mastraResult.vulnerabilities) {
@@ -592,9 +592,12 @@ export class SecurityScanner {
592
592
  };
593
593
  }
594
594
  catch (error) {
595
- if (this.verbose) {
596
- console.error(`LLM analysis failed for ${relativePath}, falling back to static: ${error}`);
597
- }
595
+ // #88: was `if (this.verbose)` — now always-on warning. Distinct
596
+ // from `[PARSER_FAIL]` because this catch fires on Mastra/LLM
597
+ // failures too, not just Tree-sitter crashes; we try a static
598
+ // fallback below and only surface `[PARSER_FAIL]` if THAT also
599
+ // fails.
600
+ console.error(`[LLM_FAIL] ${relativePath}: falling back to static analysis: ${error?.message ?? error}`);
598
601
  // Fallback to static analysis on LLM failure
599
602
  try {
600
603
  const ir = await withTimeout(analyze(content, path.basename(filePath), language), this.fileTimeoutMs, relativePath);
@@ -618,13 +621,28 @@ export class SecurityScanner {
618
621
  analysisTimeMs: Date.now() - start,
619
622
  };
620
623
  }
621
- catch {
624
+ catch (fallbackError) {
625
+ // #88: was a bare `catch {}` — fully silent. Both the LLM path
626
+ // and the static fallback failed; this is a genuine parse
627
+ // failure, so emit `[PARSER_FAIL]` and surface a structured
628
+ // `parseFailure` record. Use the inner (static-path) error for
629
+ // classification since it's closer to the parser.
630
+ const analysisTimeMs = Date.now() - start;
631
+ const { reason, message } = classifyParseFailure(fallbackError);
632
+ console.error(`[PARSER_FAIL] ${relativePath}: ${reason}: ${message}`);
622
633
  return {
623
634
  path: absolutePath,
624
635
  language,
625
636
  loc: 0,
626
637
  findings: [],
627
- analysisTimeMs: Date.now() - start,
638
+ analysisTimeMs,
639
+ parseFailure: {
640
+ file: absolutePath,
641
+ language,
642
+ reason,
643
+ message,
644
+ analysisTimeMs,
645
+ },
628
646
  };
629
647
  }
630
648
  }
@@ -724,6 +742,17 @@ export class SecurityScanner {
724
742
  .sort((a, b) => b.count - a.count)
725
743
  .slice(0, 5);
726
744
  const totalLOC = fileResults.reduce((sum, f) => sum + f.loc, 0);
745
+ // #88: aggregate per-file parse failures + skip counts into the
746
+ // top-level result. Two disjoint counters: parseFailure (analyze()
747
+ // threw) vs skipped (preFlightSkip short-circuit before analyze()).
748
+ const parseFailures = [];
749
+ let filesSkipped = 0;
750
+ for (const f of fileResults) {
751
+ if (f.parseFailure)
752
+ parseFailures.push(f.parseFailure);
753
+ if (f.skipped)
754
+ filesSkipped++;
755
+ }
727
756
  // Get commit info if available
728
757
  let commit;
729
758
  let branch;
@@ -754,8 +783,11 @@ export class SecurityScanner {
754
783
  bySeverity,
755
784
  byType,
756
785
  topVulnerableFiles: fileVulnCounts,
786
+ filesParseFailed: parseFailures.length,
787
+ filesSkipped,
757
788
  },
758
789
  files: fileResults,
790
+ parseFailures,
759
791
  };
760
792
  }
761
793
  /**
@@ -968,6 +1000,17 @@ export function formatScanReport(result) {
968
1000
  lines.push(`Files scanned: ${result.summary.totalFiles}`);
969
1001
  lines.push(`Lines of code: ${result.summary.totalLOC.toLocaleString()}`);
970
1002
  lines.push(`Total findings: ${result.summary.totalFindings}`);
1003
+ // #88: surface silent parser failures + pre-flight skips so users
1004
+ // know which files produced 0 findings because they were dropped
1005
+ // (not because they were clean). Only printed when count > 0 to
1006
+ // keep summary tight on clean scans.
1007
+ if (result.summary.filesParseFailed > 0) {
1008
+ lines.push(`Parser errors: ${result.summary.filesParseFailed} file(s) failed ` +
1009
+ `(run with --show-parse-errors to see)`);
1010
+ }
1011
+ if (result.summary.filesSkipped > 0) {
1012
+ lines.push(`Files skipped (pre-flight): ${result.summary.filesSkipped}`);
1013
+ }
971
1014
  lines.push('');
972
1015
  // By severity
973
1016
  lines.push('By Severity:');
@@ -1 +1 @@
1
- {"version":3,"file":"scanner.js","sourceRoot":"","sources":["../../src/security-scan/scanner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scanner.js","sourceRoot":"","sources":["../../src/security-scan/scanner.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAY,YAAY,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAEL,OAAO,EACP,gBAAgB,GAKjB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,WAAW,IAAI,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAChF,OAAO,EAAE,eAAe,EAAyC,MAAM,oBAAoB,CAAC;AAC5F,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAqB,MAAM,oBAAoB,CAAC;AA4J7E,+EAA+E;AAC/E,yBAAyB;AACzB,+EAA+E;AAE/E,MAAM,OAAO,eAAe;IAClB,OAAO,CAAS;IAChB,OAAO,CAAU;IACjB,SAAS,CAAU;IACnB,UAAU,CAAoC;IAC9C,aAAa,CAAS;IAE9B;QACE,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,CAAC,oBAAoB;IAClD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CAAC,OAAoB;QAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC;QACxC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,KAAK,CAAC;QAC5C,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,KAAK,CAAC;QAEpD,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACnC,OAAO,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC5D,CAAC;QAED,yDAAyD;QACzD,MAAM,yBAAyB,EAAE,CAAC;QAElC,sCAAsC;QACtC,IAAI,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC;QAC5F,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAEvD,0BAA0B;QAC1B,IAAI,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC;QAC/F,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAEpD,yBAAyB;QACzB,IAAI,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC;QACzG,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAE5D,2BAA2B;QAC3B,IAAI,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,KAAK,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC;QACnH,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;QAEpE,4CAA4C;QAC5C,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;YACtB,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QACnD,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,iBAAiB,CAAC,OAAoB;QAClD,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;QAE3C,8CAA8C;QAC9C,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/F,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACtD,CAAC;QAED,yBAAyB;QACzB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,+BAA+B,MAAM,EAAE,CAAC,CAAC;QAC3D,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,GAAW,EAAE,MAAe,EAAE,MAAe;QACnE,kCAAkC;QAClC,MAAM,MAAM,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC;QACjE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QAEtB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO,CAAC,KAAK,CAAC,WAAW,GAAG,OAAO,MAAM,KAAK,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,CAAC;YACH,iFAAiF;YACjF,MAAM,SAAS,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;YAC5C,IAAI,MAAM;gBAAE,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAC/C,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAC5B,YAAY,CAAC,KAAK,EAAE,SAAS,EAAE;gBAC7B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;aACzC,CAAC,CAAC;YAEH,wCAAwC;YACxC,IAAI,MAAM,EAAE,CAAC;gBACX,YAAY,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE;oBAC7E,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;iBACzC,CAAC,CAAC;gBACH,YAAY,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE;oBACtD,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;iBACzC,CAAC,CAAC;YACL,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,oBAAoB;YACpB,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YACpD,MAAM,IAAI,KAAK,CAAC,+BAA+B,KAAK,EAAE,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,QAAgB,EAAE,OAAoB;QAC1D,MAAM,EACJ,SAAS,EACT,QAAQ,GAAG,QAAQ,EAAE,iCAAiC;QACtD,eAAe,EACf,eAAe,GAChB,GAAG,OAAO,CAAC;QAEZ,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,MAAM,eAAe,GAAG;YACtB,oBAAoB;YACpB,cAAc;YACd,cAAc;YACd,aAAa;YACb,YAAY;YACZ,gBAAgB;YAChB,eAAe;YACf,YAAY;YACZ,YAAY;YACZ,aAAa;YACb,iBAAiB;YACjB,aAAa;YACb,aAAa;YACb,YAAY;YACZ,eAAe;YACf,kEAAkE;YAClE,gEAAgE;YAChE,6DAA6D;YAC7D,mBAAmB;YACnB,EAAE;YACF,gEAAgE;YAChE,6DAA6D;YAC7D,sDAAsD;YACtD,6DAA6D;YAC7D,4DAA4D;YAC5D,mEAAmE;YACnE,sDAAsD;YACtD,aAAa;YACb,aAAa;YACb,YAAY;YACZ,YAAY;YACZ,SAAS;YACT,+DAA+D;YAC/D,+DAA+D;YAC/D,wDAAwD;YACxD,yDAAyD;YACzD,+DAA+D;YAC/D,2DAA2D;YAC3D,cAAc;YACd,kBAAkB;YAClB,iBAAiB;YACjB,iBAAiB;YACjB,gBAAgB;YAChB,eAAe;YACf,cAAc;YACd,kBAAkB;YAClB,iBAAiB;YACjB,iBAAiB;YACjB,qBAAqB;YACrB,kBAAkB;YAClB,OAAO;SACR,CAAC;QAEF,MAAM,QAAQ,GAAG,CAAC,GAAG,eAAe,EAAE,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,CAAC;QAElE,MAAM,kBAAkB,GAAwC;YAC9D,IAAI,EAAE,CAAC,OAAO,CAAC;YACf,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;YACf,GAAG,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;YAC5C,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;YAC3C,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;YAC3C,MAAM,EAAE,CAAC,KAAK,CAAC;YACf,IAAI,EAAE,CAAC,KAAK,CAAC;YACb,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC;YACtC,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;YACvB,EAAE,EAAE,CAAC,KAAK,CAAC;SACZ,CAAC;QAEF,yCAAyC;QACzC,IAAI,UAAU,GAAa,EAAE,CAAC;QAC9B,IAAI,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtC,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;gBAC7B,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;aAAM,CAAC;YACN,+CAA+C;YAC/C,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,CAAC;QACxD,CAAC;QAED,sBAAsB;QACtB,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE;YACtC,IAAI,KAAK,GAAG,EAAE,IAAI,KAAK,CAAC,MAAM,IAAI,QAAQ;gBAAE,OAAO;YAEnD,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;gBAE7D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;oBAC5B,IAAI,KAAK,CAAC,MAAM,IAAI,QAAQ;wBAAE,MAAM;oBAEpC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;oBAC5C,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;oBAEvD,iBAAiB;oBACjB,IAAI,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE,CAAC;wBAChD,SAAS;oBACX,CAAC;oBAED,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;wBACxB,IAAI,CAAC,QAAQ,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;oBAC5B,CAAC;yBAAM,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;wBAC1B,kBAAkB;wBAClB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;wBACnD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC;4BAAE,SAAS;wBAExC,2DAA2D;wBAC3D,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;4BACjC,SAAS;wBACX,CAAC;wBAED,8BAA8B;wBAC9B,IAAI,eAAe,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BAClD,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,eAAe,CAAC,EAAE,CAAC;gCACxD,SAAS;4BACX,CAAC;wBACH,CAAC;wBAED,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACvB,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,iCAAiC;YACnC,CAAC;QACH,CAAC,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEf,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO,CAAC,KAAK,CAAC,cAAc,KAAK,CAAC,MAAM,gBAAgB,CAAC,CAAC;QAC5D,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;;OAQG;IACK,cAAc,CAAC,QAAgB,EAAE,QAAkB;QACzD,MAAM,cAAc,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACpD,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,YAAY,CAAC,KAAe,EAAE,OAAoB;QAC9D,MAAM,EAAE,QAAQ,GAAG,IAAI,EAAE,cAAc,GAAG,EAAE,EAAE,WAAW,GAAG,KAAK,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;QAC1F,MAAM,OAAO,GAAiB,EAAE,CAAC;QACjC,IAAI,cAAc,GAAG,CAAC,CAAC;QACvB,IAAI,aAAa,GAAG,CAAC,CAAC;QAEtB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAE9D,IAAI,QAAQ,EAAE,CAAC;YACb,oBAAoB;YACpB,MAAM,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;YACzB,MAAM,OAAO,GAAoB,EAAE,CAAC;YAEpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAChE,OAAO,CAAC,IAAI,CACV,CAAC,KAAK,IAAI,EAAE;oBACV,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACxB,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;wBAC3B,IAAI,CAAC,IAAI;4BAAE,MAAM;wBAEjB,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;wBACnD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;4BACjB,OAAO,CAAC,KAAK,CAAC,IAAI,cAAc,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,gBAAgB,YAAY,EAAE,CAAC,CAAC;wBACtF,CAAC;wBAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;wBAC/E,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wBACrB,cAAc,EAAE,CAAC;wBACjB,aAAa,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;wBAExC,IAAI,CAAC,cAAc,CAAC;4BAClB,KAAK,EAAE,SAAS;4BAChB,WAAW,EAAE,MAAM,CAAC,IAAI;4BACxB,cAAc;4BACd,UAAU,EAAE,KAAK,CAAC,MAAM;4BACxB,aAAa,EAAE,aAAa;yBAC7B,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC,CAAC,EAAE,CACL,CAAC;YACJ,CAAC;YAED,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC;aAAM,CAAC;YACN,sBAAsB;YACtB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;gBACnD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBACjB,OAAO,CAAC,KAAK,CAAC,IAAI,cAAc,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,gBAAgB,YAAY,EAAE,CAAC,CAAC;gBACtF,CAAC;gBAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;gBAC/E,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACrB,cAAc,EAAE,CAAC;gBACjB,aAAa,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAExC,IAAI,CAAC,cAAc,CAAC;oBAClB,KAAK,EAAE,SAAS;oBAChB,WAAW,EAAE,MAAM,CAAC,IAAI;oBACxB,cAAc;oBACd,UAAU,EAAE,KAAK,CAAC,MAAM;oBACxB,aAAa,EAAE,aAAa;iBAC7B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,WAAW,CACvB,QAAgB,EAChB,QAAgB,EAChB,WAAmD,EACnD,UAAqB;QAErB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,sEAAsE;QACtE,uEAAuE;QACvE,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACvD,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAC/C,MAAM,QAAQ,GAAkB,EAAE,CAAC;QAEnC,IAAI,CAAC;YACH,2DAA2D;YAC3D,sDAAsD;YACtD,kEAAkE;YAClE,2DAA2D;YAC3D,0CAA0C;YAC1C,MAAM,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;YACvC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;gBAChB,6DAA6D;gBAC7D,2DAA2D;gBAC3D,2CAA2C;gBAC3C,OAAO,CAAC,KAAK,CAAC,UAAU,YAAY,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC1D,OAAO;oBACL,IAAI,EAAE,YAAY;oBAClB,QAAQ;oBACR,GAAG,EAAE,CAAC;oBACN,QAAQ,EAAE,EAAE;oBACZ,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;oBACtC,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,eAAe,EAAE;iBACtD,CAAC;YACJ,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAQ,CAAC;YAEhC,6DAA6D;YAC7D,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACnB,OAAO,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;YAC9H,CAAC;YAED,oDAAoD;YACpD,MAAM,EAAE,GAAG,MAAM,WAAW,CAC1B,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,EACnD,IAAI,CAAC,aAAa,EAClB,YAAY,CACb,CAAC;YAEF,wCAAwC;YACxC,MAAM,UAAU,GAAG,gBAAgB,CACjC,EAAE,CAAC,KAAK,CAAC,OAAO,EAChB,EAAE,CAAC,KAAK,CAAC,KAAK,EACd,EAAE,CAAC,GAAG,EACN,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACxB,CAAC;YAEF,+DAA+D;YAC/D,MAAM,uBAAuB,GAAG,CAAC,UAAU,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAE1G,4DAA4D;YAC5D,EAAE;YACF,sEAAsE;YACtE,iEAAiE;YACjE,mEAAmE;YACnE,6DAA6D;YAC7D,oEAAoE;YACpE,gEAAgE;YAChE,kEAAkE;YAClE,iEAAiE;YACjE,2DAA2D;YAC3D,EAAE;YACF,mEAAmE;YACnE,gEAAgE;YAChE,MAAM,kBAAkB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;gBACjD,IAAI,CAAC,uBAAuB;oBAAE,OAAO,KAAK,CAAC;gBAC3C,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC;oBAAE,OAAO,KAAK,CAAC;gBAClE,yDAAyD;gBACzD,8DAA8D;gBAC9D,sCAAsC;gBACtC,uEAAuE;gBACvE,0DAA0D;gBAC1D,wEAAwE;gBACxE,sDAAsD;gBACtD,IAAI,qBAAqB,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC;oBAAE,OAAO,KAAK,CAAC;gBAC9D,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;YACH,MAAM,WAAW,GAAG,IAAI,GAAG,EAAqC,CAAC;YACjE,KAAK,MAAM,CAAC,IAAI,kBAAkB,EAAE,CAAC;gBACnC,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;gBACpC,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,IAAI,GAAG,CAAC;gBACrC,MAAM,GAAG,GAAG,GAAG,QAAQ,IAAI,QAAQ,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;gBAChD,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACpC,IAAI,MAAM,EAAE,CAAC;oBACX,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACjB,CAAC;qBAAM,CAAC;oBACN,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5B,CAAC;YACH,CAAC;YACD,KAAK,MAAM,CAAC,EAAE,KAAK,CAAC,IAAI,WAAW,EAAE,CAAC;gBACpC,4DAA4D;gBAC5D,+CAA+C;gBAC/C,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,CAAC;gBAChE,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACzB,MAAM,KAAK,GAAG,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC3C,QAAQ,CAAC,IAAI,CAAC;oBACZ,GAAG,OAAO;oBACV,KAAK;oBACL,QAAQ,EAAE,YAAY;oBACtB,mEAAmE;oBACnE,6DAA6D;oBAC7D,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;wBAClB,CAAC,CAAC;4BACE,gBAAgB,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;yBACtD;wBACH,CAAC,CAAC,EAAE,CAAC;iBACR,CAAC,CAAC;YACL,CAAC;YAED,4EAA4E;YAC5E,IAAI,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1C,KAAK,MAAM,WAAW,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC;oBACtC,kCAAkC;oBAClC,IAAI,UAAU,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;wBACtF,SAAS;oBACX,CAAC;oBACD,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC;wBAC9D,SAAS;oBACX,CAAC;oBAED,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,IAAI,EAAE,CAAC;oBAClC,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;wBACzC,QAAQ,EAAE,SAA0B;wBACpC,IAAI,EAAE,CAAC;wBACP,WAAW,EAAE,GAAG,WAAW,CAAC,QAAQ,KAAK,WAAW,CAAC,OAAO,EAAE;qBAC/D,CAAC;oBAEF,QAAQ,CAAC,IAAI,CAAC;wBACZ,EAAE,EAAE,WAAW,CAAC,EAAE;wBAClB,IAAI,EAAE,WAAW,CAAC,OAAc;wBAChC,GAAG,EAAE,GAAG;wBACR,QAAQ,EAAE,WAAW,CAAC,QAAQ;wBAC9B,UAAU,EAAE,GAAG;wBACf,MAAM,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,OAAO,IAAI,EAAE,EAAE;wBACvF,IAAI,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,IAAI,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,OAAO,IAAI,EAAE,EAAE;wBAC7G,WAAW,EAAE,KAAK;wBAClB,WAAW,EAAE,WAAW,CAAC,OAAO;wBAChC,WAAW,EAAE,WAAW,CAAC,GAAG,IAAI,EAAE;wBAClC,YAAY,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,EAAE;wBACjF,KAAK;wBACL,QAAQ,EAAE,YAAY;qBACvB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,OAAO;gBACL,IAAI,EAAE,YAAY;gBAClB,QAAQ;gBACR,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG;gBAChB,QAAQ;gBACR,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;aACvC,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,+DAA+D;YAC/D,4DAA4D;YAC5D,iEAAiE;YACjE,4DAA4D;YAC5D,gEAAgE;YAChE,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAC9C,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;YACxD,OAAO,CAAC,KAAK,CAAC,iBAAiB,YAAY,KAAK,MAAM,KAAK,OAAO,EAAE,CAAC,CAAC;YACtE,OAAO;gBACL,IAAI,EAAE,YAAY;gBAClB,QAAQ;gBACR,GAAG,EAAE,CAAC;gBACN,QAAQ,EAAE,EAAE;gBACZ,cAAc;gBACd,YAAY,EAAE;oBACZ,IAAI,EAAE,YAAY;oBAClB,QAAQ;oBACR,MAAM;oBACN,OAAO;oBACP,cAAc;iBACf;aACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,kBAAkB,CAC9B,QAAgB,EAChB,OAAe,EACf,YAAoB,EACpB,YAAoB,EACpB,QAA2B,EAC3B,WAAmD,EACnD,UAAqB,EACrB,SAAkB;QAElB,MAAM,KAAK,GAAG,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;QACtC,MAAM,QAAQ,GAAkB,EAAE,CAAC;QAEnC,IAAI,CAAC;YACH,gDAAgD;YAChD,gEAAgE;YAChE,mEAAmE;YACnE,MAAM,YAAY,GAAG,MAAM,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE;gBAC9D,QAAQ;gBACR,gBAAgB,EAAE,IAAI;gBACtB,kBAAkB,EAAE,KAAK,EAAE,yDAAyD;gBACpF,aAAa,EAAE,IAAI,CAAC,aAAa;aAClC,CAAC,CAAC;YAEH,uDAAuD;YACvD,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,eAAe,EAAE,CAAC;gBAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC;gBAC3C,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC;oBAClD,SAAS;gBACX,CAAC;gBAED,kCAAkC;gBAClC,IAAI,UAAU,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC5E,SAAS;gBACX,CAAC;gBAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,aAAa,CAAC;gBACtC,MAAM,KAAK,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;gBAEnC,QAAQ,CAAC,IAAI,CAAC;oBACZ,EAAE,EAAE,IAAI,CAAC,EAAE,IAAI,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;oBAC7E,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,SAAS;oBAC5B,GAAG;oBACH,QAAQ;oBACR,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,GAAG;oBAClC,MAAM,EAAE;wBACN,IAAI,EAAE,YAAY;wBAClB,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC;wBAC5B,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,EAAE;qBAC9B;oBACD,IAAI,EAAE;wBACJ,IAAI,EAAE,YAAY;wBAClB,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC;wBAC1B,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE;qBAC5B;oBACD,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI;oBACrC,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,SAAS,IAAI,EAAE;oBACrD,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;oBACnC,YAAY,EAAE;wBACZ,iBAAiB,EAAE,IAAI;wBACvB,YAAY,EAAE,IAAI;wBAClB,cAAc,EAAE,IAAI,CAAC,UAAU,IAAI,GAAG;qBACvC;oBACD,KAAK;oBACL,QAAQ,EAAE,YAAY;iBACvB,CAAC,CAAC;YACL,CAAC;YAED,gEAAgE;YAChE,8DAA8D;YAC9D,gEAAgE;YAChE,4DAA4D;YAC5D,oEAAoE;YACpE,KAAK,MAAM,WAAW,IAAI,YAAY,CAAC,YAAY,EAAE,CAAC;gBACpD,IAAI,UAAU,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACtF,SAAS;gBACX,CAAC;gBACD,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC;oBAC9D,SAAS;gBACX,CAAC;gBAED,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,IAAI,EAAE,CAAC;gBAClC,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;oBACzC,QAAQ,EAAE,SAA0B;oBACpC,IAAI,EAAE,CAAC;oBACP,WAAW,EAAE,GAAG,WAAW,CAAC,QAAQ,KAAK,WAAW,CAAC,OAAO,EAAE;iBAC/D,CAAC;gBAEF,QAAQ,CAAC,IAAI,CAAC;oBACZ,EAAE,EAAE,WAAW,CAAC,EAAE;oBAClB,IAAI,EAAE,WAAW,CAAC,OAAc;oBAChC,GAAG;oBACH,QAAQ,EAAE,WAAW,CAAC,QAAQ;oBAC9B,UAAU,EAAE,GAAG;oBACf,MAAM,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,OAAO,IAAI,EAAE,EAAE;oBACvF,IAAI,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,CAAC,QAAQ,IAAI,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,OAAO,IAAI,EAAE,EAAE;oBAC7G,WAAW,EAAE,KAAK;oBAClB,WAAW,EAAE,WAAW,CAAC,OAAO;oBAChC,WAAW,EAAE,WAAW,CAAC,GAAG,IAAI,EAAE;oBAClC,YAAY,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,EAAE;oBACjF,KAAK;oBACL,QAAQ,EAAE,YAAY;iBACvB,CAAC,CAAC;YACL,CAAC;YAED,OAAO;gBACL,IAAI,EAAE,YAAY;gBAClB,QAAQ;gBACR,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM;gBAC/B,QAAQ;gBACR,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;aACnC,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,iEAAiE;YACjE,8DAA8D;YAC9D,8DAA8D;YAC9D,+DAA+D;YAC/D,SAAS;YACT,OAAO,CAAC,KAAK,CACX,cAAc,YAAY,sCAAuC,KAAe,EAAE,OAAO,IAAI,KAAK,EAAE,CACrG,CAAC;YAEF,6CAA6C;YAC7C,IAAI,CAAC;gBACH,MAAM,EAAE,GAAG,MAAM,WAAW,CAC1B,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,EACnD,IAAI,CAAC,aAAa,EAClB,YAAY,CACb,CAAC;gBACF,MAAM,UAAU,GAAG,gBAAgB,CACjC,EAAE,CAAC,KAAK,CAAC,OAAO,EAChB,EAAE,CAAC,KAAK,CAAC,KAAK,EACd,EAAE,CAAC,GAAG,EACN,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACxB,CAAC;gBAEF,KAAK,MAAM,OAAO,IAAI,UAAU,EAAE,CAAC;oBACjC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC;wBAC1D,SAAS;oBACX,CAAC;oBAED,MAAM,KAAK,GAAG,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;oBAC3C,QAAQ,CAAC,IAAI,CAAC;wBACZ,GAAG,OAAO;wBACV,KAAK;wBACL,QAAQ,EAAE,YAAY;qBACvB,CAAC,CAAC;gBACL,CAAC;gBAED,OAAO;oBACL,IAAI,EAAE,YAAY;oBAClB,QAAQ;oBACR,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG;oBAChB,QAAQ;oBACR,cAAc,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;iBACnC,CAAC;YACJ,CAAC;YAAC,OAAO,aAAa,EAAE,CAAC;gBACvB,+DAA+D;gBAC/D,0DAA0D;gBAC1D,4DAA4D;gBAC5D,+DAA+D;gBAC/D,kDAAkD;gBAClD,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;gBAC1C,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,oBAAoB,CAAC,aAAa,CAAC,CAAC;gBAChE,OAAO,CAAC,KAAK,CAAC,iBAAiB,YAAY,KAAK,MAAM,KAAK,OAAO,EAAE,CAAC,CAAC;gBACtE,OAAO;oBACL,IAAI,EAAE,YAAY;oBAClB,QAAQ;oBACR,GAAG,EAAE,CAAC;oBACN,QAAQ,EAAE,EAAE;oBACZ,cAAc;oBACd,YAAY,EAAE;wBACZ,IAAI,EAAE,YAAY;wBAClB,QAAQ;wBACR,MAAM;wBACN,OAAO;wBACP,cAAc;qBACf;iBACF,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,QAAgB;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;QAEjD,QAAQ,GAAG,EAAE,CAAC;YACZ,KAAK,OAAO;gBACV,OAAO,MAAM,CAAC;YAChB,KAAK,IAAI,CAAC;YACV,KAAK,IAAI;gBACP,OAAO,GAAG,CAAC;YACb,KAAK,MAAM,CAAC;YACZ,KAAK,KAAK,CAAC;YACX,KAAK,MAAM,CAAC;YACZ,KAAK,MAAM,CAAC;YACZ,KAAK,MAAM;gBACT,OAAO,KAAK,CAAC;YACf,KAAK,KAAK,CAAC;YACX,KAAK,MAAM,CAAC;YACZ,KAAK,MAAM,CAAC;YACZ,KAAK,MAAM;gBACT,OAAO,YAAY,CAAC;YACtB,KAAK,KAAK,CAAC;YACX,KAAK,MAAM,CAAC;YACZ,KAAK,MAAM,CAAC;YACZ,KAAK,MAAM;gBACT,OAAO,YAAY,CAAC;YACtB,KAAK,KAAK;gBACR,OAAO,QAAQ,CAAC;YAClB,KAAK,KAAK;gBACR,OAAO,MAAM,CAAC;YAChB,KAAK,KAAK;gBACR,OAAO,IAAI,CAAC;YACd,KAAK,KAAK,CAAC;YACX,KAAK,OAAO,CAAC;YACb,KAAK,MAAM,CAAC;YACZ,KAAK,MAAM;gBACT,OAAO,MAAM,CAAC;YAChB,KAAK,OAAO,CAAC;YACb,KAAK,MAAM;gBACT,OAAO,MAAM,CAAC;YAChB;gBACE,OAAO,MAAM,CAAC;QAClB,CAAC;IACH,CAAC;IAED;;OAEG;IACK,gBAAgB,CACtB,QAAgB,EAChB,WAAmD;QAEnD,MAAM,aAAa,GAAG,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;QAClE,MAAM,WAAW,GAAG,aAAa,CAAC,QAAsC,CAAC,IAAI,CAAC,CAAC;QAC/E,MAAM,QAAQ,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;QAC5C,OAAO,WAAW,IAAI,QAAQ,CAAC;IACjC,CAAC;IAED;;OAEG;IACK,cAAc,CACpB,WAAyB,EACzB,OAAoB,EACpB,SAAiB;QAEjB,uBAAuB;QACvB,MAAM,WAAW,GAAkB,EAAE,CAAC;QACtC,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;YAC/B,WAAW,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC;QAED,0BAA0B;QAC1B,MAAM,OAAO,GAAiB,EAAE,CAAC;QACjC,KAAK,MAAM,OAAO,IAAI,WAAW,EAAE,CAAC;YAClC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;YACxC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACvB,OAAO,CAAC,QAAQ,CAAC,GAAG;oBAClB,KAAK,EAAE,CAAC;oBACR,QAAQ,EAAE,CAAC;oBACX,IAAI,EAAE,CAAC;oBACP,MAAM,EAAE,CAAC;oBACT,GAAG,EAAE,CAAC;oBACN,QAAQ,EAAE,EAAE;iBACb,CAAC;YACJ,CAAC;YAED,OAAO,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,CAAC;YAC1B,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAkD,CAAC,EAAE,CAAC;YAChF,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3C,CAAC;QAED,oBAAoB;QACpB,MAAM,UAAU,GAAG,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;QAC/D,MAAM,MAAM,GAA+B,EAAE,CAAC;QAE9C,KAAK,MAAM,OAAO,IAAI,WAAW,EAAE,CAAC;YAClC,UAAU,CAAC,OAAO,CAAC,QAAmC,CAAC,EAAE,CAAC;YAC1D,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACzD,CAAC;QAED,4BAA4B;QAC5B,MAAM,cAAc,GAAG,WAAW;aAC/B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;aACxD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;aAC1B,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;aACjC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAEf,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAEhE,gEAAgE;QAChE,mEAAmE;QACnE,oEAAoE;QACpE,MAAM,aAAa,GAAmB,EAAE,CAAC;QACzC,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;YAC5B,IAAI,CAAC,CAAC,YAAY;gBAAE,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;YACvD,IAAI,CAAC,CAAC,OAAO;gBAAE,YAAY,EAAE,CAAC;QAChC,CAAC;QAED,+BAA+B;QAC/B,IAAI,MAA0B,CAAC;QAC/B,IAAI,MAA0B,CAAC;QAE/B,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;YACnE,IAAI,CAAC;gBACH,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBACtG,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACxH,CAAC;YAAC,MAAM,CAAC;gBACP,oBAAoB;YACtB,CAAC;QACH,CAAC;QAED,OAAO;YACL,IAAI,EAAE;gBACJ,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,MAAM;gBAChC,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,MAAM;gBAChC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;gBAClC,OAAO,EAAE,OAAO,EAAE,8BAA8B;aACjD;YACD,QAAQ,EAAE,WAAW;YACrB,OAAO;YACP,OAAO,EAAE;gBACP,UAAU,EAAE,WAAW,CAAC,MAAM;gBAC9B,QAAQ;gBACR,aAAa,EAAE,WAAW,CAAC,MAAM;gBACjC,UAAU;gBACV,MAAM;gBACN,kBAAkB,EAAE,cAAc;gBAClC,gBAAgB,EAAE,aAAa,CAAC,MAAM;gBACtC,YAAY;aACb;YACD,KAAK,EAAE,WAAW;YAClB,aAAa;SACd,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,UAAU,CAAC,MAAkB,EAAE,SAAiB;QAC5D,iCAAiC;QACjC,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAE7C,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAEjE,mBAAmB;QACnB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,SAAS,OAAO,CAAC,CAAC;QAChE,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAE5D,oBAAoB;QACpB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,SAAS,QAAQ,CAAC,CAAC;QAClE,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;QAEvD,sBAAsB;QACtB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,SAAS,MAAM,CAAC,CAAC;QAClE,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;QAE1D,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO,CAAC,KAAK,CAAC,oBAAoB,SAAS,EAAE,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,MAAkB;QACtC,MAAM,KAAK,GAAa;YACtB,GAAG,CAAE,MAAM,CAAC,EAAE,CAAC;YACf,sBAAsB;YACtB,GAAG,CAAE,MAAM,CAAC,EAAE,CAAC;YACf,EAAE;YACF,WAAW,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE;YAC/B,WAAW,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,KAAK,EAAE;YACxC,WAAW,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,KAAK,EAAE;YACxC,cAAc,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE;YACrC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG;YAC1D,EAAE;YACF,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YACd,SAAS;YACT,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YACd,EAAE;YACF,kBAAkB,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE;YAC7C,kBAAkB,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,EAAE,EAAE;YAC5D,mBAAmB,MAAM,CAAC,OAAO,CAAC,aAAa,EAAE;YACjD,EAAE;YACF,qBAAqB;YACrB,eAAe,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE;YACnD,eAAe,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE;YAC/C,eAAe,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,EAAE;YACjD,eAAe,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE;YAC9C,EAAE;YACF,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YACd,wBAAwB;YACxB,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YACd,EAAE;SACH,CAAC;QAEF,gCAAgC;QAChC,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;aAC/C,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;QAE7C,KAAK,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,WAAW,EAAE,CAAC;YAC3C,IAAI,IAAI,CAAC,KAAK,KAAK,CAAC;gBAAE,SAAS;YAC/B,KAAK,CAAC,IAAI,CAAC,GAAG,QAAQ,KAAK,IAAI,CAAC,KAAK,WAAW,CAAC,CAAC;YAClD,KAAK,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,QAAQ,WAAW,IAAI,CAAC,IAAI,aAAa,IAAI,CAAC,MAAM,UAAU,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACzG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC;QAED,IAAI,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAC3B,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;YACnC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAC3B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAEf,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;gBACrD,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,WAAW,CAAC,CAAC;YACvD,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,GAAG,CAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QAE5B,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,QAAsB;QAC3C,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC5B,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,QAAQ,CAAC;YACnF,IAAI,WAAW,EAAE,CAAC;gBAChB,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,cAAc,IAAI,UAAU,MAAM,WAAW,KAAK,aAAa,YAAY,CAAC,CAAC;YAC3G,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,cAAc,IAAI,UAAU,EAAE,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAChD,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1D,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QACpB,CAAC;IACH,CAAC;CACF;AAED,+EAA+E;AAC/E,wBAAwB;AACxB,+EAA+E;AAE/E;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAAoB;IACvD,MAAM,OAAO,GAAG,IAAI,eAAe,EAAE,CAAC;IACtC,IAAI,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;YAAS,CAAC;QACT,OAAO,CAAC,OAAO,EAAE,CAAC;IACpB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,SAAiB,EACjB,OAA8B;IAE9B,OAAO,cAAc,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;AAC3D,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,MAAc;IAC5C,OAAO,cAAc,CAAC;QACpB,MAAM;QACN,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,EAAE;QAClB,WAAW,EAAE,QAAQ;KACtB,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAkB;IAClD,MAAM,KAAK,GAAG;QACZ,OAAO,EAAE,gGAAgG;QACzG,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE;YACJ;gBACE,IAAI,EAAE;oBACJ,MAAM,EAAE;wBACN,IAAI,EAAE,WAAW;wBACjB,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO;wBAC5B,cAAc,EAAE,wCAAwC;wBACxD,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;4BACpE,EAAE,EAAE,IAAI;4BACR,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;4BACtE,OAAO,EAAE,0CAA0C,IAAI,OAAO;yBAC/D,CAAC,CAAC;qBACJ;iBACF;gBACD,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACnC,MAAM,EAAE,CAAC,CAAC,IAAI;oBACd,KAAK,EAAE,CAAC,CAAC,QAAQ,KAAK,UAAU,IAAI,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;oBAC/E,OAAO,EAAE;wBACP,IAAI,EAAE,CAAC,CAAC,WAAW,IAAI,GAAG,CAAC,CAAC,IAAI,yBAAyB;qBAC1D;oBACD,SAAS,EAAE;wBACT;4BACE,gBAAgB,EAAE;gCAChB,gBAAgB,EAAE;oCAChB,GAAG,EAAE,CAAC,CAAC,QAAQ;iCAChB;gCACD,MAAM,EAAE;oCACN,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC;iCAC/C;6BACF;yBACF;qBACF;oBACD,UAAU,EAAE;wBACV,GAAG,EAAE,CAAC,CAAC,GAAG;wBACV,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ;wBACvB,QAAQ,EAAE,CAAC,CAAC,QAAQ;wBACpB,UAAU,EAAE,CAAC,CAAC,UAAU;qBACzB;iBACF,CAAC,CAAC;aACJ;SACF;KACF,CAAC;IACF,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACxC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAkB;IACjD,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACnC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,WAAW,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5C,KAAK,CAAC,IAAI,CAAC,cAAc,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IAClD,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACvE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,UAAU;IACV,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACtB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,kBAAkB,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAC1D,KAAK,CAAC,IAAI,CAAC,kBAAkB,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;IACzE,KAAK,CAAC,IAAI,CAAC,mBAAmB,MAAM,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IAC9D,kEAAkE;IAClE,iEAAiE;IACjE,gEAAgE;IAChE,qCAAqC;IACrC,IAAI,MAAM,CAAC,OAAO,CAAC,gBAAgB,GAAG,CAAC,EAAE,CAAC;QACxC,KAAK,CAAC,IAAI,CACR,kBAAkB,MAAM,CAAC,OAAO,CAAC,gBAAgB,kBAAkB;YACjE,uCAAuC,CAC1C,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;QACpC,KAAK,CAAC,IAAI,CAAC,+BAA+B,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAC3E,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,cAAc;IACd,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC3B,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC;IACtC,IAAI,UAAU,CAAC,QAAQ,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,kBAAkB,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;IACjF,IAAI,UAAU,CAAC,IAAI,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,cAAc,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;IACrE,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,gBAAgB,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3E,IAAI,UAAU,CAAC,GAAG,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,aAAa,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC;IAClE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,eAAe;IACf,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IACpF,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3B,KAAK,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YACpF,KAAK,CAAC,IAAI,CAAC,GAAG,QAAQ,KAAK,IAAI,CAAC,KAAK,WAAW,CAAC,CAAC;YAClD,IAAI,IAAI,CAAC,QAAQ,GAAG,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;YAClE,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACtD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAC9D,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,uBAAuB;IACvB,IAAI,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3B,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YACjE,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,WAAW,CAAC,CAAC;QACvD,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,oBAAoB;IACpB,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3B,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;YACnD,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,MAAM,CAAC;YACtD,MAAM,IAAI,GAAG,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;YAChG,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,KAAK,OAAO,CAAC,GAAG,IAAI,KAAK,KAAK,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YAChE,KAAK,CAAC,IAAI,CAAC,YAAY,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,MAAM,EAAE,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC;YAC1E,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;gBACxB,KAAK,CAAC,IAAI,CAAC,MAAM,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1G,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC;QACD,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;YAChC,KAAK,CAAC,IAAI,CAAC,WAAW,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,EAAE,gBAAgB,CAAC,CAAC;YACnE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3B,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Shared timeout helper (cognium-ai#88).
3
+ *
4
+ * Lifted out of `src/security-scan/scanner.ts` so the Mastra
5
+ * `runPatternMatch` path can wrap `analyze()` in the same wrapper —
6
+ * the LLM-enriched scan path was wedging on the synchronous
7
+ * Tree-sitter parse that the static path was already protected from.
8
+ *
9
+ * The reject message format (`Timeout after Nms: <label>`) is part of
10
+ * the stable contract that `classifyParseFailure` matches against, so
11
+ * keep it byte-identical if you ever touch this.
12
+ */
13
+ /**
14
+ * Run a Promise with an upper bound. On timeout, rejects with
15
+ * `Error("Timeout after Nms: <label>")` — the prefix is what
16
+ * `classifyParseFailure` (#88) keys off to attribute the failure as
17
+ * `reason: "timeout"`.
18
+ */
19
+ export declare function withTimeout<T>(promise: Promise<T>, timeoutMs: number, label: string): Promise<T>;
20
+ //# sourceMappingURL=with-timeout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"with-timeout.d.ts","sourceRoot":"","sources":["../../src/utils/with-timeout.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAC3B,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EACnB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,CAAC,CAAC,CAgBZ"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Shared timeout helper (cognium-ai#88).
3
+ *
4
+ * Lifted out of `src/security-scan/scanner.ts` so the Mastra
5
+ * `runPatternMatch` path can wrap `analyze()` in the same wrapper —
6
+ * the LLM-enriched scan path was wedging on the synchronous
7
+ * Tree-sitter parse that the static path was already protected from.
8
+ *
9
+ * The reject message format (`Timeout after Nms: <label>`) is part of
10
+ * the stable contract that `classifyParseFailure` matches against, so
11
+ * keep it byte-identical if you ever touch this.
12
+ */
13
+ /**
14
+ * Run a Promise with an upper bound. On timeout, rejects with
15
+ * `Error("Timeout after Nms: <label>")` — the prefix is what
16
+ * `classifyParseFailure` (#88) keys off to attribute the failure as
17
+ * `reason: "timeout"`.
18
+ */
19
+ export function withTimeout(promise, timeoutMs, label) {
20
+ return new Promise((resolve, reject) => {
21
+ const timer = setTimeout(() => {
22
+ reject(new Error(`Timeout after ${timeoutMs}ms: ${label}`));
23
+ }, timeoutMs);
24
+ promise
25
+ .then((result) => {
26
+ clearTimeout(timer);
27
+ resolve(result);
28
+ })
29
+ .catch((err) => {
30
+ clearTimeout(timer);
31
+ reject(err);
32
+ });
33
+ });
34
+ }
35
+ //# sourceMappingURL=with-timeout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"with-timeout.js","sourceRoot":"","sources":["../../src/utils/with-timeout.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CACzB,OAAmB,EACnB,SAAiB,EACjB,KAAa;IAEb,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,MAAM,CAAC,IAAI,KAAK,CAAC,iBAAiB,SAAS,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC;QAC9D,CAAC,EAAE,SAAS,CAAC,CAAC;QAEd,OAAO;aACJ,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YACf,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,OAAO,CAAC,MAAM,CAAC,CAAC;QAClB,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACb,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,MAAM,CAAC,GAAG,CAAC,CAAC;QACd,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACL,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "circle-ir-ai",
3
- "version": "2.8.18",
3
+ "version": "2.8.20",
4
4
  "description": "LLM-enhanced SAST analysis built on circle-ir",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",
@@ -94,7 +94,7 @@
94
94
  "dependencies": {
95
95
  "@ax-llm/ax": "^20.0.0",
96
96
  "@mastra/core": "^1.18.0",
97
- "circle-ir": "3.39.0",
97
+ "circle-ir": "3.48.0",
98
98
  "minimatch": "^10.2.5",
99
99
  "p-queue": "^9.1.0"
100
100
  },