circle-ir-ai 2.38.0 → 2.40.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.
- package/CHANGELOG.md +65 -0
- package/dist/trust/scoring.d.ts +11 -0
- package/dist/trust/scoring.d.ts.map +1 -1
- package/dist/trust/scoring.js +31 -5
- package/dist/trust/scoring.js.map +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,71 @@ 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.40.0] - 2026-07-10
|
|
9
|
+
|
|
10
|
+
### Changed — bump `circle-ir` `3.164.0 → 3.165.0` (major precision win: source-misattribution fix)
|
|
11
|
+
|
|
12
|
+
circle-ir 3.165.0 fixes **cognium-dev#250** — taint findings whose
|
|
13
|
+
`source.line` resolved to a non-executable line (import / package /
|
|
14
|
+
comment / constant declaration) were being emitted with fabricated
|
|
15
|
+
source→sink flows. That accounted for **61% of the tier-2 Critical/High
|
|
16
|
+
residual**. Effect on real repos (verified, gpt-4o-mini verify):
|
|
17
|
+
|
|
18
|
+
| repo | C+H 3.164.0 | C+H 3.165.0 |
|
|
19
|
+
|---|---:|---:|
|
|
20
|
+
| INRIA/spoon | 24 | **2** |
|
|
21
|
+
| manifold-systems/manifold | 65 | **2** |
|
|
22
|
+
|
|
23
|
+
**No recall loss** — full benchmark suite re-verified against the
|
|
24
|
+
registry package: OWASP 100%, Juliet 100% (243/0 FN), **SecuriBench TPR
|
|
25
|
+
97.7% (105/108, +1)**. As a bonus it also fixes **cognium-dev#249**:
|
|
26
|
+
rust-synthetic 84.6% → **92.3%** (FPR 15.4% → 7.7%). All other suites
|
|
27
|
+
stable.
|
|
28
|
+
|
|
29
|
+
This is a minor bump (not patch) because LLM-verified finding counts
|
|
30
|
+
drop dramatically on affected repos — a precision improvement, not
|
|
31
|
+
detection loss. Sweep baseline diffs across this version must attribute
|
|
32
|
+
the drop to the source-misattribution fix.
|
|
33
|
+
|
|
34
|
+
## [2.39.0] - 2026-07-10
|
|
35
|
+
|
|
36
|
+
### Changed — bump `circle-ir` `3.162.0 → 3.164.0`
|
|
37
|
+
|
|
38
|
+
Core engine bump, validated against the registry package (clean install).
|
|
39
|
+
Unit suite 1368 pass; OWASP 100% / Juliet 100% re-verified. (Corrects a
|
|
40
|
+
pin inconsistency in the pre-publish working tree — package.json had
|
|
41
|
+
drifted to `^3.163.0` while the lockfile pinned 3.162.0; both now pin
|
|
42
|
+
exact `3.164.0`.)
|
|
43
|
+
|
|
44
|
+
### Fixed — trust aggregate now consumes LLM security findings ([cognium-ai#119](https://github.com/cogniumhq/cognium-ai/issues/119), #204 P1)
|
|
45
|
+
|
|
46
|
+
**Root cause.** `llm-security-scan` (the synthetic pass `cognium-ai
|
|
47
|
+
trust --llm` injects) was in `PASS_COMPONENT_MAP` (display-only
|
|
48
|
+
`vulnerability_score`) but **missing from `PASS_CATEGORY_MAP`**, so
|
|
49
|
+
`computeTrustScore` hit its "unknown pass — skip silently" branch and
|
|
50
|
+
excluded it from the weighted composite entirely. The aggregate `score`
|
|
51
|
+
was byte-identical between `--llm` and `--no-llm` even when the LLM
|
|
52
|
+
finding-set differed — the original #119 complaint, still reproducing on
|
|
53
|
+
2.38.0.
|
|
54
|
+
|
|
55
|
+
**Change.**
|
|
56
|
+
- Map `llm-security-scan → code_security` in `PASS_CATEGORY_MAP`.
|
|
57
|
+
- Category averaging is now a **weighted mean** (`PASS_INTRA_CATEGORY_WEIGHT`,
|
|
58
|
+
default 1 → byte-identical to the old simple average when no weighted
|
|
59
|
+
pass is present). `llm-security-scan` carries weight 10 so an
|
|
60
|
+
LLM-discovered SQLi/RCE moves the aggregate meaningfully instead of
|
|
61
|
+
washing out across ~20 maintainability passes and rounding away.
|
|
62
|
+
|
|
63
|
+
**Behavior change (expected).** Trust scores now **drop for repos with
|
|
64
|
+
security findings** — `--llm`/`--no-llm` aggregates diverge when the
|
|
65
|
+
finding-set differs (verified: fixture 97.69 identical → 95.57 vs 94.91).
|
|
66
|
+
This is the point of the fix. Repos with no security findings are
|
|
67
|
+
unaffected.
|
|
68
|
+
|
|
69
|
+
**Tests.** +3 (`tests/trust-scoring.test.ts`) — category-map membership,
|
|
70
|
+
lower-LLM-score-lowers-aggregate, and heavier-than-maintainability
|
|
71
|
+
weighting. Suite 1368 pass / 3 skipped.
|
|
72
|
+
|
|
8
73
|
## [2.38.0] - 2026-07-09
|
|
9
74
|
|
|
10
75
|
### Changed — bump `circle-ir` `3.160.0 → 3.162.0`
|
package/dist/trust/scoring.d.ts
CHANGED
|
@@ -11,6 +11,17 @@ export interface TrustScoringConfig {
|
|
|
11
11
|
weights: Record<TrustCategory, number>;
|
|
12
12
|
}
|
|
13
13
|
export declare const DEFAULT_SCORING_CONFIG: TrustScoringConfig;
|
|
14
|
+
/**
|
|
15
|
+
* cognium-ai#119 — intra-category pass weights. Within a category, passes
|
|
16
|
+
* average as a WEIGHTED mean (default weight 1). Actual vulnerability
|
|
17
|
+
* findings must not be one-vote-among-N maintainability passes: the LLM
|
|
18
|
+
* security scan carries a heavier weight so an LLM-discovered SQLi/RCE
|
|
19
|
+
* moves the aggregate meaningfully instead of washing out and rounding
|
|
20
|
+
* away. Tune here — higher = the security signal dominates code_security
|
|
21
|
+
* more. Unlisted passes default to 1 (byte-identical to the old simple
|
|
22
|
+
* average when no weighted pass is present).
|
|
23
|
+
*/
|
|
24
|
+
export declare const PASS_INTRA_CATEGORY_WEIGHT: Record<string, number>;
|
|
14
25
|
export declare const PASS_CATEGORY_MAP: Record<string, TrustCategory>;
|
|
15
26
|
/** Keys of the 12 score-component fields on TrustScoreResult. */
|
|
16
27
|
type ScoreComponent = 'vulnerability_score' | 'supply_chain_score' | 'exfiltration_score' | 'instruction_score' | 'permission_score' | 'secrets_score' | 'hygiene_score' | 'license_score' | 'compliance_score' | 'crypto_score' | 'poisoning_score' | 'provenance_score' | 'performance_score';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scoring.d.ts","sourceRoot":"","sources":["../../src/trust/scoring.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,gBAAgB,EAEtB,MAAM,YAAY,CAAC;AAMpB,MAAM,MAAM,aAAa,GACrB,cAAc,GACd,eAAe,GACf,WAAW,GACX,YAAY,GACZ,WAAW,CAAC;AAMhB,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;CACxC;AAED,eAAO,MAAM,sBAAsB,EAAE,kBAQpC,CAAC;
|
|
1
|
+
{"version":3,"file":"scoring.d.ts","sourceRoot":"","sources":["../../src/trust/scoring.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,gBAAgB,EAEtB,MAAM,YAAY,CAAC;AAMpB,MAAM,MAAM,aAAa,GACrB,cAAc,GACd,eAAe,GACf,WAAW,GACX,YAAY,GACZ,WAAW,CAAC;AAMhB,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;CACxC;AAED,eAAO,MAAM,sBAAsB,EAAE,kBAQpC,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,0BAA0B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAE7D,CAAC;AAUF,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CA0D3D,CAAC;AAMF,iEAAiE;AACjE,KAAK,cAAc,GACf,qBAAqB,GACrB,oBAAoB,GACpB,oBAAoB,GACpB,mBAAmB,GACnB,kBAAkB,GAClB,eAAe,GACf,eAAe,GACf,eAAe,GACf,kBAAkB,GAClB,cAAc,GACd,iBAAiB,GACjB,kBAAkB,GAClB,mBAAmB,CAAC;AAExB,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAmC7D,CAAC;AAMF;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,kBAAkB,GAAG,IAAI,CAUtE;AAMD;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,eAAe,EAAE,EAC9B,MAAM,GAAE,kBAA2C,GAClD,gBAAgB,CA+GlB"}
|
package/dist/trust/scoring.js
CHANGED
|
@@ -15,6 +15,22 @@ export const DEFAULT_SCORING_CONFIG = {
|
|
|
15
15
|
artifacts: 0.0,
|
|
16
16
|
},
|
|
17
17
|
};
|
|
18
|
+
/**
|
|
19
|
+
* cognium-ai#119 — intra-category pass weights. Within a category, passes
|
|
20
|
+
* average as a WEIGHTED mean (default weight 1). Actual vulnerability
|
|
21
|
+
* findings must not be one-vote-among-N maintainability passes: the LLM
|
|
22
|
+
* security scan carries a heavier weight so an LLM-discovered SQLi/RCE
|
|
23
|
+
* moves the aggregate meaningfully instead of washing out and rounding
|
|
24
|
+
* away. Tune here — higher = the security signal dominates code_security
|
|
25
|
+
* more. Unlisted passes default to 1 (byte-identical to the old simple
|
|
26
|
+
* average when no weighted pass is present).
|
|
27
|
+
*/
|
|
28
|
+
export const PASS_INTRA_CATEGORY_WEIGHT = {
|
|
29
|
+
'llm-security-scan': 10,
|
|
30
|
+
};
|
|
31
|
+
function passWeight(pass) {
|
|
32
|
+
return PASS_INTRA_CATEGORY_WEIGHT[pass] ?? 1;
|
|
33
|
+
}
|
|
18
34
|
// ---------------------------------------------------------------------------
|
|
19
35
|
// Pass → Category mapping (all 16 passes)
|
|
20
36
|
// ---------------------------------------------------------------------------
|
|
@@ -28,6 +44,12 @@ export const PASS_CATEGORY_MAP = {
|
|
|
28
44
|
'data-exfiltration': 'code_security',
|
|
29
45
|
'input-validation': 'code_security',
|
|
30
46
|
'code-complexity': 'code_security',
|
|
47
|
+
// cognium-ai#119 — the synthetic LLM security pass (injected by
|
|
48
|
+
// `cognium-ai trust` when --llm is set) was in PASS_COMPONENT_MAP
|
|
49
|
+
// (display-only vulnerability_score) but NOT here, so computeTrustScore
|
|
50
|
+
// skipped it entirely and the aggregate ignored LLM-discovered vulns.
|
|
51
|
+
// Mapped to code_security + weighted (see PASS_INTRA_CATEGORY_WEIGHT).
|
|
52
|
+
'llm-security-scan': 'code_security',
|
|
31
53
|
// ai_safety
|
|
32
54
|
'prompt-injection': 'ai_safety',
|
|
33
55
|
'excessive-permissions': 'ai_safety',
|
|
@@ -128,6 +150,9 @@ export function validateScoringConfig(config) {
|
|
|
128
150
|
export function computeTrustScore(passResults, config = DEFAULT_SCORING_CONFIG) {
|
|
129
151
|
validateScoringConfig(config);
|
|
130
152
|
// -- Step 1 & 2: Category averages ----------------------------------------
|
|
153
|
+
// cognium-ai#119 — weighted accumulation per category (weight from
|
|
154
|
+
// PASS_INTRA_CATEGORY_WEIGHT, default 1). With all weights 1 this is
|
|
155
|
+
// byte-identical to the previous simple average.
|
|
131
156
|
const categoryScores = new Map();
|
|
132
157
|
for (const pr of passResults) {
|
|
133
158
|
const category = PASS_CATEGORY_MAP[pr.pass];
|
|
@@ -135,18 +160,19 @@ export function computeTrustScore(passResults, config = DEFAULT_SCORING_CONFIG)
|
|
|
135
160
|
// Unknown pass — skip silently so future passes don't break scoring
|
|
136
161
|
continue;
|
|
137
162
|
}
|
|
163
|
+
const w = passWeight(pr.pass);
|
|
138
164
|
const bucket = categoryScores.get(category);
|
|
139
165
|
if (bucket) {
|
|
140
|
-
bucket.
|
|
166
|
+
bucket.weightedSum += pr.score * w;
|
|
167
|
+
bucket.weightSum += w;
|
|
141
168
|
}
|
|
142
169
|
else {
|
|
143
|
-
categoryScores.set(category,
|
|
170
|
+
categoryScores.set(category, { weightedSum: pr.score * w, weightSum: w });
|
|
144
171
|
}
|
|
145
172
|
}
|
|
146
173
|
const categoryAverages = new Map();
|
|
147
|
-
for (const [cat,
|
|
148
|
-
|
|
149
|
-
categoryAverages.set(cat, avg);
|
|
174
|
+
for (const [cat, { weightedSum, weightSum }] of categoryScores) {
|
|
175
|
+
categoryAverages.set(cat, weightSum > 0 ? weightedSum / weightSum : 100);
|
|
150
176
|
}
|
|
151
177
|
// -- Step 3: Weighted composite score -------------------------------------
|
|
152
178
|
let compositeScore = 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scoring.js","sourceRoot":"","sources":["../../src/trust/scoring.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAGL,eAAe,GAChB,MAAM,YAAY,CAAC;AAqBpB,MAAM,CAAC,MAAM,sBAAsB,GAAuB;IACxD,OAAO,EAAE;QACP,YAAY,EAAE,GAAG;QACjB,aAAa,EAAE,GAAG;QAClB,SAAS,EAAE,GAAG;QACd,UAAU,EAAE,GAAG;QACf,SAAS,EAAE,GAAG;KACf;CACF,CAAC;AAEF,8EAA8E;AAC9E,2CAA2C;AAC3C,8EAA8E;AAE9E,MAAM,CAAC,MAAM,iBAAiB,GAAkC;IAC9D,eAAe;IACf,mBAAmB,EAAE,cAAc;IACnC,qBAAqB,EAAE,cAAc;IACrC,sBAAsB,EAAE,cAAc;IACtC,kBAAkB,EAAE,cAAc;IAElC,gBAAgB;IAChB,mBAAmB,EAAE,eAAe;IACpC,kBAAkB,EAAE,eAAe;IACnC,iBAAiB,EAAE,eAAe;
|
|
1
|
+
{"version":3,"file":"scoring.js","sourceRoot":"","sources":["../../src/trust/scoring.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.
|
|
3
|
+
"version": "2.40.0",
|
|
4
4
|
"description": "LLM-enhanced SAST analysis built on circle-ir",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.js",
|
|
@@ -97,7 +97,7 @@
|
|
|
97
97
|
"@ax-llm/ax": "^20.0.0",
|
|
98
98
|
"@cognium/project-profile-detect": "^1.1.0",
|
|
99
99
|
"@mastra/core": "^1.18.0",
|
|
100
|
-
"circle-ir": "3.
|
|
100
|
+
"circle-ir": "3.165.0",
|
|
101
101
|
"minimatch": "^10.2.5",
|
|
102
102
|
"p-queue": "^9.1.0"
|
|
103
103
|
},
|