circle-ir-ai 2.28.2 → 2.28.4
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 +150 -0
- package/dist/agents/mastra/workflow.d.ts.map +1 -1
- package/dist/agents/mastra/workflow.js +13 -2
- package/dist/agents/mastra/workflow.js.map +1 -1
- package/dist/cache/backends/r2.d.ts.map +1 -1
- package/dist/cache/backends/r2.js +39 -8
- package/dist/cache/backends/r2.js.map +1 -1
- package/dist/cache/discovery-cache.d.ts +20 -0
- package/dist/cache/discovery-cache.d.ts.map +1 -1
- package/dist/cache/discovery-cache.js +63 -2
- package/dist/cache/discovery-cache.js.map +1 -1
- package/dist/llm/call-logger.d.ts +56 -1
- package/dist/llm/call-logger.d.ts.map +1 -1
- package/dist/llm/call-logger.js +93 -0
- package/dist/llm/call-logger.js.map +1 -1
- package/dist/llm/discovery.d.ts +9 -0
- package/dist/llm/discovery.d.ts.map +1 -1
- package/dist/llm/discovery.js +48 -23
- package/dist/llm/discovery.js.map +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,156 @@ 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.28.4] - 2026-07-01
|
|
9
|
+
|
|
10
|
+
### Added — observability + guardrails (cognium-ai#163 B3 + B4 + B5)
|
|
11
|
+
|
|
12
|
+
Three low-risk hardening items from the #163 umbrella, landed together
|
|
13
|
+
as one PATCH. All are additive-optional: no runtime behavior changes
|
|
14
|
+
for callers who don't consume the new signals.
|
|
15
|
+
|
|
16
|
+
**B3 (MED) — categorized R2 cache-backend errors.** The R2 backend
|
|
17
|
+
previously swallowed every AWS-SDK error into a silent miss / write-noop
|
|
18
|
+
(`src/cache/backends/r2.ts` get/set/has/delete). A persistent misconfig
|
|
19
|
+
(`NoSuchBucket`, `AccessDenied`) or network outage was indistinguishable
|
|
20
|
+
from cold-cache behavior — a full sweep could run against a dead bucket
|
|
21
|
+
with no visible signal beyond wall-clock cost.
|
|
22
|
+
|
|
23
|
+
Fix:
|
|
24
|
+
- `categorizeR2Error(err)` coalesces AWS SDK error shapes (name / Code /
|
|
25
|
+
`$metadata.httpStatusCode` / `cause.code`) into 7 stable buckets:
|
|
26
|
+
`no_such_bucket`, `access_denied`, `not_found`, `network_error`,
|
|
27
|
+
`throttled`, `server_error`, `unknown_error`. Never throws.
|
|
28
|
+
- `llmCallLogger.logR2Error({ op, category, error })` emits a synthetic
|
|
29
|
+
JSONL row (`r2Error: true`, `r2Op`, `errorCategory`, trimmed `error`)
|
|
30
|
+
and surfaces the first occurrence to stderr with the category so
|
|
31
|
+
misconfig failures are loud on the first scan.
|
|
32
|
+
- Deduped per-process by `(op × category)`: a persistent outage
|
|
33
|
+
produces one row per failure mode, not one per cache lookup.
|
|
34
|
+
- `not_found` is skipped for get / has / delete (semantically expected
|
|
35
|
+
cache miss); still emitted for `set` where it would be anomalous.
|
|
36
|
+
- Extended `LLMCallEntry` with `r2Error?: boolean` and
|
|
37
|
+
`r2Op?: 'get' | 'set' | 'has' | 'delete'`; widened `errorCategory`
|
|
38
|
+
to `LLMErrorCategory | R2ErrorCategory`.
|
|
39
|
+
- Coverage: `tests/r2-error-logging.test.ts` pins the SDK-error → bucket
|
|
40
|
+
mapping (all 7 buckets), dedup semantics per (op, category), JSONL
|
|
41
|
+
row shape, error-string trimming, and first-time stderr surfacing.
|
|
42
|
+
|
|
43
|
+
**B4 (LOW) — prompt-template snapshot hashes.** The `disc-v1 → disc-v2`
|
|
44
|
+
bump in 2.28.3 shipped because a prompt change and a sentinel bump got
|
|
45
|
+
split across commits during the earlier discovery-cache refactor,
|
|
46
|
+
poisoning warm entries silently. This test makes the failure mode
|
|
47
|
+
loud at CI time.
|
|
48
|
+
|
|
49
|
+
Fix:
|
|
50
|
+
- `src/llm/discovery.ts:378` — extracted the inline `systemPrompt` to
|
|
51
|
+
the exported constant `DISCOVERY_SYSTEM_PROMPT_TEMPLATE` so it can
|
|
52
|
+
be hashed from tests without duplicating string content.
|
|
53
|
+
- `tests/prompt-template-hashes.test.ts` — pins SHA-256 snapshots of
|
|
54
|
+
all 5 `javaPrompts.*` templates, all 5 `rustPrompts.*` templates,
|
|
55
|
+
and `DISCOVERY_SYSTEM_PROMPT_TEMPLATE`. A change flips the test red
|
|
56
|
+
with the message: revert, or bump the matching sentinel (`tree-v1` /
|
|
57
|
+
`verify-v1` / `disc-v2`) in the same commit as the prompt edit.
|
|
58
|
+
|
|
59
|
+
**B5 (LOW) — CI-enforced circle-ir pin uniformity.** The 4 packages in
|
|
60
|
+
this workspace (`circle-ir-ai`, `cognium-ai`, `circle-pack`,
|
|
61
|
+
`mcp-server`) all depend on `circle-ir` at the same exact version by
|
|
62
|
+
convention. Drift causes the exact silent-collision failure #163 B1
|
|
63
|
+
exists to prevent: one package resolves an older circle-ir, its cache
|
|
64
|
+
rows key against a different tree / verify prompt bytes, results go
|
|
65
|
+
stale without warning.
|
|
66
|
+
|
|
67
|
+
Fix:
|
|
68
|
+
- New `circle-ir-pin-check` job in `.github/workflows/ci.yml` reads
|
|
69
|
+
`dependencies.circle-ir` from all 4 `package.json` files and asserts
|
|
70
|
+
every value is byte-identical. Fails CI with an actionable message
|
|
71
|
+
pointing at #163 B5 on drift.
|
|
72
|
+
|
|
73
|
+
### Notes
|
|
74
|
+
|
|
75
|
+
No API breaking changes. `R2ErrorCategory` and `categorizeR2Error()`
|
|
76
|
+
are additive exports; existing callers of `llmCallLogger.log()` and
|
|
77
|
+
`logLLMCall()` see no behavior change.
|
|
78
|
+
|
|
79
|
+
## [2.28.3] - 2026-06-30
|
|
80
|
+
|
|
81
|
+
### Fixed — discovery cache-key coverage (cognium-ai#163 B1 + B2)
|
|
82
|
+
|
|
83
|
+
Two cache-correctness bugs surfaced in the post-#161/#162 audit of the
|
|
84
|
+
persistent LLM cache. Both silently caused stale-verdict returns; both
|
|
85
|
+
land as one coordinated `disc-v1 → disc-v2` bump so warm entries roll
|
|
86
|
+
off together.
|
|
87
|
+
|
|
88
|
+
**B1 (HIGH) — per-CWE discovery key missed `annotations` + `imports`.**
|
|
89
|
+
The user prompt at `src/llm/discovery.ts` embedded
|
|
90
|
+
`method.annotations.join(', ')` and `method.imports.slice(0, 20)`, but
|
|
91
|
+
`computeDiscoveryCacheKey` hashed only `methodCode + CWEs + language`.
|
|
92
|
+
Two methods with byte-identical bodies but different annotations
|
|
93
|
+
(`@RestController` vs `@Deprecated`) or different imports produced the
|
|
94
|
+
**same** cache key but **different** prompts, so whichever landed first
|
|
95
|
+
poisoned the other. Also, `.slice(0, 20)` on an unsorted list meant
|
|
96
|
+
walker-order shifts (engine version bumps, tree-sitter grammar updates)
|
|
97
|
+
would flip the prompt without moving the key.
|
|
98
|
+
|
|
99
|
+
Fix:
|
|
100
|
+
- `computeDiscoveryCacheKey` now accepts optional
|
|
101
|
+
`annotations: ReadonlyArray<string>` and `imports: ReadonlyArray<string>`.
|
|
102
|
+
Both are canonicalized (sorted, deduped, imports capped at top-20)
|
|
103
|
+
before hashing.
|
|
104
|
+
- `canonicalizeImportsForKey(imports)` exported so the prompt-build site
|
|
105
|
+
can reuse the exact same view — key-time and prompt-time see the same
|
|
106
|
+
bytes.
|
|
107
|
+
- `PROMPT_VER` bumped `disc-v1` → `disc-v2`. All existing warm entries
|
|
108
|
+
under the discovery namespace are unreachable after this and will roll
|
|
109
|
+
off on TTL / R2_PREFIX rotation.
|
|
110
|
+
- `discovery.ts:376-381` now renders `canonicalAnnotations` and
|
|
111
|
+
`canonicalImports` in the user prompt (not the raw method fields).
|
|
112
|
+
|
|
113
|
+
**B2 (MED) — language-discoverer `existingSources` / `existingSinks`
|
|
114
|
+
were order-sensitive.** `src/agents/mastra/workflow.ts` built the
|
|
115
|
+
"what we already found" context via
|
|
116
|
+
`patternSources.map(s => \`${s.type}:${s.line}\`).join(', ')` with no
|
|
117
|
+
sort. `patternSources` / `patternSinks` iteration order is stable
|
|
118
|
+
within an engine version but not across — a taint-graph walker
|
|
119
|
+
refactor or added detector permutes the output without changing the
|
|
120
|
+
*set*. Verify-cache had already solved this (verify-cache.ts:91-99);
|
|
121
|
+
discovery had the same pattern but not the fix.
|
|
122
|
+
|
|
123
|
+
Fix: canonicalize at the callsite. `[...items].map(...).sort().join(...)`
|
|
124
|
+
via a small `canonPatternPairs` helper. Cache key stability across
|
|
125
|
+
circle-ir minor bumps restored. Language-discoverer cache key
|
|
126
|
+
composition (`computeDiscoverSourcesLanguageCacheKey` /
|
|
127
|
+
`computeDiscoverSinksLanguageCacheKey`) is unchanged — they hash the
|
|
128
|
+
string opaquely, and now that string is stable-sorted upstream.
|
|
129
|
+
|
|
130
|
+
**Warm-cache impact.** After deploy: per-CWE discovery hit rate drops
|
|
131
|
+
to ~0% for one full sweep (expected — `disc-v1` entries unreachable),
|
|
132
|
+
recovers to prior 99%+ on the next. Verify and language-discoverer
|
|
133
|
+
namespaces unaffected (their key shapes didn't change; B2 just
|
|
134
|
+
stabilizes the input string). Legacy R2 entries roll off on TTL /
|
|
135
|
+
`R2_PREFIX` rotation.
|
|
136
|
+
|
|
137
|
+
**Tests.** 11 new regression tests in `tests/discovery-cache.test.ts`:
|
|
138
|
+
- annotations differ → key differs
|
|
139
|
+
- annotations order-invariant, dedup'd, empty ≡ omitted
|
|
140
|
+
- imports differ → key differs
|
|
141
|
+
- imports order-invariant
|
|
142
|
+
- top-20 cap: item that sorts LAST doesn't change key
|
|
143
|
+
- top-20 cap: item that sorts FIRST does change key (knocks out the
|
|
144
|
+
20th)
|
|
145
|
+
- `canonicalizeImportsForKey` matches what the key hashes
|
|
146
|
+
- prompt-version sentinel is `disc-v2`
|
|
147
|
+
- current keys don't contain the string `'disc-v1'` (warm-cache
|
|
148
|
+
invalidation check)
|
|
149
|
+
|
|
150
|
+
Cross-namespace `cache-key-shape.test.ts:158` updated to expect the new
|
|
151
|
+
sentinel. Total suite: 1091 pass + 3 skipped (was 1080 + 3).
|
|
152
|
+
|
|
153
|
+
Filed under [cognium-ai#163](https://github.com/cogniumhq/cognium-ai/issues/163)
|
|
154
|
+
umbrella; audit-plan steps B3 (R2 error logging), B4 (prompt-template
|
|
155
|
+
regression hash), and B5 (cross-package pin CI) will land in follow-up
|
|
156
|
+
PRs.
|
|
157
|
+
|
|
8
158
|
## [2.28.2] - 2026-06-30
|
|
9
159
|
|
|
10
160
|
### Added — discovery cache for language discoverers (cognium-ai#161)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow.d.ts","sourceRoot":"","sources":["../../../src/agents/mastra/workflow.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAoC,GAAG,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAOvF,OAAO,KAAK,EACV,SAAS,EAEV,MAAM,0CAA0C,CAAC;AAElD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAUrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAGnE,OAAO,EACL,gBAAgB,EAChB,UAAU,EACV,SAAS,EACT,UAAU,EACV,UAAU,GACX,MAAM,YAAY,CAAC;AAMpB,MAAM,MAAM,oBAAoB,GAAG,UAAU,GAAG,SAAS,GAAG,aAAa,CAAC;AAE1E,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE;QACR,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAC3B,kBAAkB,CAAC,EAAE,OAAO,CAAC;QAC7B,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,sBAAsB,CAAC,EAAE,MAAM,CAAC;QAChC,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;KAC7C,CAAC;CACH;AAED,MAAM,WAAW,cAAc;IAC7B,eAAe,EAAE,GAAG,EAAE,CAAC;IACvB;;;;;;OAMG;IACH,YAAY,EAAE,GAAG,EAAE,CAAC;IACpB,KAAK,EAAE;QACL,YAAY,EAAE,MAAM,CAAC;QACrB,UAAU,EAAE,MAAM,CAAC;QACnB,uBAAuB,EAAE,MAAM,CAAC;QAChC,aAAa,EAAE,MAAM,CAAC;QACtB,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;CACH;
|
|
1
|
+
{"version":3,"file":"workflow.d.ts","sourceRoot":"","sources":["../../../src/agents/mastra/workflow.ts"],"names":[],"mappings":"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"}
|
|
@@ -185,6 +185,17 @@ async function runEnrich(filePath, sourceCode, types, imports, patternSources, p
|
|
|
185
185
|
const functionName = functionNames.split(',')[0]?.trim() || 'main';
|
|
186
186
|
// Map language to LLM language type
|
|
187
187
|
const llmLanguage = (language === 'rust' || language === 'java') ? language : 'java';
|
|
188
|
+
// #163 B2 — canonicalize the "existing findings" context before both
|
|
189
|
+
// hashing (cache key) and rendering (LLM prompt). patternSources /
|
|
190
|
+
// patternSinks iteration order depends on the circle-ir graph walker
|
|
191
|
+
// and can shift between engine minor bumps without changing the
|
|
192
|
+
// *set* of findings; a stable sort keeps cache identity invariant
|
|
193
|
+
// across those shifts. Mirrors verify-cache's `serializeVerifyPairs`
|
|
194
|
+
// (verify-cache.ts:91-99).
|
|
195
|
+
const canonPatternPairs = (items) => [...items]
|
|
196
|
+
.map((s) => `${s.type}:${s.line}`)
|
|
197
|
+
.sort()
|
|
198
|
+
.join(', ');
|
|
188
199
|
// 2 LLM calls in parallel (source + sink discovery). cognium-ai#139.
|
|
189
200
|
const [rawSources, rawSinks] = await withLLMContext({ file: filePath, method: moduleName, phase: 'enrichment' }, () => Promise.all([
|
|
190
201
|
// Source discovery
|
|
@@ -192,14 +203,14 @@ async function runEnrich(filePath, sourceCode, types, imports, patternSources, p
|
|
|
192
203
|
code: sourceCode,
|
|
193
204
|
functionName,
|
|
194
205
|
moduleRole: 'unknown', // Role intentionally not classified here — see runEnrich docstring
|
|
195
|
-
existingSources: patternSources
|
|
206
|
+
existingSources: canonPatternPairs(patternSources),
|
|
196
207
|
}),
|
|
197
208
|
// Sink discovery
|
|
198
209
|
client.discoverSinksForLanguage(llmLanguage, {
|
|
199
210
|
code: sourceCode,
|
|
200
211
|
functionName,
|
|
201
212
|
methodCalls: '',
|
|
202
|
-
existingSinks: patternSinks
|
|
213
|
+
existingSinks: canonPatternPairs(patternSinks),
|
|
203
214
|
}),
|
|
204
215
|
]));
|
|
205
216
|
// #35: validate LLM-discovered line numbers against file bounds. Small/
|
|
@@ -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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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"r2.d.ts","sourceRoot":"","sources":["../../../src/cache/backends/r2.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AASH,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"r2.d.ts","sourceRoot":"","sources":["../../../src/cache/backends/r2.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AASH,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAI5D,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,yCAAyC;IACzC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sEAAsE;IACtE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,SAAU,YAAW,YAAY;IAC5C,QAAQ,CAAC,IAAI,QAAQ;IACrB,OAAO,CAAC,MAAM,CAAW;IACzB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAS;gBAEX,IAAI,EAAE,gBAAgB;IAelC,OAAO,CAAC,SAAS;IAIX,GAAG,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAwB1C,GAAG,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBhD,GAAG,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;IAqBpC,MAAM,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;CAmB3C"}
|
|
@@ -27,6 +27,7 @@
|
|
|
27
27
|
*/
|
|
28
28
|
import { S3Client, GetObjectCommand, PutObjectCommand, HeadObjectCommand, DeleteObjectCommand, } from '@aws-sdk/client-s3';
|
|
29
29
|
import { renderObjectPath } from './layout.js';
|
|
30
|
+
import { llmCallLogger, categorizeR2Error } from '../../llm/call-logger.js';
|
|
30
31
|
export class R2Backend {
|
|
31
32
|
kind = 'r2';
|
|
32
33
|
client;
|
|
@@ -61,9 +62,16 @@ export class R2Backend {
|
|
|
61
62
|
return await streamToString(stream);
|
|
62
63
|
}
|
|
63
64
|
catch (err) {
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
65
|
+
// cognium-ai#163 B3: categorize + log-once. `not_found` is benign
|
|
66
|
+
// (regular miss) — surface it as `null` without a log row.
|
|
67
|
+
const category = categorizeR2Error(err);
|
|
68
|
+
if (category !== 'not_found') {
|
|
69
|
+
llmCallLogger.logR2Error({
|
|
70
|
+
op: 'get',
|
|
71
|
+
category,
|
|
72
|
+
error: err instanceof Error ? err.message : String(err),
|
|
73
|
+
});
|
|
74
|
+
}
|
|
67
75
|
return null;
|
|
68
76
|
}
|
|
69
77
|
}
|
|
@@ -76,8 +84,13 @@ export class R2Backend {
|
|
|
76
84
|
ContentType: 'application/json',
|
|
77
85
|
}));
|
|
78
86
|
}
|
|
79
|
-
catch {
|
|
80
|
-
|
|
87
|
+
catch (err) {
|
|
88
|
+
// cognium-ai#163 B3: cache write failure is non-fatal but observable.
|
|
89
|
+
llmCallLogger.logR2Error({
|
|
90
|
+
op: 'set',
|
|
91
|
+
category: categorizeR2Error(err),
|
|
92
|
+
error: err instanceof Error ? err.message : String(err),
|
|
93
|
+
});
|
|
81
94
|
}
|
|
82
95
|
}
|
|
83
96
|
async has(key) {
|
|
@@ -88,7 +101,16 @@ export class R2Backend {
|
|
|
88
101
|
}));
|
|
89
102
|
return true;
|
|
90
103
|
}
|
|
91
|
-
catch {
|
|
104
|
+
catch (err) {
|
|
105
|
+
// cognium-ai#163 B3: `not_found` is a legitimate `false` — no log row.
|
|
106
|
+
const category = categorizeR2Error(err);
|
|
107
|
+
if (category !== 'not_found') {
|
|
108
|
+
llmCallLogger.logR2Error({
|
|
109
|
+
op: 'has',
|
|
110
|
+
category,
|
|
111
|
+
error: err instanceof Error ? err.message : String(err),
|
|
112
|
+
});
|
|
113
|
+
}
|
|
92
114
|
return false;
|
|
93
115
|
}
|
|
94
116
|
}
|
|
@@ -99,8 +121,17 @@ export class R2Backend {
|
|
|
99
121
|
Key: this.objectKey(key),
|
|
100
122
|
}));
|
|
101
123
|
}
|
|
102
|
-
catch {
|
|
103
|
-
|
|
124
|
+
catch (err) {
|
|
125
|
+
// cognium-ai#163 B3: delete failure is non-fatal but observable.
|
|
126
|
+
// `not_found` on delete is idempotent — no log row.
|
|
127
|
+
const category = categorizeR2Error(err);
|
|
128
|
+
if (category !== 'not_found') {
|
|
129
|
+
llmCallLogger.logR2Error({
|
|
130
|
+
op: 'delete',
|
|
131
|
+
category,
|
|
132
|
+
error: err instanceof Error ? err.message : String(err),
|
|
133
|
+
});
|
|
134
|
+
}
|
|
104
135
|
}
|
|
105
136
|
}
|
|
106
137
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"r2.js","sourceRoot":"","sources":["../../../src/cache/backends/r2.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,EACL,QAAQ,EACR,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"r2.js","sourceRoot":"","sources":["../../../src/cache/backends/r2.ts"],"names":[],"mappings":"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"}
|
|
@@ -129,19 +129,39 @@ export declare function getLangDiscovererCachePromptVersion(): string;
|
|
|
129
129
|
* - sortedCweSet — different CWE-set requests on the same method don't
|
|
130
130
|
* reuse each other's prompts
|
|
131
131
|
* - language — Java vs Kotlin etc. (D6 fix)
|
|
132
|
+
* - annotationsSha — sorted+deduped set of annotations, hashed. Two
|
|
133
|
+
* methods with identical bodies but different annotations
|
|
134
|
+
* (`@RestController` vs `@Deprecated`) now get different entries.
|
|
135
|
+
* Order-invariant. (cognium-ai#163 B1, disc-v2)
|
|
136
|
+
* - importsSha — sorted+deduped top-20 imports, hashed. Mirrors the
|
|
137
|
+
* prompt-time `.slice(0, 20)` at discovery.ts:381. Order-invariant.
|
|
138
|
+
* (cognium-ai#163 B1, disc-v2)
|
|
132
139
|
* - PROMPT_VER — global discovery-prompt invalidator
|
|
133
140
|
*
|
|
134
141
|
* Note: `className` / `methodName` are intentionally NOT in the key
|
|
135
142
|
* (D6 fix). They're prompt-context, not identity.
|
|
143
|
+
*
|
|
144
|
+
* `annotations` and `imports` default to `[]` for back-compat with
|
|
145
|
+
* older call-sites; the empty-list branch is stable across TS undefined
|
|
146
|
+
* / omitted / `[]` (all canonicalize to the empty string, then hash to
|
|
147
|
+
* the same SHA).
|
|
136
148
|
*/
|
|
137
149
|
export declare function computeDiscoveryCacheKey(input: {
|
|
138
150
|
methodCode: string;
|
|
139
151
|
targetCWEs: ReadonlyArray<string>;
|
|
140
152
|
language: string;
|
|
153
|
+
annotations?: ReadonlyArray<string>;
|
|
154
|
+
imports?: ReadonlyArray<string>;
|
|
141
155
|
}): {
|
|
142
156
|
content: string;
|
|
143
157
|
classifier: string;
|
|
144
158
|
};
|
|
159
|
+
/**
|
|
160
|
+
* Test-only: expose the canonicalization used by `computeDiscoveryCacheKey`
|
|
161
|
+
* so tests can assert the prompt-time slice matches the key-time slice.
|
|
162
|
+
* Mirrors what discovery.ts must do when building the user prompt.
|
|
163
|
+
*/
|
|
164
|
+
export declare function canonicalizeImportsForKey(imports: ReadonlyArray<string>): ReadonlyArray<string>;
|
|
145
165
|
/** Test-only: expose the prompt-version sentinel. */
|
|
146
166
|
export declare function getDiscoveryCachePromptVersion(): string;
|
|
147
167
|
//# sourceMappingURL=discovery-cache.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery-cache.d.ts","sourceRoot":"","sources":["../../src/cache/discovery-cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAIH,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAqD,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACrG,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"discovery-cache.d.ts","sourceRoot":"","sources":["../../src/cache/discovery-cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAIH,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAqD,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACrG,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAsD3D,kEAAkE;AAClE,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,8DAA8D;AAC9D,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAOD;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,GAAE,SAAiC,GACxC,mBAAmB,CAAC,eAAe,CAAC,CAetC;AAED,qDAAqD;AACrD,wBAAgB,mBAAmB,IAAI,IAAI,CAO1C;AAED;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAC7C,MAAM,GAAE,SAAiC,GACxC,mBAAmB,CAAC,oBAAoB,EAAE,CAAC,CAkB7C;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAC3C,MAAM,GAAE,SAAiC,GACxC,mBAAmB,CAAC,kBAAkB,EAAE,CAAC,CAkB3C;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,sCAAsC,CAAC,KAAK,EAAE;IAC5D,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;CACzB,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAc1C;AAED;;;;;GAKG;AACH,wBAAgB,oCAAoC,CAAC,KAAK,EAAE;IAC1D,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;CACvB,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAe1C;AAED,yEAAyE;AACzE,wBAAgB,mCAAmC,IAAI,MAAM,CAE5D;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE;IAC9C,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACpC,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;CACjC,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAsB1C;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,GAC7B,aAAa,CAAC,MAAM,CAAC,CAEvB;AAED,qDAAqD;AACrD,wBAAgB,8BAA8B,IAAI,MAAM,CAEvD"}
|
|
@@ -46,8 +46,34 @@ const DISCOVERY_CACHE_SUBDIR = path.join('.cognium', 'cache');
|
|
|
46
46
|
* Prompt-version sentinel for discovery. Bump when the discovery prompt
|
|
47
47
|
* template materially changes (e.g. new few-shot examples, different
|
|
48
48
|
* instructions for `exploitable`, new output schema).
|
|
49
|
+
*
|
|
50
|
+
* **disc-v2 (cognium-ai#163 B1):** `annotations` and `imports` are now
|
|
51
|
+
* folded into the key. The prompt embeds them (they change how the LLM
|
|
52
|
+
* reasons about attack surface — e.g. `@RestController` vs `@Deprecated`)
|
|
53
|
+
* but the v1 key didn't cover them, so two methods with byte-identical
|
|
54
|
+
* bodies but different annotation/import sets collided on the same
|
|
55
|
+
* entry. Warm entries under `disc-v1` are unreachable after this bump
|
|
56
|
+
* and will roll off on TTL / R2_PREFIX rotation.
|
|
57
|
+
*/
|
|
58
|
+
const PROMPT_VER = 'disc-v2';
|
|
59
|
+
/**
|
|
60
|
+
* Cap on the number of imports that get folded into the cache key.
|
|
61
|
+
* Mirrors the `method.imports.slice(0, 20)` slice at
|
|
62
|
+
* `discovery.ts:381` — the prompt-time slice and the key-time slice
|
|
63
|
+
* MUST agree, otherwise the cache key won't reflect what the LLM
|
|
64
|
+
* actually saw.
|
|
49
65
|
*/
|
|
50
|
-
const
|
|
66
|
+
const IMPORTS_KEY_CAP = 20;
|
|
67
|
+
/**
|
|
68
|
+
* Canonicalize a list for cache-key hashing: sort ascending, dedup,
|
|
69
|
+
* cap to `maxItems` (0 = no cap). Returns a comma-joined string ready
|
|
70
|
+
* to hash. Order-independent by design.
|
|
71
|
+
*/
|
|
72
|
+
function canonicalizeStringList(items, maxItems = 0) {
|
|
73
|
+
const sorted = [...new Set(items)].sort();
|
|
74
|
+
const capped = maxItems > 0 ? sorted.slice(0, maxItems) : sorted;
|
|
75
|
+
return capped.join(',');
|
|
76
|
+
}
|
|
51
77
|
/**
|
|
52
78
|
* Separate prompt-version sentinel for the language-specific discoverers
|
|
53
79
|
* (`discoverSourcesForLanguage` / `discoverSinksForLanguage`). These use
|
|
@@ -196,19 +222,54 @@ export function getLangDiscovererCachePromptVersion() {
|
|
|
196
222
|
* - sortedCweSet — different CWE-set requests on the same method don't
|
|
197
223
|
* reuse each other's prompts
|
|
198
224
|
* - language — Java vs Kotlin etc. (D6 fix)
|
|
225
|
+
* - annotationsSha — sorted+deduped set of annotations, hashed. Two
|
|
226
|
+
* methods with identical bodies but different annotations
|
|
227
|
+
* (`@RestController` vs `@Deprecated`) now get different entries.
|
|
228
|
+
* Order-invariant. (cognium-ai#163 B1, disc-v2)
|
|
229
|
+
* - importsSha — sorted+deduped top-20 imports, hashed. Mirrors the
|
|
230
|
+
* prompt-time `.slice(0, 20)` at discovery.ts:381. Order-invariant.
|
|
231
|
+
* (cognium-ai#163 B1, disc-v2)
|
|
199
232
|
* - PROMPT_VER — global discovery-prompt invalidator
|
|
200
233
|
*
|
|
201
234
|
* Note: `className` / `methodName` are intentionally NOT in the key
|
|
202
235
|
* (D6 fix). They're prompt-context, not identity.
|
|
236
|
+
*
|
|
237
|
+
* `annotations` and `imports` default to `[]` for back-compat with
|
|
238
|
+
* older call-sites; the empty-list branch is stable across TS undefined
|
|
239
|
+
* / omitted / `[]` (all canonicalize to the empty string, then hash to
|
|
240
|
+
* the same SHA).
|
|
203
241
|
*/
|
|
204
242
|
export function computeDiscoveryCacheKey(input) {
|
|
205
243
|
const methodSha = crypto.createHash('sha256').update(input.methodCode).digest('hex');
|
|
206
244
|
const sortedCweSet = [...input.targetCWEs].sort().join(',');
|
|
245
|
+
const annotationsSha = crypto
|
|
246
|
+
.createHash('sha256')
|
|
247
|
+
.update(canonicalizeStringList(input.annotations ?? []))
|
|
248
|
+
.digest('hex');
|
|
249
|
+
const importsSha = crypto
|
|
250
|
+
.createHash('sha256')
|
|
251
|
+
.update(canonicalizeStringList(input.imports ?? [], IMPORTS_KEY_CAP))
|
|
252
|
+
.digest('hex');
|
|
207
253
|
return {
|
|
208
|
-
content: [
|
|
254
|
+
content: [
|
|
255
|
+
methodSha,
|
|
256
|
+
sortedCweSet,
|
|
257
|
+
input.language,
|
|
258
|
+
annotationsSha,
|
|
259
|
+
importsSha,
|
|
260
|
+
PROMPT_VER,
|
|
261
|
+
].join('\0'),
|
|
209
262
|
classifier: 'discovery-method',
|
|
210
263
|
};
|
|
211
264
|
}
|
|
265
|
+
/**
|
|
266
|
+
* Test-only: expose the canonicalization used by `computeDiscoveryCacheKey`
|
|
267
|
+
* so tests can assert the prompt-time slice matches the key-time slice.
|
|
268
|
+
* Mirrors what discovery.ts must do when building the user prompt.
|
|
269
|
+
*/
|
|
270
|
+
export function canonicalizeImportsForKey(imports) {
|
|
271
|
+
return [...new Set(imports)].sort().slice(0, IMPORTS_KEY_CAP);
|
|
272
|
+
}
|
|
212
273
|
/** Test-only: expose the prompt-version sentinel. */
|
|
213
274
|
export function getDiscoveryCachePromptVersion() {
|
|
214
275
|
return PROMPT_VER;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery-cache.js","sourceRoot":"","sources":["../../src/cache/discovery-cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAEH,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,4BAA4B,EAAkB,MAAM,kBAAkB,CAAC;AAGrG,MAAM,sBAAsB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;AAE9D
|
|
1
|
+
{"version":3,"file":"discovery-cache.js","sourceRoot":"","sources":["../../src/cache/discovery-cache.ts"],"names":[],"mappings":"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"}
|
|
@@ -48,7 +48,7 @@ export interface LLMCallEntry {
|
|
|
48
48
|
error?: string;
|
|
49
49
|
parseError?: boolean;
|
|
50
50
|
retryCount?: number;
|
|
51
|
-
errorCategory?: LLMErrorCategory;
|
|
51
|
+
errorCategory?: LLMErrorCategory | R2ErrorCategory;
|
|
52
52
|
/** Per-attempt extras (cognium-ai#87). All optional, set when kind='attempt'. */
|
|
53
53
|
attempt?: number;
|
|
54
54
|
maxAttempts?: number;
|
|
@@ -83,10 +83,36 @@ export interface LLMCallEntry {
|
|
|
83
83
|
* as a near-100% hit rate here).
|
|
84
84
|
*/
|
|
85
85
|
discoveryCacheHit?: boolean;
|
|
86
|
+
/**
|
|
87
|
+
* cognium-ai#163 B3 — set on synthetic "no-call" entries emitted when an
|
|
88
|
+
* R2 cache backend operation (get / set / has / delete) failed. Lets the
|
|
89
|
+
* JSONL analyzer distinguish transient network blips from misconfig
|
|
90
|
+
* (`bucket_not_found`, `access_denied`) without string-matching. Emitted
|
|
91
|
+
* at most once per (operation × errorCategory) pair per process to avoid
|
|
92
|
+
* flooding the log on a persistent outage.
|
|
93
|
+
*/
|
|
94
|
+
r2Error?: boolean;
|
|
95
|
+
/**
|
|
96
|
+
* cognium-ai#163 B3 — R2 operation that failed. Used together with
|
|
97
|
+
* `errorCategory` for `r2Error` rows.
|
|
98
|
+
*/
|
|
99
|
+
r2Op?: 'get' | 'set' | 'has' | 'delete';
|
|
86
100
|
}
|
|
101
|
+
/**
|
|
102
|
+
* cognium-ai#163 B3 — categorical bucket for an R2 error. Kept separate
|
|
103
|
+
* from `LLMErrorCategory` because R2 errors are cache-backend errors, not
|
|
104
|
+
* LLM-call errors, and the analyzer should treat them independently.
|
|
105
|
+
*/
|
|
106
|
+
export type R2ErrorCategory = 'no_such_bucket' | 'access_denied' | 'not_found' | 'network_error' | 'throttled' | 'server_error' | 'unknown_error';
|
|
87
107
|
declare class LLMCallLogger {
|
|
88
108
|
private path;
|
|
89
109
|
private inited;
|
|
110
|
+
/**
|
|
111
|
+
* cognium-ai#163 B3 — dedupe per-process R2 error rows so a persistent
|
|
112
|
+
* outage doesn't flood the JSONL with thousands of identical entries.
|
|
113
|
+
* Key: `${r2Op}:${errorCategory}`. Reset by `resetForTesting()`.
|
|
114
|
+
*/
|
|
115
|
+
private r2ErrorSeen;
|
|
90
116
|
/** Test-only: clear cached state so init() re-reads the env var. */
|
|
91
117
|
resetForTesting(): void;
|
|
92
118
|
private init;
|
|
@@ -124,6 +150,22 @@ declare class LLMCallLogger {
|
|
|
124
150
|
model?: string;
|
|
125
151
|
context?: LLMCallEntry['context'];
|
|
126
152
|
}): void;
|
|
153
|
+
/**
|
|
154
|
+
* cognium-ai#163 B3 — record a synthetic "no-call" entry when an R2
|
|
155
|
+
* cache-backend op failed. Deduped per-process by
|
|
156
|
+
* `(r2Op × errorCategory)` so a persistent outage produces one row per
|
|
157
|
+
* failure mode instead of one per key. Also mirrors a single stderr
|
|
158
|
+
* line on the first occurrence (regardless of `LLM_DEEP`) so misconfig
|
|
159
|
+
* errors surface loudly on the first scan attempt. Subsequent
|
|
160
|
+
* occurrences are silent.
|
|
161
|
+
*
|
|
162
|
+
* The `error` string is trimmed to 200 chars to keep JSONL rows small.
|
|
163
|
+
*/
|
|
164
|
+
logR2Error(meta: {
|
|
165
|
+
op: NonNullable<LLMCallEntry['r2Op']>;
|
|
166
|
+
category: R2ErrorCategory;
|
|
167
|
+
error: string;
|
|
168
|
+
}): void;
|
|
127
169
|
/**
|
|
128
170
|
* Log a per-attempt entry (cognium-ai#87). Tagged `kind:'attempt'`. Writes
|
|
129
171
|
* to the same JSONL stream as `log()` so the analyzer can correlate. Also
|
|
@@ -131,6 +173,19 @@ declare class LLMCallLogger {
|
|
|
131
173
|
*/
|
|
132
174
|
logAttempt(entry: Omit<LLMCallEntry, 'ts' | 'kind'>): void;
|
|
133
175
|
}
|
|
176
|
+
/**
|
|
177
|
+
* cognium-ai#163 B3 — categorize an error thrown by the AWS SDK S3 client
|
|
178
|
+
* into a stable `R2ErrorCategory` for JSONL logging + stderr surfacing.
|
|
179
|
+
*
|
|
180
|
+
* The AWS SDK exposes an `err.name` code (e.g. `NoSuchBucket`,
|
|
181
|
+
* `AccessDenied`, `NotFound`), an `err.$metadata.httpStatusCode`
|
|
182
|
+
* (numeric), and, on lower-level network failures, a nested
|
|
183
|
+
* `err.cause?.code` like `ENOTFOUND` / `ECONNREFUSED`.
|
|
184
|
+
*
|
|
185
|
+
* This function coalesces those signals into 7 buckets. It never throws
|
|
186
|
+
* — falls through to `'unknown_error'` on shapes it doesn't recognize.
|
|
187
|
+
*/
|
|
188
|
+
export declare function categorizeR2Error(err: unknown): R2ErrorCategory;
|
|
134
189
|
/** Emit a human-readable line to stderr when `LLM_DEEP=1`. No-op otherwise. */
|
|
135
190
|
export declare function deepStderr(line: string): void;
|
|
136
191
|
export declare const llmCallLogger: LLMCallLogger;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"call-logger.d.ts","sourceRoot":"","sources":["../../src/llm/call-logger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAIH;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GACxB,gBAAgB,GAChB,aAAa,GACb,SAAS,GACT,YAAY,GACZ,cAAc,GACd,kBAAkB,GAClB,wBAAwB,CAAC;AAE7B,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,iFAAiF;IACjF,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"call-logger.d.ts","sourceRoot":"","sources":["../../src/llm/call-logger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAIH;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GACxB,gBAAgB,GAChB,aAAa,GACb,SAAS,GACT,YAAY,GACZ,cAAc,GACd,kBAAkB,GAClB,wBAAwB,CAAC;AAE7B,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,iFAAiF;IACjF,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,gBAAgB,GAAG,eAAe,CAAC;IACnD,iFAAiF;IACjF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;IAC9C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kFAAkF;IAClF,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1E;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,IAAI,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,QAAQ,CAAC;CACzC;AAED;;;;GAIG;AACH,MAAM,MAAM,eAAe,GACvB,gBAAgB,GAChB,eAAe,GACf,WAAW,GACX,eAAe,GACf,WAAW,GACX,cAAc,GACd,eAAe,CAAC;AAMpB,cAAM,aAAa;IACjB,OAAO,CAAC,IAAI,CAAuB;IACnC,OAAO,CAAC,MAAM,CAAS;IACvB;;;;OAIG;IACH,OAAO,CAAC,WAAW,CAAqB;IAExC,oEAAoE;IACpE,eAAe,IAAI,IAAI;IAMvB,OAAO,CAAC,IAAI;IAwBZ,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,GAAG,IAAI;IAW1C;;;;;OAKG;IACH,OAAO,CAAC,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,YAAY,CAAC,SAAS,CAAC,CAAA;KAAE,GAAG,IAAI;IAa5F;;;;OAIG;IACH,iBAAiB,CAAC,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,YAAY,CAAC,SAAS,CAAC,CAAA;KAAE,GAAG,IAAI;IActH;;;;OAIG;IACH,oBAAoB,CAAC,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,YAAY,CAAC,SAAS,CAAC,CAAA;KAAE,GAAG,IAAI;IAczH;;;;;;;;;;OAUG;IACH,UAAU,CAAC,IAAI,EAAE;QACf,EAAE,EAAE,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;QACtC,QAAQ,EAAE,eAAe,CAAC;QAC1B,KAAK,EAAE,MAAM,CAAC;KACf,GAAG,IAAI;IAiCR;;;;OAIG;IACH,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,GAAG,MAAM,CAAC,GAAG,IAAI;CAkB3D;AAuBD;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,eAAe,CA6B/D;AAED,+EAA+E;AAC/E,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAO7C;AAED,eAAO,MAAM,aAAa,eAAsB,CAAC;AAEjD;;;GAGG;AACH,wBAAsB,UAAU,CAAC,CAAC,EAChC,IAAI,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,EAChF,IAAI,EAAE,MAAM,OAAO,CAAC;IAAE,KAAK,EAAE,CAAC,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,GAC7E,OAAO,CAAC,CAAC,CAAC,CA4BZ"}
|
package/dist/llm/call-logger.js
CHANGED
|
@@ -26,10 +26,17 @@ const SNIPPET_MAX = 300;
|
|
|
26
26
|
class LLMCallLogger {
|
|
27
27
|
path = null;
|
|
28
28
|
inited = false;
|
|
29
|
+
/**
|
|
30
|
+
* cognium-ai#163 B3 — dedupe per-process R2 error rows so a persistent
|
|
31
|
+
* outage doesn't flood the JSONL with thousands of identical entries.
|
|
32
|
+
* Key: `${r2Op}:${errorCategory}`. Reset by `resetForTesting()`.
|
|
33
|
+
*/
|
|
34
|
+
r2ErrorSeen = new Set();
|
|
29
35
|
/** Test-only: clear cached state so init() re-reads the env var. */
|
|
30
36
|
resetForTesting() {
|
|
31
37
|
this.path = null;
|
|
32
38
|
this.inited = false;
|
|
39
|
+
this.r2ErrorSeen.clear();
|
|
33
40
|
}
|
|
34
41
|
init() {
|
|
35
42
|
if (this.inited)
|
|
@@ -123,6 +130,49 @@ class LLMCallLogger {
|
|
|
123
130
|
context: meta.context,
|
|
124
131
|
});
|
|
125
132
|
}
|
|
133
|
+
/**
|
|
134
|
+
* cognium-ai#163 B3 — record a synthetic "no-call" entry when an R2
|
|
135
|
+
* cache-backend op failed. Deduped per-process by
|
|
136
|
+
* `(r2Op × errorCategory)` so a persistent outage produces one row per
|
|
137
|
+
* failure mode instead of one per key. Also mirrors a single stderr
|
|
138
|
+
* line on the first occurrence (regardless of `LLM_DEEP`) so misconfig
|
|
139
|
+
* errors surface loudly on the first scan attempt. Subsequent
|
|
140
|
+
* occurrences are silent.
|
|
141
|
+
*
|
|
142
|
+
* The `error` string is trimmed to 200 chars to keep JSONL rows small.
|
|
143
|
+
*/
|
|
144
|
+
logR2Error(meta) {
|
|
145
|
+
const dedupeKey = `${meta.op}:${meta.category}`;
|
|
146
|
+
const firstTime = !this.r2ErrorSeen.has(dedupeKey);
|
|
147
|
+
if (firstTime) {
|
|
148
|
+
this.r2ErrorSeen.add(dedupeKey);
|
|
149
|
+
// Surface misconfig loudly on first occurrence. Silent on subsequent
|
|
150
|
+
// errors to avoid flooding stderr on a persistent outage.
|
|
151
|
+
try {
|
|
152
|
+
process.stderr.write(`[cache-r2] first ${meta.op} error (${meta.category}): ${trimForLog(meta.error)}\n`);
|
|
153
|
+
}
|
|
154
|
+
catch {
|
|
155
|
+
// swallow — logging failure must not affect scan
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
else {
|
|
159
|
+
// De-duped: no JSONL row, no stderr line. Callers still swallow
|
|
160
|
+
// the underlying error (cache miss / write-noop).
|
|
161
|
+
return;
|
|
162
|
+
}
|
|
163
|
+
this.log({
|
|
164
|
+
signature: `r2:${meta.op}`,
|
|
165
|
+
phase: 'cache',
|
|
166
|
+
promptChars: 0,
|
|
167
|
+
responseChars: 0,
|
|
168
|
+
durationMs: 0,
|
|
169
|
+
success: false,
|
|
170
|
+
r2Error: true,
|
|
171
|
+
r2Op: meta.op,
|
|
172
|
+
errorCategory: meta.category,
|
|
173
|
+
error: trimForLog(meta.error),
|
|
174
|
+
});
|
|
175
|
+
}
|
|
126
176
|
/**
|
|
127
177
|
* Log a per-attempt entry (cognium-ai#87). Tagged `kind:'attempt'`. Writes
|
|
128
178
|
* to the same JSONL stream as `log()` so the analyzer can correlate. Also
|
|
@@ -163,6 +213,49 @@ function formatAttemptForStderr(e) {
|
|
|
163
213
|
const duration = e.durationMs ? ` duration=${e.durationMs}ms` : '';
|
|
164
214
|
return `[LLM-deep] ${e.signature} ${loc} ${attemptStr} ${outcome}${status}${backoff}${duration}`;
|
|
165
215
|
}
|
|
216
|
+
/** Trim a string to a max length for JSONL / stderr rows. */
|
|
217
|
+
function trimForLog(s, max = 200) {
|
|
218
|
+
return s.length > max ? s.slice(0, max) + '…' : s;
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* cognium-ai#163 B3 — categorize an error thrown by the AWS SDK S3 client
|
|
222
|
+
* into a stable `R2ErrorCategory` for JSONL logging + stderr surfacing.
|
|
223
|
+
*
|
|
224
|
+
* The AWS SDK exposes an `err.name` code (e.g. `NoSuchBucket`,
|
|
225
|
+
* `AccessDenied`, `NotFound`), an `err.$metadata.httpStatusCode`
|
|
226
|
+
* (numeric), and, on lower-level network failures, a nested
|
|
227
|
+
* `err.cause?.code` like `ENOTFOUND` / `ECONNREFUSED`.
|
|
228
|
+
*
|
|
229
|
+
* This function coalesces those signals into 7 buckets. It never throws
|
|
230
|
+
* — falls through to `'unknown_error'` on shapes it doesn't recognize.
|
|
231
|
+
*/
|
|
232
|
+
export function categorizeR2Error(err) {
|
|
233
|
+
if (!err || typeof err !== 'object')
|
|
234
|
+
return 'unknown_error';
|
|
235
|
+
const e = err;
|
|
236
|
+
const name = e.name ?? e.Code ?? '';
|
|
237
|
+
const code = e.cause?.code ?? '';
|
|
238
|
+
const status = e.$metadata?.httpStatusCode;
|
|
239
|
+
if (name === 'NoSuchBucket')
|
|
240
|
+
return 'no_such_bucket';
|
|
241
|
+
if (name === 'AccessDenied' || status === 403)
|
|
242
|
+
return 'access_denied';
|
|
243
|
+
if (name === 'NoSuchKey' || name === 'NotFound' || status === 404)
|
|
244
|
+
return 'not_found';
|
|
245
|
+
if (code === 'ENOTFOUND'
|
|
246
|
+
|| code === 'ECONNREFUSED'
|
|
247
|
+
|| code === 'ECONNRESET'
|
|
248
|
+
|| code === 'ETIMEDOUT'
|
|
249
|
+
|| name === 'TimeoutError') {
|
|
250
|
+
return 'network_error';
|
|
251
|
+
}
|
|
252
|
+
if (status === 503 || name === 'SlowDown' || name === 'TooManyRequestsException') {
|
|
253
|
+
return 'throttled';
|
|
254
|
+
}
|
|
255
|
+
if (status !== undefined && status >= 500)
|
|
256
|
+
return 'server_error';
|
|
257
|
+
return 'unknown_error';
|
|
258
|
+
}
|
|
166
259
|
/** Emit a human-readable line to stderr when `LLM_DEEP=1`. No-op otherwise. */
|
|
167
260
|
export function deepStderr(line) {
|
|
168
261
|
if (process.env[DEEP_ENV_VAR] !== '1')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"call-logger.js","sourceRoot":"","sources":["../../src/llm/call-logger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"call-logger.js","sourceRoot":"","sources":["../../src/llm/call-logger.ts"],"names":[],"mappings":"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"}
|
package/dist/llm/discovery.d.ts
CHANGED
|
@@ -73,6 +73,15 @@ export interface DiscoveryOptions {
|
|
|
73
73
|
/** Enable verbose logging */
|
|
74
74
|
verbose?: boolean;
|
|
75
75
|
}
|
|
76
|
+
/**
|
|
77
|
+
* System prompt template for LLM discovery calls. The `{cweGuidance}`
|
|
78
|
+
* placeholder is substituted with the concatenated per-CWE guidance blocks
|
|
79
|
+
* built at call time. Exported so the prompt-template snapshot test
|
|
80
|
+
* (`tests/prompt-template-hashes.test.ts`, cognium-ai#163 B4) can pin its
|
|
81
|
+
* hash — a change here means either revert or bump the `disc-v2` sentinel
|
|
82
|
+
* in `src/cache/discovery-cache.ts` and regenerate the snapshot.
|
|
83
|
+
*/
|
|
84
|
+
export declare const DISCOVERY_SYSTEM_PROMPT_TEMPLATE = "You are a security expert performing deep code analysis to find vulnerabilities that automated tools miss.\n\n{cweGuidance}\n\nANALYSIS APPROACH:\n1. Identify all potential sources of untrusted data\n2. Trace data flow manually through the code\n3. Check for ALL the subtle patterns described above\n4. Consider what an attacker could control and how they could exploit it\n\nIMPORTANT: Only report vulnerabilities you are confident about. False positives waste time.\nBe specific about the vulnerability type and how it could be exploited.";
|
|
76
85
|
export declare class DiscoveryEngine {
|
|
77
86
|
private client;
|
|
78
87
|
private verbose;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../src/llm/discovery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAuB,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAA0B,QAAQ,EAAc,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../src/llm/discovery.ts"],"names":[],"mappings":"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"}
|
package/dist/llm/discovery.js
CHANGED
|
@@ -14,7 +14,7 @@ import { getAxLLMClient } from './ax-client.js';
|
|
|
14
14
|
import { getDefaultLLMConfig } from './config.js';
|
|
15
15
|
import { anchorLineToIRSink } from './anchoring.js';
|
|
16
16
|
import { withLLMContext } from './debug-context.js';
|
|
17
|
-
import { getDiscoveryCache, computeDiscoveryCacheKey } from '../cache/discovery-cache.js';
|
|
17
|
+
import { getDiscoveryCache, computeDiscoveryCacheKey, canonicalizeImportsForKey, } from '../cache/discovery-cache.js';
|
|
18
18
|
import { llmCallLogger } from './call-logger.js';
|
|
19
19
|
// ============================================================================
|
|
20
20
|
// CWE-Specific Discovery Prompts
|
|
@@ -139,6 +139,29 @@ COMMON FALSE NEGATIVES TO FIND:
|
|
|
139
139
|
- Expression languages in unexpected places`,
|
|
140
140
|
};
|
|
141
141
|
// ============================================================================
|
|
142
|
+
// System Prompt Template
|
|
143
|
+
// ============================================================================
|
|
144
|
+
/**
|
|
145
|
+
* System prompt template for LLM discovery calls. The `{cweGuidance}`
|
|
146
|
+
* placeholder is substituted with the concatenated per-CWE guidance blocks
|
|
147
|
+
* built at call time. Exported so the prompt-template snapshot test
|
|
148
|
+
* (`tests/prompt-template-hashes.test.ts`, cognium-ai#163 B4) can pin its
|
|
149
|
+
* hash — a change here means either revert or bump the `disc-v2` sentinel
|
|
150
|
+
* in `src/cache/discovery-cache.ts` and regenerate the snapshot.
|
|
151
|
+
*/
|
|
152
|
+
export const DISCOVERY_SYSTEM_PROMPT_TEMPLATE = `You are a security expert performing deep code analysis to find vulnerabilities that automated tools miss.
|
|
153
|
+
|
|
154
|
+
{cweGuidance}
|
|
155
|
+
|
|
156
|
+
ANALYSIS APPROACH:
|
|
157
|
+
1. Identify all potential sources of untrusted data
|
|
158
|
+
2. Trace data flow manually through the code
|
|
159
|
+
3. Check for ALL the subtle patterns described above
|
|
160
|
+
4. Consider what an attacker could control and how they could exploit it
|
|
161
|
+
|
|
162
|
+
IMPORTANT: Only report vulnerabilities you are confident about. False positives waste time.
|
|
163
|
+
Be specific about the vulnerability type and how it could be exploited.`;
|
|
164
|
+
// ============================================================================
|
|
142
165
|
// Discovery Engine
|
|
143
166
|
// ============================================================================
|
|
144
167
|
export class DiscoveryEngine {
|
|
@@ -205,24 +228,34 @@ export class DiscoveryEngine {
|
|
|
205
228
|
async analyzeMethod(method, targetCWEs, options, irSinks = [], language = 'java') {
|
|
206
229
|
const methodId = `${method.className}.${method.methodName}`;
|
|
207
230
|
const confidenceThreshold = options.confidenceThreshold ?? 0.6;
|
|
231
|
+
// #163 B1 — canonicalize annotations + imports ONCE. The cache key
|
|
232
|
+
// and the LLM prompt MUST see the same view: same sort order, same
|
|
233
|
+
// top-20 cap. Otherwise two calls with permuted imports would
|
|
234
|
+
// produce the same key but different prompts (or vice versa),
|
|
235
|
+
// caching the wrong answer.
|
|
236
|
+
const canonicalAnnotations = [...new Set(method.annotations)].sort();
|
|
237
|
+
const canonicalImports = canonicalizeImportsForKey(method.imports);
|
|
208
238
|
// cognium-ai#134 — persistent discovery cache. Serves identical
|
|
209
|
-
// (
|
|
210
|
-
// requests from disk so the 500× duplication pathology
|
|
211
|
-
// 2026-06-27 sweep (LLM-COST-SHARE-KEYCLOAK) becomes a
|
|
239
|
+
// (methodCode, sortedCweSet, language, annotations, imports, model
|
|
240
|
+
// fingerprint) requests from disk so the 500× duplication pathology
|
|
241
|
+
// from the 2026-06-27 sweep (LLM-COST-SHARE-KEYCLOAK) becomes a
|
|
242
|
+
// free skip.
|
|
212
243
|
const persistentCacheEnabled = process.env.LLM_DISCOVERY_CACHE !== '0';
|
|
213
244
|
let dCache = null;
|
|
214
245
|
let dKey = null;
|
|
215
246
|
if (persistentCacheEnabled) {
|
|
216
247
|
dCache = getDiscoveryCache(getDefaultLLMConfig());
|
|
217
|
-
// #158 D6:
|
|
218
|
-
//
|
|
219
|
-
//
|
|
220
|
-
//
|
|
221
|
-
//
|
|
248
|
+
// #158 D6: className/methodName are intentionally NOT in the key
|
|
249
|
+
// (byte-identical bodies share answers; renames don't invalidate).
|
|
250
|
+
// #163 B1 (disc-v2): annotations + top-20 imports ARE in the key
|
|
251
|
+
// — they change the LLM's attack-surface reasoning and were
|
|
252
|
+
// silently colliding under disc-v1.
|
|
222
253
|
dKey = computeDiscoveryCacheKey({
|
|
223
254
|
methodCode: method.methodCode,
|
|
224
255
|
targetCWEs,
|
|
225
256
|
language,
|
|
257
|
+
annotations: canonicalAnnotations,
|
|
258
|
+
imports: canonicalImports,
|
|
226
259
|
});
|
|
227
260
|
const cached = await dCache.get(dKey.content, dKey.classifier);
|
|
228
261
|
if (cached) {
|
|
@@ -239,24 +272,16 @@ export class DiscoveryEngine {
|
|
|
239
272
|
.map(cwe => CWE_DISCOVERY_PROMPTS[cwe] || '')
|
|
240
273
|
.filter(p => p)
|
|
241
274
|
.join('\n\n---\n\n');
|
|
242
|
-
const systemPrompt =
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
ANALYSIS APPROACH:
|
|
247
|
-
1. Identify all potential sources of untrusted data
|
|
248
|
-
2. Trace data flow manually through the code
|
|
249
|
-
3. Check for ALL the subtle patterns described above
|
|
250
|
-
4. Consider what an attacker could control and how they could exploit it
|
|
251
|
-
|
|
252
|
-
IMPORTANT: Only report vulnerabilities you are confident about. False positives waste time.
|
|
253
|
-
Be specific about the vulnerability type and how it could be exploited.`;
|
|
275
|
+
const systemPrompt = DISCOVERY_SYSTEM_PROMPT_TEMPLATE.replace('{cweGuidance}', cweGuidance);
|
|
276
|
+
// #163 B1: reuse the canonical (sorted, dedup'd, top-20) views so
|
|
277
|
+
// what the LLM sees matches what the cache key hashed. Order-of-
|
|
278
|
+
// arrival from upstream engine graphs no longer flips the prompt.
|
|
254
279
|
const userPrompt = `Analyze this Java method for security vulnerabilities:
|
|
255
280
|
|
|
256
281
|
Class: ${method.className}
|
|
257
282
|
Method: ${method.methodName}
|
|
258
|
-
Annotations: ${
|
|
259
|
-
Imports: ${
|
|
283
|
+
Annotations: ${canonicalAnnotations.join(', ') || 'none'}
|
|
284
|
+
Imports: ${canonicalImports.join(', ')}
|
|
260
285
|
|
|
261
286
|
\`\`\`java
|
|
262
287
|
${method.methodCode}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../src/llm/discovery.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../src/llm/discovery.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.28.
|
|
3
|
+
"version": "2.28.4",
|
|
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.139.0",
|
|
101
101
|
"minimatch": "^10.2.5",
|
|
102
102
|
"p-queue": "^9.1.0"
|
|
103
103
|
},
|