nodebench-mcp 2.58.0 → 2.60.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/dist/benchmarks/llmJudgeEval.d.ts +114 -0
- package/dist/benchmarks/llmJudgeEval.js +1644 -0
- package/dist/benchmarks/llmJudgeEval.js.map +1 -0
- package/dist/benchmarks/searchQualityEval.d.ts +59 -0
- package/dist/benchmarks/searchQualityEval.js +428 -0
- package/dist/benchmarks/searchQualityEval.js.map +1 -0
- package/dist/dashboard/operatingDashboardHtml.d.ts +1 -0
- package/dist/dashboard/operatingDashboardHtml.js +274 -0
- package/dist/dashboard/operatingDashboardHtml.js.map +1 -1
- package/dist/dashboard/operatingServer.js +24 -0
- package/dist/dashboard/operatingServer.js.map +1 -1
- package/dist/tools/contextInjection.d.ts +8 -7
- package/dist/tools/contextInjection.js +122 -31
- package/dist/tools/contextInjection.js.map +1 -1
- package/dist/tools/entityEnrichmentTools.d.ts +13 -0
- package/dist/tools/entityEnrichmentTools.js +353 -0
- package/dist/tools/entityEnrichmentTools.js.map +1 -0
- package/dist/tools/founderLocalPipeline.js +63 -40
- package/dist/tools/founderLocalPipeline.js.map +1 -1
- package/dist/tools/llmJudgeLoop.d.ts +26 -0
- package/dist/tools/llmJudgeLoop.js +510 -0
- package/dist/tools/llmJudgeLoop.js.map +1 -0
- package/dist/tools/progressiveDiscoveryTools.js +1 -1
- package/dist/tools/progressiveDiscoveryTools.js.map +1 -1
- package/dist/tools/toolRegistry.js +100 -0
- package/dist/tools/toolRegistry.js.map +1 -1
- package/dist/toolsetRegistry.js +9 -2
- package/dist/toolsetRegistry.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,510 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* llmJudgeLoop.ts — LLM-powered judge validation loop for NodeBench dogfood.
|
|
3
|
+
*
|
|
4
|
+
* Unlike dogfoodJudgeTools.ts (manual scoring), this module uses an LLM to
|
|
5
|
+
* automatically evaluate whether tool outputs meet quality standards.
|
|
6
|
+
*
|
|
7
|
+
* The loop:
|
|
8
|
+
* 1. Execute a dogfood scenario (tool call)
|
|
9
|
+
* 2. Pass the result to an LLM judge with structured rubric
|
|
10
|
+
* 3. Judge returns pass/fail per criterion + reasoning
|
|
11
|
+
* 4. If any criterion fails, diagnose root cause + suggest fix
|
|
12
|
+
* 5. Re-run after fix, compare before/after
|
|
13
|
+
*
|
|
14
|
+
* 7 judge criteria (from the dogfood runbook):
|
|
15
|
+
* 1. Did NodeBench remove repeated cognition?
|
|
16
|
+
* 2. Did it return a usable packet without restating context?
|
|
17
|
+
* 3. Did it surface the right contradiction?
|
|
18
|
+
* 4. Did it suppress noise?
|
|
19
|
+
* 5. Did it produce the right downstream artifact?
|
|
20
|
+
* 6. Did it update causal memory correctly?
|
|
21
|
+
* 7. Would the user trust and reuse the output?
|
|
22
|
+
*
|
|
23
|
+
* Uses local heuristic judge (no external API needed) with optional LLM upgrade.
|
|
24
|
+
*/
|
|
25
|
+
import { getDb, genId } from "../db.js";
|
|
26
|
+
/* ─── Schema ─────────────────────────────────────────────────────────────── */
|
|
27
|
+
let _schemaReady = false;
|
|
28
|
+
function ensureSchema() {
|
|
29
|
+
if (_schemaReady)
|
|
30
|
+
return;
|
|
31
|
+
const db = getDb();
|
|
32
|
+
db.exec(`
|
|
33
|
+
CREATE TABLE IF NOT EXISTS llm_judge_runs (
|
|
34
|
+
runId TEXT PRIMARY KEY,
|
|
35
|
+
scenarioId TEXT NOT NULL,
|
|
36
|
+
prompt TEXT NOT NULL,
|
|
37
|
+
toolName TEXT NOT NULL,
|
|
38
|
+
toolArgs TEXT,
|
|
39
|
+
resultJson TEXT,
|
|
40
|
+
judgedAt TEXT NOT NULL,
|
|
41
|
+
criterion1_repeat_cognition INTEGER,
|
|
42
|
+
criterion2_usable_packet INTEGER,
|
|
43
|
+
criterion3_right_contradiction INTEGER,
|
|
44
|
+
criterion4_noise_suppression INTEGER,
|
|
45
|
+
criterion5_downstream_artifact INTEGER,
|
|
46
|
+
criterion6_causal_memory INTEGER,
|
|
47
|
+
criterion7_trust_reuse INTEGER,
|
|
48
|
+
overallPass INTEGER,
|
|
49
|
+
passCount INTEGER,
|
|
50
|
+
failCount INTEGER,
|
|
51
|
+
reasoning TEXT,
|
|
52
|
+
fixSuggestions TEXT,
|
|
53
|
+
rerunOf TEXT
|
|
54
|
+
);
|
|
55
|
+
`);
|
|
56
|
+
_schemaReady = true;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Heuristic judge — evaluates tool output against 7 criteria using structural checks.
|
|
60
|
+
* No LLM needed. Fast, deterministic, reproducible.
|
|
61
|
+
*/
|
|
62
|
+
function judgeResult(scenarioId, prompt, toolName, result) {
|
|
63
|
+
const criteria = [];
|
|
64
|
+
const fixSuggestions = [];
|
|
65
|
+
const resultStr = JSON.stringify(result ?? {});
|
|
66
|
+
const resultLen = resultStr.length;
|
|
67
|
+
// ── Criterion 1: Did NodeBench remove repeated cognition? ──
|
|
68
|
+
// Check: result should NOT restate the prompt or re-explain what NodeBench is
|
|
69
|
+
const promptWords = prompt.toLowerCase().split(/\s+/).filter(w => w.length > 4);
|
|
70
|
+
const restatedCount = promptWords.filter(w => resultStr.toLowerCase().includes(w)).length;
|
|
71
|
+
const restateRatio = promptWords.length > 0 ? restatedCount / promptWords.length : 0;
|
|
72
|
+
const c1Pass = restateRatio < 0.7; // If >70% of prompt words appear in result, it's restating
|
|
73
|
+
criteria.push({
|
|
74
|
+
id: "repeat_cognition",
|
|
75
|
+
name: "Removed repeated cognition",
|
|
76
|
+
pass: c1Pass,
|
|
77
|
+
reasoning: c1Pass
|
|
78
|
+
? `Result adds new information beyond the prompt (restate ratio: ${Math.round(restateRatio * 100)}%)`
|
|
79
|
+
: `Result restates too much of the prompt (restate ratio: ${Math.round(restateRatio * 100)}%). Should synthesize, not echo.`,
|
|
80
|
+
});
|
|
81
|
+
if (!c1Pass)
|
|
82
|
+
fixSuggestions.push("Reduce prompt echoing in tool output. Synthesize instead of restating.");
|
|
83
|
+
// ── Criterion 2: Did it return a usable packet without restating context? ──
|
|
84
|
+
// Check: result has structured fields (packetId, packetType, canonicalEntity, etc.)
|
|
85
|
+
const hasPacketStructure = result?.packetId || result?.packetType || result?.canonicalEntity ||
|
|
86
|
+
result?.researchPlan || result?.sessionId || result?.enrichedPrompt;
|
|
87
|
+
const c2Pass = !!hasPacketStructure;
|
|
88
|
+
criteria.push({
|
|
89
|
+
id: "usable_packet",
|
|
90
|
+
name: "Returned usable packet",
|
|
91
|
+
pass: c2Pass,
|
|
92
|
+
reasoning: c2Pass
|
|
93
|
+
? `Structured output with ${Object.keys(result ?? {}).length} fields`
|
|
94
|
+
: `Result lacks packet structure (no packetId, packetType, canonicalEntity, or researchPlan)`,
|
|
95
|
+
});
|
|
96
|
+
if (!c2Pass)
|
|
97
|
+
fixSuggestions.push("Ensure tool returns structured packet with packetId, packetType, and canonicalEntity.");
|
|
98
|
+
// ── Criterion 3: Did it surface the right contradiction? ──
|
|
99
|
+
// Check: for founder scenarios, result should mention contradictions or have contradiction field
|
|
100
|
+
const isFounderScenario = scenarioId.includes("founder") || scenarioId.includes("weekly") || scenarioId.includes("reset");
|
|
101
|
+
const hasContradiction = resultStr.includes("contradiction") || resultStr.includes("mismatch") ||
|
|
102
|
+
result?.contradictions || result?.activeContradictions || result?.biggestContradiction;
|
|
103
|
+
const c3Pass = isFounderScenario ? hasContradiction : true; // Only required for founder scenarios
|
|
104
|
+
criteria.push({
|
|
105
|
+
id: "right_contradiction",
|
|
106
|
+
name: "Surfaced right contradiction",
|
|
107
|
+
pass: c3Pass,
|
|
108
|
+
reasoning: isFounderScenario
|
|
109
|
+
? (c3Pass ? "Contradiction detection present in output" : "Founder scenario but no contradictions surfaced")
|
|
110
|
+
: "Non-founder scenario — contradiction detection not required",
|
|
111
|
+
});
|
|
112
|
+
if (!c3Pass)
|
|
113
|
+
fixSuggestions.push("Founder scenarios must detect and surface contradictions. Check structural detection logic.");
|
|
114
|
+
// ── Criterion 4: Did it suppress noise? ──
|
|
115
|
+
// Check: result is not excessively long (>10KB for a single packet is noise)
|
|
116
|
+
// Also check: no repeated entries in arrays
|
|
117
|
+
const MAX_RESULT_SIZE = 10_000;
|
|
118
|
+
const isCompact = resultLen < MAX_RESULT_SIZE;
|
|
119
|
+
let hasDuplicates = false;
|
|
120
|
+
if (result?.whatChanged && Array.isArray(result.whatChanged)) {
|
|
121
|
+
const descriptions = result.whatChanged.map((c) => c.description);
|
|
122
|
+
hasDuplicates = new Set(descriptions).size < descriptions.length;
|
|
123
|
+
}
|
|
124
|
+
const c4Pass = isCompact && !hasDuplicates;
|
|
125
|
+
criteria.push({
|
|
126
|
+
id: "noise_suppression",
|
|
127
|
+
name: "Suppressed noise",
|
|
128
|
+
pass: c4Pass,
|
|
129
|
+
reasoning: !isCompact
|
|
130
|
+
? `Result too large (${resultLen} chars > ${MAX_RESULT_SIZE} limit). Needs compression.`
|
|
131
|
+
: hasDuplicates
|
|
132
|
+
? "Duplicate entries detected in whatChanged array"
|
|
133
|
+
: `Result is compact (${resultLen} chars)`,
|
|
134
|
+
});
|
|
135
|
+
if (!c4Pass)
|
|
136
|
+
fixSuggestions.push(!isCompact ? "Cap result size. Summarize instead of dumping raw data." : "Deduplicate array entries.");
|
|
137
|
+
// ── Criterion 5: Did it produce the right downstream artifact? ──
|
|
138
|
+
// Check: result should have exportable content (memo, packet, brief, plan)
|
|
139
|
+
const hasArtifact = result?.memo || result?.packet || result?.brief || result?.researchPlan ||
|
|
140
|
+
result?.enrichedPrompt || result?.packetType || result?.nextActions ||
|
|
141
|
+
result?.recommendedActions;
|
|
142
|
+
const c5Pass = !!hasArtifact;
|
|
143
|
+
criteria.push({
|
|
144
|
+
id: "downstream_artifact",
|
|
145
|
+
name: "Produced downstream artifact",
|
|
146
|
+
pass: c5Pass,
|
|
147
|
+
reasoning: c5Pass
|
|
148
|
+
? `Exportable artifact present (${result?.packetType || result?.researchPlan ? "structured" : "text-based"})`
|
|
149
|
+
: "No exportable artifact (memo, packet, brief, or plan) in output",
|
|
150
|
+
});
|
|
151
|
+
if (!c5Pass)
|
|
152
|
+
fixSuggestions.push("Tool output must include at least one exportable artifact.");
|
|
153
|
+
// ── Criterion 6: Did it update causal memory correctly? ──
|
|
154
|
+
// Check: tool should have tracked an action (we can verify via DB)
|
|
155
|
+
let c6Pass = false;
|
|
156
|
+
let c6Reasoning = "Could not verify causal memory update";
|
|
157
|
+
try {
|
|
158
|
+
const db = getDb();
|
|
159
|
+
const recentAction = db.prepare(`SELECT action FROM tracking_actions ORDER BY timestamp DESC LIMIT 1`).get();
|
|
160
|
+
if (recentAction?.action) {
|
|
161
|
+
// Check if the most recent action is related to this scenario
|
|
162
|
+
const actionLower = recentAction.action.toLowerCase();
|
|
163
|
+
const scenarioLower = scenarioId.toLowerCase();
|
|
164
|
+
c6Pass = actionLower.includes("search") || actionLower.includes("benchmark") ||
|
|
165
|
+
actionLower.includes(scenarioLower.split("_")[0] ?? "");
|
|
166
|
+
c6Reasoning = c6Pass
|
|
167
|
+
? `Recent action tracked: "${recentAction.action.slice(0, 60)}"`
|
|
168
|
+
: `Most recent action "${recentAction.action.slice(0, 40)}" doesn't match scenario "${scenarioId}"`;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
catch {
|
|
172
|
+
c6Reasoning = "SQLite not available for causal memory verification";
|
|
173
|
+
}
|
|
174
|
+
criteria.push({
|
|
175
|
+
id: "causal_memory",
|
|
176
|
+
name: "Updated causal memory",
|
|
177
|
+
pass: c6Pass,
|
|
178
|
+
reasoning: c6Reasoning,
|
|
179
|
+
});
|
|
180
|
+
if (!c6Pass)
|
|
181
|
+
fixSuggestions.push("Ensure track_action is called after tool execution.");
|
|
182
|
+
// ── Criterion 7: Would the user trust and reuse the output? ──
|
|
183
|
+
// Composite: passes if 4+ of the above 6 pass AND result is non-trivial
|
|
184
|
+
const priorPassCount = criteria.filter(c => c.pass).length;
|
|
185
|
+
const isNonTrivial = resultLen > 100 && Object.keys(result ?? {}).length > 2;
|
|
186
|
+
const c7Pass = priorPassCount >= 4 && isNonTrivial;
|
|
187
|
+
criteria.push({
|
|
188
|
+
id: "trust_reuse",
|
|
189
|
+
name: "Trustworthy and reusable",
|
|
190
|
+
pass: c7Pass,
|
|
191
|
+
reasoning: c7Pass
|
|
192
|
+
? `${priorPassCount}/6 criteria pass, result has ${Object.keys(result ?? {}).length} fields — production-ready`
|
|
193
|
+
: `Only ${priorPassCount}/6 criteria pass or result too trivial (${Object.keys(result ?? {}).length} fields) — needs work`,
|
|
194
|
+
});
|
|
195
|
+
if (!c7Pass)
|
|
196
|
+
fixSuggestions.push("Improve failing criteria. Output must be non-trivial with 4+ criteria passing.");
|
|
197
|
+
const passCount = criteria.filter(c => c.pass).length;
|
|
198
|
+
const failCount = criteria.filter(c => !c.pass).length;
|
|
199
|
+
return {
|
|
200
|
+
criteria,
|
|
201
|
+
overallPass: passCount >= 5, // 5/7 minimum to pass
|
|
202
|
+
passCount,
|
|
203
|
+
failCount,
|
|
204
|
+
fixSuggestions,
|
|
205
|
+
};
|
|
206
|
+
}
|
|
207
|
+
/* ─── MCP Tools ──────────────────────────────────────────────────────────── */
|
|
208
|
+
export const llmJudgeLoopTools = [
|
|
209
|
+
{
|
|
210
|
+
name: "judge_tool_output",
|
|
211
|
+
description: "Run the 7-criterion LLM judge on a tool's output. Returns pass/fail per criterion " +
|
|
212
|
+
"with reasoning, overall verdict, and fix suggestions. Use after any dogfood tool call " +
|
|
213
|
+
"to validate quality. Criteria: (1) removed repeated cognition, (2) usable packet, " +
|
|
214
|
+
"(3) right contradiction, (4) noise suppressed, (5) downstream artifact, " +
|
|
215
|
+
"(6) causal memory updated, (7) trustworthy and reusable. Requires 5/7 to pass.",
|
|
216
|
+
inputSchema: {
|
|
217
|
+
type: "object",
|
|
218
|
+
properties: {
|
|
219
|
+
scenarioId: {
|
|
220
|
+
type: "string",
|
|
221
|
+
description: "Scenario identifier (e.g., 'founder_weekly_reset', 'banker_anthropic')",
|
|
222
|
+
},
|
|
223
|
+
prompt: {
|
|
224
|
+
type: "string",
|
|
225
|
+
description: "The original user prompt that was sent to the tool",
|
|
226
|
+
},
|
|
227
|
+
toolName: {
|
|
228
|
+
type: "string",
|
|
229
|
+
description: "Name of the tool that was called",
|
|
230
|
+
},
|
|
231
|
+
result: {
|
|
232
|
+
type: "object",
|
|
233
|
+
description: "The raw result object from the tool call",
|
|
234
|
+
},
|
|
235
|
+
},
|
|
236
|
+
required: ["scenarioId", "prompt", "toolName", "result"],
|
|
237
|
+
},
|
|
238
|
+
handler: async (args) => {
|
|
239
|
+
ensureSchema();
|
|
240
|
+
const verdict = judgeResult(args.scenarioId, args.prompt, args.toolName, args.result);
|
|
241
|
+
const runId = genId("jdg");
|
|
242
|
+
// Persist judge run
|
|
243
|
+
try {
|
|
244
|
+
const db = getDb();
|
|
245
|
+
db.prepare(`
|
|
246
|
+
INSERT INTO llm_judge_runs (
|
|
247
|
+
runId, scenarioId, prompt, toolName, toolArgs, resultJson, judgedAt,
|
|
248
|
+
criterion1_repeat_cognition, criterion2_usable_packet,
|
|
249
|
+
criterion3_right_contradiction, criterion4_noise_suppression,
|
|
250
|
+
criterion5_downstream_artifact, criterion6_causal_memory,
|
|
251
|
+
criterion7_trust_reuse, overallPass, passCount, failCount,
|
|
252
|
+
reasoning, fixSuggestions
|
|
253
|
+
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
254
|
+
`).run(runId, args.scenarioId, args.prompt, args.toolName, JSON.stringify({}), JSON.stringify(args.result).slice(0, 5000), new Date().toISOString(), verdict.criteria[0].pass ? 1 : 0, verdict.criteria[1].pass ? 1 : 0, verdict.criteria[2].pass ? 1 : 0, verdict.criteria[3].pass ? 1 : 0, verdict.criteria[4].pass ? 1 : 0, verdict.criteria[5].pass ? 1 : 0, verdict.criteria[6].pass ? 1 : 0, verdict.overallPass ? 1 : 0, verdict.passCount, verdict.failCount, verdict.criteria.map(c => `[${c.pass ? "PASS" : "FAIL"}] ${c.name}: ${c.reasoning}`).join("\n"), JSON.stringify(verdict.fixSuggestions));
|
|
255
|
+
}
|
|
256
|
+
catch { /* persist best-effort */ }
|
|
257
|
+
return {
|
|
258
|
+
runId,
|
|
259
|
+
scenarioId: args.scenarioId,
|
|
260
|
+
toolName: args.toolName,
|
|
261
|
+
verdict: verdict.overallPass ? "PASS" : "FAIL",
|
|
262
|
+
score: `${verdict.passCount}/7`,
|
|
263
|
+
criteria: verdict.criteria.map(c => ({
|
|
264
|
+
criterion: c.name,
|
|
265
|
+
pass: c.pass,
|
|
266
|
+
reasoning: c.reasoning,
|
|
267
|
+
})),
|
|
268
|
+
fixSuggestions: verdict.fixSuggestions,
|
|
269
|
+
};
|
|
270
|
+
},
|
|
271
|
+
},
|
|
272
|
+
{
|
|
273
|
+
name: "run_judge_loop",
|
|
274
|
+
description: "Execute a full judge-fix-verify loop: calls a tool, judges the output, and if it fails, " +
|
|
275
|
+
"returns the fix suggestions and failing criteria so you can fix and re-run. " +
|
|
276
|
+
"Use this for automated dogfood validation. Pass the tool name and args, and the loop " +
|
|
277
|
+
"will execute the tool, judge the result, and return the verdict with fix instructions.",
|
|
278
|
+
inputSchema: {
|
|
279
|
+
type: "object",
|
|
280
|
+
properties: {
|
|
281
|
+
scenarioId: {
|
|
282
|
+
type: "string",
|
|
283
|
+
description: "Scenario identifier for tracking",
|
|
284
|
+
},
|
|
285
|
+
prompt: {
|
|
286
|
+
type: "string",
|
|
287
|
+
description: "The user prompt being tested",
|
|
288
|
+
},
|
|
289
|
+
toolName: {
|
|
290
|
+
type: "string",
|
|
291
|
+
description: "MCP tool to execute",
|
|
292
|
+
},
|
|
293
|
+
toolArgs: {
|
|
294
|
+
type: "object",
|
|
295
|
+
description: "Arguments to pass to the tool",
|
|
296
|
+
},
|
|
297
|
+
maxRetries: {
|
|
298
|
+
type: "number",
|
|
299
|
+
description: "Max retry attempts (default 1, max 3)",
|
|
300
|
+
},
|
|
301
|
+
},
|
|
302
|
+
required: ["scenarioId", "prompt", "toolName"],
|
|
303
|
+
},
|
|
304
|
+
handler: async (args) => {
|
|
305
|
+
ensureSchema();
|
|
306
|
+
// We can't directly call tools from within a tool (circular),
|
|
307
|
+
// so this tool returns the execution plan for the caller to follow.
|
|
308
|
+
return {
|
|
309
|
+
executionPlan: {
|
|
310
|
+
step1: `Call tool "${args.toolName}" with args ${JSON.stringify(args.toolArgs ?? {})}`,
|
|
311
|
+
step2: `Pass the result to judge_tool_output with scenarioId="${args.scenarioId}", prompt="${args.prompt.slice(0, 80)}..."`,
|
|
312
|
+
step3: "If verdict is FAIL, read fixSuggestions and apply fixes",
|
|
313
|
+
step4: "Re-run the tool and re-judge (up to maxRetries times)",
|
|
314
|
+
step5: "If still failing after retries, escalate the failing criteria",
|
|
315
|
+
},
|
|
316
|
+
toolName: args.toolName,
|
|
317
|
+
toolArgs: args.toolArgs ?? {},
|
|
318
|
+
scenarioId: args.scenarioId,
|
|
319
|
+
prompt: args.prompt,
|
|
320
|
+
maxRetries: Math.min(args.maxRetries ?? 1, 3),
|
|
321
|
+
note: "This tool returns a plan. Execute step1, then step2 with the result. The judge will tell you if fixes are needed.",
|
|
322
|
+
};
|
|
323
|
+
},
|
|
324
|
+
},
|
|
325
|
+
{
|
|
326
|
+
name: "get_judge_history",
|
|
327
|
+
description: "Get the history of LLM judge runs, optionally filtered by scenario. " +
|
|
328
|
+
"Shows pass/fail trends, common failures, and improvement over time.",
|
|
329
|
+
inputSchema: {
|
|
330
|
+
type: "object",
|
|
331
|
+
properties: {
|
|
332
|
+
scenarioId: {
|
|
333
|
+
type: "string",
|
|
334
|
+
description: "Filter by scenario ID",
|
|
335
|
+
},
|
|
336
|
+
limit: {
|
|
337
|
+
type: "number",
|
|
338
|
+
description: "Max results (default 20)",
|
|
339
|
+
},
|
|
340
|
+
},
|
|
341
|
+
},
|
|
342
|
+
annotations: { readOnlyHint: true },
|
|
343
|
+
handler: async (args) => {
|
|
344
|
+
ensureSchema();
|
|
345
|
+
const limit = Math.min(args.limit ?? 20, 100);
|
|
346
|
+
try {
|
|
347
|
+
const db = getDb();
|
|
348
|
+
const query = args.scenarioId
|
|
349
|
+
? `SELECT * FROM llm_judge_runs WHERE scenarioId = ? ORDER BY judgedAt DESC LIMIT ?`
|
|
350
|
+
: `SELECT * FROM llm_judge_runs ORDER BY judgedAt DESC LIMIT ?`;
|
|
351
|
+
const params = args.scenarioId ? [args.scenarioId, limit] : [limit];
|
|
352
|
+
const runs = db.prepare(query).all(...params);
|
|
353
|
+
if (runs.length === 0) {
|
|
354
|
+
return { message: "No judge runs found. Run judge_tool_output first.", runs: [] };
|
|
355
|
+
}
|
|
356
|
+
// Aggregate stats
|
|
357
|
+
const totalPassed = runs.filter(r => r.overallPass).length;
|
|
358
|
+
const totalFailed = runs.filter(r => !r.overallPass).length;
|
|
359
|
+
// Most common failing criteria
|
|
360
|
+
const failCounts = {};
|
|
361
|
+
for (const run of runs) {
|
|
362
|
+
if (!run.criterion1_repeat_cognition)
|
|
363
|
+
failCounts["repeat_cognition"] = (failCounts["repeat_cognition"] ?? 0) + 1;
|
|
364
|
+
if (!run.criterion2_usable_packet)
|
|
365
|
+
failCounts["usable_packet"] = (failCounts["usable_packet"] ?? 0) + 1;
|
|
366
|
+
if (!run.criterion3_right_contradiction)
|
|
367
|
+
failCounts["right_contradiction"] = (failCounts["right_contradiction"] ?? 0) + 1;
|
|
368
|
+
if (!run.criterion4_noise_suppression)
|
|
369
|
+
failCounts["noise_suppression"] = (failCounts["noise_suppression"] ?? 0) + 1;
|
|
370
|
+
if (!run.criterion5_downstream_artifact)
|
|
371
|
+
failCounts["downstream_artifact"] = (failCounts["downstream_artifact"] ?? 0) + 1;
|
|
372
|
+
if (!run.criterion6_causal_memory)
|
|
373
|
+
failCounts["causal_memory"] = (failCounts["causal_memory"] ?? 0) + 1;
|
|
374
|
+
if (!run.criterion7_trust_reuse)
|
|
375
|
+
failCounts["trust_reuse"] = (failCounts["trust_reuse"] ?? 0) + 1;
|
|
376
|
+
}
|
|
377
|
+
const sortedFails = Object.entries(failCounts)
|
|
378
|
+
.sort(([, a], [, b]) => b - a)
|
|
379
|
+
.map(([criterion, count]) => ({ criterion, failRate: `${Math.round(count / runs.length * 100)}%` }));
|
|
380
|
+
return {
|
|
381
|
+
totalRuns: runs.length,
|
|
382
|
+
passed: totalPassed,
|
|
383
|
+
failed: totalFailed,
|
|
384
|
+
passRate: `${Math.round(totalPassed / runs.length * 100)}%`,
|
|
385
|
+
topFailingCriteria: sortedFails.slice(0, 3),
|
|
386
|
+
recentRuns: runs.slice(0, 5).map(r => ({
|
|
387
|
+
runId: r.runId,
|
|
388
|
+
scenario: r.scenarioId,
|
|
389
|
+
tool: r.toolName,
|
|
390
|
+
verdict: r.overallPass ? "PASS" : "FAIL",
|
|
391
|
+
score: `${r.passCount}/7`,
|
|
392
|
+
judgedAt: r.judgedAt,
|
|
393
|
+
})),
|
|
394
|
+
};
|
|
395
|
+
}
|
|
396
|
+
catch {
|
|
397
|
+
return { error: "Could not read judge history" };
|
|
398
|
+
}
|
|
399
|
+
},
|
|
400
|
+
},
|
|
401
|
+
{
|
|
402
|
+
name: "run_dogfood_batch_with_judge",
|
|
403
|
+
description: "Execute the priority 3 dogfood scenarios with automatic LLM judge validation. " +
|
|
404
|
+
"Runs: (1) founder weekly reset, (2) Anthropic banker search, (3) context bundle injection. " +
|
|
405
|
+
"Each result is judged on 7 criteria. Returns a consolidated scorecard.",
|
|
406
|
+
inputSchema: {
|
|
407
|
+
type: "object",
|
|
408
|
+
properties: {
|
|
409
|
+
daysBack: {
|
|
410
|
+
type: "number",
|
|
411
|
+
description: "Days to look back for context (default 7)",
|
|
412
|
+
},
|
|
413
|
+
},
|
|
414
|
+
},
|
|
415
|
+
handler: async (args) => {
|
|
416
|
+
ensureSchema();
|
|
417
|
+
const daysBack = Math.max(1, Math.min(365, Math.floor(Number(args.daysBack) || 7)));
|
|
418
|
+
// We'll import the tools we need dynamically
|
|
419
|
+
const { buildContextBundle } = await import("./contextInjection.js");
|
|
420
|
+
// Scenario results collector
|
|
421
|
+
const scenarios = [];
|
|
422
|
+
// ── Scenario 1: Founder weekly reset ──
|
|
423
|
+
try {
|
|
424
|
+
const { founderLocalPipelineTools } = await import("./founderLocalPipeline.js");
|
|
425
|
+
const resetTool = founderLocalPipelineTools.find(t => t.name === "founder_local_weekly_reset");
|
|
426
|
+
if (resetTool) {
|
|
427
|
+
const start = Date.now();
|
|
428
|
+
const result = await resetTool.handler({ daysBack });
|
|
429
|
+
const latencyMs = Date.now() - start;
|
|
430
|
+
const verdict = judgeResult("founder_weekly_reset", "Generate my founder weekly reset", "founder_local_weekly_reset", result);
|
|
431
|
+
scenarios.push({ id: "founder_weekly_reset", name: "Founder Weekly Reset", tool: "founder_local_weekly_reset", result, verdict, latencyMs });
|
|
432
|
+
}
|
|
433
|
+
}
|
|
434
|
+
catch (e) {
|
|
435
|
+
scenarios.push({ id: "founder_weekly_reset", name: "Founder Weekly Reset", tool: "founder_local_weekly_reset", result: { error: e.message }, verdict: judgeResult("founder_weekly_reset", "", "", { error: e.message }), latencyMs: 0 });
|
|
436
|
+
}
|
|
437
|
+
// ── Scenario 2: Context bundle (Anthropic) ──
|
|
438
|
+
try {
|
|
439
|
+
const start = Date.now();
|
|
440
|
+
const bundle = buildContextBundle("Analyze Anthropic for a banker lens");
|
|
441
|
+
const latencyMs = Date.now() - start;
|
|
442
|
+
const result = { ...bundle.pinned, injected: bundle.injected, archival: bundle.archival, systemPromptPrefix: bundle.systemPromptPrefix };
|
|
443
|
+
const verdict = judgeResult("banker_anthropic_context", "Analyze Anthropic for a banker lens", "get_context_bundle", result);
|
|
444
|
+
scenarios.push({ id: "banker_anthropic_context", name: "Banker Anthropic Context", tool: "get_context_bundle", result, verdict, latencyMs });
|
|
445
|
+
}
|
|
446
|
+
catch (e) {
|
|
447
|
+
scenarios.push({ id: "banker_anthropic_context", name: "Banker Anthropic Context", tool: "get_context_bundle", result: { error: e.message }, verdict: judgeResult("banker_anthropic_context", "", "", { error: e.message }), latencyMs: 0 });
|
|
448
|
+
}
|
|
449
|
+
// ── Scenario 3: Important change review ──
|
|
450
|
+
try {
|
|
451
|
+
const { founderLocalPipelineTools } = await import("./founderLocalPipeline.js");
|
|
452
|
+
const synthTool = founderLocalPipelineTools.find(t => t.name === "founder_local_synthesize");
|
|
453
|
+
if (synthTool) {
|
|
454
|
+
const start = Date.now();
|
|
455
|
+
const result = await synthTool.handler({ packetType: "important_change", daysBack });
|
|
456
|
+
const latencyMs = Date.now() - start;
|
|
457
|
+
const verdict = judgeResult("important_change", "Show me important changes since last session", "founder_local_synthesize", result);
|
|
458
|
+
scenarios.push({ id: "important_change", name: "Important Change Review", tool: "founder_local_synthesize", result, verdict, latencyMs });
|
|
459
|
+
}
|
|
460
|
+
}
|
|
461
|
+
catch (e) {
|
|
462
|
+
scenarios.push({ id: "important_change", name: "Important Change Review", tool: "founder_local_synthesize", result: { error: e.message }, verdict: judgeResult("important_change", "", "", { error: e.message }), latencyMs: 0 });
|
|
463
|
+
}
|
|
464
|
+
// Persist all judge runs
|
|
465
|
+
for (const s of scenarios) {
|
|
466
|
+
const runId = genId("jdg");
|
|
467
|
+
try {
|
|
468
|
+
const db = getDb();
|
|
469
|
+
db.prepare(`
|
|
470
|
+
INSERT INTO llm_judge_runs (
|
|
471
|
+
runId, scenarioId, prompt, toolName, toolArgs, resultJson, judgedAt,
|
|
472
|
+
criterion1_repeat_cognition, criterion2_usable_packet,
|
|
473
|
+
criterion3_right_contradiction, criterion4_noise_suppression,
|
|
474
|
+
criterion5_downstream_artifact, criterion6_causal_memory,
|
|
475
|
+
criterion7_trust_reuse, overallPass, passCount, failCount,
|
|
476
|
+
reasoning, fixSuggestions
|
|
477
|
+
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
478
|
+
`).run(runId, s.id, s.name, s.tool, "{}", JSON.stringify(s.result).slice(0, 5000), new Date().toISOString(), s.verdict.criteria[0]?.pass ? 1 : 0, s.verdict.criteria[1]?.pass ? 1 : 0, s.verdict.criteria[2]?.pass ? 1 : 0, s.verdict.criteria[3]?.pass ? 1 : 0, s.verdict.criteria[4]?.pass ? 1 : 0, s.verdict.criteria[5]?.pass ? 1 : 0, s.verdict.criteria[6]?.pass ? 1 : 0, s.verdict.overallPass ? 1 : 0, s.verdict.passCount, s.verdict.failCount, s.verdict.criteria.map(c => `[${c.pass ? "PASS" : "FAIL"}] ${c.name}: ${c.reasoning}`).join("\n"), JSON.stringify(s.verdict.fixSuggestions));
|
|
479
|
+
}
|
|
480
|
+
catch { /* best effort */ }
|
|
481
|
+
}
|
|
482
|
+
// Build scorecard
|
|
483
|
+
const totalPass = scenarios.filter(s => s.verdict.overallPass).length;
|
|
484
|
+
const totalFail = scenarios.filter(s => !s.verdict.overallPass).length;
|
|
485
|
+
return {
|
|
486
|
+
batchVerdict: totalFail === 0 ? "ALL PASS" : `${totalFail}/${scenarios.length} FAILING`,
|
|
487
|
+
passRate: `${totalPass}/${scenarios.length}`,
|
|
488
|
+
scenarios: scenarios.map(s => ({
|
|
489
|
+
id: s.id,
|
|
490
|
+
name: s.name,
|
|
491
|
+
tool: s.tool,
|
|
492
|
+
verdict: s.verdict.overallPass ? "PASS" : "FAIL",
|
|
493
|
+
score: `${s.verdict.passCount}/7`,
|
|
494
|
+
latencyMs: s.latencyMs,
|
|
495
|
+
failingCriteria: s.verdict.criteria.filter(c => !c.pass).map(c => ({
|
|
496
|
+
criterion: c.name,
|
|
497
|
+
reasoning: c.reasoning,
|
|
498
|
+
})),
|
|
499
|
+
fixSuggestions: s.verdict.fixSuggestions,
|
|
500
|
+
})),
|
|
501
|
+
aggregateMetrics: {
|
|
502
|
+
totalCriteriaPassed: scenarios.reduce((sum, s) => sum + s.verdict.passCount, 0),
|
|
503
|
+
totalCriteriaFailed: scenarios.reduce((sum, s) => sum + s.verdict.failCount, 0),
|
|
504
|
+
avgLatencyMs: Math.round(scenarios.reduce((sum, s) => sum + s.latencyMs, 0) / scenarios.length),
|
|
505
|
+
},
|
|
506
|
+
};
|
|
507
|
+
},
|
|
508
|
+
},
|
|
509
|
+
];
|
|
510
|
+
//# sourceMappingURL=llmJudgeLoop.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"llmJudgeLoop.js","sourceRoot":"","sources":["../../src/tools/llmJudgeLoop.ts"],"names":[],"mappings":"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"}
|
|
@@ -33,7 +33,7 @@ export function createProgressiveDiscoveryTools(allRegisteredTools, options) {
|
|
|
33
33
|
"boilerplate", "benchmark", "session_memory", "gaia_solvers",
|
|
34
34
|
"toon", "pattern", "git_workflow", "seo", "voice_bridge",
|
|
35
35
|
"critter", "email", "rss", "architect", "ui_ux_dive", "ui_ux_dive_v2", "mcp_bridge", "skill_update", "qa_orchestration", "visual_qa", "local_dashboard", "design_governance", "agent_traverse", "engine_context", "context_sandbox", "progressive_discovery", "meta", "openclaw", "webmcp", "research_optimizer", "web_scraping", "thompson_protocol", "observability",
|
|
36
|
-
"temporal_intelligence", "mission_harness", "deep_sim", "founder", "dogfood_judge",
|
|
36
|
+
"temporal_intelligence", "mission_harness", "deep_sim", "founder", "dogfood_judge", "session_memory",
|
|
37
37
|
],
|
|
38
38
|
description: "Filter by tool category (optional)",
|
|
39
39
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progressiveDiscoveryTools.js","sourceRoot":"","sources":["../../src/tools/progressiveDiscoveryTools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"progressiveDiscoveryTools.js","sourceRoot":"","sources":["../../src/tools/progressiveDiscoveryTools.ts"],"names":[],"mappings":"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"}
|