@kevinrabun/judges 1.6.0 → 1.8.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/README.md +154 -46
- package/dist/evaluators/data-sovereignty.d.ts +3 -0
- package/dist/evaluators/data-sovereignty.d.ts.map +1 -0
- package/dist/evaluators/data-sovereignty.js +109 -0
- package/dist/evaluators/data-sovereignty.js.map +1 -0
- package/dist/evaluators/index.d.ts +14 -1
- package/dist/evaluators/index.d.ts.map +1 -1
- package/dist/evaluators/index.js +158 -0
- package/dist/evaluators/index.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +115 -7
- package/dist/index.js.map +1 -1
- package/dist/judges/data-sovereignty.d.ts +3 -0
- package/dist/judges/data-sovereignty.d.ts.map +1 -0
- package/dist/judges/data-sovereignty.js +34 -0
- package/dist/judges/data-sovereignty.js.map +1 -0
- package/dist/judges/index.d.ts.map +1 -1
- package/dist/judges/index.js +2 -0
- package/dist/judges/index.js.map +1 -1
- package/dist/types.d.ts +67 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +2 -2
- package/server.json +3 -3
package/README.md
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
# Judges Panel
|
|
2
2
|
|
|
3
|
-
An MCP (Model Context Protocol) server that provides a panel of **
|
|
3
|
+
An MCP (Model Context Protocol) server that provides a panel of **32 specialized judges** to evaluate AI-generated code — acting as an independent quality gate regardless of which project is being reviewed. Includes **built-in AST analysis** powered by the TypeScript Compiler API — no separate parser server needed.
|
|
4
|
+
|
|
5
|
+
**Highlights:**
|
|
6
|
+
- Includes an **App Builder Workflow (3-step)** demo for release decisions, plain-language risk summaries, and prioritized fixes — see [Try the Demo](#2-try-the-demo).
|
|
4
7
|
|
|
5
8
|
[](https://github.com/KevinRabun/judges/actions/workflows/ci.yml)
|
|
6
9
|
[](https://www.npmjs.com/package/@kevinrabun/judges)
|
|
@@ -21,7 +24,7 @@ npm run build
|
|
|
21
24
|
|
|
22
25
|
### 2. Try the Demo
|
|
23
26
|
|
|
24
|
-
Run the included demo to see all
|
|
27
|
+
Run the included demo to see all 32 judges evaluate a purposely flawed API server:
|
|
25
28
|
|
|
26
29
|
```bash
|
|
27
30
|
npm run demo
|
|
@@ -29,7 +32,38 @@ npm run demo
|
|
|
29
32
|
|
|
30
33
|
This evaluates [`examples/sample-vulnerable-api.ts`](examples/sample-vulnerable-api.ts) — a file intentionally packed with security holes, performance anti-patterns, and code quality issues — and prints a full verdict with per-judge scores and findings.
|
|
31
34
|
|
|
32
|
-
**
|
|
35
|
+
The demo now also includes an **App Builder Workflow (3-step)** section. In a single run, you get both tribunal output and workflow output:
|
|
36
|
+
- Release decision (`Ship now` / `Ship with caution` / `Do not ship`)
|
|
37
|
+
- Plain-language summaries of top risks
|
|
38
|
+
- Prioritized remediation tasks and AI-fixable `P0/P1` items
|
|
39
|
+
|
|
40
|
+
**Sample workflow output (truncated):**
|
|
41
|
+
|
|
42
|
+
```text
|
|
43
|
+
╔══════════════════════════════════════════════════════════════╗
|
|
44
|
+
║ App Builder Workflow Demo (3-Step) ║
|
|
45
|
+
╚══════════════════════════════════════════════════════════════╝
|
|
46
|
+
|
|
47
|
+
Decision : Do not ship
|
|
48
|
+
Verdict : FAIL (47/100)
|
|
49
|
+
Risk Counts : Critical 24 | High 27 | Medium 55
|
|
50
|
+
|
|
51
|
+
Step 2 — Plain-Language Findings:
|
|
52
|
+
- [CRITICAL] DATA-001: Hardcoded password detected
|
|
53
|
+
What: ...
|
|
54
|
+
Why : ...
|
|
55
|
+
Next: ...
|
|
56
|
+
|
|
57
|
+
Step 3 — Prioritized Tasks:
|
|
58
|
+
- P0 | DEVELOPER | Effort L | DATA-001
|
|
59
|
+
Task: ...
|
|
60
|
+
Done: ...
|
|
61
|
+
|
|
62
|
+
AI-Fixable Now (P0/P1):
|
|
63
|
+
- P0 DATA-001: ...
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
**Sample tribunal output (truncated):**
|
|
33
67
|
|
|
34
68
|
```
|
|
35
69
|
╔══════════════════════════════════════════════════════════════╗
|
|
@@ -41,7 +75,7 @@ This evaluates [`examples/sample-vulnerable-api.ts`](examples/sample-vulnerable-
|
|
|
41
75
|
Critical Issues : 15
|
|
42
76
|
High Issues : 17
|
|
43
77
|
Total Findings : 83
|
|
44
|
-
Judges Run :
|
|
78
|
+
Judges Run : 32
|
|
45
79
|
|
|
46
80
|
Per-Judge Breakdown:
|
|
47
81
|
────────────────────────────────────────────────────────────────
|
|
@@ -83,7 +117,7 @@ This evaluates [`examples/sample-vulnerable-api.ts`](examples/sample-vulnerable-
|
|
|
83
117
|
npm test
|
|
84
118
|
```
|
|
85
119
|
|
|
86
|
-
Runs automated tests covering all
|
|
120
|
+
Runs automated tests covering all judges, AST parsers, markdown formatters, and edge cases.
|
|
87
121
|
|
|
88
122
|
### 4. Connect to Your Editor
|
|
89
123
|
|
|
@@ -141,6 +175,7 @@ Then use `judges` as the command in your MCP config (no `args` needed).
|
|
|
141
175
|
| **Observability** | Observability & Monitoring | `OBS-` | Structured logging, health checks, metrics, tracing |
|
|
142
176
|
| **Performance** | Performance & Efficiency | `PERF-` | N+1 queries, sync I/O, caching, memory leaks |
|
|
143
177
|
| **Compliance** | Regulatory Compliance | `COMP-` | GDPR/CCPA, PII protection, consent, data retention, audit trails |
|
|
178
|
+
| **Data Sovereignty** | Data Sovereignty & Jurisdictional Controls | `SOV-` | Data residency, cross-border transfer controls, jurisdiction-aware routing, sovereignty guardrails |
|
|
144
179
|
| **Testing** | Testing & Quality Assurance | `TEST-` | Test coverage, assertions, test isolation, naming |
|
|
145
180
|
| **Documentation** | Documentation & Readability | `DOC-` | JSDoc/docstrings, magic numbers, TODOs, code comments |
|
|
146
181
|
| **Internationalization** | Internationalization (i18n) | `I18N-` | Hardcoded strings, locale handling, currency formatting |
|
|
@@ -159,22 +194,47 @@ Then use `judges` as the command in your MCP config (no `args` needed).
|
|
|
159
194
|
| **Logging Privacy** | Logging Privacy & Data Redaction | `LOGPRIV-` | PII in logs, token logging, structured logging, redaction |
|
|
160
195
|
| **Rate Limiting** | Rate Limiting & Throttling | `RATE-` | Missing rate limits, unbounded queries, backoff strategy |
|
|
161
196
|
| **CI/CD** | CI/CD Pipeline & Deployment Safety | `CICD-` | Test infrastructure, lint config, Docker tags, build scripts |
|
|
197
|
+
| **Code Structure** | Structural Analysis (AST) | `STRUCT-` | Cyclomatic complexity, nesting depth, function length, dead code, type safety |
|
|
162
198
|
|
|
163
199
|
---
|
|
164
200
|
|
|
165
201
|
## How It Works
|
|
166
202
|
|
|
167
|
-
The tribunal operates in
|
|
203
|
+
The tribunal operates in three layers:
|
|
204
|
+
|
|
205
|
+
1. **Pattern-Based Analysis** — All tools (`evaluate_code`, `evaluate_code_single_judge`, `evaluate_project`, `evaluate_diff`) perform heuristic analysis using regex pattern matching to catch common anti-patterns. This works entirely offline with zero external API calls.
|
|
168
206
|
|
|
169
|
-
|
|
207
|
+
2. **AST-Based Structural Analysis** — The Code Structure judge (`STRUCT-*` rules) uses real Abstract Syntax Tree parsing to measure cyclomatic complexity, nesting depth, function length, parameter count, dead code, and type safety with precision that regex cannot achieve. JavaScript/TypeScript files are parsed via the TypeScript Compiler API; Python, Rust, Go, Java, and C# use a scope-tracking structural parser. No external AST server required.
|
|
170
208
|
|
|
171
|
-
|
|
209
|
+
3. **LLM-Powered Deep Analysis (Prompts)** — The server exposes MCP prompts (e.g., `judge-data-security`, `full-tribunal`) that provide each judge's expert persona as a system prompt. When used by an LLM-based client, this enables deeper, context-aware analysis beyond what static analysis can detect.
|
|
172
210
|
|
|
173
211
|
---
|
|
174
212
|
|
|
175
213
|
## Composable by Design
|
|
176
214
|
|
|
177
|
-
Judges Panel
|
|
215
|
+
Judges Panel covers **heuristic pattern detection** and **AST structural analysis** in a single server — fast, offline, and self-contained. It does not try to be a CVE scanner or a linter. Those capabilities belong in dedicated MCP servers that an AI agent can orchestrate alongside Judges.
|
|
216
|
+
|
|
217
|
+
### Built-in AST Analysis (v1.8.0)
|
|
218
|
+
|
|
219
|
+
Unlike earlier versions that recommended a separate AST MCP server, Judges Panel now includes **real AST-based structural analysis** out of the box:
|
|
220
|
+
|
|
221
|
+
- **JavaScript / TypeScript** — Parsed with the TypeScript Compiler API (`ts.createSourceFile`) for full-fidelity AST
|
|
222
|
+
- **Python, Rust, Go, Java, C#** — Analyzed with a scope-tracking structural parser that counts decision points and nesting levels
|
|
223
|
+
|
|
224
|
+
The Code Structure judge (`STRUCT-*`) uses these parsers to accurately measure:
|
|
225
|
+
|
|
226
|
+
| Rule | Metric | Threshold |
|
|
227
|
+
|------|--------|-----------|
|
|
228
|
+
| `STRUCT-001` | Cyclomatic complexity | > 10 per function (high) |
|
|
229
|
+
| `STRUCT-002` | Nesting depth | > 4 levels (medium) |
|
|
230
|
+
| `STRUCT-003` | Function length | > 50 lines (medium) |
|
|
231
|
+
| `STRUCT-004` | Parameter count | > 5 parameters (medium) |
|
|
232
|
+
| `STRUCT-005` | Dead code | Unreachable statements (low) |
|
|
233
|
+
| `STRUCT-006` | Weak types | `any`, `dynamic`, `Object`, `interface{}`, `unsafe` (medium) |
|
|
234
|
+
| `STRUCT-007` | File complexity | > 40 total cyclomatic complexity (high) |
|
|
235
|
+
| `STRUCT-008` | Extreme complexity | > 20 per function (critical) |
|
|
236
|
+
| `STRUCT-009` | Extreme parameters | > 8 parameters (high) |
|
|
237
|
+
| `STRUCT-010` | Extreme function length | > 150 lines (high) |
|
|
178
238
|
|
|
179
239
|
### Recommended MCP Stack
|
|
180
240
|
|
|
@@ -184,44 +244,36 @@ When your AI coding assistant connects to multiple MCP servers, each one contrib
|
|
|
184
244
|
┌─────────────────────────────────────────────────────────┐
|
|
185
245
|
│ AI Coding Assistant │
|
|
186
246
|
│ (Claude, Copilot, Cursor, etc.) │
|
|
187
|
-
|
|
188
|
-
│
|
|
189
|
-
▼
|
|
190
|
-
|
|
191
|
-
│
|
|
192
|
-
│
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
247
|
+
└──────┬──────────────────┬──────────┬───────────────────┘
|
|
248
|
+
│ │ │
|
|
249
|
+
▼ ▼ ▼
|
|
250
|
+
┌──────────────┐ ┌────────┐ ┌────────┐
|
|
251
|
+
│ Judges │ │ CVE / │ │ Linter │
|
|
252
|
+
│ Panel │ │ SBOM │ │ Server │
|
|
253
|
+
│ ─────────────│ └────────┘ └────────┘
|
|
254
|
+
│ 31 Heuristic │ Vuln DB Style &
|
|
255
|
+
│ judges │ scanning correctness
|
|
256
|
+
│ + AST judge │
|
|
257
|
+
└──────────────┘
|
|
258
|
+
Patterns +
|
|
259
|
+
structural
|
|
260
|
+
analysis
|
|
196
261
|
```
|
|
197
262
|
|
|
198
263
|
| Layer | What It Does | Example Servers |
|
|
199
264
|
|-------|-------------|-----------------|
|
|
200
|
-
| **Judges Panel** |
|
|
201
|
-
| **AST Analysis** | Deep structural analysis — data flow, complexity metrics, dead code, type tracking | Tree-sitter, Semgrep, SonarQube MCP servers |
|
|
265
|
+
| **Judges Panel** | 32-judge quality gate — security patterns, AST analysis, cost, scalability, a11y, compliance, sovereignty, ethics, dependency health | This server |
|
|
202
266
|
| **CVE / SBOM** | Vulnerability scanning against live databases — known CVEs, license risks, supply chain | OSV, Snyk, Trivy, Grype MCP servers |
|
|
203
267
|
| **Linting** | Language-specific style and correctness rules | ESLint, Ruff, Clippy MCP servers |
|
|
204
268
|
| **Runtime Profiling** | Memory, CPU, latency measurement on running code | Custom profiling MCP servers |
|
|
205
269
|
|
|
206
|
-
### Why Orchestration Beats a Monolith
|
|
207
|
-
|
|
208
|
-
| | Monolith | Orchestrated MCP Stack |
|
|
209
|
-
|---|---|---|
|
|
210
|
-
| **Maintenance** | One team owns everything | Each server evolves independently |
|
|
211
|
-
| **Depth** | Shallow coverage of many domains | Deep expertise per server |
|
|
212
|
-
| **Updates** | CVE data stale = full redeploy | CVE server updates on its own |
|
|
213
|
-
| **Language support** | Must embed parsers for every language | AST server handles this |
|
|
214
|
-
| **User choice** | All or nothing | Pick the servers you need |
|
|
215
|
-
| **Offline capability** | Hard to achieve with CVE deps | Judges runs fully offline; CVE server handles network |
|
|
216
|
-
|
|
217
270
|
### What This Means in Practice
|
|
218
271
|
|
|
219
272
|
When you ask your AI assistant *"Is this code production-ready?"*, the agent can:
|
|
220
273
|
|
|
221
|
-
1. **Judges Panel** → Scan for hardcoded secrets, missing error handling, N+1 queries, accessibility gaps, compliance issues
|
|
222
|
-
2. **
|
|
223
|
-
3. **
|
|
224
|
-
4. **Linter Server** → Enforce team style rules, catch language-specific gotchas
|
|
274
|
+
1. **Judges Panel** → Scan for hardcoded secrets, missing error handling, N+1 queries, accessibility gaps, compliance issues, **plus** analyze cyclomatic complexity, detect dead code, and flag deeply nested functions via AST
|
|
275
|
+
2. **CVE Server** → Check every dependency in `package.json` against known vulnerabilities
|
|
276
|
+
3. **Linter Server** → Enforce team style rules, catch language-specific gotchas
|
|
225
277
|
|
|
226
278
|
Each server returns structured findings. The AI synthesizes everything into a single, actionable review — no single server needs to do it all.
|
|
227
279
|
|
|
@@ -229,11 +281,33 @@ Each server returns structured findings. The AI synthesizes everything into a si
|
|
|
229
281
|
|
|
230
282
|
## MCP Tools
|
|
231
283
|
|
|
284
|
+
### `evaluate_app_builder_flow`
|
|
285
|
+
Run a **3-step app-builder workflow** for technical and non-technical stakeholders:
|
|
286
|
+
|
|
287
|
+
1. Tribunal review (code/project/diff)
|
|
288
|
+
2. Plain-language translation of top risks
|
|
289
|
+
3. Prioritized remediation tasks with AI-fixable P0/P1 extraction
|
|
290
|
+
|
|
291
|
+
Supports:
|
|
292
|
+
- **Code mode**: `code` + `language`
|
|
293
|
+
- **Project mode**: `files[]`
|
|
294
|
+
- **Diff mode**: `code` + `language` + `changedLines[]`
|
|
295
|
+
|
|
296
|
+
| Parameter | Type | Required | Description |
|
|
297
|
+
|-----------|------|----------|-------------|
|
|
298
|
+
| `code` | string | conditional | Full source content (code/diff mode) |
|
|
299
|
+
| `language` | string | conditional | Programming language (code/diff mode) |
|
|
300
|
+
| `files` | array | conditional | `{ path, content, language }[]` for project mode |
|
|
301
|
+
| `changedLines` | number[] | no | 1-based changed lines for diff mode |
|
|
302
|
+
| `context` | string | no | Optional business/technical context |
|
|
303
|
+
| `maxFindings` | number | no | Max translated top findings (default: 10) |
|
|
304
|
+
| `maxTasks` | number | no | Max generated tasks (default: 20) |
|
|
305
|
+
|
|
232
306
|
### `get_judges`
|
|
233
307
|
List all available judges with their domains and descriptions.
|
|
234
308
|
|
|
235
309
|
### `evaluate_code`
|
|
236
|
-
Submit code to the **full judges panel**. All
|
|
310
|
+
Submit code to the **full judges panel**. All 32 judges evaluate independently and return a combined verdict.
|
|
237
311
|
|
|
238
312
|
| Parameter | Type | Required | Description |
|
|
239
313
|
|-----------|------|----------|-------------|
|
|
@@ -251,9 +325,36 @@ Submit code to a **specific judge** for targeted review.
|
|
|
251
325
|
| `judgeId` | string | yes | See [judge IDs](#judge-ids) below |
|
|
252
326
|
| `context` | string | no | Additional context |
|
|
253
327
|
|
|
328
|
+
### `evaluate_project`
|
|
329
|
+
Submit multiple files for **project-level analysis**. All 32 judges evaluate each file, plus cross-file architectural analysis detects code duplication, inconsistent error handling, and dependency cycles.
|
|
330
|
+
|
|
331
|
+
| Parameter | Type | Required | Description |
|
|
332
|
+
|-----------|------|----------|-------------|
|
|
333
|
+
| `files` | array | yes | Array of `{ path, content, language }` objects |
|
|
334
|
+
| `context` | string | no | Optional project context |
|
|
335
|
+
|
|
336
|
+
### `evaluate_diff`
|
|
337
|
+
Evaluate only the **changed lines** in a code diff. Runs all 32 judges on the full file but filters findings to lines you specify. Ideal for PR reviews and incremental analysis.
|
|
338
|
+
|
|
339
|
+
| Parameter | Type | Required | Description |
|
|
340
|
+
|-----------|------|----------|-------------|
|
|
341
|
+
| `code` | string | yes | The full file content (post-change) |
|
|
342
|
+
| `language` | string | yes | Programming language |
|
|
343
|
+
| `changedLines` | number[] | yes | 1-based line numbers that were changed |
|
|
344
|
+
| `context` | string | no | Optional context about the change |
|
|
345
|
+
|
|
346
|
+
### `analyze_dependencies`
|
|
347
|
+
Analyze a dependency manifest file for supply-chain risks, version pinning issues, typosquatting indicators, and dependency hygiene. Supports `package.json`, `requirements.txt`, `Cargo.toml`, `go.mod`, `pom.xml`, and `.csproj` files.
|
|
348
|
+
|
|
349
|
+
| Parameter | Type | Required | Description |
|
|
350
|
+
|-----------|------|----------|-------------|
|
|
351
|
+
| `manifest` | string | yes | Contents of the dependency manifest file |
|
|
352
|
+
| `manifestType` | string | yes | File type: `package.json`, `requirements.txt`, etc. |
|
|
353
|
+
| `context` | string | no | Optional context |
|
|
354
|
+
|
|
254
355
|
#### Judge IDs
|
|
255
356
|
|
|
256
|
-
`data-security` · `cybersecurity` · `cost-effectiveness` · `scalability` · `cloud-readiness` · `software-practices` · `accessibility` · `api-design` · `reliability` · `observability` · `performance` · `compliance` · `testing` · `documentation` · `internationalization` · `dependency-health` · `concurrency` · `ethics-bias` · `maintainability` · `error-handling` · `authentication` · `database` · `caching` · `configuration-management` · `backwards-compatibility` · `portability` · `ux` · `logging-privacy` · `rate-limiting` · `ci-cd`
|
|
357
|
+
`data-security` · `cybersecurity` · `cost-effectiveness` · `scalability` · `cloud-readiness` · `software-practices` · `accessibility` · `api-design` · `reliability` · `observability` · `performance` · `compliance` · `data-sovereignty` · `testing` · `documentation` · `internationalization` · `dependency-health` · `concurrency` · `ethics-bias` · `maintainability` · `error-handling` · `authentication` · `database` · `caching` · `configuration-management` · `backwards-compatibility` · `portability` · `ux` · `logging-privacy` · `rate-limiting` · `ci-cd` · `code-structure`
|
|
257
358
|
|
|
258
359
|
---
|
|
259
360
|
|
|
@@ -275,6 +376,7 @@ Each judge has a corresponding prompt for LLM-powered deep analysis:
|
|
|
275
376
|
| `judge-observability` | Deep observability & monitoring review |
|
|
276
377
|
| `judge-performance` | Deep performance optimization review |
|
|
277
378
|
| `judge-compliance` | Deep regulatory compliance review |
|
|
379
|
+
| `judge-data-sovereignty` | Deep data sovereignty and jurisdictional controls review |
|
|
278
380
|
| `judge-testing` | Deep testing quality review |
|
|
279
381
|
| `judge-documentation` | Deep documentation quality review |
|
|
280
382
|
| `judge-internationalization` | Deep i18n review |
|
|
@@ -293,7 +395,8 @@ Each judge has a corresponding prompt for LLM-powered deep analysis:
|
|
|
293
395
|
| `judge-logging-privacy` | Deep logging privacy review |
|
|
294
396
|
| `judge-rate-limiting` | Deep rate limiting review |
|
|
295
397
|
| `judge-ci-cd` | Deep CI/CD pipeline review |
|
|
296
|
-
| `
|
|
398
|
+
| `judge-code-structure` | Deep AST-based structural analysis review |
|
|
399
|
+
| `full-tribunal` | All 32 judges in a single prompt |
|
|
297
400
|
|
|
298
401
|
---
|
|
299
402
|
|
|
@@ -314,7 +417,7 @@ Each judge scores the code from **0 to 100**:
|
|
|
314
417
|
- **WARNING** — Any high finding, any medium finding, or score < 80
|
|
315
418
|
- **PASS** — Score ≥ 80 with no critical, high, or medium findings
|
|
316
419
|
|
|
317
|
-
The **overall tribunal score** is the average of all
|
|
420
|
+
The **overall tribunal score** is the average of all 32 judges. The overall verdict fails if **any** judge fails.
|
|
318
421
|
|
|
319
422
|
---
|
|
320
423
|
|
|
@@ -323,20 +426,25 @@ The **overall tribunal score** is the average of all 30 judges. The overall verd
|
|
|
323
426
|
```
|
|
324
427
|
judges/
|
|
325
428
|
├── src/
|
|
326
|
-
│ ├── index.ts # MCP server entry point — tools, prompts, transport
|
|
429
|
+
│ ├── index.ts # MCP server entry point — 6 tools, prompts, transport
|
|
327
430
|
│ ├── types.ts # TypeScript interfaces (Finding, JudgeEvaluation, etc.)
|
|
328
|
-
│ ├──
|
|
329
|
-
│ │ ├── index.ts #
|
|
431
|
+
│ ├── ast/ # AST analysis engine (built-in, no external deps)
|
|
432
|
+
│ │ ├── index.ts # analyzeStructure() — routes to correct parser
|
|
433
|
+
│ │ ├── types.ts # FunctionInfo, CodeStructure interfaces
|
|
434
|
+
│ │ ├── typescript-ast.ts # TypeScript Compiler API parser (JS/TS)
|
|
435
|
+
│ │ └── structural-parser.ts # Scope-tracking parser (Python/Rust/Go/Java/C#)
|
|
436
|
+
│ ├── evaluators/ # Analysis engine for each judge
|
|
437
|
+
│ │ ├── index.ts # evaluateWithJudge(), evaluateWithTribunal(), evaluateProject(), etc.
|
|
330
438
|
│ │ ├── shared.ts # Scoring, verdict logic, markdown formatters
|
|
331
|
-
│ │ └── *.ts # One analyzer per judge (
|
|
439
|
+
│ │ └── *.ts # One analyzer per judge (32 files)
|
|
332
440
|
│ └── judges/ # Judge definitions (id, name, domain, system prompt)
|
|
333
441
|
│ ├── index.ts # JUDGES array, getJudge(), getJudgeSummaries()
|
|
334
|
-
│ └── *.ts # One definition per judge (
|
|
442
|
+
│ └── *.ts # One definition per judge (32 files)
|
|
335
443
|
├── examples/
|
|
336
|
-
│ ├── sample-vulnerable-api.ts # Intentionally flawed code (triggers all
|
|
444
|
+
│ ├── sample-vulnerable-api.ts # Intentionally flawed code (triggers all judges)
|
|
337
445
|
│ └── demo.ts # Run: npm run demo
|
|
338
446
|
├── tests/
|
|
339
|
-
│ └── judges.test.ts # Run: npm test
|
|
447
|
+
│ └── judges.test.ts # Run: npm test
|
|
340
448
|
├── server.json # MCP Registry manifest
|
|
341
449
|
├── package.json
|
|
342
450
|
├── tsconfig.json
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-sovereignty.d.ts","sourceRoot":"","sources":["../../src/evaluators/data-sovereignty.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,EAAE,CAyIhF"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
export function analyzeDataSovereignty(code, language) {
|
|
2
|
+
const findings = [];
|
|
3
|
+
const lines = code.split("\n");
|
|
4
|
+
const prefix = "SOV";
|
|
5
|
+
let ruleNum = 1;
|
|
6
|
+
const regionMentionLines = [];
|
|
7
|
+
const hardcodedGlobalOrForeignLines = [];
|
|
8
|
+
lines.forEach((line, index) => {
|
|
9
|
+
if (/region|location|geo|jurisdiction|data.?residen/i.test(line)) {
|
|
10
|
+
regionMentionLines.push(index + 1);
|
|
11
|
+
}
|
|
12
|
+
if (/(global|multi-?region|us-|asia-|ap-|worldwide|any-region|default-region)/i.test(line) &&
|
|
13
|
+
!/allow|approved|whitelist|policy|guard|eu-|sovereign/i.test(line)) {
|
|
14
|
+
hardcodedGlobalOrForeignLines.push(index + 1);
|
|
15
|
+
}
|
|
16
|
+
});
|
|
17
|
+
const hasRegionPolicy = /allow(ed)?Regions|approvedRegions|regionPolicy|dataResidencyPolicy|sovereignty/i.test(code);
|
|
18
|
+
if (hardcodedGlobalOrForeignLines.length > 0 && !hasRegionPolicy) {
|
|
19
|
+
findings.push({
|
|
20
|
+
ruleId: `${prefix}-${String(ruleNum++).padStart(3, "0")}`,
|
|
21
|
+
severity: "high",
|
|
22
|
+
title: "Region usage without residency policy guardrails",
|
|
23
|
+
description: "Code appears to use global/foreign region patterns without an explicit approved-region policy. This can cause unintentional cross-border storage or processing.",
|
|
24
|
+
lineNumbers: hardcodedGlobalOrForeignLines.slice(0, 10),
|
|
25
|
+
recommendation: "Enforce a strict approved-region allowlist and reject deployments/requests outside permitted jurisdictions.",
|
|
26
|
+
reference: "Data Residency Governance / GDPR Chapter V",
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
const crossBorderEgressLines = [];
|
|
30
|
+
lines.forEach((line, index) => {
|
|
31
|
+
if (/(fetch\(|axios\.|http(s)?:\/\/|webhook|third.?party|external.?api|sendTo|forwardTo)/i.test(line) &&
|
|
32
|
+
!/consent|scc|adequacy|jurisdiction|region|residency|sovereignty/i.test(line)) {
|
|
33
|
+
crossBorderEgressLines.push(index + 1);
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
if (crossBorderEgressLines.length > 0) {
|
|
37
|
+
findings.push({
|
|
38
|
+
ruleId: `${prefix}-${String(ruleNum++).padStart(3, "0")}`,
|
|
39
|
+
severity: "high",
|
|
40
|
+
title: "Potential cross-border data egress without jurisdiction checks",
|
|
41
|
+
description: "External API/network calls are present without visible jurisdictional or transfer controls, increasing cross-border data transfer risk.",
|
|
42
|
+
lineNumbers: crossBorderEgressLines.slice(0, 10),
|
|
43
|
+
recommendation: "Add egress controls that validate destination jurisdiction, data classification, and lawful transfer conditions before sending data.",
|
|
44
|
+
reference: "GDPR Articles 44-49 / Cross-Border Transfer Controls",
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
const replicationLines = [];
|
|
48
|
+
lines.forEach((line, index) => {
|
|
49
|
+
if (/(replica|replication|backup|dr|disaster.?recovery|geo-?redundant|read.?replica)/i.test(line) && !/same.?region|region.?locked|sovereign|local.?zone/i.test(line)) {
|
|
50
|
+
replicationLines.push(index + 1);
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
if (replicationLines.length > 0) {
|
|
54
|
+
findings.push({
|
|
55
|
+
ruleId: `${prefix}-${String(ruleNum++).padStart(3, "0")}`,
|
|
56
|
+
severity: "medium",
|
|
57
|
+
title: "Replication/backup configuration may violate localization requirements",
|
|
58
|
+
description: "Replication or backup behavior is referenced without explicit geography constraints, which can replicate regulated data to unauthorized regions.",
|
|
59
|
+
lineNumbers: replicationLines.slice(0, 10),
|
|
60
|
+
recommendation: "Pin replication and backup targets to approved jurisdictions and document DR geography constraints.",
|
|
61
|
+
reference: "Data Localization Controls / Operational Resilience",
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
const exportLines = [];
|
|
65
|
+
lines.forEach((line, index) => {
|
|
66
|
+
if (/(export|download|dump|report|analytics|telemetry|support.?bundle)/i.test(line) && !/redact|anonym|aggregate|jurisdiction|policy/i.test(line)) {
|
|
67
|
+
exportLines.push(index + 1);
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
if (exportLines.length > 0) {
|
|
71
|
+
findings.push({
|
|
72
|
+
ruleId: `${prefix}-${String(ruleNum++).padStart(3, "0")}`,
|
|
73
|
+
severity: "medium",
|
|
74
|
+
title: "Data export path without sovereignty-aware controls",
|
|
75
|
+
description: "Export/reporting flows appear without visible controls for jurisdiction, minimization, or anonymization, increasing sovereignty and transfer risk.",
|
|
76
|
+
lineNumbers: exportLines.slice(0, 10),
|
|
77
|
+
recommendation: "Apply policy checks to export paths (region eligibility, minimization, anonymization) and block disallowed exports.",
|
|
78
|
+
reference: "Data Governance / Transfer Risk Mitigation",
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
const geoRoutingSignals = /(country|locale|region|jurisdiction|tenantRegion|dataBoundary)/i.test(code);
|
|
82
|
+
const hasPolicyEnforcement = /(deny|reject|throw|forbidden|policyViolation|residencyViolation)/i.test(code);
|
|
83
|
+
if (regionMentionLines.length > 0 && geoRoutingSignals && !hasPolicyEnforcement) {
|
|
84
|
+
findings.push({
|
|
85
|
+
ruleId: `${prefix}-${String(ruleNum++).padStart(3, "0")}`,
|
|
86
|
+
severity: "low",
|
|
87
|
+
title: "Jurisdiction context present without explicit enforcement branch",
|
|
88
|
+
description: "Code references region/jurisdiction context but does not clearly enforce deny/allow behavior when rules are violated.",
|
|
89
|
+
lineNumbers: regionMentionLines.slice(0, 10),
|
|
90
|
+
recommendation: "Implement explicit enforcement branches that block operations violating residency or transfer policy.",
|
|
91
|
+
reference: "Policy-as-Code Enforcement Best Practices",
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
if (findings.length === 0 && code.length > 0) {
|
|
95
|
+
const hasDataHandling = /(user|customer|personal|profile|account|email|phone|pii|data)/i.test(code);
|
|
96
|
+
if (hasDataHandling) {
|
|
97
|
+
findings.push({
|
|
98
|
+
ruleId: `${prefix}-${String(ruleNum++).padStart(3, "0")}`,
|
|
99
|
+
severity: "info",
|
|
100
|
+
title: "Sovereignty evidence not explicit in code",
|
|
101
|
+
description: "Data handling is present, but sovereignty controls (policy references, jurisdiction checks, transfer guardrails) are not explicitly visible in this code segment.",
|
|
102
|
+
recommendation: "Add explicit sovereignty control points in code/config and link them to auditable policy artifacts.",
|
|
103
|
+
reference: "Data Sovereignty Assurance Guidance",
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
return findings;
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=data-sovereignty.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-sovereignty.js","sourceRoot":"","sources":["../../src/evaluators/data-sovereignty.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { JudgeDefinition, JudgeEvaluation, TribunalVerdict, ProjectVerdict, DiffVerdict, DependencyVerdict } from "../types.js";
|
|
1
|
+
import { JudgeDefinition, JudgeEvaluation, TribunalVerdict, ProjectVerdict, DiffVerdict, DependencyVerdict, AppBuilderWorkflowResult } from "../types.js";
|
|
2
2
|
import { formatVerdictAsMarkdown, formatEvaluationAsMarkdown } from "./shared.js";
|
|
3
3
|
/**
|
|
4
4
|
* Run a single judge against the provided code.
|
|
@@ -26,5 +26,18 @@ export declare function evaluateDiff(code: string, language: string, changedLine
|
|
|
26
26
|
* Parse a manifest file and analyze dependencies for supply-chain risks.
|
|
27
27
|
*/
|
|
28
28
|
export declare function analyzeDependencies(manifest: string, manifestType: string): DependencyVerdict;
|
|
29
|
+
export declare function runAppBuilderWorkflow(params: {
|
|
30
|
+
code?: string;
|
|
31
|
+
language?: string;
|
|
32
|
+
files?: Array<{
|
|
33
|
+
path: string;
|
|
34
|
+
content: string;
|
|
35
|
+
language: string;
|
|
36
|
+
}>;
|
|
37
|
+
changedLines?: number[];
|
|
38
|
+
context?: string;
|
|
39
|
+
maxFindings?: number;
|
|
40
|
+
maxTasks?: number;
|
|
41
|
+
}): AppBuilderWorkflowResult;
|
|
29
42
|
export { formatVerdictAsMarkdown, formatEvaluationAsMarkdown };
|
|
30
43
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/evaluators/index.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,eAAe,EACf,eAAe,EACf,eAAe,EACf,cAAc,EACd,WAAW,EACX,iBAAiB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/evaluators/index.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,eAAe,EACf,eAAe,EACf,eAAe,EACf,cAAc,EACd,WAAW,EACX,iBAAiB,EAKjB,wBAAwB,EAGzB,MAAM,aAAa,CAAC;AAIrB,OAAO,EAKL,uBAAuB,EACvB,0BAA0B,EAC3B,MAAM,aAAa,CAAC;AAsCrB;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,eAAe,EACtB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,MAAM,GACf,eAAe,CAkHjB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,MAAM,GACf,eAAe,CAsCjB;AAID;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,EACjE,OAAO,CAAC,EAAE,MAAM,GACf,cAAc,CAmHhB;AAID;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EAAE,EACtB,OAAO,CAAC,EAAE,MAAM,GACf,WAAW,CAqBb;AAID;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,GACnB,iBAAiB,CA0OnB;AAkGD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACnE,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,wBAAwB,CA8F3B;AAID,OAAO,EAAE,uBAAuB,EAAE,0BAA0B,EAAE,CAAC"}
|
package/dist/evaluators/index.js
CHANGED
|
@@ -17,6 +17,7 @@ import { analyzeReliability } from "./reliability.js";
|
|
|
17
17
|
import { analyzeObservability } from "./observability.js";
|
|
18
18
|
import { analyzePerformance } from "./performance.js";
|
|
19
19
|
import { analyzeCompliance } from "./compliance.js";
|
|
20
|
+
import { analyzeDataSovereignty } from "./data-sovereignty.js";
|
|
20
21
|
import { analyzeTesting } from "./testing.js";
|
|
21
22
|
import { analyzeDocumentation } from "./documentation.js";
|
|
22
23
|
import { analyzeInternationalization } from "./internationalization.js";
|
|
@@ -79,6 +80,9 @@ export function evaluateWithJudge(judge, code, language, context) {
|
|
|
79
80
|
case "compliance":
|
|
80
81
|
findings.push(...analyzeCompliance(code, language));
|
|
81
82
|
break;
|
|
83
|
+
case "data-sovereignty":
|
|
84
|
+
findings.push(...analyzeDataSovereignty(code, language));
|
|
85
|
+
break;
|
|
82
86
|
case "testing":
|
|
83
87
|
findings.push(...analyzeTesting(code, language));
|
|
84
88
|
break;
|
|
@@ -499,6 +503,160 @@ export function analyzeDependencies(manifest, manifestType) {
|
|
|
499
503
|
summary: `Dependency analysis: ${dependencies.length} dependencies, ${findings.length} findings, score ${score}/100 — ${verdict.toUpperCase()}`,
|
|
500
504
|
};
|
|
501
505
|
}
|
|
506
|
+
// ─── App Builder Flow (Review → Translate → Task Plan) ─────────────────────
|
|
507
|
+
function severityRank(severity) {
|
|
508
|
+
switch (severity) {
|
|
509
|
+
case "critical":
|
|
510
|
+
return 5;
|
|
511
|
+
case "high":
|
|
512
|
+
return 4;
|
|
513
|
+
case "medium":
|
|
514
|
+
return 3;
|
|
515
|
+
case "low":
|
|
516
|
+
return 2;
|
|
517
|
+
case "info":
|
|
518
|
+
return 1;
|
|
519
|
+
}
|
|
520
|
+
}
|
|
521
|
+
function dedupeFindings(findings) {
|
|
522
|
+
const seen = new Set();
|
|
523
|
+
const result = [];
|
|
524
|
+
for (const finding of findings) {
|
|
525
|
+
const key = `${finding.ruleId}|${finding.title}|${finding.severity}`;
|
|
526
|
+
if (seen.has(key))
|
|
527
|
+
continue;
|
|
528
|
+
seen.add(key);
|
|
529
|
+
result.push(finding);
|
|
530
|
+
}
|
|
531
|
+
return result;
|
|
532
|
+
}
|
|
533
|
+
function decideRelease(criticalCount, highCount, score) {
|
|
534
|
+
if (criticalCount > 0 || score < 60)
|
|
535
|
+
return "do-not-ship";
|
|
536
|
+
if (highCount > 0 || score < 80)
|
|
537
|
+
return "ship-with-caution";
|
|
538
|
+
return "ship-now";
|
|
539
|
+
}
|
|
540
|
+
function toPlainLanguageFinding(finding) {
|
|
541
|
+
const severityImpact = {
|
|
542
|
+
critical: "This can directly cause security incidents, outages, or serious compliance exposure.",
|
|
543
|
+
high: "This is likely to impact users or operations if left unresolved.",
|
|
544
|
+
medium: "This can create reliability, maintainability, or quality issues over time.",
|
|
545
|
+
low: "This is a quality improvement that reduces friction and future rework.",
|
|
546
|
+
info: "This is guidance to strengthen consistency and engineering hygiene.",
|
|
547
|
+
};
|
|
548
|
+
return {
|
|
549
|
+
ruleId: finding.ruleId,
|
|
550
|
+
severity: finding.severity,
|
|
551
|
+
title: finding.title,
|
|
552
|
+
whatIsWrong: `${finding.title}: ${finding.description}`,
|
|
553
|
+
whyItMatters: severityImpact[finding.severity],
|
|
554
|
+
nextAction: finding.recommendation,
|
|
555
|
+
};
|
|
556
|
+
}
|
|
557
|
+
function pickOwner(finding) {
|
|
558
|
+
if (/^(UX|A11Y|I18N|ETHICS|COMPAT)-/.test(finding.ruleId))
|
|
559
|
+
return "product";
|
|
560
|
+
if (/^(DOC|TEST|MAINT|ERR|CFG)-/.test(finding.ruleId))
|
|
561
|
+
return "ai";
|
|
562
|
+
return "developer";
|
|
563
|
+
}
|
|
564
|
+
function pickPriority(severity) {
|
|
565
|
+
if (severity === "critical")
|
|
566
|
+
return "P0";
|
|
567
|
+
if (severity === "high")
|
|
568
|
+
return "P1";
|
|
569
|
+
return "P2";
|
|
570
|
+
}
|
|
571
|
+
function pickEffort(finding) {
|
|
572
|
+
if (finding.severity === "critical")
|
|
573
|
+
return "L";
|
|
574
|
+
if (finding.severity === "high")
|
|
575
|
+
return "M";
|
|
576
|
+
return finding.lineNumbers && finding.lineNumbers.length > 3 ? "M" : "S";
|
|
577
|
+
}
|
|
578
|
+
function toWorkflowTask(finding) {
|
|
579
|
+
const owner = pickOwner(finding);
|
|
580
|
+
const priority = pickPriority(finding.severity);
|
|
581
|
+
const effort = pickEffort(finding);
|
|
582
|
+
const aiFixable = owner !== "product";
|
|
583
|
+
return {
|
|
584
|
+
priority,
|
|
585
|
+
owner,
|
|
586
|
+
effort,
|
|
587
|
+
ruleId: finding.ruleId,
|
|
588
|
+
task: `${finding.title} — ${finding.recommendation}`,
|
|
589
|
+
doneWhen: `A follow-up review no longer reports ${finding.ruleId} and related tests/checks pass.`,
|
|
590
|
+
aiFixable,
|
|
591
|
+
};
|
|
592
|
+
}
|
|
593
|
+
export function runAppBuilderWorkflow(params) {
|
|
594
|
+
const maxFindings = Math.max(1, params.maxFindings ?? 10);
|
|
595
|
+
const maxTasks = Math.max(1, params.maxTasks ?? 20);
|
|
596
|
+
let mode;
|
|
597
|
+
let verdict;
|
|
598
|
+
let score;
|
|
599
|
+
let findings;
|
|
600
|
+
if (params.files && params.files.length > 0) {
|
|
601
|
+
mode = "project";
|
|
602
|
+
const result = evaluateProject(params.files, params.context);
|
|
603
|
+
verdict = result.overallVerdict;
|
|
604
|
+
score = result.overallScore;
|
|
605
|
+
findings = [
|
|
606
|
+
...result.fileResults.flatMap((fr) => fr.findings),
|
|
607
|
+
...result.architecturalFindings,
|
|
608
|
+
];
|
|
609
|
+
}
|
|
610
|
+
else if (params.changedLines && params.changedLines.length > 0) {
|
|
611
|
+
if (!params.code || !params.language) {
|
|
612
|
+
throw new Error("changedLines mode requires both code and language inputs");
|
|
613
|
+
}
|
|
614
|
+
mode = "diff";
|
|
615
|
+
const result = evaluateDiff(params.code, params.language, params.changedLines, params.context);
|
|
616
|
+
verdict = result.verdict;
|
|
617
|
+
score = result.score;
|
|
618
|
+
findings = result.findings;
|
|
619
|
+
}
|
|
620
|
+
else {
|
|
621
|
+
if (!params.code || !params.language) {
|
|
622
|
+
throw new Error("code mode requires both code and language, or provide files for project mode");
|
|
623
|
+
}
|
|
624
|
+
mode = "code";
|
|
625
|
+
const result = evaluateWithTribunal(params.code, params.language, params.context);
|
|
626
|
+
verdict = result.overallVerdict;
|
|
627
|
+
score = result.overallScore;
|
|
628
|
+
findings = result.evaluations.flatMap((evaluation) => evaluation.findings);
|
|
629
|
+
}
|
|
630
|
+
const dedupedFindings = dedupeFindings(findings).sort((a, b) => severityRank(b.severity) - severityRank(a.severity));
|
|
631
|
+
const criticalCount = dedupedFindings.filter((finding) => finding.severity === "critical").length;
|
|
632
|
+
const highCount = dedupedFindings.filter((finding) => finding.severity === "high").length;
|
|
633
|
+
const mediumCount = dedupedFindings.filter((finding) => finding.severity === "medium").length;
|
|
634
|
+
const releaseDecision = decideRelease(criticalCount, highCount, score);
|
|
635
|
+
const topFindings = dedupedFindings
|
|
636
|
+
.filter((finding) => ["critical", "high", "medium"].includes(finding.severity))
|
|
637
|
+
.slice(0, maxFindings);
|
|
638
|
+
const plainLanguageFindings = topFindings.map(toPlainLanguageFinding);
|
|
639
|
+
const tasks = dedupedFindings.slice(0, maxTasks).map(toWorkflowTask);
|
|
640
|
+
const aiFixableNow = tasks.filter((task) => task.aiFixable && (task.priority === "P0" || task.priority === "P1"));
|
|
641
|
+
const summary = releaseDecision === "do-not-ship"
|
|
642
|
+
? "Do not ship yet. Resolve critical risks before release."
|
|
643
|
+
: releaseDecision === "ship-with-caution"
|
|
644
|
+
? "Ship with caution. Address high-priority gaps and monitor closely."
|
|
645
|
+
: "Ship now. No blocking risks were detected in this review pass.";
|
|
646
|
+
return {
|
|
647
|
+
mode,
|
|
648
|
+
verdict,
|
|
649
|
+
score,
|
|
650
|
+
criticalCount,
|
|
651
|
+
highCount,
|
|
652
|
+
mediumCount,
|
|
653
|
+
releaseDecision,
|
|
654
|
+
summary,
|
|
655
|
+
plainLanguageFindings,
|
|
656
|
+
tasks,
|
|
657
|
+
aiFixableNow,
|
|
658
|
+
};
|
|
659
|
+
}
|
|
502
660
|
// ─── Re-exports ──────────────────────────────────────────────────────────────
|
|
503
661
|
export { formatVerdictAsMarkdown, formatEvaluationAsMarkdown };
|
|
504
662
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/evaluators/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/evaluators/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -8,7 +8,8 @@
|
|
|
8
8
|
* to perform thorough contextual analysis beyond what static patterns catch.
|
|
9
9
|
*
|
|
10
10
|
* Tools exposed:
|
|
11
|
-
* -
|
|
11
|
+
* - evaluate_app_builder_flow: 3-step workflow (review, translate, tasks)
|
|
12
|
+
* - evaluate_code: Full panel review (all judges)
|
|
12
13
|
* - evaluate_code_single_judge: Review by a specific judge
|
|
13
14
|
* - get_judges: List all available judges
|
|
14
15
|
*/
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;GAaG"}
|
package/dist/index.js
CHANGED
|
@@ -8,7 +8,8 @@
|
|
|
8
8
|
* to perform thorough contextual analysis beyond what static patterns catch.
|
|
9
9
|
*
|
|
10
10
|
* Tools exposed:
|
|
11
|
-
* -
|
|
11
|
+
* - evaluate_app_builder_flow: 3-step workflow (review, translate, tasks)
|
|
12
|
+
* - evaluate_code: Full panel review (all judges)
|
|
12
13
|
* - evaluate_code_single_judge: Review by a specific judge
|
|
13
14
|
* - get_judges: List all available judges
|
|
14
15
|
*/
|
|
@@ -16,11 +17,11 @@ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
|
16
17
|
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
|
17
18
|
import { z } from "zod";
|
|
18
19
|
import { JUDGES, getJudge, getJudgeSummaries } from "./judges/index.js";
|
|
19
|
-
import { evaluateWithJudge, evaluateWithTribunal, evaluateProject, evaluateDiff, analyzeDependencies, formatVerdictAsMarkdown, formatEvaluationAsMarkdown, } from "./evaluators/index.js";
|
|
20
|
+
import { evaluateWithJudge, evaluateWithTribunal, evaluateProject, evaluateDiff, analyzeDependencies, runAppBuilderWorkflow, formatVerdictAsMarkdown, formatEvaluationAsMarkdown, } from "./evaluators/index.js";
|
|
20
21
|
// ─── Create MCP Server ──────────────────────────────────────────────────────
|
|
21
22
|
const server = new McpServer({
|
|
22
23
|
name: "judges",
|
|
23
|
-
version: "1.
|
|
24
|
+
version: "1.8.0",
|
|
24
25
|
});
|
|
25
26
|
// ─── Tool: get_judges ────────────────────────────────────────────────────────
|
|
26
27
|
server.tool("get_judges", "List all available judges on the Agent Tribunal panel, including their areas of expertise and what they evaluate.", {}, async () => {
|
|
@@ -38,7 +39,114 @@ server.tool("get_judges", "List all available judges on the Agent Tribunal panel
|
|
|
38
39
|
};
|
|
39
40
|
});
|
|
40
41
|
// ─── Tool: evaluate_code ─────────────────────────────────────────────────────
|
|
41
|
-
server.tool("
|
|
42
|
+
server.tool("evaluate_app_builder_flow", "Run a 3-step app-builder workflow: tribunal review, plain-language risk translation, and prioritized remediation tasks with AI-fixable P0/P1 items.", {
|
|
43
|
+
code: z
|
|
44
|
+
.string()
|
|
45
|
+
.optional()
|
|
46
|
+
.describe("Source code to evaluate (use with language for single-file mode)"),
|
|
47
|
+
language: z
|
|
48
|
+
.string()
|
|
49
|
+
.optional()
|
|
50
|
+
.describe("Programming language for single-file or diff mode"),
|
|
51
|
+
files: z
|
|
52
|
+
.array(z.object({
|
|
53
|
+
path: z.string().describe("Relative file path"),
|
|
54
|
+
content: z.string().describe("File content"),
|
|
55
|
+
language: z.string().describe("Programming language"),
|
|
56
|
+
}))
|
|
57
|
+
.optional()
|
|
58
|
+
.describe("Project files for multi-file mode"),
|
|
59
|
+
changedLines: z
|
|
60
|
+
.array(z.number())
|
|
61
|
+
.optional()
|
|
62
|
+
.describe("1-based changed line numbers for diff mode"),
|
|
63
|
+
context: z
|
|
64
|
+
.string()
|
|
65
|
+
.optional()
|
|
66
|
+
.describe("Optional context about business purpose or constraints"),
|
|
67
|
+
maxFindings: z
|
|
68
|
+
.number()
|
|
69
|
+
.optional()
|
|
70
|
+
.describe("Maximum number of translated top findings to return (default: 10)"),
|
|
71
|
+
maxTasks: z
|
|
72
|
+
.number()
|
|
73
|
+
.optional()
|
|
74
|
+
.describe("Maximum number of remediation tasks to return (default: 20)"),
|
|
75
|
+
}, async ({ code, language, files, changedLines, context, maxFindings, maxTasks }) => {
|
|
76
|
+
try {
|
|
77
|
+
const result = runAppBuilderWorkflow({
|
|
78
|
+
code,
|
|
79
|
+
language,
|
|
80
|
+
files,
|
|
81
|
+
changedLines,
|
|
82
|
+
context,
|
|
83
|
+
maxFindings,
|
|
84
|
+
maxTasks,
|
|
85
|
+
});
|
|
86
|
+
const releaseLabel = result.releaseDecision === "do-not-ship"
|
|
87
|
+
? "Do not ship"
|
|
88
|
+
: result.releaseDecision === "ship-with-caution"
|
|
89
|
+
? "Ship with caution"
|
|
90
|
+
: "Ship now";
|
|
91
|
+
let md = `# App Builder Workflow Report\n\n`;
|
|
92
|
+
md += `**Mode:** ${result.mode}\n`;
|
|
93
|
+
md += `**Decision:** ${releaseLabel}\n`;
|
|
94
|
+
md += `**Verdict:** ${result.verdict.toUpperCase()} (${result.score}/100)\n`;
|
|
95
|
+
md += `**Findings:** Critical ${result.criticalCount} | High ${result.highCount} | Medium ${result.mediumCount}\n\n`;
|
|
96
|
+
md += `${result.summary}\n\n`;
|
|
97
|
+
md += `## Plain-Language Summary\n\n`;
|
|
98
|
+
if (result.plainLanguageFindings.length === 0) {
|
|
99
|
+
md += `No critical/high/medium findings were identified in this run.\n\n`;
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
for (const finding of result.plainLanguageFindings) {
|
|
103
|
+
md += `### [${finding.severity.toUpperCase()}] ${finding.ruleId}: ${finding.title}\n`;
|
|
104
|
+
md += `- **What is wrong:** ${finding.whatIsWrong}\n`;
|
|
105
|
+
md += `- **Why it matters:** ${finding.whyItMatters}\n`;
|
|
106
|
+
md += `- **Next action:** ${finding.nextAction}\n\n`;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
md += `## Prioritized Task List\n\n`;
|
|
110
|
+
if (result.tasks.length === 0) {
|
|
111
|
+
md += `No remediation tasks generated.\n\n`;
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
for (const task of result.tasks) {
|
|
115
|
+
md += `- **${task.priority}** | Owner: ${task.owner.toUpperCase()} | Effort: ${task.effort} | ${task.ruleId}\n`;
|
|
116
|
+
md += ` - Task: ${task.task}\n`;
|
|
117
|
+
md += ` - Done when: ${task.doneWhen}\n`;
|
|
118
|
+
}
|
|
119
|
+
md += `\n`;
|
|
120
|
+
}
|
|
121
|
+
md += `## AI-Fixable Now (P0/P1)\n\n`;
|
|
122
|
+
if (result.aiFixableNow.length === 0) {
|
|
123
|
+
md += `No AI-fixable P0/P1 items detected in this run.\n`;
|
|
124
|
+
}
|
|
125
|
+
else {
|
|
126
|
+
for (const task of result.aiFixableNow) {
|
|
127
|
+
md += `- **${task.priority} ${task.ruleId}** ${task.task}\n`;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
return {
|
|
131
|
+
content: [{ type: "text", text: md }],
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
catch (error) {
|
|
135
|
+
return {
|
|
136
|
+
content: [
|
|
137
|
+
{
|
|
138
|
+
type: "text",
|
|
139
|
+
text: error instanceof Error
|
|
140
|
+
? `Error: ${error.message}`
|
|
141
|
+
: "Error: Failed to run app builder workflow",
|
|
142
|
+
},
|
|
143
|
+
],
|
|
144
|
+
isError: true,
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
});
|
|
148
|
+
// ─── Tool: evaluate_code ─────────────────────────────────────────────────────
|
|
149
|
+
server.tool("evaluate_code", `Submit code to the full Judges Panel for evaluation. All ${JUDGES.length} judges will independently review the code using both automated pattern detection and deep contextual analysis criteria. Returns a combined verdict with scores, findings, and expert review guidance for thorough evaluation.`, {
|
|
42
150
|
code: z
|
|
43
151
|
.string()
|
|
44
152
|
.describe("The source code to evaluate. Include the full file content for best results."),
|
|
@@ -104,7 +212,7 @@ server.tool("evaluate_code_single_judge", `Submit code to a specific judge on th
|
|
|
104
212
|
};
|
|
105
213
|
});
|
|
106
214
|
// ─── Tool: evaluate_project ──────────────────────────────────────────────────
|
|
107
|
-
server.tool("evaluate_project",
|
|
215
|
+
server.tool("evaluate_project", `Submit multiple files for project-level analysis. All ${JUDGES.length} judges evaluate each file, plus cross-file architectural analysis detects issues like code duplication, inconsistent error handling, and dependency cycles.`, {
|
|
108
216
|
files: z.array(z.object({
|
|
109
217
|
path: z.string().describe("Relative file path"),
|
|
110
218
|
content: z.string().describe("File content"),
|
|
@@ -145,7 +253,7 @@ server.tool("evaluate_project", "Submit multiple files for project-level analysi
|
|
|
145
253
|
};
|
|
146
254
|
});
|
|
147
255
|
// ─── Tool: evaluate_diff ─────────────────────────────────────────────────────
|
|
148
|
-
server.tool("evaluate_diff",
|
|
256
|
+
server.tool("evaluate_diff", `Evaluate only the changed lines in a code diff. Runs all ${JUDGES.length} judges on the full file but filters findings to only those affecting the specified changed lines. Ideal for PR reviews and incremental analysis.`, {
|
|
149
257
|
code: z
|
|
150
258
|
.string()
|
|
151
259
|
.describe("The full file content (post-change)"),
|
|
@@ -311,7 +419,7 @@ for (const judge of JUDGES) {
|
|
|
311
419
|
});
|
|
312
420
|
}
|
|
313
421
|
// Full tribunal prompt
|
|
314
|
-
server.prompt("full-tribunal",
|
|
422
|
+
server.prompt("full-tribunal", `Convene the full Judges Panel — all ${JUDGES.length} judges evaluate the code in their respective domains and produce a combined verdict.`, {
|
|
315
423
|
code: z
|
|
316
424
|
.string()
|
|
317
425
|
.describe("The source code to evaluate"),
|
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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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-sovereignty.d.ts","sourceRoot":"","sources":["../../src/judges/data-sovereignty.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,eAAO,MAAM,oBAAoB,EAAE,eAiClC,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
export const dataSovereigntyJudge = {
|
|
2
|
+
id: "data-sovereignty",
|
|
3
|
+
name: "Judge Data Sovereignty",
|
|
4
|
+
domain: "Data Sovereignty & Jurisdictional Controls",
|
|
5
|
+
description: "Evaluates code for data residency enforcement, cross-border transfer controls, lawful transfer mechanisms, and jurisdiction-aware data handling.",
|
|
6
|
+
rulePrefix: "SOV",
|
|
7
|
+
systemPrompt: `You are Judge Data Sovereignty — a specialist in data residency, cross-border data transfer controls, jurisdictional compliance, and cloud architecture governance.
|
|
8
|
+
|
|
9
|
+
YOUR EVALUATION CRITERIA:
|
|
10
|
+
1. **Data Residency Enforcement**: Are region choices explicit and constrained? Is storage pinned to approved jurisdictions (e.g., EU-only, US-only)?
|
|
11
|
+
2. **Cross-Border Transfer Controls**: Are outbound data flows to third-party APIs/services controlled and restricted by jurisdiction?
|
|
12
|
+
3. **Transfer Mechanisms**: Where cross-border transfer is required, are lawful mechanisms and safeguards represented (SCCs, adequacy assumptions, contractual controls)?
|
|
13
|
+
4. **Jurisdiction-Aware Routing**: Is user data routed/processed according to country or regulatory zone?
|
|
14
|
+
5. **Geo-Fencing of Processing**: Are compute and background processing jobs region-aware (queues, workers, analytics pipelines)?
|
|
15
|
+
6. **Data Localization by Design**: Are architectural choices avoiding unnecessary centralized global stores?
|
|
16
|
+
7. **Backup and Disaster Recovery Geography**: Do backup/replication strategies avoid unauthorized foreign replication?
|
|
17
|
+
8. **Subprocessor and Third-Party Endpoint Risk**: Are external services checked for region alignment and legal exposure?
|
|
18
|
+
9. **Data Egress Guardrails**: Are there controls that prevent accidental export (logs, telemetry, exports, support tooling)?
|
|
19
|
+
10. **Evidence and Auditability**: Are controls observable and auditable (region tags, policy checks, alerts, deployment guardrails)?
|
|
20
|
+
|
|
21
|
+
RULES FOR YOUR EVALUATION:
|
|
22
|
+
- Assign rule IDs with prefix "SOV-" (e.g. SOV-001).
|
|
23
|
+
- Flag both code-level and architecture-level sovereignty risks.
|
|
24
|
+
- Distinguish between hard violations (critical/high) and weak governance posture (medium/low).
|
|
25
|
+
- Recommend concrete remediations: region pinning, policy-as-code, egress controls, and jurisdiction-aware routing.
|
|
26
|
+
- Score from 0-100 where 100 means strong sovereignty posture.
|
|
27
|
+
|
|
28
|
+
ADVERSARIAL MANDATE:
|
|
29
|
+
- Your role is adversarial: assume sovereignty controls are missing unless explicitly shown.
|
|
30
|
+
- Never praise or compliment the code. Report only gaps, risks, and deficiencies.
|
|
31
|
+
- If uncertain, flag potential jurisdictional exposure and explain the assumption.
|
|
32
|
+
- Absence of findings does not prove sovereignty compliance. State this explicitly.`,
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=data-sovereignty.js.map
|
|
@@ -0,0 +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,wBAAwB;IAC9B,MAAM,EAAE,4CAA4C;IACpD,WAAW,EACT,kJAAkJ;IACpJ,UAAU,EAAE,KAAK;IACjB,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;oFAyBoE;CACnF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/judges/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/judges/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAmC9C;;;;;;GAMG;AACH,eAAO,MAAM,MAAM,EAAE,eAAe,EAiCnC,CAAC;AAEF;;GAEG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAEhE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,KAAK,CAAC;IACzC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC,CAOD"}
|
package/dist/judges/index.js
CHANGED
|
@@ -10,6 +10,7 @@ import { reliabilityJudge } from "./reliability.js";
|
|
|
10
10
|
import { observabilityJudge } from "./observability.js";
|
|
11
11
|
import { performanceJudge } from "./performance.js";
|
|
12
12
|
import { complianceJudge } from "./compliance.js";
|
|
13
|
+
import { dataSovereigntyJudge } from "./data-sovereignty.js";
|
|
13
14
|
import { testingJudge } from "./testing.js";
|
|
14
15
|
import { documentationJudge } from "./documentation.js";
|
|
15
16
|
import { internationalizationJudge } from "./internationalization.js";
|
|
@@ -49,6 +50,7 @@ export const JUDGES = [
|
|
|
49
50
|
observabilityJudge,
|
|
50
51
|
performanceJudge,
|
|
51
52
|
complianceJudge,
|
|
53
|
+
dataSovereigntyJudge,
|
|
52
54
|
testingJudge,
|
|
53
55
|
documentationJudge,
|
|
54
56
|
internationalizationJudge,
|
package/dist/judges/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/judges/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/judges/index.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -125,6 +125,73 @@ export interface DependencyVerdict {
|
|
|
125
125
|
/** Summary */
|
|
126
126
|
summary: string;
|
|
127
127
|
}
|
|
128
|
+
/**
|
|
129
|
+
* High-level release recommendation for non-technical stakeholders.
|
|
130
|
+
*/
|
|
131
|
+
export type ReleaseDecision = "ship-now" | "ship-with-caution" | "do-not-ship";
|
|
132
|
+
/**
|
|
133
|
+
* Plain-language translation of a technical finding.
|
|
134
|
+
*/
|
|
135
|
+
export interface PlainLanguageFinding {
|
|
136
|
+
/** Rule ID from the originating judge */
|
|
137
|
+
ruleId: string;
|
|
138
|
+
/** Original severity */
|
|
139
|
+
severity: Severity;
|
|
140
|
+
/** Human-readable issue title */
|
|
141
|
+
title: string;
|
|
142
|
+
/** What is wrong in plain language */
|
|
143
|
+
whatIsWrong: string;
|
|
144
|
+
/** Why this matters to users/business */
|
|
145
|
+
whyItMatters: string;
|
|
146
|
+
/** Single next action */
|
|
147
|
+
nextAction: string;
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* Prioritized remediation task item.
|
|
151
|
+
*/
|
|
152
|
+
export interface WorkflowTask {
|
|
153
|
+
/** Priority bucket */
|
|
154
|
+
priority: "P0" | "P1" | "P2";
|
|
155
|
+
/** Suggested owner */
|
|
156
|
+
owner: "ai" | "developer" | "product";
|
|
157
|
+
/** Relative effort estimate */
|
|
158
|
+
effort: "S" | "M" | "L";
|
|
159
|
+
/** Rule ID for traceability */
|
|
160
|
+
ruleId: string;
|
|
161
|
+
/** Action-oriented task text */
|
|
162
|
+
task: string;
|
|
163
|
+
/** Acceptance criterion */
|
|
164
|
+
doneWhen: string;
|
|
165
|
+
/** Whether the task is suitable for AI-first implementation */
|
|
166
|
+
aiFixable: boolean;
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* End-to-end output for the non-technical app-builder workflow.
|
|
170
|
+
*/
|
|
171
|
+
export interface AppBuilderWorkflowResult {
|
|
172
|
+
/** Source mode used for analysis */
|
|
173
|
+
mode: "code" | "project" | "diff";
|
|
174
|
+
/** Final tribunal/diff verdict */
|
|
175
|
+
verdict: Verdict;
|
|
176
|
+
/** Score in range 0-100 */
|
|
177
|
+
score: number;
|
|
178
|
+
/** Count of critical findings considered */
|
|
179
|
+
criticalCount: number;
|
|
180
|
+
/** Count of high findings considered */
|
|
181
|
+
highCount: number;
|
|
182
|
+
/** Count of medium findings considered */
|
|
183
|
+
mediumCount: number;
|
|
184
|
+
/** Release recommendation for decision makers */
|
|
185
|
+
releaseDecision: ReleaseDecision;
|
|
186
|
+
/** Concise recommendation summary */
|
|
187
|
+
summary: string;
|
|
188
|
+
/** Top findings translated for non-technical readers */
|
|
189
|
+
plainLanguageFindings: PlainLanguageFinding[];
|
|
190
|
+
/** Prioritized remediation tasks */
|
|
191
|
+
tasks: WorkflowTask[];
|
|
192
|
+
/** AI-fixable tasks at P0/P1 priority */
|
|
193
|
+
aiFixableNow: WorkflowTask[];
|
|
194
|
+
}
|
|
128
195
|
/**
|
|
129
196
|
* The complete evaluation result from a single judge.
|
|
130
197
|
*/
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kevinrabun/judges",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "1.8.0",
|
|
4
|
+
"description": "32 specialized judges that evaluate AI-generated code for security, cost, and quality.",
|
|
5
5
|
"mcpName": "io.github.KevinRabun/judges",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"main": "dist/index.js",
|
package/server.json
CHANGED
|
@@ -2,17 +2,17 @@
|
|
|
2
2
|
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
|
|
3
3
|
"name": "io.github.KevinRabun/judges",
|
|
4
4
|
"title": "Judges Panel",
|
|
5
|
-
"description": "
|
|
5
|
+
"description": "32 judges that evaluate AI-generated code for security, cost, and quality with built-in AST.",
|
|
6
6
|
"repository": {
|
|
7
7
|
"url": "https://github.com/kevinrabun/judges",
|
|
8
8
|
"source": "github"
|
|
9
9
|
},
|
|
10
|
-
"version": "1.
|
|
10
|
+
"version": "1.8.0",
|
|
11
11
|
"packages": [
|
|
12
12
|
{
|
|
13
13
|
"registryType": "npm",
|
|
14
14
|
"identifier": "@kevinrabun/judges",
|
|
15
|
-
"version": "1.
|
|
15
|
+
"version": "1.8.0",
|
|
16
16
|
"transport": {
|
|
17
17
|
"type": "stdio"
|
|
18
18
|
}
|