@kevinrabun/judges 3.23.20 → 3.25.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.
Files changed (60) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/dist/api.d.ts +17 -7
  3. package/dist/api.d.ts.map +1 -1
  4. package/dist/api.js +13 -5
  5. package/dist/api.js.map +1 -1
  6. package/dist/cli.d.ts.map +1 -1
  7. package/dist/cli.js +6 -0
  8. package/dist/cli.js.map +1 -1
  9. package/dist/commands/benchmark-ai-agents.d.ts.map +1 -1
  10. package/dist/commands/benchmark-ai-agents.js +512 -0
  11. package/dist/commands/benchmark-ai-agents.js.map +1 -1
  12. package/dist/commands/benchmark.d.ts +73 -0
  13. package/dist/commands/benchmark.d.ts.map +1 -1
  14. package/dist/commands/benchmark.js +252 -1
  15. package/dist/commands/benchmark.js.map +1 -1
  16. package/dist/commands/config-share.d.ts +48 -1
  17. package/dist/commands/config-share.d.ts.map +1 -1
  18. package/dist/commands/config-share.js +230 -1
  19. package/dist/commands/config-share.js.map +1 -1
  20. package/dist/commands/feedback.d.ts +42 -0
  21. package/dist/commands/feedback.d.ts.map +1 -1
  22. package/dist/commands/feedback.js +64 -0
  23. package/dist/commands/feedback.js.map +1 -1
  24. package/dist/commands/fix.d.ts +41 -1
  25. package/dist/commands/fix.d.ts.map +1 -1
  26. package/dist/commands/fix.js +71 -0
  27. package/dist/commands/fix.js.map +1 -1
  28. package/dist/commands/review.d.ts +57 -0
  29. package/dist/commands/review.d.ts.map +1 -1
  30. package/dist/commands/review.js +188 -2
  31. package/dist/commands/review.js.map +1 -1
  32. package/dist/commands/triage.d.ts +16 -0
  33. package/dist/commands/triage.d.ts.map +1 -0
  34. package/dist/commands/triage.js +172 -0
  35. package/dist/commands/triage.js.map +1 -0
  36. package/dist/evaluators/shared.d.ts +6 -0
  37. package/dist/evaluators/shared.d.ts.map +1 -1
  38. package/dist/evaluators/shared.js +91 -0
  39. package/dist/evaluators/shared.js.map +1 -1
  40. package/dist/finding-lifecycle.d.ts +61 -2
  41. package/dist/finding-lifecycle.d.ts.map +1 -1
  42. package/dist/finding-lifecycle.js +144 -1
  43. package/dist/finding-lifecycle.js.map +1 -1
  44. package/dist/index.js +1 -0
  45. package/dist/index.js.map +1 -1
  46. package/dist/scoring.d.ts +7 -1
  47. package/dist/scoring.d.ts.map +1 -1
  48. package/dist/scoring.js +72 -0
  49. package/dist/scoring.js.map +1 -1
  50. package/dist/tools/deep-review.d.ts +16 -3
  51. package/dist/tools/deep-review.d.ts.map +1 -1
  52. package/dist/tools/deep-review.js +70 -2
  53. package/dist/tools/deep-review.js.map +1 -1
  54. package/dist/tools/register-evaluation.d.ts.map +1 -1
  55. package/dist/tools/register-evaluation.js +28 -5
  56. package/dist/tools/register-evaluation.js.map +1 -1
  57. package/dist/types.d.ts +45 -0
  58. package/dist/types.d.ts.map +1 -1
  59. package/package.json +1 -1
  60. package/server.json +2 -2
@@ -119,6 +119,9 @@ export function updateFindings(currentFindings, dirOrStore = ".") {
119
119
  }
120
120
  }
121
121
  // Detect fixed findings (were open, no longer present)
122
+ // Triaged findings (accepted-risk, deferred, wont-fix, false-positive) are
123
+ // NOT auto-marked as fixed — their triage decision is preserved.
124
+ const triageStatuses = new Set(["accepted-risk", "deferred", "wont-fix", "false-positive"]);
122
125
  for (const tracked of store.findings) {
123
126
  if (tracked.status === "open" && !currentMap.has(tracked.fingerprint)) {
124
127
  tracked.status = "fixed";
@@ -146,7 +149,8 @@ export function updateFindings(currentFindings, dirOrStore = ".") {
146
149
  }
147
150
  // Prune very old fixed findings (> 30 days)
148
151
  const thirtyDaysAgo = new Date(Date.now() - 30 * 24 * 60 * 60 * 1000).toISOString();
149
- store.findings = store.findings.filter((f) => f.status === "open" || (f.fixedAt && f.fixedAt > thirtyDaysAgo));
152
+ const triageStatusSet = new Set(["accepted-risk", "deferred", "wont-fix", "false-positive"]);
153
+ store.findings = store.findings.filter((f) => f.status === "open" || triageStatusSet.has(f.status) || (f.fixedAt && f.fixedAt > thirtyDaysAgo));
150
154
  if (!inMemory) {
151
155
  saveFindingStore(store, dirOrStore);
152
156
  }
@@ -159,8 +163,11 @@ export function getFindingStats(dirOrStore = ".") {
159
163
  const store = typeof dirOrStore === "string" ? loadFindingStore(dirOrStore) : dirOrStore;
160
164
  const openFindings = store.findings.filter((f) => f.status === "open");
161
165
  const fixedFindings = store.findings.filter((f) => f.status === "fixed");
166
+ const triageStatuses = new Set(["accepted-risk", "deferred", "wont-fix", "false-positive"]);
167
+ const triagedFindings = store.findings.filter((f) => triageStatuses.has(f.status));
162
168
  const bySeverity = {};
163
169
  const byRule = {};
170
+ const byTriageStatus = {};
164
171
  let totalAgeDays = 0;
165
172
  for (const f of openFindings) {
166
173
  bySeverity[f.severity] = (bySeverity[f.severity] || 0) + 1;
@@ -168,10 +175,15 @@ export function getFindingStats(dirOrStore = ".") {
168
175
  const age = (Date.now() - new Date(f.firstSeen).getTime()) / (1000 * 60 * 60 * 24);
169
176
  totalAgeDays += age;
170
177
  }
178
+ for (const f of triagedFindings) {
179
+ byTriageStatus[f.status] = (byTriageStatus[f.status] || 0) + 1;
180
+ }
171
181
  const sortedOpen = [...openFindings].sort((a, b) => new Date(a.firstSeen).getTime() - new Date(b.firstSeen).getTime());
172
182
  return {
173
183
  totalOpen: openFindings.length,
174
184
  totalFixed: fixedFindings.length,
185
+ totalTriaged: triagedFindings.length,
186
+ byTriageStatus,
175
187
  oldestOpen: sortedOpen[0]?.firstSeen,
176
188
  bySeverity,
177
189
  byRule,
@@ -211,4 +223,135 @@ export function formatDelta(delta) {
211
223
  }
212
224
  return lines.join("\n");
213
225
  }
226
+ /**
227
+ * Triage a finding by its fingerprint or ruleId+filePath.
228
+ * Returns the triaged finding, or null if not found.
229
+ */
230
+ export function triageFinding(dirOrStore, match, status, reason, triagedBy) {
231
+ const inMemory = typeof dirOrStore !== "string";
232
+ const store = inMemory ? dirOrStore : loadFindingStore(dirOrStore);
233
+ const now = new Date().toISOString();
234
+ let target;
235
+ if (match.fingerprint) {
236
+ target = store.findings.find((f) => f.fingerprint === match.fingerprint && f.status === "open");
237
+ }
238
+ else if (match.ruleId) {
239
+ target = store.findings.find((f) => f.ruleId === match.ruleId && f.status === "open" && (!match.filePath || f.filePath === match.filePath));
240
+ }
241
+ if (!target)
242
+ return null;
243
+ target.status = status;
244
+ target.triagedAt = now;
245
+ target.triagedBy = triagedBy;
246
+ target.triageReason = reason;
247
+ if (!inMemory) {
248
+ saveFindingStore(store, dirOrStore);
249
+ }
250
+ return target;
251
+ }
252
+ /**
253
+ * List all findings with a specific triage status.
254
+ */
255
+ export function getTriagedFindings(dirOrStore, status) {
256
+ const store = typeof dirOrStore === "string" ? loadFindingStore(dirOrStore) : dirOrStore;
257
+ const triageStatuses = new Set(["accepted-risk", "deferred", "wont-fix", "false-positive"]);
258
+ return store.findings.filter((f) => (status ? f.status === status : triageStatuses.has(f.status)));
259
+ }
260
+ /**
261
+ * Format triaged findings as a human-readable summary.
262
+ */
263
+ export function formatTriageSummary(dirOrStore) {
264
+ const store = typeof dirOrStore === "string" ? loadFindingStore(dirOrStore) : dirOrStore;
265
+ const triageStatuses = new Set(["accepted-risk", "deferred", "wont-fix", "false-positive"]);
266
+ const triaged = store.findings.filter((f) => triageStatuses.has(f.status));
267
+ if (triaged.length === 0) {
268
+ return " No triaged findings.";
269
+ }
270
+ const lines = [` Triaged Findings: ${triaged.length}`, ""];
271
+ const grouped = new Map();
272
+ for (const f of triaged) {
273
+ const list = grouped.get(f.status) || [];
274
+ list.push(f);
275
+ grouped.set(f.status, list);
276
+ }
277
+ const statusLabels = {
278
+ "accepted-risk": "⚠️ Accepted Risk",
279
+ deferred: "⏳ Deferred",
280
+ "wont-fix": "🚫 Won't Fix",
281
+ "false-positive": "❌ False Positive",
282
+ };
283
+ for (const [status, findings] of grouped) {
284
+ lines.push(` ${statusLabels[status] || status} (${findings.length}):`);
285
+ for (const f of findings.slice(0, 10)) {
286
+ lines.push(` [${f.severity.toUpperCase()}] ${f.ruleId}: ${f.title}`);
287
+ if (f.triageReason) {
288
+ lines.push(` Reason: ${f.triageReason}`);
289
+ }
290
+ }
291
+ if (findings.length > 10) {
292
+ lines.push(` ... and ${findings.length - 10} more`);
293
+ }
294
+ lines.push("");
295
+ }
296
+ return lines.join("\n");
297
+ }
298
+ // ─── Triage → Auto-Tune Bridge ──────────────────────────────────────────────
299
+ /**
300
+ * Convert triage decisions from the finding store into feedback entries
301
+ * suitable for auto-tune. This bridges lifecycle triage (users marking
302
+ * findings as false-positive, wont-fix, etc.) into the calibration loop.
303
+ *
304
+ * - false-positive → verdict "fp"
305
+ * - wont-fix → verdict "fp" (not useful enough to keep)
306
+ * - accepted-risk → verdict "tp" (real finding, intentionally accepted)
307
+ * - deferred → verdict "tp" (real finding, just not fixing now)
308
+ */
309
+ export function triageToFeedbackEntries(dirOrStore) {
310
+ const store = typeof dirOrStore === "string" ? loadFindingStore(dirOrStore) : dirOrStore;
311
+ const entries = [];
312
+ for (const f of store.findings) {
313
+ if (f.status === "false-positive" || f.status === "wont-fix") {
314
+ entries.push({
315
+ ruleId: f.ruleId,
316
+ verdict: "fp",
317
+ severity: f.severity,
318
+ timestamp: f.triagedAt || f.lastSeen,
319
+ });
320
+ }
321
+ else if (f.status === "accepted-risk" || f.status === "deferred") {
322
+ entries.push({
323
+ ruleId: f.ruleId,
324
+ verdict: "tp",
325
+ severity: f.severity,
326
+ timestamp: f.triagedAt || f.lastSeen,
327
+ });
328
+ }
329
+ }
330
+ return entries;
331
+ }
332
+ /**
333
+ * Get the set of rule IDs that should be auto-suppressed based on
334
+ * accumulated triage history. Uses a simple threshold: if ≥ `threshold`
335
+ * fraction of triaged findings for a rule are FP/wont-fix, suppress it.
336
+ */
337
+ export function getTriageBasedSuppressions(dirOrStore, options = {}) {
338
+ const threshold = options.threshold ?? 0.8;
339
+ const minSamples = options.minSamples ?? 3;
340
+ const entries = triageToFeedbackEntries(dirOrStore);
341
+ const byRule = new Map();
342
+ for (const e of entries) {
343
+ const stats = byRule.get(e.ruleId) ?? { fp: 0, total: 0 };
344
+ stats.total++;
345
+ if (e.verdict === "fp")
346
+ stats.fp++;
347
+ byRule.set(e.ruleId, stats);
348
+ }
349
+ const suppressed = new Set();
350
+ for (const [ruleId, stats] of byRule) {
351
+ if (stats.total >= minSamples && stats.fp / stats.total >= threshold) {
352
+ suppressed.add(ruleId);
353
+ }
354
+ }
355
+ return suppressed;
356
+ }
214
357
  //# sourceMappingURL=finding-lifecycle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"finding-lifecycle.js","sourceRoot":"","sources":["../src/finding-lifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"finding-lifecycle.js","sourceRoot":"","sources":["../src/finding-lifecycle.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -34,6 +34,7 @@ const cliCommands = new Set([
34
34
  "completions",
35
35
  "docs",
36
36
  "feedback",
37
+ "triage",
37
38
  "benchmark",
38
39
  "rule",
39
40
  "pack",
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/scoring.d.ts CHANGED
@@ -5,7 +5,7 @@
5
5
  * Handles confidence estimation for findings, the must-fix safety gate,
6
6
  * and absence-based finding suppression for non-server files.
7
7
  */
8
- import type { Finding, MustFixGateOptions, MustFixGateResult } from "./types.js";
8
+ import type { Finding, MustFixGateOptions, MustFixGateResult, EvidenceChain } from "./types.js";
9
9
  /** Minimal evaluation options needed by scoring functions */
10
10
  export interface ScoringOptions {
11
11
  minConfidence?: number;
@@ -23,4 +23,10 @@ export declare function estimateFindingConfidenceWithBasis(finding: Finding): {
23
23
  };
24
24
  export declare function applyConfidenceThreshold(findings: Finding[], options?: ScoringOptions): Finding[];
25
25
  export declare function isAbsenceBasedFinding(finding: Finding): boolean;
26
+ /**
27
+ * Build a structured evidence chain for a finding based on its metadata.
28
+ * This transforms the flat `evidenceBasis` and `provenance` strings into
29
+ * a step-by-step chain explaining why the finding matters in context.
30
+ */
31
+ export declare function buildEvidenceChain(finding: Finding): EvidenceChain;
26
32
  //# sourceMappingURL=scoring.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scoring.d.ts","sourceRoot":"","sources":["../src/scoring.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAIjF,6DAA6D;AAC7D,MAAM,WAAW,cAAc;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAiBD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,iBAAiB,GAAG,SAAS,CAoCpH;AAID,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAGrD;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAElE;AAED;;;GAGG;AACH,wBAAgB,kCAAkC,CAAC,OAAO,EAAE,OAAO,GAAG;IACpE,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB,CA0JA;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,EAAE,CAajG;AAgCD,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAwB/D"}
1
+ {"version":3,"file":"scoring.d.ts","sourceRoot":"","sources":["../src/scoring.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,aAAa,EAAgB,MAAM,YAAY,CAAC;AAI9G,6DAA6D;AAC7D,MAAM,WAAW,cAAc;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAiBD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,iBAAiB,GAAG,SAAS,CAoCpH;AAID,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAGrD;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAElE;AAED;;;GAGG;AACH,wBAAgB,kCAAkC,CAAC,OAAO,EAAE,OAAO,GAAG;IACpE,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB,CA0JA;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,EAAE,CAajG;AAgCD,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAwB/D;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,CAqElE"}
package/dist/scoring.js CHANGED
@@ -266,4 +266,76 @@ export function isAbsenceBasedFinding(finding) {
266
266
  // noise: e.g. "No test infrastructure detected" firing 618 times per-file.
267
267
  return true;
268
268
  }
269
+ /**
270
+ * Build a structured evidence chain for a finding based on its metadata.
271
+ * This transforms the flat `evidenceBasis` and `provenance` strings into
272
+ * a step-by-step chain explaining why the finding matters in context.
273
+ */
274
+ export function buildEvidenceChain(finding) {
275
+ const steps = [];
276
+ const prov = (finding.provenance ?? "").toLowerCase();
277
+ // Step 1: Detection trigger
278
+ if (prov.includes("taint-flow") || prov.includes("cross-file-taint")) {
279
+ steps.push({
280
+ observation: `Taint-flow analysis detected untrusted data reaching a dangerous sink`,
281
+ source: "taint-flow",
282
+ line: finding.lineNumbers?.[0],
283
+ });
284
+ }
285
+ else if (prov.includes("ast-confirmed") || prov.includes("tree-sitter")) {
286
+ steps.push({
287
+ observation: `AST analysis confirmed structural pattern: ${finding.title}`,
288
+ source: "ast-confirmed",
289
+ line: finding.lineNumbers?.[0],
290
+ });
291
+ }
292
+ else if (prov.includes("absence")) {
293
+ steps.push({
294
+ observation: `No evidence of expected security control: ${finding.title}`,
295
+ source: "absence-of-pattern",
296
+ });
297
+ }
298
+ else {
299
+ steps.push({
300
+ observation: `Pattern match detected: ${finding.title}`,
301
+ source: "pattern-match",
302
+ line: finding.lineNumbers?.[0],
303
+ });
304
+ }
305
+ // Step 2: Location precision
306
+ if (finding.lineNumbers && finding.lineNumbers.length > 0) {
307
+ const lines = finding.lineNumbers.length === 1
308
+ ? `line ${finding.lineNumbers[0]}`
309
+ : `lines ${finding.lineNumbers[0]}-${finding.lineNumbers[finding.lineNumbers.length - 1]}`;
310
+ steps.push({
311
+ observation: `Issue pinpointed at ${lines}`,
312
+ source: prov.includes("ast") ? "ast-confirmed" : "pattern-match",
313
+ line: finding.lineNumbers[0],
314
+ });
315
+ }
316
+ // Step 3: Cross-file context (if applicable)
317
+ if (prov.includes("cross-file")) {
318
+ steps.push({
319
+ observation: `Data flow crosses module boundaries — impact extends beyond this file`,
320
+ source: "cross-file",
321
+ });
322
+ }
323
+ // Build impact statement from severity + domain
324
+ const severity = finding.severity;
325
+ const domain = finding.ruleId.split("-")[0];
326
+ const domainNames = {
327
+ CYBER: "security",
328
+ AUTH: "authentication",
329
+ DATA: "data protection",
330
+ SEC: "security",
331
+ IAC: "infrastructure security",
332
+ AICS: "AI safety",
333
+ PERF: "performance",
334
+ API: "API design",
335
+ COMP: "compliance",
336
+ };
337
+ const domainName = domainNames[domain] || "code quality";
338
+ const impactStatement = `${severity === "critical" || severity === "high" ? "High" : "Moderate"}-impact ${domainName} concern: ${finding.description.slice(0, 120)}`;
339
+ return { steps, impactStatement };
340
+ }
269
341
  //# sourceMappingURL=scoring.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scoring.js","sourceRoot":"","sources":["../src/scoring.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scoring.js","sourceRoot":"","sources":["../src/scoring.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAWH,gFAAgF;AAEhF,MAAM,yBAAyB,GAAG;IAChC,OAAO;IACP,QAAQ;IACR,OAAO;IACP,MAAM;IACN,MAAM;IACN,OAAO;IACP,KAAK;IACL,OAAO;IACP,UAAU;IACV,OAAO;CACR,CAAC;AAEF,MAAM,UAAU,mBAAmB,CAAC,QAAmB,EAAE,OAA4B;IACnF,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;QACtB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,aAAa,GAAG,eAAe,CAAC,OAAO,CAAC,aAAa,IAAI,IAAI,CAAC,CAAC;IACrE,MAAM,QAAQ,GAAG,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC,yBAAyB,CAAC;IAEnH,MAAM,YAAY,GAChB,0LAA0L,CAAC;IAE7L,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE;QAC1C,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,KAAK,UAAU,IAAI,OAAO,CAAC,QAAQ,KAAK,MAAM,CAAC;QACrF,IAAI,CAAC,aAAa;YAAE,OAAO,KAAK,CAAC;QAEjC,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC;QAC3C,IAAI,UAAU,GAAG,aAAa;YAAE,OAAO,KAAK,CAAC;QAE7C,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAc,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;QACzF,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;QAC5G,OAAO,WAAW,IAAI,YAAY,CAAC;IACrC,CAAC,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC9E,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;IAErC,OAAO;QACL,OAAO,EAAE,IAAI;QACb,SAAS;QACT,aAAa;QACb,YAAY,EAAE,OAAO,CAAC,MAAM;QAC5B,cAAc;QACd,OAAO,EAAE,SAAS;YAChB,CAAC,CAAC,8BAA8B,OAAO,CAAC,MAAM,wCAAwC;YACtF,CAAC,CAAC,kEAAkE;KACvE,CAAC;AACJ,CAAC;AAED,gFAAgF;AAEhF,MAAM,UAAU,eAAe,CAAC,KAAa;IAC3C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IACtC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,OAAgB;IACxD,OAAO,kCAAkC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC;AAChE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kCAAkC,CAAC,OAAgB;IAIjE,MAAM,QAAQ,GAAG,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;IACzF,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9D,OAAO,EAAE,UAAU,EAAE,eAAe,CAAC,QAAQ,CAAC,EAAE,aAAa,EAAE,sBAAsB,EAAE,CAAC;IAC1F,CAAC;IAED,IAAI,KAAK,GAAG,GAAG,CAAC;IAChB,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,0EAA0E;IAC1E,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,CAAC;IACnD,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;QACpB,KAAK,IAAI,IAAI,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IAC1C,CAAC;SAAM,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;QAC1B,KAAK,IAAI,IAAI,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,iBAAiB,SAAS,kBAAkB,CAAC,CAAC;IAC7D,CAAC;SAAM,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;QAC1B,KAAK,IAAI,IAAI,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,eAAe,SAAS,gBAAgB,CAAC,CAAC;IACzD,CAAC;SAAM,CAAC;QACN,KAAK,IAAI,IAAI,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,gBAAgB,SAAS,gBAAgB,CAAC,CAAC;IAC1D,CAAC;IAED,0EAA0E;IAC1E,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC;IACpD,MAAM,gBAAgB,GACpB,6EAA6E,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;QACvG,4DAA4D,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACzF,MAAM,eAAe,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,GAAG,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC;IAC/F,MAAM,eAAe,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,GAAG,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC;IAEzF,IAAI,gBAAgB,EAAE,CAAC;QACrB,KAAK,IAAI,IAAI,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IAC1C,CAAC;IACD,IAAI,eAAe,EAAE,CAAC;QACpB,KAAK,IAAI,IAAI,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACxC,CAAC;IACD,IAAI,eAAe,EAAE,CAAC;QACpB,KAAK,IAAI,IAAI,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACxC,CAAC;IAED,0EAA0E;IAC1E,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChD,MAAM,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACtD,MAAM,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC,MAAM,IAAI,GAAG,CAAC;IAC7D,MAAM,qBAAqB,GAAG,OAAO,CAAC,cAAc,CAAC,MAAM,IAAI,EAAE,CAAC;IAElE,IAAI,YAAY,EAAE,CAAC;QACjB,KAAK,IAAI,IAAI,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACxC,CAAC;IACD,IAAI,eAAe,EAAE,CAAC;QACpB,KAAK,IAAI,IAAI,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IAC5C,CAAC;IACD,IAAI,kBAAkB,EAAE,CAAC;QACvB,KAAK,IAAI,IAAI,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;IAC3C,CAAC;IACD,IAAI,qBAAqB,EAAE,CAAC;QAC1B,KAAK,IAAI,IAAI,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IAC9C,CAAC;IAED,6EAA6E;IAC7E,MAAM,eAAe,GAAG;QACtB,aAAa;QACb,SAAS;QACT,QAAQ;QACR,cAAc;QACd,mCAAmC;QACnC,kCAAkC;KACnC,CAAC;IACF,MAAM,aAAa,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IACxF,IAAI,aAAa,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;QACrC,KAAK,IAAI,GAAG,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;IAChD,CAAC;IAED,uEAAuE;IACvE,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACtD,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACtF,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IACrF,MAAM,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC;IAE9D,IAAI,cAAc,EAAE,CAAC;QACnB,KAAK,IAAI,IAAI,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACxC,CAAC;IACD,IAAI,WAAW,EAAE,CAAC;QAChB,KAAK,IAAI,IAAI,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,gBAAgB,IAAI,CAAC,cAAc,EAAE,CAAC;QACxC,KAAK,IAAI,IAAI,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IAC9C,CAAC;IAED,yEAAyE;IACzE,MAAM,gBAAgB,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACvE,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IACpF,IAAI,gBAAgB,IAAI,CAAC,OAAO,CAAC,QAAQ,KAAK,UAAU,IAAI,OAAO,CAAC,QAAQ,KAAK,MAAM,CAAC,EAAE,CAAC;QACzF,KAAK,IAAI,IAAI,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;IACpD,CAAC;IAED,yEAAyE;IACzE,MAAM,iBAAiB,GAAG;QACxB,YAAY;QACZ,eAAe;QACf,kBAAkB;QAClB,qBAAqB;QACrB,gBAAgB;QAChB,SAAS,GAAG,CAAC;QACb,cAAc;QACd,WAAW;KACZ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;IAEzB,MAAM,aAAa,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACpE,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACrF,MAAM,aAAa,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAEjF,IAAI,iBAAiB,GAAG,CAAC,EAAE,CAAC;QAC1B,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5D,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YACrC,IAAI,MAAM,GAAG,KAAK,EAAE,CAAC;gBACnB,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;gBAC5C,KAAK,GAAG,MAAM,CAAC;YACjB,CAAC;QACH,CAAC;aAAM,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YACrC,IAAI,MAAM,GAAG,KAAK,EAAE,CAAC;gBACnB,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;gBAC3C,KAAK,GAAG,MAAM,CAAC;YACjB,CAAC;QACH,CAAC;aAAM,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YACrC,IAAI,MAAM,GAAG,KAAK,EAAE,CAAC;gBACnB,OAAO,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;gBAC7C,KAAK,GAAG,MAAM,CAAC;YACjB,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,OAAO;QACL,UAAU,EAAE,eAAe;QAC3B,aAAa,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,uBAAuB;KACjF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,QAAmB,EAAE,OAAwB;IACpF,MAAM,aAAa,GAAG,eAAe,CAAC,OAAO,EAAE,aAAa,IAAI,CAAC,CAAC,CAAC;IAEnE,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QAC1C,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,kCAAkC,CAAC,OAAO,CAAC,CAAC;QAClF,OAAO,EAAE,GAAG,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,IAAI,aAAa,IAAI,CAAC,EAAE,CAAC;QACvB,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC;AACpF,CAAC;AAED,gFAAgF;AAEhF;;;;;GAKG;AACH,MAAM,sBAAsB,GAAG;IAC7B,OAAO;IACP,OAAO;IACP,MAAM;IACN,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,SAAS;IACT,MAAM;IACN,MAAM;IACN,QAAQ;IACR,MAAM;IACN,MAAM;IACN,MAAM,EAAE,yEAAyE;IACjF,MAAM,EAAE,6CAA6C;IACrD,QAAQ,EAAE,kDAAkD;IAC5D,QAAQ,EAAE,8DAA8D;IACxE,OAAO,EAAE,6CAA6C;IACtD,OAAO,EAAE,sDAAsD;IAC/D,OAAO,EAAE,wCAAwC;CAClD,CAAC;AAEF,MAAM,UAAU,qBAAqB,CAAC,OAAgB;IACpD,oDAAoD;IACpD,IAAI,OAAO,CAAC,cAAc,KAAK,IAAI,EAAE,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1D,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,eAAe,GACnB,gKAAgK,CAAC,IAAI,CACnK,OAAO,CAAC,KAAK,CACd,CAAC;IACJ,IAAI,CAAC,eAAe;QAAE,OAAO,KAAK,CAAC;IAEnC,gFAAgF;IAChF,6EAA6E;IAC7E,6EAA6E;IAC7E,2EAA2E;IAE3E,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAgB;IACjD,MAAM,KAAK,GAAmB,EAAE,CAAC;IACjC,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAEtD,4BAA4B;IAC5B,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACrE,KAAK,CAAC,IAAI,CAAC;YACT,WAAW,EAAE,uEAAuE;YACpF,MAAM,EAAE,YAAY;YACpB,IAAI,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;SAC/B,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;QAC1E,KAAK,CAAC,IAAI,CAAC;YACT,WAAW,EAAE,8CAA8C,OAAO,CAAC,KAAK,EAAE;YAC1E,MAAM,EAAE,eAAe;YACvB,IAAI,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;SAC/B,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QACpC,KAAK,CAAC,IAAI,CAAC;YACT,WAAW,EAAE,6CAA6C,OAAO,CAAC,KAAK,EAAE;YACzE,MAAM,EAAE,oBAAoB;SAC7B,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC;YACT,WAAW,EAAE,2BAA2B,OAAO,CAAC,KAAK,EAAE;YACvD,MAAM,EAAE,eAAe;YACvB,IAAI,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;SAC/B,CAAC,CAAC;IACL,CAAC;IAED,6BAA6B;IAC7B,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1D,MAAM,KAAK,GACT,OAAO,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC;YAC9B,CAAC,CAAC,QAAQ,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE;YAClC,CAAC,CAAC,SAAS,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;QAC/F,KAAK,CAAC,IAAI,CAAC;YACT,WAAW,EAAE,uBAAuB,KAAK,EAAE;YAC3C,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe;YAChE,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;SAC7B,CAAC,CAAC;IACL,CAAC;IAED,6CAA6C;IAC7C,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC;YACT,WAAW,EAAE,uEAAuE;YACpF,MAAM,EAAE,YAAY;SACrB,CAAC,CAAC;IACL,CAAC;IAED,gDAAgD;IAChD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAClC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5C,MAAM,WAAW,GAA2B;QAC1C,KAAK,EAAE,UAAU;QACjB,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,iBAAiB;QACvB,GAAG,EAAE,UAAU;QACf,GAAG,EAAE,yBAAyB;QAC9B,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,aAAa;QACnB,GAAG,EAAE,YAAY;QACjB,IAAI,EAAE,YAAY;KACnB,CAAC;IACF,MAAM,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC,IAAI,cAAc,CAAC;IACzD,MAAM,eAAe,GAAG,GAAG,QAAQ,KAAK,UAAU,IAAI,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,WAAW,UAAU,aAAa,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;IAErK,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC;AACpC,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { JudgeDefinition } from "../types.js";
1
+ import type { JudgeDefinition, ProjectContext } from "../types.js";
2
2
  /**
3
3
  * Detects whether an LLM response is a content-policy refusal rather than
4
4
  * a genuine analysis. Refusals are typically very short (<300 chars) and
@@ -9,7 +9,20 @@ export declare function isContentPolicyRefusal(responseText: string): boolean;
9
9
  export declare const DEEP_REVIEW_PROMPT_INTRO: string;
10
10
  /** Content-policy-safe Assistant identity message. */
11
11
  export declare const DEEP_REVIEW_IDENTITY: string;
12
- export declare function buildSingleJudgeDeepReviewSection(judge: JudgeDefinition, language: string, context?: string): string;
13
- export declare function buildTribunalDeepReviewSection(judges: JudgeDefinition[], language: string, context?: string): string;
12
+ export interface RelatedFileSnippet {
13
+ /** Relative file path */
14
+ path: string;
15
+ /** Relevant code excerpt (truncated to keep prompt size manageable) */
16
+ snippet: string;
17
+ /** Why this file is relevant (e.g. "imported by target", "shared type") */
18
+ relationship?: string;
19
+ }
20
+ /**
21
+ * Format detected project context into a prompt section so the LLM
22
+ * understands the runtime environment, framework, and architectural role.
23
+ */
24
+ export declare function formatProjectContextSection(projectContext: ProjectContext): string;
25
+ export declare function buildSingleJudgeDeepReviewSection(judge: JudgeDefinition, language: string, context?: string, relatedFiles?: RelatedFileSnippet[], projectContext?: ProjectContext): string;
26
+ export declare function buildTribunalDeepReviewSection(judges: JudgeDefinition[], language: string, context?: string, relatedFiles?: RelatedFileSnippet[], projectContext?: ProjectContext): string;
14
27
  export declare function buildSimplifiedDeepReviewSection(language: string, context?: string): string;
15
28
  //# sourceMappingURL=deep-review.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"deep-review.d.ts","sourceRoot":"","sources":["../../src/tools/deep-review.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAqBnD;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAIpE;AAiBD,6DAA6D;AAC7D,eAAO,MAAM,wBAAwB,QAGoD,CAAC;AAE1F,sDAAsD;AACtD,eAAO,MAAM,oBAAoB,QAMqC,CAAC;AAIvE,wBAAgB,iCAAiC,CAAC,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CA8CpH;AAID,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,eAAe,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CA6CpH;AAOD,wBAAgB,gCAAgC,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAiC3F"}
1
+ {"version":3,"file":"deep-review.d.ts","sourceRoot":"","sources":["../../src/tools/deep-review.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAqBnE;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAIpE;AAiBD,6DAA6D;AAC7D,eAAO,MAAM,wBAAwB,QAGoD,CAAC;AAE1F,sDAAsD;AACtD,eAAO,MAAM,oBAAoB,QAMqC,CAAC;AAIvE,MAAM,WAAW,kBAAkB;IACjC,yBAAyB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,uEAAuE;IACvE,OAAO,EAAE,MAAM,CAAC;IAChB,2EAA2E;IAC3E,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AA6BD;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,cAAc,EAAE,cAAc,GAAG,MAAM,CA2BlF;AAID,wBAAgB,iCAAiC,CAC/C,KAAK,EAAE,eAAe,EACtB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,kBAAkB,EAAE,EACnC,cAAc,CAAC,EAAE,cAAc,GAC9B,MAAM,CAsDR;AAID,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,eAAe,EAAE,EACzB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,kBAAkB,EAAE,EACnC,cAAc,CAAC,EAAE,cAAc,GAC9B,MAAM,CAqDR;AAOD,wBAAgB,gCAAgC,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAiC3F"}
@@ -54,8 +54,64 @@ export const DEEP_REVIEW_IDENTITY = `I am the Judges Panel — a professional, c
54
54
  `My role is to provide evidence-based, constructive recommendations that ` +
55
55
  `strengthen code quality, security defenses, and engineering standards. ` +
56
56
  `This is NOT a penetration test or adversarial security assessment.`;
57
+ /**
58
+ * Format related files into a prompt section that gives the LLM cross-file
59
+ * visibility for deeper analysis.
60
+ */
61
+ function formatRelatedFilesSection(relatedFiles) {
62
+ if (relatedFiles.length === 0)
63
+ return "";
64
+ let md = `### Related Files\n\n`;
65
+ md += `> The following files are related to the code under review. Use them to `;
66
+ md += `understand cross-file data flow, shared types, imports, and call sites. `;
67
+ md += `These provide context only — focus your findings on the primary code above.\n\n`;
68
+ for (const f of relatedFiles) {
69
+ md += `<details>\n<summary><code>${f.path}</code>`;
70
+ if (f.relationship)
71
+ md += ` — ${f.relationship}`;
72
+ md += `</summary>\n\n`;
73
+ // Limit snippet size to prevent prompt explosion
74
+ const truncated = f.snippet.length > 3000 ? f.snippet.slice(0, 3000) + "\n// ... truncated" : f.snippet;
75
+ md += `\`\`\`\n${truncated}\n\`\`\`\n`;
76
+ md += `</details>\n\n`;
77
+ }
78
+ return md;
79
+ }
80
+ // ─── Project Context Section ─────────────────────────────────────────────────
81
+ /**
82
+ * Format detected project context into a prompt section so the LLM
83
+ * understands the runtime environment, framework, and architectural role.
84
+ */
85
+ export function formatProjectContextSection(projectContext) {
86
+ const parts = [];
87
+ if (projectContext.frameworks.length > 0) {
88
+ parts.push(`**Frameworks:** ${projectContext.frameworks.join(", ")}`);
89
+ }
90
+ if (projectContext.frameworkVersions.length > 0) {
91
+ parts.push(`**Versions:** ${projectContext.frameworkVersions.join(", ")}`);
92
+ }
93
+ if (projectContext.entryPointType !== "unknown") {
94
+ parts.push(`**File Role:** ${projectContext.entryPointType}`);
95
+ }
96
+ if (projectContext.runtime !== "unknown") {
97
+ parts.push(`**Runtime:** ${projectContext.runtime}`);
98
+ }
99
+ if (projectContext.projectType !== "unknown") {
100
+ parts.push(`**Project Type:** ${projectContext.projectType}`);
101
+ }
102
+ if (projectContext.dependencies.length > 0) {
103
+ parts.push(`**Key Dependencies:** ${projectContext.dependencies.join(", ")}`);
104
+ }
105
+ if (parts.length === 0)
106
+ return "";
107
+ let md = `### Project Context (auto-detected)\n\n`;
108
+ md += `> Use this context to calibrate your review. For example, absence-based rules\n`;
109
+ md += `> about rate limiting are less relevant for a CLI tool than for an API controller.\n\n`;
110
+ md += parts.join("\n") + "\n\n";
111
+ return md;
112
+ }
57
113
  // ─── Single-Judge Deep Review ────────────────────────────────────────────────
58
- export function buildSingleJudgeDeepReviewSection(judge, language, context) {
114
+ export function buildSingleJudgeDeepReviewSection(judge, language, context, relatedFiles, projectContext) {
59
115
  let md = `\n\n---\n\n`;
60
116
  md += `## 🔍 Deep Contextual Review Required\n\n`;
61
117
  md += DEFENSIVE_PREAMBLE;
@@ -67,6 +123,12 @@ export function buildSingleJudgeDeepReviewSection(judge, language, context) {
67
123
  if (context) {
68
124
  md += `**Context provided:** ${context}\n\n`;
69
125
  }
126
+ if (projectContext) {
127
+ md += formatProjectContextSection(projectContext);
128
+ }
129
+ if (relatedFiles && relatedFiles.length > 0) {
130
+ md += formatRelatedFilesSection(relatedFiles);
131
+ }
70
132
  md += `### ${judge.name} — ${judge.domain}\n\n`;
71
133
  md += `${judge.description}\n\n`;
72
134
  md += `### Precision Mandate\n\n`;
@@ -98,7 +160,7 @@ export function buildSingleJudgeDeepReviewSection(judge, language, context) {
98
160
  return md;
99
161
  }
100
162
  // ─── Tribunal Deep Review (full) ─────────────────────────────────────────────
101
- export function buildTribunalDeepReviewSection(judges, language, context) {
163
+ export function buildTribunalDeepReviewSection(judges, language, context, relatedFiles, projectContext) {
102
164
  let md = `\n\n---\n\n`;
103
165
  md += `## 🔍 Deep Contextual Review Required\n\n`;
104
166
  md += DEFENSIVE_PREAMBLE;
@@ -111,6 +173,12 @@ export function buildTribunalDeepReviewSection(judges, language, context) {
111
173
  if (context) {
112
174
  md += `**Context provided:** ${context}\n\n`;
113
175
  }
176
+ if (projectContext) {
177
+ md += formatProjectContextSection(projectContext);
178
+ }
179
+ if (relatedFiles && relatedFiles.length > 0) {
180
+ md += formatRelatedFilesSection(relatedFiles);
181
+ }
114
182
  for (const judge of judges) {
115
183
  md += `### ${judge.name} — ${judge.domain}\n\n`;
116
184
  md += `${judge.description}\n\n`;
@@ -1 +1 @@
1
- {"version":3,"file":"deep-review.js","sourceRoot":"","sources":["../../src/tools/deep-review.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,sEAAsE;AACtE,wEAAwE;AACxE,wEAAwE;AACxE,oBAAoB;AACpB,iFAAiF;AAIjF,gFAAgF;AAEhF,mFAAmF;AACnF,MAAM,gBAAgB,GAAG;IACvB,iCAAiC;IACjC,+BAA+B;IAC/B,2BAA2B;IAC3B,yBAAyB;IACzB,gCAAgC;IAChC,wBAAwB;IACxB,yBAAyB;IACzB,yBAAyB;IACzB,wBAAwB;IACxB,0BAA0B;IAC1B,oBAAoB;IACpB,2BAA2B;IAC3B,4BAA4B;CAC7B,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAC,YAAoB;IACzD,IAAI,YAAY,CAAC,MAAM,GAAG,GAAG;QAAE,OAAO,KAAK,CAAC;IAC5C,MAAM,KAAK,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;IAChD,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AACzD,CAAC;AAED,gFAAgF;AAChF,8EAA8E;AAC9E,yEAAyE;AACzE,8EAA8E;AAE9E,MAAM,kBAAkB,GACtB,qFAAqF;IACrF,4EAA4E;IAC5E,mFAAmF;IACnF,0EAA0E;IAC1E,0DAA0D;IAC1D,mFAAmF,CAAC;AAEtF,gFAAgF;AAEhF,6DAA6D;AAC7D,MAAM,CAAC,MAAM,wBAAwB,GACnC,8EAA8E;IAC9E,4EAA4E;IAC5E,uFAAuF,CAAC;AAE1F,sDAAsD;AACtD,MAAM,CAAC,MAAM,oBAAoB,GAC/B,gFAAgF;IAChF,iFAAiF;IACjF,sEAAsE;IACtE,0EAA0E;IAC1E,yEAAyE;IACzE,oEAAoE,CAAC;AAEvE,gFAAgF;AAEhF,MAAM,UAAU,iCAAiC,CAAC,KAAsB,EAAE,QAAgB,EAAE,OAAgB;IAC1G,IAAI,EAAE,GAAG,aAAa,CAAC;IACvB,EAAE,IAAI,2CAA2C,CAAC;IAClD,EAAE,IAAI,kBAAkB,CAAC;IACzB,EAAE,IAAI,oEAAoE,CAAC;IAC3E,EAAE,IAAI,yFAAyF,CAAC;IAChG,EAAE,IAAI,0FAA0F,CAAC;IACjG,EAAE,IAAI,kEAAkE,QAAQ,yCAAyC,CAAC;IAC1H,EAAE,IAAI,kKAAkK,CAAC;IAEzK,IAAI,OAAO,EAAE,CAAC;QACZ,EAAE,IAAI,yBAAyB,OAAO,MAAM,CAAC;IAC/C,CAAC;IAED,EAAE,IAAI,OAAO,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,MAAM,MAAM,CAAC;IAChD,EAAE,IAAI,GAAG,KAAK,CAAC,WAAW,MAAM,CAAC;IACjC,EAAE,IAAI,2BAA2B,CAAC;IAClC,EAAE,IAAI,+GAA+G,CAAC;IACtH,EAAE,IAAI,2IAA2I,CAAC;IAClJ,EAAE,IAAI,mHAAmH,CAAC;IAC1H,EAAE,IAAI,uGAAuG,CAAC;IAC9G,EAAE,IAAI,qGAAqG,CAAC;IAC5G,EAAE,IAAI,8GAA8G,CAAC;IACrH,EAAE,IAAI,kIAAkI,CAAC;IAEzI,EAAE,IAAI,+BAA+B,CAAC;IACtC,EAAE,IAAI,+FAA+F,CAAC;IACtG,EAAE,IAAI,iFAAiF,CAAC;IACxF,EAAE,IAAI,gIAAgI,CAAC;IACvI,EAAE,IAAI,kEAAkE,CAAC;IACzE,EAAE,IAAI,kFAAkF,CAAC;IACzF,EAAE,IAAI,yEAAyE,CAAC;IAChF,EAAE,IAAI,oHAAoH,CAAC;IAC3H,EAAE,IAAI,0BAA0B,CAAC;IACjC,EAAE,IAAI,yDAAyD,CAAC;IAEhE,EAAE,IAAI,yBAAyB,CAAC;IAChC,EAAE,IAAI,0EAA0E,CAAC;IACjF,EAAE,IAAI,uBAAuB,KAAK,CAAC,UAAU,OAAO,CAAC;IACrD,EAAE,IAAI,4DAA4D,CAAC;IACnE,EAAE,IAAI,gFAAgF,CAAC;IACvF,EAAE,IAAI,mHAAmH,CAAC;IAC1H,EAAE,IAAI,gGAAgG,CAAC;IACvG,EAAE,IAAI,oIAAoI,CAAC;IAE3I,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,gFAAgF;AAEhF,MAAM,UAAU,8BAA8B,CAAC,MAAyB,EAAE,QAAgB,EAAE,OAAgB;IAC1G,IAAI,EAAE,GAAG,aAAa,CAAC;IACvB,EAAE,IAAI,2CAA2C,CAAC;IAClD,EAAE,IAAI,kBAAkB,CAAC;IACzB,EAAE,IAAI,6EAA6E,CAAC;IACpF,EAAE,IAAI,yFAAyF,CAAC;IAChG,EAAE,IAAI,0FAA0F,CAAC;IACjG,EAAE,IAAI,kEAAkE,QAAQ,qCAAqC,MAAM,CAAC,MAAM,iBAAiB,CAAC;IACpJ,EAAE,IAAI,wKAAwK,CAAC;IAC/K,EAAE,IAAI,qLAAqL,CAAC;IAE5L,IAAI,OAAO,EAAE,CAAC;QACZ,EAAE,IAAI,yBAAyB,OAAO,MAAM,CAAC;IAC/C,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,EAAE,IAAI,OAAO,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,MAAM,MAAM,CAAC;QAChD,EAAE,IAAI,GAAG,KAAK,CAAC,WAAW,MAAM,CAAC;QACjC,EAAE,IAAI,sBAAsB,KAAK,CAAC,UAAU,mTAAmT,CAAC;QAChW,EAAE,IAAI,SAAS,CAAC;IAClB,CAAC;IAED,EAAE,IAAI,+BAA+B,CAAC;IACtC,EAAE,IAAI,+FAA+F,CAAC;IACtG,EAAE,IAAI,iFAAiF,CAAC;IACxF,EAAE,IAAI,gIAAgI,CAAC;IACvI,EAAE,IAAI,kEAAkE,CAAC;IACzE,EAAE,IAAI,kFAAkF,CAAC;IACzF,EAAE,IAAI,yEAAyE,CAAC;IAChF,EAAE,IAAI,oHAAoH,CAAC;IAC3H,EAAE,IAAI,0BAA0B,CAAC;IACjC,EAAE,IAAI,yDAAyD,CAAC;IAEhE,EAAE,IAAI,yBAAyB,CAAC;IAChC,EAAE,IAAI,4FAA4F,CAAC;IACnG,EAAE,IAAI,gCAAgC,CAAC;IACvC,EAAE,IAAI,4DAA4D,CAAC;IACnE,EAAE,IAAI,kFAAkF,CAAC;IACzF,EAAE,IAAI,sIAAsI,CAAC;IAC7I,EAAE,IAAI,uKAAuK,CAAC;IAC9K,EAAE,IAAI,2CAA2C,CAAC;IAClD,EAAE,IAAI,mDAAmD,CAAC;IAC1D,EAAE,IAAI,mDAAmD,CAAC;IAE1D,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,gFAAgF;AAChF,6EAA6E;AAC7E,8EAA8E;AAC9E,wEAAwE;AAExE,MAAM,UAAU,gCAAgC,CAAC,QAAgB,EAAE,OAAgB;IACjF,IAAI,EAAE,GAAG,aAAa,CAAC;IACvB,EAAE,IAAI,2CAA2C,CAAC;IAClD,EAAE,IAAI,kBAAkB,CAAC;IACzB,EAAE,IAAI,qFAAqF,CAAC;IAC5F,EAAE,IAAI,+BAA+B,QAAQ,4CAA4C,CAAC;IAE1F,IAAI,OAAO,EAAE,CAAC;QACZ,EAAE,IAAI,yBAAyB,OAAO,MAAM,CAAC;IAC/C,CAAC;IAED,EAAE,IAAI,yCAAyC,CAAC;IAChD,EAAE,IAAI,qGAAqG,CAAC;IAC5G,EAAE,IAAI,+GAA+G,CAAC;IACtH,EAAE,IAAI,8EAA8E,CAAC;IACrF,EAAE,IAAI,+EAA+E,CAAC;IACtF,EAAE,IAAI,2FAA2F,CAAC;IAClG,EAAE,IAAI,6FAA6F,CAAC;IACpG,EAAE,IAAI,oGAAoG,CAAC;IAE3G,EAAE,IAAI,2BAA2B,CAAC;IAClC,EAAE,IAAI,6FAA6F,CAAC;IACpG,EAAE,IAAI,sHAAsH,CAAC;IAC7H,EAAE,IAAI,4DAA4D,CAAC;IACnE,EAAE,IAAI,sEAAsE,CAAC;IAE7E,EAAE,IAAI,yBAAyB,CAAC;IAChC,EAAE,IAAI,0FAA0F,CAAC;IACjG,EAAE,IAAI,0FAA0F,CAAC;IACjG,EAAE,IAAI,8DAA8D,CAAC;IACrE,EAAE,IAAI,uGAAuG,CAAC;IAE9G,OAAO,EAAE,CAAC;AACZ,CAAC"}
1
+ {"version":3,"file":"deep-review.js","sourceRoot":"","sources":["../../src/tools/deep-review.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"register-evaluation.d.ts","sourceRoot":"","sources":["../../src/tools/register-evaluation.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAgBzE;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAM/D"}
1
+ {"version":3,"file":"register-evaluation.d.ts","sourceRoot":"","sources":["../../src/tools/register-evaluation.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAkBzE;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAM/D"}