@kevinrabun/judges 3.30.0 → 3.33.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +46 -0
- package/README.md +51 -33
- package/dist/api.d.ts +1 -1
- package/dist/api.d.ts.map +1 -1
- package/dist/api.js +1 -1
- package/dist/api.js.map +1 -1
- package/dist/cli.d.ts +1 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +79 -6
- package/dist/cli.js.map +1 -1
- package/dist/commands/review.d.ts +5 -1
- package/dist/commands/review.d.ts.map +1 -1
- package/dist/commands/review.js +55 -9
- package/dist/commands/review.js.map +1 -1
- package/dist/commands/snapshot.d.ts +5 -0
- package/dist/commands/snapshot.d.ts.map +1 -1
- package/dist/commands/snapshot.js +121 -0
- package/dist/commands/snapshot.js.map +1 -1
- package/dist/evaluators/index.d.ts.map +1 -1
- package/dist/evaluators/index.js +32 -4
- package/dist/evaluators/index.js.map +1 -1
- package/dist/evaluators/over-engineering.d.ts +3 -0
- package/dist/evaluators/over-engineering.d.ts.map +1 -0
- package/dist/evaluators/over-engineering.js +161 -0
- package/dist/evaluators/over-engineering.js.map +1 -0
- package/dist/formatters/pdf.d.ts +13 -0
- package/dist/formatters/pdf.d.ts.map +1 -0
- package/dist/formatters/pdf.js +138 -0
- package/dist/formatters/pdf.js.map +1 -0
- package/dist/judges/accessibility.d.ts.map +1 -1
- package/dist/judges/accessibility.js +2 -0
- package/dist/judges/accessibility.js.map +1 -1
- package/dist/judges/agent-instructions.d.ts.map +1 -1
- package/dist/judges/agent-instructions.js +2 -0
- package/dist/judges/agent-instructions.js.map +1 -1
- package/dist/judges/ai-code-safety.d.ts.map +1 -1
- package/dist/judges/ai-code-safety.js +2 -0
- package/dist/judges/ai-code-safety.js.map +1 -1
- package/dist/judges/api-contract.d.ts.map +1 -1
- package/dist/judges/api-contract.js +3 -1
- package/dist/judges/api-contract.js.map +1 -1
- package/dist/judges/api-design.d.ts.map +1 -1
- package/dist/judges/api-design.js +2 -0
- package/dist/judges/api-design.js.map +1 -1
- package/dist/judges/authentication.d.ts.map +1 -1
- package/dist/judges/authentication.js +2 -0
- package/dist/judges/authentication.js.map +1 -1
- package/dist/judges/backwards-compatibility.d.ts.map +1 -1
- package/dist/judges/backwards-compatibility.js +2 -0
- package/dist/judges/backwards-compatibility.js.map +1 -1
- package/dist/judges/caching.d.ts.map +1 -1
- package/dist/judges/caching.js +2 -0
- package/dist/judges/caching.js.map +1 -1
- package/dist/judges/ci-cd.d.ts.map +1 -1
- package/dist/judges/ci-cd.js +2 -0
- package/dist/judges/ci-cd.js.map +1 -1
- package/dist/judges/cloud-readiness.d.ts.map +1 -1
- package/dist/judges/cloud-readiness.js +2 -0
- package/dist/judges/cloud-readiness.js.map +1 -1
- package/dist/judges/code-structure.d.ts.map +1 -1
- package/dist/judges/code-structure.js +2 -0
- package/dist/judges/code-structure.js.map +1 -1
- package/dist/judges/compliance.d.ts.map +1 -1
- package/dist/judges/compliance.js +2 -0
- package/dist/judges/compliance.js.map +1 -1
- package/dist/judges/concurrency.d.ts.map +1 -1
- package/dist/judges/concurrency.js +2 -0
- package/dist/judges/concurrency.js.map +1 -1
- package/dist/judges/configuration-management.d.ts.map +1 -1
- package/dist/judges/configuration-management.js +2 -0
- package/dist/judges/configuration-management.js.map +1 -1
- package/dist/judges/cost-effectiveness.d.ts.map +1 -1
- package/dist/judges/cost-effectiveness.js +2 -0
- package/dist/judges/cost-effectiveness.js.map +1 -1
- package/dist/judges/cybersecurity.d.ts.map +1 -1
- package/dist/judges/cybersecurity.js +2 -0
- package/dist/judges/cybersecurity.js.map +1 -1
- package/dist/judges/data-security.d.ts.map +1 -1
- package/dist/judges/data-security.js +2 -0
- package/dist/judges/data-security.js.map +1 -1
- package/dist/judges/data-sovereignty.d.ts.map +1 -1
- package/dist/judges/data-sovereignty.js +3 -1
- package/dist/judges/data-sovereignty.js.map +1 -1
- package/dist/judges/database.d.ts.map +1 -1
- package/dist/judges/database.js +2 -0
- package/dist/judges/database.js.map +1 -1
- package/dist/judges/dependency-health.d.ts.map +1 -1
- package/dist/judges/dependency-health.js +2 -0
- package/dist/judges/dependency-health.js.map +1 -1
- package/dist/judges/documentation.d.ts.map +1 -1
- package/dist/judges/documentation.js +2 -0
- package/dist/judges/documentation.js.map +1 -1
- package/dist/judges/error-handling.d.ts.map +1 -1
- package/dist/judges/error-handling.js +2 -0
- package/dist/judges/error-handling.js.map +1 -1
- package/dist/judges/ethics-bias.d.ts.map +1 -1
- package/dist/judges/ethics-bias.js +2 -0
- package/dist/judges/ethics-bias.js.map +1 -1
- package/dist/judges/false-positive-review.d.ts.map +1 -1
- package/dist/judges/false-positive-review.js +2 -0
- package/dist/judges/false-positive-review.js.map +1 -1
- package/dist/judges/framework-safety.d.ts.map +1 -1
- package/dist/judges/framework-safety.js +2 -0
- package/dist/judges/framework-safety.js.map +1 -1
- package/dist/judges/hallucination-detection.d.ts.map +1 -1
- package/dist/judges/hallucination-detection.js +2 -0
- package/dist/judges/hallucination-detection.js.map +1 -1
- package/dist/judges/iac-security.d.ts.map +1 -1
- package/dist/judges/iac-security.js +2 -0
- package/dist/judges/iac-security.js.map +1 -1
- package/dist/judges/index.d.ts.map +1 -1
- package/dist/judges/index.js +4 -0
- package/dist/judges/index.js.map +1 -1
- package/dist/judges/intent-alignment.d.ts.map +1 -1
- package/dist/judges/intent-alignment.js +2 -0
- package/dist/judges/intent-alignment.js.map +1 -1
- package/dist/judges/internationalization.d.ts.map +1 -1
- package/dist/judges/internationalization.js +2 -0
- package/dist/judges/internationalization.js.map +1 -1
- package/dist/judges/logging-privacy.d.ts.map +1 -1
- package/dist/judges/logging-privacy.js +2 -0
- package/dist/judges/logging-privacy.js.map +1 -1
- package/dist/judges/maintainability.d.ts.map +1 -1
- package/dist/judges/maintainability.js +2 -0
- package/dist/judges/maintainability.js.map +1 -1
- package/dist/judges/model-fingerprint.d.ts.map +1 -1
- package/dist/judges/model-fingerprint.js +3 -1
- package/dist/judges/model-fingerprint.js.map +1 -1
- package/dist/judges/multi-turn-coherence.d.ts.map +1 -1
- package/dist/judges/multi-turn-coherence.js +3 -1
- package/dist/judges/multi-turn-coherence.js.map +1 -1
- package/dist/judges/observability.d.ts.map +1 -1
- package/dist/judges/observability.js +2 -0
- package/dist/judges/observability.js.map +1 -1
- package/dist/judges/over-engineering.d.ts +3 -0
- package/dist/judges/over-engineering.d.ts.map +1 -0
- package/dist/judges/over-engineering.js +47 -0
- package/dist/judges/over-engineering.js.map +1 -0
- package/dist/judges/performance.d.ts.map +1 -1
- package/dist/judges/performance.js +2 -0
- package/dist/judges/performance.js.map +1 -1
- package/dist/judges/portability.d.ts.map +1 -1
- package/dist/judges/portability.js +2 -0
- package/dist/judges/portability.js.map +1 -1
- package/dist/judges/rate-limiting.d.ts.map +1 -1
- package/dist/judges/rate-limiting.js +2 -0
- package/dist/judges/rate-limiting.js.map +1 -1
- package/dist/judges/reliability.d.ts.map +1 -1
- package/dist/judges/reliability.js +2 -0
- package/dist/judges/reliability.js.map +1 -1
- package/dist/judges/scalability.d.ts.map +1 -1
- package/dist/judges/scalability.js +2 -0
- package/dist/judges/scalability.js.map +1 -1
- package/dist/judges/security.d.ts.map +1 -1
- package/dist/judges/security.js +2 -0
- package/dist/judges/security.js.map +1 -1
- package/dist/judges/software-practices.d.ts.map +1 -1
- package/dist/judges/software-practices.js +2 -0
- package/dist/judges/software-practices.js.map +1 -1
- package/dist/judges/testing.d.ts.map +1 -1
- package/dist/judges/testing.js +2 -0
- package/dist/judges/testing.js.map +1 -1
- package/dist/judges/ux.d.ts.map +1 -1
- package/dist/judges/ux.js +2 -0
- package/dist/judges/ux.js.map +1 -1
- package/dist/presets.d.ts.map +1 -1
- package/dist/presets.js +21 -0
- package/dist/presets.js.map +1 -1
- package/dist/scoring.d.ts +5 -0
- package/dist/scoring.d.ts.map +1 -1
- package/dist/scoring.js +76 -0
- package/dist/scoring.js.map +1 -1
- package/dist/tools/prompts.js +1 -1
- package/dist/types.d.ts +20 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +3 -2
- package/server.json +3 -3
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PDF-Ready Report Formatter — Print-optimized HTML output.
|
|
3
|
+
*
|
|
4
|
+
* Generates a single-file HTML report optimized for "Print → Save as PDF":
|
|
5
|
+
* - Clean print layout with page breaks
|
|
6
|
+
* - No interactive elements (no JavaScript)
|
|
7
|
+
* - Fixed-width tables for consistent rendering
|
|
8
|
+
* - @media print styles for proper pagination
|
|
9
|
+
* - Executive summary on first page
|
|
10
|
+
*/
|
|
11
|
+
function esc(text) {
|
|
12
|
+
return text
|
|
13
|
+
.replace(/&/g, "&")
|
|
14
|
+
.replace(/</g, "<")
|
|
15
|
+
.replace(/>/g, ">")
|
|
16
|
+
.replace(/"/g, """)
|
|
17
|
+
.replace(/'/g, "'");
|
|
18
|
+
}
|
|
19
|
+
function severityColor(severity) {
|
|
20
|
+
switch (severity) {
|
|
21
|
+
case "critical":
|
|
22
|
+
return "#dc2626";
|
|
23
|
+
case "high":
|
|
24
|
+
return "#ea580c";
|
|
25
|
+
case "medium":
|
|
26
|
+
return "#ca8a04";
|
|
27
|
+
case "low":
|
|
28
|
+
return "#2563eb";
|
|
29
|
+
case "info":
|
|
30
|
+
return "#6b7280";
|
|
31
|
+
default:
|
|
32
|
+
return "#6b7280";
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
function renderFinding(f) {
|
|
36
|
+
const color = severityColor(f.severity);
|
|
37
|
+
return `<tr>
|
|
38
|
+
<td><span style="color:${color};font-weight:600">${esc(f.severity.toUpperCase())}</span></td>
|
|
39
|
+
<td><code>${esc(f.ruleId)}</code></td>
|
|
40
|
+
<td>${esc(f.title)}</td>
|
|
41
|
+
<td>${f.lineNumbers?.join(", ") ?? "—"}</td>
|
|
42
|
+
<td>${esc(f.confidenceTier ?? "—")}</td>
|
|
43
|
+
</tr>
|
|
44
|
+
<tr class="detail-row">
|
|
45
|
+
<td colspan="5">
|
|
46
|
+
<div class="detail">${esc(f.description)}${f.recommendation ? `<br><strong>Recommendation:</strong> ${esc(f.recommendation)}` : ""}</div>
|
|
47
|
+
</td>
|
|
48
|
+
</tr>`;
|
|
49
|
+
}
|
|
50
|
+
export function verdictToPdfHtml(verdict, filePath) {
|
|
51
|
+
const totalFindings = verdict.evaluations.reduce((s, e) => s + e.findings.length, 0);
|
|
52
|
+
const allFindings = verdict.evaluations.flatMap((e) => e.findings);
|
|
53
|
+
const severityCounts = {
|
|
54
|
+
critical: allFindings.filter((f) => f.severity === "critical").length,
|
|
55
|
+
high: allFindings.filter((f) => f.severity === "high").length,
|
|
56
|
+
medium: allFindings.filter((f) => f.severity === "medium").length,
|
|
57
|
+
low: allFindings.filter((f) => f.severity === "low").length,
|
|
58
|
+
info: allFindings.filter((f) => f.severity === "info").length,
|
|
59
|
+
};
|
|
60
|
+
const timestamp = new Date(verdict.timestamp).toLocaleString();
|
|
61
|
+
const fileLabel = filePath ? esc(filePath) : "stdin";
|
|
62
|
+
return `<!DOCTYPE html>
|
|
63
|
+
<html lang="en">
|
|
64
|
+
<head>
|
|
65
|
+
<meta charset="utf-8">
|
|
66
|
+
<title>Judges Panel Report — ${fileLabel}</title>
|
|
67
|
+
<style>
|
|
68
|
+
* { box-sizing: border-box; margin: 0; padding: 0; }
|
|
69
|
+
body { font-family: "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; color: #1a1a1a; line-height: 1.5; padding: 2rem; max-width: 210mm; margin: 0 auto; font-size: 10pt; }
|
|
70
|
+
h1 { font-size: 18pt; margin-bottom: 2pt; }
|
|
71
|
+
h2 { font-size: 13pt; margin: 1.5rem 0 0.5rem; border-bottom: 2px solid #e5e7eb; padding-bottom: 4pt; page-break-after: avoid; }
|
|
72
|
+
.meta { color: #6b7280; font-size: 9pt; margin-bottom: 1rem; }
|
|
73
|
+
.summary-table { width: 100%; border-collapse: collapse; margin-bottom: 1rem; }
|
|
74
|
+
.summary-table td { padding: 8pt 12pt; text-align: center; border: 1px solid #e5e7eb; }
|
|
75
|
+
.summary-table .value { font-size: 18pt; font-weight: 700; display: block; }
|
|
76
|
+
.summary-table .label { font-size: 7pt; color: #6b7280; text-transform: uppercase; letter-spacing: 0.05em; }
|
|
77
|
+
table.findings { width: 100%; border-collapse: collapse; font-size: 9pt; margin-bottom: 1rem; }
|
|
78
|
+
table.findings th { background: #f3f4f6; border: 1px solid #d1d5db; padding: 4pt 6pt; text-align: left; font-size: 8pt; text-transform: uppercase; letter-spacing: 0.04em; }
|
|
79
|
+
table.findings td { border: 1px solid #e5e7eb; padding: 4pt 6pt; vertical-align: top; }
|
|
80
|
+
table.findings code { font-size: 8pt; background: #f3f4f6; padding: 1pt 3pt; border-radius: 2pt; }
|
|
81
|
+
.detail-row td { background: #fafbfc; }
|
|
82
|
+
.detail { font-size: 8.5pt; color: #374151; }
|
|
83
|
+
.judge-header { background: #f9fafb; padding: 6pt; border: 1px solid #e5e7eb; margin-bottom: -1px; }
|
|
84
|
+
.judge-header .name { font-weight: 600; }
|
|
85
|
+
.judge-header .score { float: right; font-weight: 700; }
|
|
86
|
+
footer { margin-top: 2rem; text-align: center; color: #9ca3af; font-size: 7pt; border-top: 1px solid #e5e7eb; padding-top: 8pt; }
|
|
87
|
+
|
|
88
|
+
@media print {
|
|
89
|
+
body { padding: 0; max-width: none; }
|
|
90
|
+
h2 { page-break-after: avoid; }
|
|
91
|
+
table.findings { page-break-inside: auto; }
|
|
92
|
+
table.findings tr { page-break-inside: avoid; }
|
|
93
|
+
.detail-row { page-break-inside: avoid; }
|
|
94
|
+
.judge-section { page-break-inside: avoid; }
|
|
95
|
+
footer { page-break-before: avoid; }
|
|
96
|
+
@page { margin: 15mm 12mm; size: A4; }
|
|
97
|
+
}
|
|
98
|
+
</style>
|
|
99
|
+
</head>
|
|
100
|
+
<body>
|
|
101
|
+
<h1>Judges Panel Report</h1>
|
|
102
|
+
<p class="meta">File: ${fileLabel} · Generated: ${timestamp}</p>
|
|
103
|
+
|
|
104
|
+
<table class="summary-table">
|
|
105
|
+
<tr>
|
|
106
|
+
<td><span class="value" style="color:${verdict.overallVerdict === "pass" ? "#16a34a" : verdict.overallVerdict === "warning" ? "#ca8a04" : "#dc2626"}">${verdict.overallVerdict.toUpperCase()}</span><span class="label">Verdict</span></td>
|
|
107
|
+
<td><span class="value">${verdict.overallScore}</span><span class="label">Score / 100</span></td>
|
|
108
|
+
<td><span class="value">${totalFindings}</span><span class="label">Total Findings</span></td>
|
|
109
|
+
<td><span class="value">${verdict.evaluations.length}</span><span class="label">Judges</span></td>
|
|
110
|
+
</tr>
|
|
111
|
+
<tr>
|
|
112
|
+
<td><span class="value" style="color:${severityColor("critical")}">${severityCounts.critical}</span><span class="label">Critical</span></td>
|
|
113
|
+
<td><span class="value" style="color:${severityColor("high")}">${severityCounts.high}</span><span class="label">High</span></td>
|
|
114
|
+
<td><span class="value" style="color:${severityColor("medium")}">${severityCounts.medium}</span><span class="label">Medium</span></td>
|
|
115
|
+
<td><span class="value" style="color:${severityColor("low")}">${severityCounts.low}</span><span class="label">Low</span></td>
|
|
116
|
+
</tr>
|
|
117
|
+
</table>
|
|
118
|
+
|
|
119
|
+
${verdict.evaluations
|
|
120
|
+
.filter((e) => e.findings.length > 0)
|
|
121
|
+
.map((e) => `<h2>${esc(e.judgeName)}</h2>
|
|
122
|
+
<div class="judge-header">
|
|
123
|
+
<span class="name">${esc(e.judgeId)}</span>
|
|
124
|
+
<span class="score">Score: ${e.score}/100 — ${e.verdict.toUpperCase()}</span>
|
|
125
|
+
</div>
|
|
126
|
+
<table class="findings">
|
|
127
|
+
<thead><tr><th style="width:70px">Severity</th><th style="width:100px">Rule</th><th>Title</th><th style="width:40px">Line</th><th style="width:70px">Confidence</th></tr></thead>
|
|
128
|
+
<tbody>${e.findings.map(renderFinding).join("\n")}</tbody>
|
|
129
|
+
</table>`)
|
|
130
|
+
.join("\n")}
|
|
131
|
+
|
|
132
|
+
${totalFindings === 0 ? '<p style="color:#16a34a;text-align:center;margin:2rem 0;font-size:12pt">✓ No findings — all judges passed.</p>' : ""}
|
|
133
|
+
|
|
134
|
+
<footer>Generated by Judges Panel · Open in browser and use File → Print → Save as PDF</footer>
|
|
135
|
+
</body>
|
|
136
|
+
</html>`;
|
|
137
|
+
}
|
|
138
|
+
//# sourceMappingURL=pdf.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pdf.js","sourceRoot":"","sources":["../../src/formatters/pdf.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accessibility.d.ts","sourceRoot":"","sources":["../../src/judges/accessibility.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,kBAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"accessibility.d.ts","sourceRoot":"","sources":["../../src/judges/accessibility.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,kBAAkB,EAAE,eAmChC,CAAC"}
|
|
@@ -4,6 +4,8 @@ export const accessibilityJudge = {
|
|
|
4
4
|
domain: "Accessibility (a11y)",
|
|
5
5
|
description: "Evaluates code for WCAG compliance, ARIA attributes, keyboard navigation, screen reader support, color contrast, semantic HTML, and inclusive design patterns.",
|
|
6
6
|
rulePrefix: "A11Y",
|
|
7
|
+
tableDescription: "WCAG compliance, screen reader support, keyboard navigation, ARIA",
|
|
8
|
+
promptDescription: "Deep accessibility/WCAG review",
|
|
7
9
|
systemPrompt: `You are Judge Accessibility — a certified accessibility specialist (IAAP CPWA) with 15+ years building inclusive digital experiences, deep expertise in WCAG 2.2, WAI-ARIA, and assistive technology compatibility.
|
|
8
10
|
|
|
9
11
|
YOUR EVALUATION CRITERIA:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accessibility.js","sourceRoot":"","sources":["../../src/judges/accessibility.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,kBAAkB,GAAoB;IACjD,EAAE,EAAE,eAAe;IACnB,IAAI,EAAE,qBAAqB;IAC3B,MAAM,EAAE,sBAAsB;IAC9B,WAAW,EACT,gKAAgK;IAClK,UAAU,EAAE,MAAM;IAClB,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;8HAyB8G;CAC7H,CAAC"}
|
|
1
|
+
{"version":3,"file":"accessibility.js","sourceRoot":"","sources":["../../src/judges/accessibility.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,kBAAkB,GAAoB;IACjD,EAAE,EAAE,eAAe;IACnB,IAAI,EAAE,qBAAqB;IAC3B,MAAM,EAAE,sBAAsB;IAC9B,WAAW,EACT,gKAAgK;IAClK,UAAU,EAAE,MAAM;IAClB,gBAAgB,EAAE,mEAAmE;IACrF,iBAAiB,EAAE,gCAAgC;IACnD,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;8HAyB8G;CAC7H,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-instructions.d.ts","sourceRoot":"","sources":["../../src/judges/agent-instructions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,sBAAsB,EAAE,
|
|
1
|
+
{"version":3,"file":"agent-instructions.d.ts","sourceRoot":"","sources":["../../src/judges/agent-instructions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,sBAAsB,EAAE,eAmCpC,CAAC"}
|
|
@@ -4,6 +4,8 @@ export const agentInstructionsJudge = {
|
|
|
4
4
|
domain: "Agent Instruction Markdown Quality & Safety",
|
|
5
5
|
description: "Evaluates instruction markdown files for clarity, hierarchy, conflict risk, safety policy coverage, and operational guidance for AI coding agents.",
|
|
6
6
|
rulePrefix: "AGENT",
|
|
7
|
+
tableDescription: "Instruction hierarchy, conflict detection, unsafe overrides, scope, validation, policy guidance",
|
|
8
|
+
promptDescription: "Deep review of agent instruction markdown quality and safety",
|
|
7
9
|
systemPrompt: `You are Judge Agent Instructions — a specialist in AI agent governance, instruction hierarchy design, prompt safety, and operational reliability for coding assistants.
|
|
8
10
|
|
|
9
11
|
YOUR EVALUATION CRITERIA:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-instructions.js","sourceRoot":"","sources":["../../src/judges/agent-instructions.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,sBAAsB,GAAoB;IACrD,EAAE,EAAE,oBAAoB;IACxB,IAAI,EAAE,0BAA0B;IAChC,MAAM,EAAE,6CAA6C;IACrD,WAAW,EACT,oJAAoJ;IACtJ,UAAU,EAAE,OAAO;IACnB,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;gGAyBgF;CAC/F,CAAC"}
|
|
1
|
+
{"version":3,"file":"agent-instructions.js","sourceRoot":"","sources":["../../src/judges/agent-instructions.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,sBAAsB,GAAoB;IACrD,EAAE,EAAE,oBAAoB;IACxB,IAAI,EAAE,0BAA0B;IAChC,MAAM,EAAE,6CAA6C;IACrD,WAAW,EACT,oJAAoJ;IACtJ,UAAU,EAAE,OAAO;IACnB,gBAAgB,EAAE,iGAAiG;IACnH,iBAAiB,EAAE,8DAA8D;IACjF,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;gGAyBgF;CAC/F,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-code-safety.d.ts","sourceRoot":"","sources":["../../src/judges/ai-code-safety.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,iBAAiB,EAAE,
|
|
1
|
+
{"version":3,"file":"ai-code-safety.d.ts","sourceRoot":"","sources":["../../src/judges/ai-code-safety.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,iBAAiB,EAAE,eAgD/B,CAAC"}
|
|
@@ -4,6 +4,8 @@ export const aiCodeSafetyJudge = {
|
|
|
4
4
|
domain: "AI-Generated Code Quality & Security",
|
|
5
5
|
description: "Evaluates code for risks specifically common in AI-generated code — prompt injection, unsanitised LLM output, hallucinated patterns, debug-mode defaults, missing input validation, overly broad permissions, and insecure-by-default configurations.",
|
|
6
6
|
rulePrefix: "AICS",
|
|
7
|
+
tableDescription: "Prompt injection, insecure LLM output handling, debug defaults, missing validation, unsafe deserialization of AI responses",
|
|
8
|
+
promptDescription: "Deep review of AI-generated code risks: prompt injection, insecure LLM output handling, debug defaults, missing validation",
|
|
7
9
|
systemPrompt: `You are Judge AI Code Safety — a specialist in identifying security, quality, and reliability issues that are disproportionately common in AI-generated code produced by large language models and coding assistants.
|
|
8
10
|
|
|
9
11
|
YOUR EVALUATION CRITERIA:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-code-safety.js","sourceRoot":"","sources":["../../src/judges/ai-code-safety.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,iBAAiB,GAAoB;IAChD,EAAE,EAAE,gBAAgB;IACpB,IAAI,EAAE,sBAAsB;IAC5B,MAAM,EAAE,sCAAsC;IAC9C,WAAW,EACT,uPAAuP;IACzP,UAAU,EAAE,MAAM;IAClB,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wHAoCwG;CACvH,CAAC"}
|
|
1
|
+
{"version":3,"file":"ai-code-safety.js","sourceRoot":"","sources":["../../src/judges/ai-code-safety.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,iBAAiB,GAAoB;IAChD,EAAE,EAAE,gBAAgB;IACpB,IAAI,EAAE,sBAAsB;IAC5B,MAAM,EAAE,sCAAsC;IAC9C,WAAW,EACT,uPAAuP;IACzP,UAAU,EAAE,MAAM;IAClB,gBAAgB,EACd,4HAA4H;IAC9H,iBAAiB,EACf,4HAA4H;IAC9H,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wHAoCwG;CACvH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-contract.d.ts","sourceRoot":"","sources":["../../src/judges/api-contract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"api-contract.d.ts","sourceRoot":"","sources":["../../src/judges/api-contract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,gBAAgB,EAAE,eA6B9B,CAAC"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
export const apiContractJudge = {
|
|
2
2
|
id: "api-contract",
|
|
3
|
-
name: "API Contract Conformance",
|
|
3
|
+
name: "Judge API Contract Conformance",
|
|
4
4
|
description: "Evaluates API endpoint implementations for contract conformance: input validation, " +
|
|
5
5
|
"proper status codes, error handling, rate limiting, versioning, and content-type management.",
|
|
6
6
|
domain: "API Design & REST Best Practices",
|
|
7
7
|
rulePrefix: "API",
|
|
8
|
+
tableDescription: "API endpoint input validation, REST conformance, request/response contract consistency",
|
|
9
|
+
promptDescription: "Deep review of API contract conformance, input validation, REST best practices",
|
|
8
10
|
systemPrompt: `You are Judge API Contract Conformance — an expert in REST API design, HTTP semantics, and contract-first development.
|
|
9
11
|
|
|
10
12
|
YOUR EVALUATION CRITERIA:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-contract.js","sourceRoot":"","sources":["../../src/judges/api-contract.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,gBAAgB,GAAoB;IAC/C,EAAE,EAAE,cAAc;IAClB,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"api-contract.js","sourceRoot":"","sources":["../../src/judges/api-contract.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,gBAAgB,GAAoB;IAC/C,EAAE,EAAE,cAAc;IAClB,IAAI,EAAE,gCAAgC;IACtC,WAAW,EACT,qFAAqF;QACrF,8FAA8F;IAChG,MAAM,EAAE,kCAAkC;IAC1C,UAAU,EAAE,KAAK;IACjB,gBAAgB,EAAE,wFAAwF;IAC1G,iBAAiB,EAAE,gFAAgF;IACnG,YAAY,EAAE;;;;;;;;;;;;;;;;;;sFAkBsE;CACrF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-design.d.ts","sourceRoot":"","sources":["../../src/judges/api-design.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"api-design.d.ts","sourceRoot":"","sources":["../../src/judges/api-design.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,cAAc,EAAE,eAqC5B,CAAC"}
|
|
@@ -4,6 +4,8 @@ export const apiDesignJudge = {
|
|
|
4
4
|
domain: "API Design & Contracts",
|
|
5
5
|
description: "Evaluates API design for RESTful conventions, naming consistency, proper HTTP status codes, versioning, pagination, error contract consistency, and backward compatibility.",
|
|
6
6
|
rulePrefix: "API",
|
|
7
|
+
tableDescription: "REST conventions, versioning, pagination, error responses",
|
|
8
|
+
promptDescription: "Deep API design review",
|
|
7
9
|
systemPrompt: `You are Judge API Design — a senior API architect who has designed and governed public APIs used by millions of developers, with deep expertise in REST, GraphQL, gRPC, and API governance.
|
|
8
10
|
|
|
9
11
|
YOUR EVALUATION CRITERIA:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-design.js","sourceRoot":"","sources":["../../src/judges/api-design.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,cAAc,GAAoB;IAC7C,EAAE,EAAE,YAAY;IAChB,IAAI,EAAE,kBAAkB;IACxB,MAAM,EAAE,wBAAwB;IAChC,WAAW,EACT,6KAA6K;IAC/K,UAAU,EAAE,KAAK;IACjB,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;gIA2BgH;CAC/H,CAAC"}
|
|
1
|
+
{"version":3,"file":"api-design.js","sourceRoot":"","sources":["../../src/judges/api-design.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,cAAc,GAAoB;IAC7C,EAAE,EAAE,YAAY;IAChB,IAAI,EAAE,kBAAkB;IACxB,MAAM,EAAE,wBAAwB;IAChC,WAAW,EACT,6KAA6K;IAC/K,UAAU,EAAE,KAAK;IACjB,gBAAgB,EAAE,2DAA2D;IAC7E,iBAAiB,EAAE,wBAAwB;IAC3C,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;gIA2BgH;CAC/H,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authentication.d.ts","sourceRoot":"","sources":["../../src/judges/authentication.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,mBAAmB,EAAE,
|
|
1
|
+
{"version":3,"file":"authentication.d.ts","sourceRoot":"","sources":["../../src/judges/authentication.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,mBAAmB,EAAE,eAmCjC,CAAC"}
|
|
@@ -4,6 +4,8 @@ export const authenticationJudge = {
|
|
|
4
4
|
domain: "Authentication & Authorization",
|
|
5
5
|
description: "Evaluates code for proper authentication mechanisms, authorization checks, session management, token handling, and access control patterns.",
|
|
6
6
|
rulePrefix: "AUTH",
|
|
7
|
+
tableDescription: "Hardcoded creds, missing auth middleware, token in query params",
|
|
8
|
+
promptDescription: "Deep authentication & authorization review",
|
|
7
9
|
systemPrompt: `You are Judge Authentication — an identity and access management specialist with deep expertise in OAuth 2.0, OIDC, RBAC, ABAC, and secure session management. You have conducted hundreds of security audits focused specifically on auth systems.
|
|
8
10
|
|
|
9
11
|
YOUR EVALUATION CRITERIA:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authentication.js","sourceRoot":"","sources":["../../src/judges/authentication.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,mBAAmB,GAAoB;IAClD,EAAE,EAAE,gBAAgB;IACpB,IAAI,EAAE,sBAAsB;IAC5B,MAAM,EAAE,gCAAgC;IACxC,WAAW,EACT,6IAA6I;IAC/I,UAAU,EAAE,MAAM;IAClB,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;sHAyBsG;CACrH,CAAC"}
|
|
1
|
+
{"version":3,"file":"authentication.js","sourceRoot":"","sources":["../../src/judges/authentication.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,mBAAmB,GAAoB;IAClD,EAAE,EAAE,gBAAgB;IACpB,IAAI,EAAE,sBAAsB;IAC5B,MAAM,EAAE,gCAAgC;IACxC,WAAW,EACT,6IAA6I;IAC/I,UAAU,EAAE,MAAM;IAClB,gBAAgB,EAAE,iEAAiE;IACnF,iBAAiB,EAAE,4CAA4C;IAC/D,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;sHAyBsG;CACrH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backwards-compatibility.d.ts","sourceRoot":"","sources":["../../src/judges/backwards-compatibility.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,2BAA2B,EAAE,
|
|
1
|
+
{"version":3,"file":"backwards-compatibility.d.ts","sourceRoot":"","sources":["../../src/judges/backwards-compatibility.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,2BAA2B,EAAE,eAmCzC,CAAC"}
|
|
@@ -4,6 +4,8 @@ export const backwardsCompatibilityJudge = {
|
|
|
4
4
|
domain: "Backwards Compatibility & Versioning",
|
|
5
5
|
description: "Evaluates code for breaking changes, API versioning strategy, deprecation practices, and migration path planning that affect consumers and integrators.",
|
|
6
6
|
rulePrefix: "COMPAT",
|
|
7
|
+
tableDescription: "API versioning, breaking changes, response consistency",
|
|
8
|
+
promptDescription: "Deep backwards compatibility review",
|
|
7
9
|
systemPrompt: `You are Judge Backwards Compatibility — a platform API architect who has managed public APIs consumed by thousands of integrators. You have deep expertise in semantic versioning, API evolution, deprecation, and migration strategies.
|
|
8
10
|
|
|
9
11
|
YOUR EVALUATION CRITERIA:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backwards-compatibility.js","sourceRoot":"","sources":["../../src/judges/backwards-compatibility.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,2BAA2B,GAAoB;IAC1D,EAAE,EAAE,yBAAyB;IAC7B,IAAI,EAAE,+BAA+B;IACrC,MAAM,EAAE,sCAAsC;IAC9C,WAAW,EACT,yJAAyJ;IAC3J,UAAU,EAAE,QAAQ;IACpB,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;mIAyBmH;CAClI,CAAC"}
|
|
1
|
+
{"version":3,"file":"backwards-compatibility.js","sourceRoot":"","sources":["../../src/judges/backwards-compatibility.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,2BAA2B,GAAoB;IAC1D,EAAE,EAAE,yBAAyB;IAC7B,IAAI,EAAE,+BAA+B;IACrC,MAAM,EAAE,sCAAsC;IAC9C,WAAW,EACT,yJAAyJ;IAC3J,UAAU,EAAE,QAAQ;IACpB,gBAAgB,EAAE,wDAAwD;IAC1E,iBAAiB,EAAE,qCAAqC;IACxD,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;mIAyBmH;CAClI,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"caching.d.ts","sourceRoot":"","sources":["../../src/judges/caching.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"caching.d.ts","sourceRoot":"","sources":["../../src/judges/caching.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,YAAY,EAAE,eAmC1B,CAAC"}
|
package/dist/judges/caching.js
CHANGED
|
@@ -4,6 +4,8 @@ export const cachingJudge = {
|
|
|
4
4
|
domain: "Caching Strategy & Data Freshness",
|
|
5
5
|
description: "Evaluates code for caching strategy, cache invalidation, TTL configuration, cache stampede prevention, and HTTP caching headers.",
|
|
6
6
|
rulePrefix: "CACHE",
|
|
7
|
+
tableDescription: "Unbounded caches, missing TTL, no HTTP cache headers",
|
|
8
|
+
promptDescription: "Deep caching strategy review",
|
|
7
9
|
systemPrompt: `You are Judge Caching — a performance architect specializing in caching strategies across application layers, CDNs, and distributed systems. You understand that "there are only two hard things in computer science: cache invalidation and naming things."
|
|
8
10
|
|
|
9
11
|
YOUR EVALUATION CRITERIA:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"caching.js","sourceRoot":"","sources":["../../src/judges/caching.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,YAAY,GAAoB;IAC3C,EAAE,EAAE,SAAS;IACb,IAAI,EAAE,eAAe;IACrB,MAAM,EAAE,mCAAmC;IAC3C,WAAW,EACT,kIAAkI;IACpI,UAAU,EAAE,OAAO;IACnB,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;0HAyB0G;CACzH,CAAC"}
|
|
1
|
+
{"version":3,"file":"caching.js","sourceRoot":"","sources":["../../src/judges/caching.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,YAAY,GAAoB;IAC3C,EAAE,EAAE,SAAS;IACb,IAAI,EAAE,eAAe;IACrB,MAAM,EAAE,mCAAmC;IAC3C,WAAW,EACT,kIAAkI;IACpI,UAAU,EAAE,OAAO;IACnB,gBAAgB,EAAE,sDAAsD;IACxE,iBAAiB,EAAE,8BAA8B;IACjD,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;0HAyB0G;CACzH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ci-cd.d.ts","sourceRoot":"","sources":["../../src/judges/ci-cd.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"ci-cd.d.ts","sourceRoot":"","sources":["../../src/judges/ci-cd.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,SAAS,EAAE,eAmCvB,CAAC"}
|
package/dist/judges/ci-cd.js
CHANGED
|
@@ -4,6 +4,8 @@ export const ciCdJudge = {
|
|
|
4
4
|
domain: "CI/CD Pipeline & Deployment Safety",
|
|
5
5
|
description: "Evaluates code for CI/CD readiness, build reproducibility, deployment safety, pipeline configuration, and release management practices.",
|
|
6
6
|
rulePrefix: "CICD",
|
|
7
|
+
tableDescription: "Test infrastructure, lint config, Docker tags, build scripts",
|
|
8
|
+
promptDescription: "Deep CI/CD pipeline review",
|
|
7
9
|
systemPrompt: `You are Judge CI/CD — a DevOps engineer and release manager who has built and maintained CI/CD pipelines for organizations shipping hundreds of deployments per day. You specialize in build reproducibility, deployment safety, and release automation.
|
|
8
10
|
|
|
9
11
|
YOUR EVALUATION CRITERIA:
|
package/dist/judges/ci-cd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ci-cd.js","sourceRoot":"","sources":["../../src/judges/ci-cd.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,SAAS,GAAoB;IACxC,EAAE,EAAE,OAAO;IACX,IAAI,EAAE,aAAa;IACnB,MAAM,EAAE,oCAAoC;IAC5C,WAAW,EACT,yIAAyI;IAC3I,UAAU,EAAE,MAAM;IAClB,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;sHAyBsG;CACrH,CAAC"}
|
|
1
|
+
{"version":3,"file":"ci-cd.js","sourceRoot":"","sources":["../../src/judges/ci-cd.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,SAAS,GAAoB;IACxC,EAAE,EAAE,OAAO;IACX,IAAI,EAAE,aAAa;IACnB,MAAM,EAAE,oCAAoC;IAC5C,WAAW,EACT,yIAAyI;IAC3I,UAAU,EAAE,MAAM;IAClB,gBAAgB,EAAE,8DAA8D;IAChF,iBAAiB,EAAE,4BAA4B;IAC/C,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;sHAyBsG;CACrH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cloud-readiness.d.ts","sourceRoot":"","sources":["../../src/judges/cloud-readiness.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,mBAAmB,EAAE,
|
|
1
|
+
{"version":3,"file":"cloud-readiness.d.ts","sourceRoot":"","sources":["../../src/judges/cloud-readiness.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,mBAAmB,EAAE,eAmCjC,CAAC"}
|
|
@@ -4,6 +4,8 @@ export const cloudReadinessJudge = {
|
|
|
4
4
|
domain: "Cloud-Native Architecture & DevOps",
|
|
5
5
|
description: "Evaluates code for cloud-native patterns, 12-factor app compliance, containerization readiness, infrastructure as code, observability, and CI/CD maturity.",
|
|
6
6
|
rulePrefix: "CLOUD",
|
|
7
|
+
tableDescription: "12-Factor compliance, containerization, graceful shutdown, IaC",
|
|
8
|
+
promptDescription: "Deep cloud readiness review",
|
|
7
9
|
systemPrompt: `You are Judge Cloud Readiness — a cloud-native architect and DevOps practitioner certified across AWS, Azure, and GCP with deep expertise in platform engineering and SRE.
|
|
8
10
|
|
|
9
11
|
YOUR EVALUATION CRITERIA:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cloud-readiness.js","sourceRoot":"","sources":["../../src/judges/cloud-readiness.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,mBAAmB,GAAoB;IAClD,EAAE,EAAE,iBAAiB;IACrB,IAAI,EAAE,uBAAuB;IAC7B,MAAM,EAAE,oCAAoC;IAC5C,WAAW,EACT,4JAA4J;IAC9J,UAAU,EAAE,OAAO;IACnB,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;gIAyBgH;CAC/H,CAAC"}
|
|
1
|
+
{"version":3,"file":"cloud-readiness.js","sourceRoot":"","sources":["../../src/judges/cloud-readiness.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,mBAAmB,GAAoB;IAClD,EAAE,EAAE,iBAAiB;IACrB,IAAI,EAAE,uBAAuB;IAC7B,MAAM,EAAE,oCAAoC;IAC5C,WAAW,EACT,4JAA4J;IAC9J,UAAU,EAAE,OAAO;IACnB,gBAAgB,EAAE,gEAAgE;IAClF,iBAAiB,EAAE,6BAA6B;IAChD,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;gIAyBgH;CAC/H,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"code-structure.d.ts","sourceRoot":"","sources":["../../src/judges/code-structure.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,kBAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"code-structure.d.ts","sourceRoot":"","sources":["../../src/judges/code-structure.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,kBAAkB,EAAE,eA8ChC,CAAC"}
|
|
@@ -4,6 +4,8 @@ export const codeStructureJudge = {
|
|
|
4
4
|
domain: "Structural Analysis",
|
|
5
5
|
description: "Uses AST parsing (TypeScript compiler for JS/TS, scope-tracking parser for Python/Rust/Go/Java/C#) to evaluate cyclomatic complexity, nesting depth, function length, parameter count, dead code, and type-safety — metrics that regex alone cannot reliably measure.",
|
|
6
6
|
rulePrefix: "STRUCT",
|
|
7
|
+
tableDescription: "Cyclomatic complexity, nesting depth, function length, dead code, type safety",
|
|
8
|
+
promptDescription: "Deep AST-based structural analysis review",
|
|
7
9
|
systemPrompt: `You are the Code Structure Judge. You use Abstract Syntax Tree (AST) analysis
|
|
8
10
|
to evaluate code structure with precision that regex patterns cannot achieve.
|
|
9
11
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"code-structure.js","sourceRoot":"","sources":["../../src/judges/code-structure.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,kBAAkB,GAAoB;IACjD,EAAE,EAAE,gBAAgB;IACpB,IAAI,EAAE,sBAAsB;IAC5B,MAAM,EAAE,qBAAqB;IAC7B,WAAW,EACT,uQAAuQ;IACzQ,UAAU,EAAE,QAAQ;IACpB,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kLAoCkK;CACjL,CAAC"}
|
|
1
|
+
{"version":3,"file":"code-structure.js","sourceRoot":"","sources":["../../src/judges/code-structure.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,kBAAkB,GAAoB;IACjD,EAAE,EAAE,gBAAgB;IACpB,IAAI,EAAE,sBAAsB;IAC5B,MAAM,EAAE,qBAAqB;IAC7B,WAAW,EACT,uQAAuQ;IACzQ,UAAU,EAAE,QAAQ;IACpB,gBAAgB,EAAE,+EAA+E;IACjG,iBAAiB,EAAE,2CAA2C;IAC9D,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kLAoCkK;CACjL,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compliance.d.ts","sourceRoot":"","sources":["../../src/judges/compliance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,eAAe,EAAE,
|
|
1
|
+
{"version":3,"file":"compliance.d.ts","sourceRoot":"","sources":["../../src/judges/compliance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,eAAe,EAAE,eAsC7B,CAAC"}
|
|
@@ -4,6 +4,8 @@ export const complianceJudge = {
|
|
|
4
4
|
domain: "Regulatory & License Compliance",
|
|
5
5
|
description: "Evaluates code for OSS license compatibility, audit logging, SOC 2 controls, export controls, data residency, retention policies, and regulatory readiness.",
|
|
6
6
|
rulePrefix: "COMP",
|
|
7
|
+
tableDescription: "GDPR/CCPA, PII protection, consent, data retention, audit trails",
|
|
8
|
+
promptDescription: "Deep regulatory compliance review",
|
|
7
9
|
systemPrompt: `You are Judge Compliance — a regulatory compliance engineer and legal-tech specialist with expertise in OSS licensing, SOC 2, FedRAMP, PCI-DSS, and international data regulations.
|
|
8
10
|
|
|
9
11
|
YOUR EVALUATION CRITERIA:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compliance.js","sourceRoot":"","sources":["../../src/judges/compliance.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,eAAe,GAAoB;IAC9C,EAAE,EAAE,YAAY;IAChB,IAAI,EAAE,kBAAkB;IACxB,MAAM,EAAE,iCAAiC;IACzC,WAAW,EACT,6JAA6J;IAC/J,UAAU,EAAE,MAAM;IAClB,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;6HA4B6G;CAC5H,CAAC"}
|
|
1
|
+
{"version":3,"file":"compliance.js","sourceRoot":"","sources":["../../src/judges/compliance.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,eAAe,GAAoB;IAC9C,EAAE,EAAE,YAAY;IAChB,IAAI,EAAE,kBAAkB;IACxB,MAAM,EAAE,iCAAiC;IACzC,WAAW,EACT,6JAA6J;IAC/J,UAAU,EAAE,MAAM;IAClB,gBAAgB,EAAE,kEAAkE;IACpF,iBAAiB,EAAE,mCAAmC;IACtD,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;6HA4B6G;CAC5H,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"concurrency.d.ts","sourceRoot":"","sources":["../../src/judges/concurrency.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"concurrency.d.ts","sourceRoot":"","sources":["../../src/judges/concurrency.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,gBAAgB,EAAE,eAqC9B,CAAC"}
|
|
@@ -4,6 +4,8 @@ export const concurrencyJudge = {
|
|
|
4
4
|
domain: "Concurrency & Thread Safety",
|
|
5
5
|
description: "Evaluates code for race conditions, deadlocks, atomic operations, lock contention, shared mutable state, and async error propagation.",
|
|
6
6
|
rulePrefix: "CONC",
|
|
7
|
+
tableDescription: "Race conditions, unbounded parallelism, missing await",
|
|
8
|
+
promptDescription: "Deep concurrency & async safety review",
|
|
7
9
|
systemPrompt: `You are Judge Concurrency — a concurrency and distributed systems expert with deep experience in multi-threaded programming, lock-free algorithms, async runtimes, and correctness verification.
|
|
8
10
|
|
|
9
11
|
YOUR EVALUATION CRITERIA:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"concurrency.js","sourceRoot":"","sources":["../../src/judges/concurrency.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,gBAAgB,GAAoB;IAC/C,EAAE,EAAE,aAAa;IACjB,IAAI,EAAE,mBAAmB;IACzB,MAAM,EAAE,6BAA6B;IACrC,WAAW,EACT,uIAAuI;IACzI,UAAU,EAAE,MAAM;IAClB,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;+HA2B+G;CAC9H,CAAC"}
|
|
1
|
+
{"version":3,"file":"concurrency.js","sourceRoot":"","sources":["../../src/judges/concurrency.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,gBAAgB,GAAoB;IAC/C,EAAE,EAAE,aAAa;IACjB,IAAI,EAAE,mBAAmB;IACzB,MAAM,EAAE,6BAA6B;IACrC,WAAW,EACT,uIAAuI;IACzI,UAAU,EAAE,MAAM;IAClB,gBAAgB,EAAE,uDAAuD;IACzE,iBAAiB,EAAE,wCAAwC;IAC3D,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;+HA2B+G;CAC9H,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configuration-management.d.ts","sourceRoot":"","sources":["../../src/judges/configuration-management.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,4BAA4B,EAAE,
|
|
1
|
+
{"version":3,"file":"configuration-management.d.ts","sourceRoot":"","sources":["../../src/judges/configuration-management.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,4BAA4B,EAAE,eAmC1C,CAAC"}
|
|
@@ -4,6 +4,8 @@ export const configurationManagementJudge = {
|
|
|
4
4
|
domain: "Configuration & Secrets Management",
|
|
5
5
|
description: "Evaluates code for proper externalization of configuration, secrets management, environment-based config switching, and feature flag implementation.",
|
|
6
6
|
rulePrefix: "CFG",
|
|
7
|
+
tableDescription: "Hardcoded secrets, missing env vars, config validation",
|
|
8
|
+
promptDescription: "Deep configuration & secrets review",
|
|
7
9
|
systemPrompt: `You are Judge Configuration Management — an infrastructure and platform engineer specializing in configuration management, secrets rotation, and environment parity. You have seen countless production incidents caused by hardcoded values, leaked secrets, and configuration drift.
|
|
8
10
|
|
|
9
11
|
YOUR EVALUATION CRITERIA:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configuration-management.js","sourceRoot":"","sources":["../../src/judges/configuration-management.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,4BAA4B,GAAoB;IAC3D,EAAE,EAAE,0BAA0B;IAC9B,IAAI,EAAE,gCAAgC;IACtC,MAAM,EAAE,oCAAoC;IAC5C,WAAW,EACT,sJAAsJ;IACxJ,UAAU,EAAE,KAAK;IACjB,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;yIAyByH;CACxI,CAAC"}
|
|
1
|
+
{"version":3,"file":"configuration-management.js","sourceRoot":"","sources":["../../src/judges/configuration-management.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,4BAA4B,GAAoB;IAC3D,EAAE,EAAE,0BAA0B;IAC9B,IAAI,EAAE,gCAAgC;IACtC,MAAM,EAAE,oCAAoC;IAC5C,WAAW,EACT,sJAAsJ;IACxJ,UAAU,EAAE,KAAK;IACjB,gBAAgB,EAAE,wDAAwD;IAC1E,iBAAiB,EAAE,qCAAqC;IACxD,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;yIAyByH;CACxI,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cost-effectiveness.d.ts","sourceRoot":"","sources":["../../src/judges/cost-effectiveness.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,sBAAsB,EAAE,
|
|
1
|
+
{"version":3,"file":"cost-effectiveness.d.ts","sourceRoot":"","sources":["../../src/judges/cost-effectiveness.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,sBAAsB,EAAE,eAsCpC,CAAC"}
|
|
@@ -4,6 +4,8 @@ export const costEffectivenessJudge = {
|
|
|
4
4
|
domain: "Cost Optimization & Resource Efficiency",
|
|
5
5
|
description: "Evaluates code for unnecessary resource consumption, inefficient algorithms, wasteful cloud resource usage, and opportunities for cost optimization.",
|
|
6
6
|
rulePrefix: "COST",
|
|
7
|
+
tableDescription: "Algorithm efficiency, N+1 queries, memory waste, caching strategy",
|
|
8
|
+
promptDescription: "Deep cost optimization review",
|
|
7
9
|
systemPrompt: `You are Judge Cost Effectiveness — a cloud economics and performance engineering expert who has optimized millions of dollars in cloud spend across Fortune 500 companies.
|
|
8
10
|
|
|
9
11
|
YOUR EVALUATION CRITERIA:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cost-effectiveness.js","sourceRoot":"","sources":["../../src/judges/cost-effectiveness.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,sBAAsB,GAAoB;IACrD,EAAE,EAAE,oBAAoB;IACxB,IAAI,EAAE,0BAA0B;IAChC,MAAM,EAAE,yCAAyC;IACjD,WAAW,EACT,sJAAsJ;IACxJ,UAAU,EAAE,MAAM;IAClB,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;kIA4BkH;CACjI,CAAC"}
|
|
1
|
+
{"version":3,"file":"cost-effectiveness.js","sourceRoot":"","sources":["../../src/judges/cost-effectiveness.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,sBAAsB,GAAoB;IACrD,EAAE,EAAE,oBAAoB;IACxB,IAAI,EAAE,0BAA0B;IAChC,MAAM,EAAE,yCAAyC;IACjD,WAAW,EACT,sJAAsJ;IACxJ,UAAU,EAAE,MAAM;IAClB,gBAAgB,EAAE,mEAAmE;IACrF,iBAAiB,EAAE,+BAA+B;IAClD,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;kIA4BkH;CACjI,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cybersecurity.d.ts","sourceRoot":"","sources":["../../src/judges/cybersecurity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,kBAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"cybersecurity.d.ts","sourceRoot":"","sources":["../../src/judges/cybersecurity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,kBAAkB,EAAE,eAkChC,CAAC"}
|
|
@@ -4,6 +4,8 @@ export const cybersecurityJudge = {
|
|
|
4
4
|
domain: "Cybersecurity & Threat Defense",
|
|
5
5
|
description: "Evaluates code for vulnerability to attacks (injection, XSS, CSRF, SSRF), authentication/authorization flaws, dependency vulnerabilities, and adherence to OWASP Top 10.",
|
|
6
6
|
rulePrefix: "CYBER",
|
|
7
|
+
tableDescription: "Injection attacks, XSS, CSRF, auth flaws, OWASP Top 10",
|
|
8
|
+
promptDescription: "Deep cybersecurity review",
|
|
7
9
|
systemPrompt: `You are Judge Cybersecurity — a principal application security engineer and ethical hacker with expertise in offensive security, vulnerability assessment, and secure coding.
|
|
8
10
|
|
|
9
11
|
YOUR EVALUATION CRITERIA:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cybersecurity.js","sourceRoot":"","sources":["../../src/judges/cybersecurity.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,kBAAkB,GAAoB;IACjD,EAAE,EAAE,eAAe;IACnB,IAAI,EAAE,qBAAqB;IAC3B,MAAM,EAAE,gCAAgC;IACxC,WAAW,EACT,0KAA0K;IAC5K,UAAU,EAAE,OAAO;IACnB,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;0HAwB0G;CACzH,CAAC"}
|
|
1
|
+
{"version":3,"file":"cybersecurity.js","sourceRoot":"","sources":["../../src/judges/cybersecurity.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,kBAAkB,GAAoB;IACjD,EAAE,EAAE,eAAe;IACnB,IAAI,EAAE,qBAAqB;IAC3B,MAAM,EAAE,gCAAgC;IACxC,WAAW,EACT,0KAA0K;IAC5K,UAAU,EAAE,OAAO;IACnB,gBAAgB,EAAE,wDAAwD;IAC1E,iBAAiB,EAAE,2BAA2B;IAC9C,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;0HAwB0G;CACzH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-security.d.ts","sourceRoot":"","sources":["../../src/judges/data-security.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,iBAAiB,EAAE,
|
|
1
|
+
{"version":3,"file":"data-security.d.ts","sourceRoot":"","sources":["../../src/judges/data-security.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,iBAAiB,EAAE,eAgC/B,CAAC"}
|
|
@@ -4,6 +4,8 @@ export const dataSecurityJudge = {
|
|
|
4
4
|
domain: "Data Security & Privacy",
|
|
5
5
|
description: "Evaluates code for data protection, encryption practices, PII handling, data-at-rest/in-transit security, access controls, and compliance with data privacy regulations (GDPR, CCPA, HIPAA).",
|
|
6
6
|
rulePrefix: "DATA",
|
|
7
|
+
tableDescription: "Encryption, PII handling, secrets management, access controls",
|
|
8
|
+
promptDescription: "Deep data security review",
|
|
7
9
|
systemPrompt: `You are Judge Data Security — a senior data protection architect with 20+ years of experience in data security, privacy engineering, and regulatory compliance.
|
|
8
10
|
|
|
9
11
|
YOUR EVALUATION CRITERIA:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-security.js","sourceRoot":"","sources":["../../src/judges/data-security.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,iBAAiB,GAAoB;IAChD,EAAE,EAAE,eAAe;IACnB,IAAI,EAAE,qBAAqB;IAC3B,MAAM,EAAE,yBAAyB;IACjC,WAAW,EACT,8LAA8L;IAChM,UAAU,EAAE,MAAM;IAClB,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;sHAsBsG;CACrH,CAAC"}
|
|
1
|
+
{"version":3,"file":"data-security.js","sourceRoot":"","sources":["../../src/judges/data-security.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,iBAAiB,GAAoB;IAChD,EAAE,EAAE,eAAe;IACnB,IAAI,EAAE,qBAAqB;IAC3B,MAAM,EAAE,yBAAyB;IACjC,WAAW,EACT,8LAA8L;IAChM,UAAU,EAAE,MAAM;IAClB,gBAAgB,EAAE,+DAA+D;IACjF,iBAAiB,EAAE,2BAA2B;IAC9C,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;sHAsBsG;CACrH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-sovereignty.d.ts","sourceRoot":"","sources":["../../src/judges/data-sovereignty.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,oBAAoB,EAAE,
|
|
1
|
+
{"version":3,"file":"data-sovereignty.d.ts","sourceRoot":"","sources":["../../src/judges/data-sovereignty.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,oBAAoB,EAAE,eAyDlC,CAAC"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
export const dataSovereigntyJudge = {
|
|
2
2
|
id: "data-sovereignty",
|
|
3
|
-
name: "Judge Sovereignty",
|
|
3
|
+
name: "Judge Data Sovereignty",
|
|
4
4
|
domain: "Data, Technological & Operational Sovereignty",
|
|
5
5
|
description: "Evaluates code for data residency enforcement, cross-border transfer controls, jurisdiction-aware data handling, vendor independence (technological sovereignty), and operational self-governance (audit trails, resilience, data portability).",
|
|
6
6
|
rulePrefix: "SOV",
|
|
7
|
+
tableDescription: "Data residency, cross-border transfers, vendor key management, AI model portability, identity federation, circuit breakers, audit trails, data export",
|
|
8
|
+
promptDescription: "Deep data, technological & operational sovereignty review",
|
|
7
9
|
systemPrompt: `You are Judge Sovereignty — a specialist in data residency, cross-border data transfer controls, jurisdictional compliance, cloud architecture governance, technological independence, and operational self-governance.
|
|
8
10
|
|
|
9
11
|
You evaluate code across THREE sovereignty pillars:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-sovereignty.js","sourceRoot":"","sources":["../../src/judges/data-sovereignty.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,oBAAoB,GAAoB;IACnD,EAAE,EAAE,kBAAkB;IACtB,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"data-sovereignty.js","sourceRoot":"","sources":["../../src/judges/data-sovereignty.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,oBAAoB,GAAoB;IACnD,EAAE,EAAE,kBAAkB;IACtB,IAAI,EAAE,wBAAwB;IAC9B,MAAM,EAAE,+CAA+C;IACvD,WAAW,EACT,iPAAiP;IACnP,UAAU,EAAE,KAAK;IACjB,gBAAgB,EACd,uJAAuJ;IACzJ,iBAAiB,EAAE,2DAA2D;IAC9E,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oFA8CoE;CACnF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/judges/database.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/judges/database.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,aAAa,EAAE,eAuC3B,CAAC"}
|
package/dist/judges/database.js
CHANGED
|
@@ -4,6 +4,8 @@ export const databaseJudge = {
|
|
|
4
4
|
domain: "Database Design & Query Efficiency",
|
|
5
5
|
description: "Evaluates code for query efficiency, connection management, migration practices, schema design, and database access patterns that affect performance and reliability.",
|
|
6
6
|
rulePrefix: "DB",
|
|
7
|
+
tableDescription: "SQL injection, N+1 queries, connection pooling, transactions",
|
|
8
|
+
promptDescription: "Deep database design & query review",
|
|
7
9
|
systemPrompt: `You are Judge Database — a database architect and DBA with deep expertise in SQL, NoSQL, ORMs, query optimization, and data modeling. You have diagnosed thousands of database-related production incidents.
|
|
8
10
|
|
|
9
11
|
YOUR EVALUATION CRITERIA:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/judges/database.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,aAAa,GAAoB;IAC5C,EAAE,EAAE,UAAU;IACd,IAAI,EAAE,gBAAgB;IACtB,MAAM,EAAE,oCAAoC;IAC5C,WAAW,EACT,uKAAuK;IACzK,UAAU,EAAE,IAAI;IAChB,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iIA6BiH;CAChI,CAAC"}
|
|
1
|
+
{"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/judges/database.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,aAAa,GAAoB;IAC5C,EAAE,EAAE,UAAU;IACd,IAAI,EAAE,gBAAgB;IACtB,MAAM,EAAE,oCAAoC;IAC5C,WAAW,EACT,uKAAuK;IACzK,UAAU,EAAE,IAAI;IAChB,gBAAgB,EAAE,8DAA8D;IAChF,iBAAiB,EAAE,qCAAqC;IACxD,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iIA6BiH;CAChI,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dependency-health.d.ts","sourceRoot":"","sources":["../../src/judges/dependency-health.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,qBAAqB,EAAE,
|
|
1
|
+
{"version":3,"file":"dependency-health.d.ts","sourceRoot":"","sources":["../../src/judges/dependency-health.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,qBAAqB,EAAE,eAqCnC,CAAC"}
|
|
@@ -4,6 +4,8 @@ export const dependencyHealthJudge = {
|
|
|
4
4
|
domain: "Supply Chain & Dependencies",
|
|
5
5
|
description: "Evaluates code for abandoned packages, license risks, transitive vulnerability depth, dependency count bloat, lockfile hygiene, and update freshness.",
|
|
6
6
|
rulePrefix: "DEPS",
|
|
7
|
+
tableDescription: "Version pinning, deprecated packages, supply chain",
|
|
8
|
+
promptDescription: "Deep dependency health review",
|
|
7
9
|
systemPrompt: `You are Judge Dependency Health — a software supply chain security expert with deep expertise in dependency management, vulnerability tracking, and open-source ecosystem risk assessment.
|
|
8
10
|
|
|
9
11
|
YOUR EVALUATION CRITERIA:
|