@kernlang/review 3.3.4 → 3.3.6
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/dist/cache.js +1 -1
- package/dist/concept-rules/auth-drift.d.ts +29 -0
- package/dist/concept-rules/auth-drift.js +127 -0
- package/dist/concept-rules/auth-drift.js.map +1 -0
- package/dist/concept-rules/contract-drift.d.ts +21 -0
- package/dist/concept-rules/contract-drift.js +65 -0
- package/dist/concept-rules/contract-drift.js.map +1 -0
- package/dist/concept-rules/contract-method-drift.d.ts +22 -0
- package/dist/concept-rules/contract-method-drift.js +105 -0
- package/dist/concept-rules/contract-method-drift.js.map +1 -0
- package/dist/concept-rules/cross-stack-utils.d.ts +96 -0
- package/dist/concept-rules/cross-stack-utils.js +259 -0
- package/dist/concept-rules/cross-stack-utils.js.map +1 -0
- package/dist/concept-rules/duplicate-route.d.ts +20 -0
- package/dist/concept-rules/duplicate-route.js +112 -0
- package/dist/concept-rules/duplicate-route.js.map +1 -0
- package/dist/concept-rules/index.js +26 -1
- package/dist/concept-rules/index.js.map +1 -1
- package/dist/concept-rules/missing-response-model.d.ts +10 -0
- package/dist/concept-rules/missing-response-model.js +38 -0
- package/dist/concept-rules/missing-response-model.js.map +1 -0
- package/dist/concept-rules/orphan-route.d.ts +20 -0
- package/dist/concept-rules/orphan-route.js +96 -0
- package/dist/concept-rules/orphan-route.js.map +1 -0
- package/dist/concept-rules/sync-handler-does-io.d.ts +9 -0
- package/dist/concept-rules/sync-handler-does-io.js +56 -0
- package/dist/concept-rules/sync-handler-does-io.js.map +1 -0
- package/dist/concept-rules/tainted-across-wire.d.ts +33 -0
- package/dist/concept-rules/tainted-across-wire.js +95 -0
- package/dist/concept-rules/tainted-across-wire.js.map +1 -0
- package/dist/concept-rules/untyped-api-response.d.ts +30 -0
- package/dist/concept-rules/untyped-api-response.js +73 -0
- package/dist/concept-rules/untyped-api-response.js.map +1 -0
- package/dist/concept-rules/untyped-both-ends-response.d.ts +10 -0
- package/dist/concept-rules/untyped-both-ends-response.js +55 -0
- package/dist/concept-rules/untyped-both-ends-response.js.map +1 -0
- package/dist/external-tools.d.ts +17 -4
- package/dist/external-tools.js +12 -1
- package/dist/external-tools.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +115 -9
- package/dist/index.js.map +1 -1
- package/dist/llm-bridge.d.ts +38 -1
- package/dist/llm-bridge.js +172 -12
- package/dist/llm-bridge.js.map +1 -1
- package/dist/llm-review.js +29 -11
- package/dist/llm-review.js.map +1 -1
- package/dist/mappers/ts-concepts.js +650 -11
- package/dist/mappers/ts-concepts.js.map +1 -1
- package/dist/rules/index.js +17 -1
- package/dist/rules/index.js.map +1 -1
- package/dist/rules/kern-source.js +37 -5
- package/dist/rules/kern-source.js.map +1 -1
- package/dist/rules/set-setter-collision.d.ts +21 -0
- package/dist/rules/set-setter-collision.js +74 -0
- package/dist/rules/set-setter-collision.js.map +1 -0
- package/dist/rules/suggest-kern-primitive.d.ts +30 -0
- package/dist/rules/suggest-kern-primitive.js +543 -0
- package/dist/rules/suggest-kern-primitive.js.map +1 -0
- package/dist/types.d.ts +2 -0
- package/dist/types.js.map +1 -1
- package/package.json +2 -2
package/dist/llm-bridge.js
CHANGED
|
@@ -66,6 +66,7 @@ async function callLLM(messages, config) {
|
|
|
66
66
|
}
|
|
67
67
|
const controller = new AbortController();
|
|
68
68
|
const timer = setTimeout(() => controller.abort(), config.timeout);
|
|
69
|
+
const startedAt = Date.now();
|
|
69
70
|
try {
|
|
70
71
|
const response = await fetch(`${config.baseUrl}/chat/completions`, {
|
|
71
72
|
method: 'POST',
|
|
@@ -86,7 +87,12 @@ async function callLLM(messages, config) {
|
|
|
86
87
|
throw new Error(`LLM API error ${response.status}: ${text.substring(0, 200)}`);
|
|
87
88
|
}
|
|
88
89
|
const data = (await response.json());
|
|
89
|
-
return
|
|
90
|
+
return {
|
|
91
|
+
content: data.choices?.[0]?.message?.content || '',
|
|
92
|
+
promptTokens: data.usage?.prompt_tokens,
|
|
93
|
+
completionTokens: data.usage?.completion_tokens,
|
|
94
|
+
durationMs: Date.now() - startedAt,
|
|
95
|
+
};
|
|
90
96
|
}
|
|
91
97
|
finally {
|
|
92
98
|
clearTimeout(timer);
|
|
@@ -135,12 +141,114 @@ export function isHighValueFinding(f) {
|
|
|
135
141
|
}
|
|
136
142
|
/** Max input tokens per batch. Conservative — leaves room for output + overhead. */
|
|
137
143
|
const MAX_BATCH_TOKENS = 60_000;
|
|
138
|
-
/**
|
|
139
|
-
|
|
144
|
+
/** Safety margin subtracted when computing the per-chunk source budget. Also
|
|
145
|
+
* the gap between a solo input's estimated tokens and MAX_BATCH_TOKENS at
|
|
146
|
+
* which we trigger chunking. Keeps a single oversized input from being put
|
|
147
|
+
* into a batch that would silently exceed the per-call limit. */
|
|
148
|
+
const CHUNK_HEADROOM_TOKENS = 2_000;
|
|
149
|
+
/** A file whose estimated prompt exceeds this is chunked. Derived from the
|
|
150
|
+
* batch budget so an un-chunked input that passes through never produces
|
|
151
|
+
* a batch over the per-call limit. */
|
|
152
|
+
const CHUNK_TRIGGER_TOKENS = MAX_BATCH_TOKENS - CHUNK_HEADROOM_TOKENS;
|
|
153
|
+
/** Line overlap between consecutive source chunks so a declaration split
|
|
154
|
+
* across a boundary still appears whole in at least one chunk. */
|
|
155
|
+
const CHUNK_OVERLAP_LINES = 20;
|
|
156
|
+
/** Longest-line probe that avoids V8's spread-argument stack limit (~64K
|
|
157
|
+
* arguments in practice). A simple reduce handles arbitrary line counts. */
|
|
158
|
+
function longestLineLength(lines) {
|
|
159
|
+
let max = 0;
|
|
160
|
+
for (const l of lines)
|
|
161
|
+
if (l.length > max)
|
|
162
|
+
max = l.length;
|
|
163
|
+
return max;
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Split a single oversized LLMReviewInput into N smaller inputs that each
|
|
167
|
+
* fit inside MAX_BATCH_TOKENS. IR, taint, staticFindings and obligations
|
|
168
|
+
* are replicated on every chunk — they are small relative to source and
|
|
169
|
+
* every chunk needs the full structural context to reason correctly.
|
|
170
|
+
*
|
|
171
|
+
* Returns the original input as a 1-element array if it already fits, or
|
|
172
|
+
* an empty array if the input is genuinely unchunkable (non-source inputs
|
|
173
|
+
* whose IR alone exceeds the budget, or files where a single line is
|
|
174
|
+
* larger than the per-chunk source budget — minified bundles).
|
|
175
|
+
*/
|
|
176
|
+
export function chunkLargeInput(input, cachedIR) {
|
|
177
|
+
const totalTokens = estimateInputTokens(input, cachedIR);
|
|
178
|
+
if (totalTokens <= CHUNK_TRIGGER_TOKENS)
|
|
179
|
+
return [input];
|
|
180
|
+
// Only CHANGED files include source in the token count, so only those
|
|
181
|
+
// can be chunked. If a CONTEXT file somehow crossed the threshold it's
|
|
182
|
+
// IR-bound and chunking wouldn't help.
|
|
183
|
+
if (!input.source || !isChangedFile(input))
|
|
184
|
+
return [];
|
|
185
|
+
const sourceTokens = estimateTokens(input.source);
|
|
186
|
+
const nonSourceTokens = totalTokens - sourceTokens;
|
|
187
|
+
const sourceBudget = MAX_BATCH_TOKENS - nonSourceTokens - CHUNK_HEADROOM_TOKENS;
|
|
188
|
+
if (sourceBudget <= 0)
|
|
189
|
+
return []; // IR + context alone too large — unchunkable
|
|
190
|
+
const lines = input.source.split('\n');
|
|
191
|
+
// Minified / single-line files: one line exceeds the per-chunk budget.
|
|
192
|
+
// Byte-slicing a line would break syntax; safer to skip than mangle.
|
|
193
|
+
const longestLineTokens = Math.ceil(longestLineLength(lines) / 4);
|
|
194
|
+
if (longestLineTokens > sourceBudget)
|
|
195
|
+
return [];
|
|
196
|
+
// Initial split by average tokens/line. We then verify each chunk's
|
|
197
|
+
// estimated tokens fits under sourceBudget; if any chunk is still over
|
|
198
|
+
// (long lines clumped in one section), we increase numChunks and retry.
|
|
199
|
+
let numChunks = Math.ceil(sourceTokens / sourceBudget);
|
|
200
|
+
let chunks = [];
|
|
201
|
+
for (let attempt = 0; attempt < 8; attempt++) {
|
|
202
|
+
chunks = [];
|
|
203
|
+
const linesPerChunk = Math.ceil(lines.length / numChunks);
|
|
204
|
+
// Clamp overlap so a chunk can never be < 2× its non-overlapped width —
|
|
205
|
+
// otherwise on a very many-chunks split we'd blow the budget with
|
|
206
|
+
// overlap alone.
|
|
207
|
+
const overlap = Math.min(CHUNK_OVERLAP_LINES, Math.floor(linesPerChunk / 2));
|
|
208
|
+
let overflow = false;
|
|
209
|
+
for (let i = 0; i < numChunks; i++) {
|
|
210
|
+
const start = Math.max(0, i * linesPerChunk - overlap);
|
|
211
|
+
const end = Math.min(lines.length, (i + 1) * linesPerChunk + overlap);
|
|
212
|
+
const body = lines.slice(start, end).join('\n');
|
|
213
|
+
const chunkTokens = estimateTokens(body);
|
|
214
|
+
if (chunkTokens > sourceBudget) {
|
|
215
|
+
overflow = true;
|
|
216
|
+
break;
|
|
217
|
+
}
|
|
218
|
+
const header = `// kern-chunk ${i + 1}/${numChunks} of ${input.filePath} — lines ${start + 1}-${end} of ${lines.length}.\n` +
|
|
219
|
+
`// The source file exceeded the single-call token budget. The KERN IR below is complete; this source slice is partial.\n` +
|
|
220
|
+
`// Do not report findings that would require context outside this line range.\n`;
|
|
221
|
+
chunks.push({ ...input, source: header + body });
|
|
222
|
+
}
|
|
223
|
+
if (!overflow)
|
|
224
|
+
return chunks;
|
|
225
|
+
// Re-split at finer granularity. Doubling converges quickly even on
|
|
226
|
+
// highly skewed distributions (a handful of very long lines in one
|
|
227
|
+
// hotspot).
|
|
228
|
+
numChunks *= 2;
|
|
229
|
+
}
|
|
230
|
+
// Pathological input where even very fine-grained line splits can't get
|
|
231
|
+
// below the budget — treat as unchunkable and let caller emit llm-skipped.
|
|
232
|
+
return [];
|
|
233
|
+
}
|
|
234
|
+
function emptyUsage() {
|
|
235
|
+
return { requestCount: 0, requestDurationsMs: [] };
|
|
236
|
+
}
|
|
237
|
+
function mergeUsage(into, call) {
|
|
238
|
+
into.requestCount += 1;
|
|
239
|
+
into.requestDurationsMs.push(call.durationMs);
|
|
240
|
+
if (call.promptTokens !== undefined) {
|
|
241
|
+
into.promptTokens = (into.promptTokens ?? 0) + call.promptTokens;
|
|
242
|
+
}
|
|
243
|
+
if (call.completionTokens !== undefined) {
|
|
244
|
+
into.completionTokens = (into.completionTokens ?? 0) + call.completionTokens;
|
|
245
|
+
}
|
|
246
|
+
}
|
|
140
247
|
export async function runLLMReview(inputs, configOverride) {
|
|
141
248
|
const config = resolveConfig(configOverride);
|
|
249
|
+
const usage = emptyUsage();
|
|
142
250
|
if (!config.available)
|
|
143
|
-
return [];
|
|
251
|
+
return { findings: [], usage };
|
|
144
252
|
const allFindings = [];
|
|
145
253
|
// Pre-compute IR for each input (used for both estimation and prompt building)
|
|
146
254
|
const irCache = new Map();
|
|
@@ -151,21 +259,40 @@ export async function runLLMReview(inputs, configOverride) {
|
|
|
151
259
|
const batches = [];
|
|
152
260
|
let currentBatch = [];
|
|
153
261
|
let currentTokens = 0;
|
|
262
|
+
// Expand oversized inputs into chunk arrays up front, then batch uniformly.
|
|
263
|
+
// A chunk produced here carries the full IR + taint + findings + obligations
|
|
264
|
+
// and only a slice of source — so the IR cache key is the same for every
|
|
265
|
+
// chunk of the same original input, which is why we re-use the cached
|
|
266
|
+
// string for the batch token estimate below.
|
|
267
|
+
const expanded = [];
|
|
154
268
|
for (const input of inputs) {
|
|
155
|
-
const
|
|
156
|
-
|
|
157
|
-
if (
|
|
269
|
+
const ir = irCache.get(input);
|
|
270
|
+
const chunks = chunkLargeInput(input, ir);
|
|
271
|
+
if (chunks.length === 0) {
|
|
272
|
+
// Unchunkable (IR alone too large, or minified single-line file).
|
|
273
|
+
const inputTokens = estimateInputTokens(input, ir);
|
|
158
274
|
allFindings.push({
|
|
159
275
|
source: 'llm',
|
|
160
276
|
ruleId: 'llm-skipped',
|
|
161
277
|
severity: 'info',
|
|
162
278
|
category: 'structure',
|
|
163
|
-
message: `File too large for LLM review (~${Math.round(inputTokens / 1000)}K tokens)
|
|
279
|
+
message: `File too large for LLM review (~${Math.round(inputTokens / 1000)}K tokens) and not chunkable (IR-bound or single-line).`,
|
|
164
280
|
primarySpan: { file: input.filePath, startLine: 0, startCol: 0, endLine: 0, endCol: 0 },
|
|
165
281
|
fingerprint: `llm-skipped-${input.filePath}`,
|
|
166
282
|
});
|
|
167
283
|
continue;
|
|
168
284
|
}
|
|
285
|
+
for (const chunk of chunks) {
|
|
286
|
+
expanded.push({ input: chunk, originalIR: ir });
|
|
287
|
+
// Make the IR lookup work for chunks too — reviewBatch rebuilds the
|
|
288
|
+
// prompt from the chunk's inferred array, but estimateInputTokens
|
|
289
|
+
// consults irCache by input identity.
|
|
290
|
+
if (chunk !== input)
|
|
291
|
+
irCache.set(chunk, ir);
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
for (const { input, originalIR } of expanded) {
|
|
295
|
+
const inputTokens = estimateInputTokens(input, originalIR);
|
|
169
296
|
// Start new batch if adding this input would exceed budget
|
|
170
297
|
if (currentBatch.length > 0 && currentTokens + inputTokens > MAX_BATCH_TOKENS) {
|
|
171
298
|
batches.push(currentBatch);
|
|
@@ -180,7 +307,7 @@ export async function runLLMReview(inputs, configOverride) {
|
|
|
180
307
|
// Process batches — errors in one batch don't discard findings from others
|
|
181
308
|
for (const batch of batches) {
|
|
182
309
|
try {
|
|
183
|
-
const findings = await reviewBatch(batch, config, irCache);
|
|
310
|
+
const findings = await reviewBatch(batch, config, irCache, usage);
|
|
184
311
|
allFindings.push(...findings);
|
|
185
312
|
}
|
|
186
313
|
catch (err) {
|
|
@@ -195,9 +322,26 @@ export async function runLLMReview(inputs, configOverride) {
|
|
|
195
322
|
});
|
|
196
323
|
}
|
|
197
324
|
}
|
|
198
|
-
return allFindings;
|
|
325
|
+
return { findings: dedupeByFingerprint(allFindings), usage };
|
|
326
|
+
}
|
|
327
|
+
/**
|
|
328
|
+
* Drop findings whose (file, fingerprint) pair has already been seen.
|
|
329
|
+
* Needed because chunked files overlap: a finding landing in the overlap
|
|
330
|
+
* zone of two chunks is reported twice with identical fingerprints.
|
|
331
|
+
*/
|
|
332
|
+
function dedupeByFingerprint(findings) {
|
|
333
|
+
const seen = new Set();
|
|
334
|
+
const out = [];
|
|
335
|
+
for (const f of findings) {
|
|
336
|
+
const key = `${f.primarySpan.file}::${f.fingerprint}`;
|
|
337
|
+
if (seen.has(key))
|
|
338
|
+
continue;
|
|
339
|
+
seen.add(key);
|
|
340
|
+
out.push(f);
|
|
341
|
+
}
|
|
342
|
+
return out;
|
|
199
343
|
}
|
|
200
|
-
async function reviewBatch(inputs, config, _irCache) {
|
|
344
|
+
async function reviewBatch(inputs, config, _irCache, usage) {
|
|
201
345
|
const allFindings = [];
|
|
202
346
|
// Build combined prompt
|
|
203
347
|
const parts = [];
|
|
@@ -228,12 +372,21 @@ async function reviewBatch(inputs, config, _irCache) {
|
|
|
228
372
|
}
|
|
229
373
|
const systemPrompt = buildSystemPrompt(anySourceIncluded);
|
|
230
374
|
const userPrompt = parts.join('\n\n');
|
|
375
|
+
// Track the HTTP attempt up front so timeouts / non-2xx / fetch errors are
|
|
376
|
+
// still reported in LLMUsage. Without this, a failing batch returns
|
|
377
|
+
// requestCount=0 and downstream observability (cost/latency dashboards)
|
|
378
|
+
// under-reports outages — the exact class of failure callers most need
|
|
379
|
+
// to see.
|
|
380
|
+
const attemptStartedAt = Date.now();
|
|
381
|
+
let attemptRecorded = false;
|
|
231
382
|
try {
|
|
232
383
|
const response = await callLLM([
|
|
233
384
|
{ role: 'system', content: systemPrompt },
|
|
234
385
|
{ role: 'user', content: userPrompt },
|
|
235
386
|
], config);
|
|
236
|
-
|
|
387
|
+
mergeUsage(usage, response);
|
|
388
|
+
attemptRecorded = true;
|
|
389
|
+
const findings = parseLLMResponse(response.content, allInferred);
|
|
237
390
|
// Tag all findings as LLM-sourced
|
|
238
391
|
for (const f of findings) {
|
|
239
392
|
f.source = 'llm';
|
|
@@ -252,6 +405,13 @@ async function reviewBatch(inputs, config, _irCache) {
|
|
|
252
405
|
fingerprint: 'llm-error-0',
|
|
253
406
|
});
|
|
254
407
|
}
|
|
408
|
+
finally {
|
|
409
|
+
if (!attemptRecorded) {
|
|
410
|
+
// callLLM never merged (timeout / non-2xx / network error). Record a
|
|
411
|
+
// durationMs-only attempt so requestCount and timing are accurate.
|
|
412
|
+
mergeUsage(usage, { content: '', durationMs: Date.now() - attemptStartedAt });
|
|
413
|
+
}
|
|
414
|
+
}
|
|
255
415
|
return allFindings;
|
|
256
416
|
}
|
|
257
417
|
function buildFullReviewChecklist() {
|
package/dist/llm-bridge.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm-bridge.js","sourceRoot":"","sources":["../src/llm-bridge.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"llm-bridge.js","sourceRoot":"","sources":["../src/llm-bridge.ts"],"names":[],"mappings":"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"}
|
package/dist/llm-review.js
CHANGED
|
@@ -125,26 +125,44 @@ export function parseLLMResponse(response, inferred) {
|
|
|
125
125
|
aliasMap.set(r.promptAlias, r);
|
|
126
126
|
}
|
|
127
127
|
const validAliases = new Set(aliasMap.keys());
|
|
128
|
-
// Extract JSON array from response
|
|
128
|
+
// Extract JSON array from response.
|
|
129
129
|
let jsonStr = response.trim();
|
|
130
|
+
// Reasoning models (MiniMax-M2.7, DeepSeek-R1, Qwen-QwQ) wrap the
|
|
131
|
+
// actual answer in <think>...</think>. Strip those blocks before
|
|
132
|
+
// looking for JSON. Non-reasoning responses are unaffected.
|
|
133
|
+
jsonStr = jsonStr.replace(/<think>[\s\S]*?<\/think>/gi, '').trim();
|
|
134
|
+
// Some models leave an unterminated <think>...<think> when truncated.
|
|
135
|
+
// Drop everything before the last </think> if one survived.
|
|
136
|
+
const lastThinkEnd = jsonStr.lastIndexOf('</think>');
|
|
137
|
+
if (lastThinkEnd >= 0)
|
|
138
|
+
jsonStr = jsonStr.slice(lastThinkEnd + '</think>'.length).trim();
|
|
130
139
|
// Strip markdown code fences
|
|
131
140
|
if (jsonStr.startsWith('```')) {
|
|
132
141
|
jsonStr = jsonStr.replace(/^```(?:json)?\s*\n?/, '').replace(/\n?```\s*$/, '');
|
|
133
142
|
}
|
|
143
|
+
// Some reasoning models still emit prose before the JSON array.
|
|
144
|
+
// Find the first '[' and take from there to the matching last ']'.
|
|
145
|
+
const firstBracket = jsonStr.indexOf('[');
|
|
146
|
+
const lastBracket = jsonStr.lastIndexOf(']');
|
|
147
|
+
if (firstBracket > 0 && lastBracket > firstBracket) {
|
|
148
|
+
jsonStr = jsonStr.slice(firstBracket, lastBracket + 1);
|
|
149
|
+
}
|
|
134
150
|
let parsed;
|
|
135
151
|
try {
|
|
136
152
|
parsed = JSON.parse(jsonStr);
|
|
137
153
|
}
|
|
138
154
|
catch {
|
|
155
|
+
// Infrastructure failure — LLM returned malformed output.
|
|
156
|
+
// Emit info-level notice (not error/bug) so it's visible but never blocks CI.
|
|
139
157
|
return [
|
|
140
158
|
{
|
|
141
159
|
source: 'llm',
|
|
142
|
-
ruleId: '
|
|
143
|
-
severity: '
|
|
144
|
-
category: '
|
|
145
|
-
message: `
|
|
160
|
+
ruleId: 'llm-error',
|
|
161
|
+
severity: 'info',
|
|
162
|
+
category: 'structure',
|
|
163
|
+
message: `LLM review returned unparseable output (${jsonStr.substring(0, 60).replace(/\n/g, ' ')}…)`,
|
|
146
164
|
primarySpan: { file: '', startLine: 0, startCol: 0, endLine: 0, endCol: 0 },
|
|
147
|
-
fingerprint: createFingerprint('
|
|
165
|
+
fingerprint: createFingerprint('llm-error', 0, 0),
|
|
148
166
|
},
|
|
149
167
|
];
|
|
150
168
|
}
|
|
@@ -152,12 +170,12 @@ export function parseLLMResponse(response, inferred) {
|
|
|
152
170
|
return [
|
|
153
171
|
{
|
|
154
172
|
source: 'llm',
|
|
155
|
-
ruleId: '
|
|
156
|
-
severity: '
|
|
157
|
-
category: '
|
|
158
|
-
message: 'LLM
|
|
173
|
+
ruleId: 'llm-error',
|
|
174
|
+
severity: 'info',
|
|
175
|
+
category: 'structure',
|
|
176
|
+
message: 'LLM review returned non-array JSON',
|
|
159
177
|
primarySpan: { file: '', startLine: 0, startCol: 0, endLine: 0, endCol: 0 },
|
|
160
|
-
fingerprint: createFingerprint('
|
|
178
|
+
fingerprint: createFingerprint('llm-error', 0, 1),
|
|
161
179
|
},
|
|
162
180
|
];
|
|
163
181
|
}
|
package/dist/llm-review.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm-review.js","sourceRoot":"","sources":["../src/llm-review.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"llm-review.js","sourceRoot":"","sources":["../src/llm-review.ts"],"names":[],"mappings":"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"}
|