circle-ir-ai 2.20.8 → 2.20.9
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 +49 -0
- package/dist/llm/config.d.ts +13 -0
- package/dist/llm/config.d.ts.map +1 -1
- package/dist/llm/config.js +34 -1
- package/dist/llm/config.js.map +1 -1
- package/dist/llm/index.d.ts +1 -1
- package/dist/llm/index.d.ts.map +1 -1
- package/dist/llm/index.js +1 -1
- package/dist/llm/index.js.map +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,55 @@ 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.20.9] - 2026-06-29
|
|
9
|
+
|
|
10
|
+
### Changed
|
|
11
|
+
|
|
12
|
+
- **chore: bump `circle-ir` 3.123.0 → 3.125.0.** Routine engine refresh
|
|
13
|
+
bundled with the #151 source changes below. Full test suite remains
|
|
14
|
+
clean (973 pass / 3 skipped) on the new dependency; no API surface
|
|
15
|
+
changes required in `circle-ir-ai`.
|
|
16
|
+
|
|
17
|
+
### Added — cognium-ai#151 two-model split (P0)
|
|
18
|
+
|
|
19
|
+
Engine groundwork for the two-model discovery / verification split. Pairs
|
|
20
|
+
with cognium-ai 2.20.7's `--llm-discovery-model` / `--llm-verification-model`
|
|
21
|
+
/ `--llm-component-model` CLI flags. The phase-specific env vars
|
|
22
|
+
(`LLM_VERIFICATION_MODEL`, `LLM_COMPONENT_MODEL`) already existed and fall
|
|
23
|
+
back to the universal default; this release adds the discovery-named entry
|
|
24
|
+
point and the cache-key fingerprint #158 will hash into its key.
|
|
25
|
+
|
|
26
|
+
- **`LLM_DISCOVERY_MODEL` env var (preferred name for discovery phase).**
|
|
27
|
+
Resolution order in `getDefaultLLMConfig`:
|
|
28
|
+
`LLM_DISCOVERY_MODEL` → `LLM_ENRICHMENT_MODEL` → `cognium/gpt-oss-120b`.
|
|
29
|
+
The legacy `LLM_ENRICHMENT_MODEL` stays supported silently for
|
|
30
|
+
back-compat — no stderr warning, no deprecation path. Operators
|
|
31
|
+
running the two-model split set
|
|
32
|
+
`LLM_DISCOVERY_MODEL=google/gemma-3-12b-it`
|
|
33
|
+
+ `LLM_VERIFICATION_MODEL=anthropic/claude-opus-4` and verification
|
|
34
|
+
+ componentEnrichment fall through to the discovery model when
|
|
35
|
+
unset, so a single `LLM_DISCOVERY_MODEL` still works as universal default.
|
|
36
|
+
|
|
37
|
+
- **`getPhaseModelFingerprint(config)` helper (#158 cache-key prep).**
|
|
38
|
+
Returns a stable identity string for the (discovery, verification,
|
|
39
|
+
componentEnrichment) model triple — `disc=<m>|verify=<m>|comp=<m>`,
|
|
40
|
+
lowercased, `/` and `:` normalized to `_`. Embed in any cache-key
|
|
41
|
+
construction wherever LLM-model-derived results are stored so a
|
|
42
|
+
cache entry stamped under `gemma3:12b → opus` is not silently reused
|
|
43
|
+
when the operator switches to `gpt-4o-mini → gpt-4o-mini`.
|
|
44
|
+
Intentionally model-only — `LLM_BASE_URL` is **not** part of the
|
|
45
|
+
fingerprint so the same model behind different proxies hits the
|
|
46
|
+
same cache (escape hatch for the proxy-aliasing corner case will
|
|
47
|
+
be a separate `LLM_CACHE_NAMESPACE` env var on #158 if it bites).
|
|
48
|
+
Exported from `src/llm/index.ts` alongside `getDefaultLLMConfig`.
|
|
49
|
+
|
|
50
|
+
- **Test surface**: `tests/llm/phase-model-split.test.ts` (6 pass).
|
|
51
|
+
Precedence (`LLM_DISCOVERY_MODEL` wins over `LLM_ENRICHMENT_MODEL`),
|
|
52
|
+
fallback (verification + componentEnrichment fall through to discovery),
|
|
53
|
+
per-phase env-var override, fingerprint format + normalization.
|
|
54
|
+
|
|
55
|
+
Full test suite: 973 pass / 3 skipped (+6 from 2.20.8).
|
|
56
|
+
|
|
8
57
|
## [2.20.8] - 2026-06-29
|
|
9
58
|
|
|
10
59
|
### Changed
|
package/dist/llm/config.d.ts
CHANGED
|
@@ -75,6 +75,19 @@ export declare function buildChatCompletionBody(model: string, messages: Array<{
|
|
|
75
75
|
maxTokens: number;
|
|
76
76
|
temperature?: number;
|
|
77
77
|
}): Record<string, unknown>;
|
|
78
|
+
/**
|
|
79
|
+
* cognium-ai#151 — stable identity string for the (discovery,
|
|
80
|
+
* verification, componentEnrichment) model triple. Used by #158's
|
|
81
|
+
* classification-cache key so a cache entry stamped while the user was
|
|
82
|
+
* running `gemma3:12b → opus` is not silently reused when they switch
|
|
83
|
+
* to `gpt-4o-mini → gpt-4o-mini`. The output is intentionally
|
|
84
|
+
* lowercased and `:` / `/` are normalized so cache keys are stable
|
|
85
|
+
* across provider prefix conventions (`cognium/`, `openai/`).
|
|
86
|
+
*
|
|
87
|
+
* Shape: `disc=<model>|verify=<model>|comp=<model>`. Embed in
|
|
88
|
+
* cache-key construction wherever LLM-model-derived results are stored.
|
|
89
|
+
*/
|
|
90
|
+
export declare function getPhaseModelFingerprint(config?: LLMConfig): string;
|
|
78
91
|
/**
|
|
79
92
|
* Validate that required LLM configuration is present.
|
|
80
93
|
* Throws an error if API key is not configured (except for Cognium proxies).
|
package/dist/llm/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/llm/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IAEf,MAAM,EAAE;QACN,UAAU,EAAE,WAAW,CAAC;QACxB,YAAY,EAAE,WAAW,CAAC;QAC1B,mBAAmB,EAAE,WAAW,CAAC;KAClC,CAAC;IAGF,UAAU,EAAE;QACV,wBAAwB,EAAE,OAAO,CAAC;QAClC,qBAAqB,EAAE,OAAO,CAAC;QAC/B,wBAAwB,EAAE,OAAO,CAAC;QAClC,oBAAoB,EAAE,MAAM,CAAC;QAC7B,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC;IAGF,YAAY,EAAE;QACZ,mBAAmB,EAAE,OAAO,CAAC;QAC7B,qBAAqB,EAAE,OAAO,CAAC;KAChC,CAAC;CACH;AAgCD,wBAAgB,mBAAmB,IAAI,SAAS,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/llm/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IAEf,MAAM,EAAE;QACN,UAAU,EAAE,WAAW,CAAC;QACxB,YAAY,EAAE,WAAW,CAAC;QAC1B,mBAAmB,EAAE,WAAW,CAAC;KAClC,CAAC;IAGF,UAAU,EAAE;QACV,wBAAwB,EAAE,OAAO,CAAC;QAClC,qBAAqB,EAAE,OAAO,CAAC;QAC/B,wBAAwB,EAAE,OAAO,CAAC;QAClC,oBAAoB,EAAE,MAAM,CAAC;QAC7B,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC;IAGF,YAAY,EAAE;QACZ,mBAAmB,EAAE,OAAO,CAAC;QAC7B,qBAAqB,EAAE,OAAO,CAAC;KAChC,CAAC;CACH;AAgCD,wBAAgB,mBAAmB,IAAI,SAAS,CAiF/C;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,SAAiC,CAAC;AAEjE;;;;;;;;;;;;GAYG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,EAClD,OAAO,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GACnD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAUzB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,GAAE,SAAiC,GAAG,MAAM,CAO1F;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAazD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS,CA0BzE"}
|
package/dist/llm/config.js
CHANGED
|
@@ -48,7 +48,20 @@ export function getDefaultLLMConfig() {
|
|
|
48
48
|
// to fall through to `cognium/gpt-oss-120b` — a cognium-proxy-only
|
|
49
49
|
// model that returns 404 on Ollama / OpenAI / GitHub Models. Treat
|
|
50
50
|
// LLM_ENRICHMENT_MODEL as the universal default for all phases.
|
|
51
|
-
|
|
51
|
+
//
|
|
52
|
+
// cognium-ai#151 — `LLM_DISCOVERY_MODEL` is the preferred name for the
|
|
53
|
+
// discovery (source/sink enrichment) phase. It takes precedence over
|
|
54
|
+
// `LLM_ENRICHMENT_MODEL`, which stays for back-compat. Operators
|
|
55
|
+
// running the two-model split (e.g. gemma3:12b for discovery + opus
|
|
56
|
+
// for verification) set:
|
|
57
|
+
// LLM_DISCOVERY_MODEL=google/gemma-3-12b-it
|
|
58
|
+
// LLM_VERIFICATION_MODEL=anthropic/claude-opus-4
|
|
59
|
+
// and verification + componentEnrichment still fall back to the
|
|
60
|
+
// discovery model when unset, so a single LLM_DISCOVERY_MODEL also
|
|
61
|
+
// works as a universal default.
|
|
62
|
+
const enrichmentModel = process.env.LLM_DISCOVERY_MODEL ||
|
|
63
|
+
process.env.LLM_ENRICHMENT_MODEL ||
|
|
64
|
+
'cognium/gpt-oss-120b';
|
|
52
65
|
return {
|
|
53
66
|
baseUrl,
|
|
54
67
|
apiKey: process.env.LLM_API_KEY || defaultApiKey,
|
|
@@ -137,6 +150,26 @@ export function buildChatCompletionBody(model, messages, options) {
|
|
|
137
150
|
}
|
|
138
151
|
return body;
|
|
139
152
|
}
|
|
153
|
+
/**
|
|
154
|
+
* cognium-ai#151 — stable identity string for the (discovery,
|
|
155
|
+
* verification, componentEnrichment) model triple. Used by #158's
|
|
156
|
+
* classification-cache key so a cache entry stamped while the user was
|
|
157
|
+
* running `gemma3:12b → opus` is not silently reused when they switch
|
|
158
|
+
* to `gpt-4o-mini → gpt-4o-mini`. The output is intentionally
|
|
159
|
+
* lowercased and `:` / `/` are normalized so cache keys are stable
|
|
160
|
+
* across provider prefix conventions (`cognium/`, `openai/`).
|
|
161
|
+
*
|
|
162
|
+
* Shape: `disc=<model>|verify=<model>|comp=<model>`. Embed in
|
|
163
|
+
* cache-key construction wherever LLM-model-derived results are stored.
|
|
164
|
+
*/
|
|
165
|
+
export function getPhaseModelFingerprint(config = getDefaultLLMConfig()) {
|
|
166
|
+
const norm = (m) => m.toLowerCase().replace(/[/:]/g, '_');
|
|
167
|
+
return [
|
|
168
|
+
`disc=${norm(config.phases.enrichment.model)}`,
|
|
169
|
+
`verify=${norm(config.phases.verification.model)}`,
|
|
170
|
+
`comp=${norm(config.phases.componentEnrichment.model)}`,
|
|
171
|
+
].join('|');
|
|
172
|
+
}
|
|
140
173
|
/**
|
|
141
174
|
* Validate that required LLM configuration is present.
|
|
142
175
|
* Throws an error if API key is not configured (except for Cognium proxies).
|
package/dist/llm/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/llm/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA0CH;;;;;;;;;;;;;GAaG;AACH,SAAS,gBAAgB,CAAC,OAAe;IACvC,OAAO,CACL,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QAClC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QAClC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QACpC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QACnC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CACpC,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAAC,OAAe;IAC/C,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC/C,IAAI,gBAAgB,CAAC,OAAO,CAAC;QAAE,OAAO,eAAe,CAAC;IACtD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,mBAAmB;IACjC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,0BAA0B,CAAC;IACvE,uEAAuE;IACvE,8DAA8D;IAC9D,MAAM,aAAa,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAC;IAExD,sEAAsE;IACtE,qEAAqE;IACrE,oDAAoD;IACpD,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;IACpE,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,YAAY,GAAG,CAAC;QACjE,CAAC,CAAC,YAAY;QACd,CAAC,CAAC,KAAK,CAAC;IAEV,sEAAsE;IACtE,qEAAqE;IACrE,mEAAmE;IACnE,mEAAmE;IACnE,gEAAgE;IAChE,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/llm/config.ts"],"names":[],"mappings":"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"}
|
package/dist/llm/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Provides LLM-based enrichment and verification capabilities.
|
|
5
5
|
*/
|
|
6
|
-
export { defaultLLMConfig, createLLMConfig, validateLLMConfig, type LLMConfig, type PhaseConfig } from './config.js';
|
|
6
|
+
export { defaultLLMConfig, createLLMConfig, validateLLMConfig, getDefaultLLMConfig, getPhaseModelFingerprint, type LLMConfig, type PhaseConfig, } from './config.js';
|
|
7
7
|
export { AxLLMClient, getAxLLMClient, enrichmentSignature, verificationSignature, listIndexSignature, correlatedPredicateSignature, crossFileTaintSignature, roleClassificationSignature, sourceDiscoverySignature, sinkDiscoverySignature, virtualCallResolutionSignature, patternVerificationSignature, } from './ax-client.js';
|
|
8
8
|
export { EnrichmentEngine, getEnrichmentEngine, enrichType, type EnrichmentResult, type RoleClassificationResult, type DiscoveredSource, type DiscoveredSink, type VirtualCallResolution, } from './enrichment.js';
|
|
9
9
|
export { VerificationEngine, getVerificationEngine, verifyTaintPath, verifyTaintPathsBatch, verifyVulnerability, resetVerifierDedupCache, getVerifierDedupStats, VERIFY_MAX_PAIRS_PER_CHUNK, type VerificationResult, type VerificationInput, type VerificationVerdict, type Exploitability, type BatchVerificationInput, type BatchVerificationResult, } from './verification.js';
|
package/dist/llm/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/llm/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/llm/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,wBAAwB,EACxB,KAAK,SAAS,EACd,KAAK,WAAW,GACjB,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,WAAW,EACX,cAAc,EAEd,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,EAClB,4BAA4B,EAC5B,uBAAuB,EACvB,2BAA2B,EAC3B,wBAAwB,EACxB,sBAAsB,EACtB,8BAA8B,EAC9B,4BAA4B,GAC7B,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,UAAU,EACV,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,EAC7B,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,qBAAqB,GAC3B,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,eAAe,EACf,qBAAqB,EACrB,mBAAmB,EACnB,uBAAuB,EACvB,qBAAqB,EACrB,0BAA0B,EAC1B,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,GAC7B,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,uBAAuB,EACvB,0BAA0B,EAC1B,KAAK,eAAe,EACpB,KAAK,uBAAuB,EAC5B,KAAK,gBAAgB,GACtB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,kBAAkB,EAClB,6BAA6B,EAC7B,2BAA2B,EAC3B,gCAAgC,EAChC,cAAc,EACd,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,WAAW,GACjB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EACvB,YAAY,EACZ,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,iBAAiB,EACjB,WAAW,EACX,mBAAmB,EACnB,KAAK,WAAW,EAChB,KAAK,iBAAiB,GACvB,MAAM,sBAAsB,CAAC"}
|
package/dist/llm/index.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Provides LLM-based enrichment and verification capabilities.
|
|
5
5
|
*/
|
|
6
6
|
// Configuration
|
|
7
|
-
export { defaultLLMConfig, createLLMConfig, validateLLMConfig } from './config.js';
|
|
7
|
+
export { defaultLLMConfig, createLLMConfig, validateLLMConfig, getDefaultLLMConfig, getPhaseModelFingerprint, } from './config.js';
|
|
8
8
|
// New Ax-LLM client (DSPy-style with typed signatures)
|
|
9
9
|
export { AxLLMClient, getAxLLMClient,
|
|
10
10
|
// Signatures
|
package/dist/llm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/llm/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,gBAAgB;AAChB,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/llm/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,gBAAgB;AAChB,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,wBAAwB,GAGzB,MAAM,aAAa,CAAC;AAErB,uDAAuD;AACvD,OAAO,EACL,WAAW,EACX,cAAc;AACd,aAAa;AACb,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,EAClB,4BAA4B,EAC5B,uBAAuB,EACvB,2BAA2B,EAC3B,wBAAwB,EACxB,sBAAsB,EACtB,8BAA8B,EAC9B,4BAA4B,GAC7B,MAAM,gBAAgB,CAAC;AAExB,uBAAuB;AACvB,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,UAAU,GAMX,MAAM,iBAAiB,CAAC;AAEzB,yBAAyB;AACzB,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,eAAe,EACf,qBAAqB,EACrB,mBAAmB,EACnB,uBAAuB,EACvB,qBAAqB,EACrB,0BAA0B,GAO3B,MAAM,mBAAmB,CAAC;AAE3B,uDAAuD;AACvD,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,uBAAuB,EACvB,0BAA0B,GAI3B,MAAM,gBAAgB,CAAC;AAExB,sDAAsD;AACtD,OAAO,EACL,kBAAkB,EAClB,6BAA6B,EAC7B,2BAA2B,EAC3B,gCAAgC,EAChC,cAAc,GAIf,MAAM,uBAAuB,CAAC;AAE/B,4DAA4D;AAC5D,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EACvB,YAAY,EACZ,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,iBAAiB,EACjB,WAAW,EACX,mBAAmB,GAGpB,MAAM,sBAAsB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "circle-ir-ai",
|
|
3
|
-
"version": "2.20.
|
|
3
|
+
"version": "2.20.9",
|
|
4
4
|
"description": "LLM-enhanced SAST analysis built on circle-ir",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.js",
|
|
@@ -96,7 +96,7 @@
|
|
|
96
96
|
"@ax-llm/ax": "^20.0.0",
|
|
97
97
|
"@cognium/project-profile-detect": "^1.1.0",
|
|
98
98
|
"@mastra/core": "^1.18.0",
|
|
99
|
-
"circle-ir": "3.
|
|
99
|
+
"circle-ir": "3.125.0",
|
|
100
100
|
"minimatch": "^10.2.5",
|
|
101
101
|
"p-queue": "^9.1.0"
|
|
102
102
|
},
|