circle-ir-ai 2.67.0 → 2.71.0

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.
@@ -221,9 +221,49 @@ export interface ScanMeta {
221
221
  falsePositives: number;
222
222
  /** Verdict UNCERTAIN — includes sanity-gate demotions. */
223
223
  uncertain: number;
224
- /** Files whose analysis actually ran the verification stage. */
225
- filesVerified: number;
226
- /** falsePositives / (truePositives + falsePositives + uncertain); 0 when nothing was verified. */
224
+ /**
225
+ * Files where verification was requested (`enableLLMVerify`, LLM path).
226
+ *
227
+ * Deliberately distinct from `filesWithVerdicts`: `runVerify` short-circuits
228
+ * to an empty result when the file has no merged sources or no merged sinks
229
+ * (`workflow.ts:669`), and `runReport` then falls through to the
230
+ * unverified `generateFindings` branch. Those findings are emitted having
231
+ * never been seen by the verifier. A large gap between these two numbers
232
+ * means the verifier is not the thing deciding what ships — which is a
233
+ * fourth reason #246's critical/high findings were never observed being
234
+ * downgraded.
235
+ */
236
+ filesVerificationEnabled: number;
237
+ /** Files where the verifier actually returned at least one verdict. */
238
+ filesWithVerdicts: number;
239
+ /**
240
+ * cognium-ai#246 — source-sink pairs actually SUBMITTED to the verifier.
241
+ *
242
+ * This is the denominator that makes the whole block meaningful. The
243
+ * verifier prompt (`verification.ts` ~line 376) says "Only include pairs
244
+ * where data CAN flow from source to sink", so a pair the model declines
245
+ * is *omitted* from its response rather than returned as FALSE_POSITIVE.
246
+ * Without a submitted count, a silent decline and a pair that was never
247
+ * submitted are indistinguishable — which is what made "the verifier keeps
248
+ * everything" unfalsifiable in the first place.
249
+ */
250
+ pairsSubmitted: number;
251
+ /**
252
+ * Pairs the model returned that were then discarded because their
253
+ * `source_line` / `sink_line` matched no known source or sink (drifted or
254
+ * hallucinated line numbers). A second silent loss, distinct from the
255
+ * model's own omissions.
256
+ */
257
+ pairsUnmapped: number;
258
+ /**
259
+ * pairsSubmitted - (TP + FP + uncertain) - pairsUnmapped: pairs the model
260
+ * was asked about and simply did not mention. On the observed runs this
261
+ * dominates every other category.
262
+ */
263
+ pairsOmitted: number;
264
+ /** pairsOmitted / pairsSubmitted; 0 when nothing was submitted. */
265
+ omissionRate: number;
266
+ /** falsePositives / (truePositives + falsePositives + uncertain); 0 when no verdicts. */
227
267
  dropRate: number;
228
268
  };
229
269
  }
@@ -349,8 +389,37 @@ export declare function summarizeVerificationTally(tally: {
349
389
  truePositives: number;
350
390
  falsePositives: number;
351
391
  uncertain: number;
352
- filesVerified: number;
392
+ filesVerificationEnabled: number;
393
+ filesWithVerdicts: number;
394
+ pairsSubmitted: number;
395
+ pairsUnmapped: number;
353
396
  }): NonNullable<ScanMeta['verification']>;
397
+ /**
398
+ * #252 — await a worker pool, but give up at a wall-clock deadline.
399
+ *
400
+ * Resolves when either every worker finishes or the budget expires, whichever
401
+ * comes first. On expiry `onDeadline` runs and the caller proceeds with
402
+ * whatever results were collected; workers still in flight are abandoned
403
+ * rather than awaited.
404
+ *
405
+ * Why this is needed on top of the between-files check in `analyzeFiles`:
406
+ * that check only guards *pulling the next file*, so if every worker is
407
+ * blocked inside an in-flight file when the budget expires, none returns to
408
+ * the top of the loop, `Promise.all` never settles, and the scan runs until an
409
+ * outer orchestrator SIGKILLs it with no output. Observed against a local
410
+ * Ollama endpoint that serializes requests: 4 workers each grabbed a file at
411
+ * t=0 and blocked on the queue for longer than the entire budget, so a
412
+ * 4-minute budget under a 5-minute stage timeout still produced zero artifacts.
413
+ *
414
+ * Caveat worth knowing: this can only fire while the event loop is free. A
415
+ * worker wedged in CPU-bound synchronous work (a Tree-sitter parse) still
416
+ * blocks the timer — that case is covered separately by worker-thread parse
417
+ * isolation (`SCAN_PARSE_ISOLATION`).
418
+ *
419
+ * With `maxScanMs` undefined this is a plain `Promise.all`, so the default
420
+ * path is byte-identical.
421
+ */
422
+ export declare function awaitWorkersWithDeadline(workers: Promise<void>[], maxScanMs: number | undefined, scanStart: number, onDeadline: () => void, now?: () => number): Promise<void>;
354
423
  export declare class SecurityScanner {
355
424
  private workDir;
356
425
  private verbose;
@@ -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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"}
@@ -62,14 +62,74 @@ export function computeFileParseTimeoutMs(fileBytes, maxMs) {
62
62
  */
63
63
  export function summarizeVerificationTally(tally) {
64
64
  const total = tally.truePositives + tally.falsePositives + tally.uncertain;
65
+ // #246 — clamp: a model may return more pairs than submitted if it
66
+ // hallucinates extras, and a negative omission count would be nonsense.
67
+ const omitted = Math.max(0, tally.pairsSubmitted - total - tally.pairsUnmapped);
65
68
  return {
66
69
  truePositives: tally.truePositives,
67
70
  falsePositives: tally.falsePositives,
68
71
  uncertain: tally.uncertain,
69
- filesVerified: tally.filesVerified,
72
+ filesVerificationEnabled: tally.filesVerificationEnabled,
73
+ filesWithVerdicts: tally.filesWithVerdicts,
74
+ pairsSubmitted: tally.pairsSubmitted,
75
+ pairsUnmapped: tally.pairsUnmapped,
76
+ pairsOmitted: omitted,
77
+ omissionRate: tally.pairsSubmitted > 0 ? +(omitted / tally.pairsSubmitted).toFixed(4) : 0,
70
78
  dropRate: total > 0 ? +(tally.falsePositives / total).toFixed(4) : 0,
71
79
  };
72
80
  }
81
+ /**
82
+ * #252 — await a worker pool, but give up at a wall-clock deadline.
83
+ *
84
+ * Resolves when either every worker finishes or the budget expires, whichever
85
+ * comes first. On expiry `onDeadline` runs and the caller proceeds with
86
+ * whatever results were collected; workers still in flight are abandoned
87
+ * rather than awaited.
88
+ *
89
+ * Why this is needed on top of the between-files check in `analyzeFiles`:
90
+ * that check only guards *pulling the next file*, so if every worker is
91
+ * blocked inside an in-flight file when the budget expires, none returns to
92
+ * the top of the loop, `Promise.all` never settles, and the scan runs until an
93
+ * outer orchestrator SIGKILLs it with no output. Observed against a local
94
+ * Ollama endpoint that serializes requests: 4 workers each grabbed a file at
95
+ * t=0 and blocked on the queue for longer than the entire budget, so a
96
+ * 4-minute budget under a 5-minute stage timeout still produced zero artifacts.
97
+ *
98
+ * Caveat worth knowing: this can only fire while the event loop is free. A
99
+ * worker wedged in CPU-bound synchronous work (a Tree-sitter parse) still
100
+ * blocks the timer — that case is covered separately by worker-thread parse
101
+ * isolation (`SCAN_PARSE_ISOLATION`).
102
+ *
103
+ * With `maxScanMs` undefined this is a plain `Promise.all`, so the default
104
+ * path is byte-identical.
105
+ */
106
+ export async function awaitWorkersWithDeadline(workers, maxScanMs, scanStart, onDeadline, now = Date.now) {
107
+ const all = Promise.all(workers).then(() => 'done');
108
+ if (maxScanMs === undefined) {
109
+ await all;
110
+ return;
111
+ }
112
+ const remainingMs = Math.max(0, maxScanMs - (now() - scanStart));
113
+ let timer;
114
+ const deadline = new Promise((resolve) => {
115
+ timer = setTimeout(() => resolve('deadline'), remainingMs);
116
+ timer.unref?.();
117
+ });
118
+ try {
119
+ const outcome = await Promise.race([all, deadline]);
120
+ if (outcome === 'deadline') {
121
+ onDeadline();
122
+ // Swallow late rejections from abandoned workers — nothing awaits them
123
+ // any more, and an unhandled rejection would take the process down
124
+ // before the partial result is written.
125
+ void Promise.allSettled(workers);
126
+ }
127
+ }
128
+ finally {
129
+ if (timer)
130
+ clearTimeout(timer);
131
+ }
132
+ }
73
133
  export class SecurityScanner {
74
134
  workDir;
75
135
  verbose;
@@ -90,7 +150,15 @@ export class SecurityScanner {
90
150
  * `runReport` computes and, before 2.67.0, nothing read) and emitted as
91
151
  * `ScanMeta.verification`. Reset per scan in `analyzeFiles`.
92
152
  */
93
- verificationTally = { truePositives: 0, falsePositives: 0, uncertain: 0, filesVerified: 0 };
153
+ verificationTally = {
154
+ truePositives: 0,
155
+ falsePositives: 0,
156
+ uncertain: 0,
157
+ filesVerificationEnabled: 0,
158
+ filesWithVerdicts: 0,
159
+ pairsSubmitted: 0,
160
+ pairsUnmapped: 0,
161
+ };
94
162
  /**
95
163
  * cognium-ai#130. Resolved per-file profile map for the current scan.
96
164
  * Set in `scan()` after `prepareRepository()` returns the canonical
@@ -424,13 +492,36 @@ export class SecurityScanner {
424
492
  const { parallel = true, maxConcurrency = 10, minSeverity = 'low', categories } = options;
425
493
  const results = [];
426
494
  let filesProcessed = 0;
427
- // #252: whole-scan wall-clock budget. `deadlineHit()` is checked before
428
- // pulling each file so in-flight analyses finish and a partial result is
429
- // still assembled + returned (marked degraded) instead of running until an
430
- // outer orchestrator kills the process with no output.
495
+ // #252: whole-scan wall-clock budget, enforced two ways.
496
+ //
497
+ // `deadlineHit()` below is checked before a worker pulls its next file, so
498
+ // work already dispatched finishes cleanly. That alone is NOT sufficient:
499
+ // if every worker is blocked inside an in-flight file when the budget
500
+ // expires, none of them returns to the top of the loop, `Promise.all`
501
+ // never settles, and the scan runs until an outer orchestrator SIGKILLs it
502
+ // with no output — exactly the failure the budget exists to prevent.
503
+ //
504
+ // Observed on a local Ollama endpoint: 4 workers each grabbed a file at
505
+ // t=0 and blocked on a serialized LLM queue for longer than the whole
506
+ // budget, so a 4-minute budget under a 5-minute stage timeout still
507
+ // produced zero artifacts.
508
+ //
509
+ // So the worker pool is ALSO raced against the deadline (see
510
+ // `awaitWorkersWithDeadline` below): when it expires we snapshot whatever
511
+ // completed, mark the result degraded, and return without waiting for
512
+ // in-flight files. Abandoned workers settle on their own per-call
513
+ // timeouts; their late results are simply not part of the snapshot.
431
514
  this.scanDegraded = false;
432
515
  // #246 — fresh verdict tallies per scan (the scanner instance is reusable).
433
- this.verificationTally = { truePositives: 0, falsePositives: 0, uncertain: 0, filesVerified: 0 };
516
+ this.verificationTally = {
517
+ truePositives: 0,
518
+ falsePositives: 0,
519
+ uncertain: 0,
520
+ filesVerificationEnabled: 0,
521
+ filesWithVerdicts: 0,
522
+ pairsSubmitted: 0,
523
+ pairsUnmapped: 0,
524
+ };
434
525
  const scanStart = Date.now();
435
526
  const deadlineHit = () => options.maxScanMs !== undefined && Date.now() - scanStart > options.maxScanMs;
436
527
  let totalFindings = 0;
@@ -487,7 +578,13 @@ export class SecurityScanner {
487
578
  }
488
579
  })());
489
580
  }
490
- await Promise.all(workers);
581
+ await awaitWorkersWithDeadline(workers, options.maxScanMs, scanStart, () => {
582
+ queue.length = 0;
583
+ if (!this.scanDegraded) {
584
+ this.scanDegraded = true;
585
+ console.error(`[DEGRADED] cognium-ai#252: scan budget (${options.maxScanMs}ms) exceeded with ${files.length - filesProcessed} file(s) still in flight — returning partial result.`);
586
+ }
587
+ });
491
588
  }
492
589
  else {
493
590
  // Sequential analysis
@@ -766,10 +863,20 @@ export class SecurityScanner {
766
863
  // observable at all.
767
864
  const vstats = mastraResult.stats;
768
865
  if (this.enableLLMVerify && vstats) {
769
- this.verificationTally.truePositives += vstats.truePositives ?? 0;
770
- this.verificationTally.falsePositives += vstats.falsePositives ?? 0;
771
- this.verificationTally.uncertain += vstats.uncertain ?? 0;
772
- this.verificationTally.filesVerified += 1;
866
+ const tp = vstats.truePositives ?? 0;
867
+ const fp = vstats.falsePositives ?? 0;
868
+ const unc = vstats.uncertain ?? 0;
869
+ this.verificationTally.truePositives += tp;
870
+ this.verificationTally.falsePositives += fp;
871
+ this.verificationTally.uncertain += unc;
872
+ this.verificationTally.filesVerificationEnabled += 1;
873
+ this.verificationTally.pairsSubmitted += vstats.pairsSubmitted ?? 0;
874
+ this.verificationTally.pairsUnmapped += vstats.pairsUnmapped ?? 0;
875
+ // `runVerify` returns empty when the file has no merged sources or
876
+ // sinks — the findings then come from the unverified branch. Only
877
+ // count a file as verdict-bearing when the verifier actually spoke.
878
+ if (tp + fp + unc > 0)
879
+ this.verificationTally.filesWithVerdicts += 1;
773
880
  }
774
881
  // Convert Mastra vulnerabilities to ScanFinding format
775
882
  for (const vuln of mastraResult.vulnerabilities) {
@@ -1276,7 +1383,7 @@ export class SecurityScanner {
1276
1383
  : {}),
1277
1384
  // cognium-ai#246 — the verifier's own verdict tallies. Spread so scans
1278
1385
  // that never ran verification stay byte-identical (no null-valued key).
1279
- ...(this.verificationTally.filesVerified > 0
1386
+ ...(this.verificationTally.filesVerificationEnabled > 0
1280
1387
  ? { verification: summarizeVerificationTally(this.verificationTally) }
1281
1388
  : {}),
1282
1389
  },
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "circle-ir-ai",
3
- "version": "2.67.0",
3
+ "version": "2.71.0",
4
4
  "description": "LLM-enhanced SAST analysis built on circle-ir",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",
@@ -98,7 +98,7 @@
98
98
  "@ax-llm/ax": "^20.0.0",
99
99
  "@cognium/project-profile-detect": "^1.1.0",
100
100
  "@mastra/core": "^1.18.0",
101
- "circle-ir": "3.194.0",
101
+ "circle-ir": "3.195.0",
102
102
  "minimatch": "^10.2.5",
103
103
  "p-queue": "^9.1.0"
104
104
  },