circle-ir-ai 2.8.18 → 2.8.21

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.
@@ -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":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"capability-mismatch.d.ts","sourceRoot":"","sources":["../../src/skills/capability-mismatch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAA0B,MAAM,WAAW,CAAC;AAClE,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAGlE;;;;;;GAMG;AACH,wBAAsB,0BAA0B,CAC9C,SAAS,EAAE,QAAQ,EACnB,aAAa,EAAE,iBAAiB,EAAE,GACjC,OAAO,CAAC,YAAY,EAAE,CAAC,CA0CzB"}
1
+ {"version":3,"file":"capability-mismatch.d.ts","sourceRoot":"","sources":["../../src/skills/capability-mismatch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAA0B,MAAM,WAAW,CAAC;AAClE,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAGlE;;;;;;GAMG;AACH,wBAAsB,0BAA0B,CAC9C,SAAS,EAAE,QAAQ,EACnB,aAAa,EAAE,iBAAiB,EAAE,GACjC,OAAO,CAAC,YAAY,EAAE,CAAC,CAmDzB"}
@@ -34,20 +34,53 @@ export async function detectCapabilityMismatches(skillMdIR, codeArtifacts) {
34
34
  }
35
35
  // Use LLM to detect semantic mismatches
36
36
  const mismatches = await detectMismatchesWithLLM(declaredSources, declaredSinks, actualSources, actualSinks);
37
- // Convert to findings
37
+ // Convert to findings, normalizing severity by mismatch direction.
38
+ // The LLM is unreliable at distinguishing "code does MORE than declared"
39
+ // (a real risk) from "code does LESS than declared" (only a doc gap).
40
+ // Force the safe direction to LOW regardless of what the LLM emitted —
41
+ // see cognium-ai#100 Bug #2 for the original false-HIGH report.
38
42
  for (const mismatch of mismatches) {
39
43
  findings.push({
40
44
  type: 'capability_mismatch',
41
- severity: mismatch.severity,
45
+ severity: normalizeMismatchSeverity(mismatch.type, mismatch.severity),
42
46
  artifact: mismatch.artifact,
43
47
  title: mismatch.title,
44
48
  description: mismatch.description,
45
- evidence: mismatch.evidence,
49
+ evidence: {
50
+ ...mismatch.evidence,
51
+ // Preserve direction so consumers can rank / filter without re-parsing
52
+ // the LLM type string from the description.
53
+ mismatch_type: mismatch.type,
54
+ },
46
55
  confidence: mismatch.confidence,
47
56
  });
48
57
  }
49
58
  return findings;
50
59
  }
60
+ /**
61
+ * Normalize LLM-emitted severity based on mismatch direction.
62
+ *
63
+ * - `undisclosed_capability` (code does MORE than declared) — keep LLM
64
+ * severity, default HIGH. This is the genuinely risky case.
65
+ * - `false_advertising` (code does LESS than declared) — force LOW. The
66
+ * surface area is *smaller* than advertised, so it's a documentation
67
+ * issue, not a security risk. The LLM defaults to HIGH because the
68
+ * prompt didn't enforce this rule; we enforce it here as a safety net.
69
+ * - `data_mismatch` (declared vs actual targets differ) — keep LLM
70
+ * severity, default HIGH.
71
+ * - Unknown / unparseable type — keep LLM severity, default MEDIUM.
72
+ */
73
+ function normalizeMismatchSeverity(mismatchType, llmSeverity) {
74
+ switch (mismatchType) {
75
+ case 'false_advertising':
76
+ return 'low';
77
+ case 'undisclosed_capability':
78
+ case 'data_mismatch':
79
+ return llmSeverity;
80
+ default:
81
+ return llmSeverity;
82
+ }
83
+ }
51
84
  /**
52
85
  * Use LLM to detect semantic capability mismatches
53
86
  */
@@ -77,9 +110,14 @@ IMPORTANT - What is NOT a mismatch:
77
110
  Examples of TRUE mismatches:
78
111
  1. SKILL.md: "No network access" | Code: https.get() or https.request() → MISMATCH (undisclosed_capability, CRITICAL)
79
112
  2. SKILL.md: "Runs offline" | Code: fetch() or HTTP sinks → MISMATCH (undisclosed_capability, CRITICAL)
80
- 3. SKILL.md: "Reads from database" | Code: no database calls found → MISMATCH (false_advertising)
81
- 4. SKILL.md: "Accesses api.weather.com only" | Code: accesses api.analytics.com → MISMATCH (data_mismatch)
82
- 5. SKILL.md: Says nothing about network | Code: makes HTTP requests to ANY domain → MISMATCH (undisclosed_capability)
113
+ 3. SKILL.md: "Reads from database" | Code: no database calls found → MISMATCH (false_advertising, LOW — over-declared capability is safer than advertised, not a security risk)
114
+ 4. SKILL.md: "Accesses api.weather.com only" | Code: accesses api.analytics.com → MISMATCH (data_mismatch, HIGH)
115
+ 5. SKILL.md: Says nothing about network | Code: makes HTTP requests to ANY domain → MISMATCH (undisclosed_capability, HIGH)
116
+
117
+ SEVERITY RULES (apply these strictly):
118
+ - undisclosed_capability (code does MORE than declared) → HIGH or CRITICAL (real risk: user trusted a smaller surface than they got)
119
+ - false_advertising (code does LESS than declared) → LOW (the surface is *smaller* than advertised — no security risk, only a documentation issue)
120
+ - data_mismatch (declared and actual domains/sources differ) → HIGH
83
121
 
84
122
  CRITICAL - Network access is ALWAYS a mismatch if:
85
123
  - SKILL.md says "no network", "offline", "no external access" BUT code has SSRF sinks (https.request, fetch, etc.)
@@ -1 +1 @@
1
- {"version":3,"file":"capability-mismatch.js","sourceRoot":"","sources":["../../src/skills/capability-mismatch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"capability-mismatch.js","sourceRoot":"","sources":["../../src/skills/capability-mismatch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,SAAmB,EACnB,aAAkC;IAElC,MAAM,QAAQ,GAAmB,EAAE,CAAC;IAEpC,8CAA8C;IAC9C,MAAM,eAAe,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;IACtD,MAAM,aAAa,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;IAElD,wCAAwC;IACxC,MAAM,aAAa,GAA8C,EAAE,CAAC;IACpE,MAAM,WAAW,GAA4C,EAAE,CAAC;IAEhE,KAAK,MAAM,QAAQ,IAAI,aAAa,EAAE,CAAC;QACrC,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;YACrD,aAAa,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;QACjE,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;YACjD,WAAW,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAED,wCAAwC;IACxC,MAAM,UAAU,GAAG,MAAM,uBAAuB,CAC9C,eAAe,EACf,aAAa,EACb,aAAa,EACb,WAAW,CACZ,CAAC;IAEF,mEAAmE;IACnE,yEAAyE;IACzE,sEAAsE;IACtE,uEAAuE;IACvE,gEAAgE;IAChE,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;QAClC,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,qBAAqB;YAC3B,QAAQ,EAAE,yBAAyB,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC;YACrE,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,QAAQ,EAAE;gBACR,GAAG,QAAQ,CAAC,QAAQ;gBACpB,uEAAuE;gBACvE,4CAA4C;gBAC5C,aAAa,EAAE,QAAQ,CAAC,IAAI;aAC7B;YACD,UAAU,EAAE,QAAQ,CAAC,UAAU;SAChC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAS,yBAAyB,CAChC,YAAgC,EAChC,WAAmD;IAEnD,QAAQ,YAAY,EAAE,CAAC;QACrB,KAAK,mBAAmB;YACtB,OAAO,KAAK,CAAC;QACf,KAAK,wBAAwB,CAAC;QAC9B,KAAK,eAAe;YAClB,OAAO,WAAW,CAAC;QACrB;YACE,OAAO,WAAW,CAAC;IACvB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,uBAAuB,CACpC,eAA8B,EAC9B,aAA0B,EAC1B,aAAwD,EACxD,WAAoD;IAYpD,MAAM,GAAG,GAAG,cAAc,EAAE,CAAC;IAE7B,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6GA0CsF,CAAC;IAE5G,MAAM,UAAU,GAAG;;;;;EAKnB,aAAa,CAAC,eAAe,CAAC;;;EAG9B,WAAW,CAAC,aAAa,CAAC;;;;;EAK1B,mBAAmB,CAAC,aAAa,CAAC;;;EAGlC,iBAAiB,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;6BAwBH,CAAC;IAE5B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,QAAQ,CAU/B,YAAY,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;QAE5C,OAAO,MAAM,IAAI,EAAE,CAAC;IACtB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC;QACvD,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,aAAa,CAAC,OAAsB;IAC3C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IAED,OAAO,OAAO;SACX,GAAG,CACF,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACP,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,QAAQ,oBAAoB,CAAC,CAAC,QAAQ,sBAAsB,CAAC,CAAC,CAAC,UAAU,IAAI,GAAG,CAAC,GAAG,GAAG,GAAG,CAC3H;SACA,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAAC,KAAkB;IACrC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IAED,OAAO,KAAK;SACT,GAAG,CACF,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACP,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,QAAQ,sBAAsB,CAAC,CAAC,CAAC,UAAU,IAAI,GAAG,CAAC,GAAG,GAAG,GAAG,CACxG;SACA,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,OAAkD;IAC7E,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,8BAA8B,CAAC;IACxC,CAAC;IAED,OAAO,OAAO;SACX,GAAG,CACF,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACP,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,oBAAoB,CAAC,CAAC,QAAQ,sBAAsB,CAAC,CAAC,CAAC,UAAU,IAAI,GAAG,CAAC,GAAG,GAAG,GAAG,CACrI;SACA,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,KAA8C;IACvE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,2CAA2C,CAAC;IACrD,CAAC;IAED,OAAO,KAAK;SACT,GAAG,CACF,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACP,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,oBAAoB,CAAC,CAAC,QAAQ,sBAAsB,CAAC,CAAC,CAAC,UAAU,IAAI,GAAG,CAAC,GAAG,GAAG,GAAG,CAChJ;SACA,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,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.21",
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
  },