nodebench-mcp 2.8.3 → 2.10.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/__tests__/evalHarness.test.js +238 -2
- package/dist/__tests__/evalHarness.test.js.map +1 -1
- package/dist/__tests__/gaiaCapabilityAudioEval.test.js +20 -41
- package/dist/__tests__/gaiaCapabilityAudioEval.test.js.map +1 -1
- package/dist/__tests__/gaiaCapabilityEval.test.js +21 -45
- package/dist/__tests__/gaiaCapabilityEval.test.js.map +1 -1
- package/dist/__tests__/gaiaCapabilityFilesEval.test.js +119 -55
- package/dist/__tests__/gaiaCapabilityFilesEval.test.js.map +1 -1
- package/dist/__tests__/gaiaCapabilityMediaEval.test.js +22 -44
- package/dist/__tests__/gaiaCapabilityMediaEval.test.js.map +1 -1
- package/dist/__tests__/helpers/answerMatch.d.ts +12 -0
- package/dist/__tests__/helpers/answerMatch.js +78 -0
- package/dist/__tests__/helpers/answerMatch.js.map +1 -0
- package/dist/__tests__/helpers/textLlm.d.ts +25 -0
- package/dist/__tests__/helpers/textLlm.js +214 -0
- package/dist/__tests__/helpers/textLlm.js.map +1 -0
- package/dist/__tests__/tools.test.js +289 -8
- package/dist/__tests__/tools.test.js.map +1 -1
- package/dist/__tests__/toolsetGatingEval.test.js +18 -2
- package/dist/__tests__/toolsetGatingEval.test.js.map +1 -1
- package/dist/index.js +62 -2
- package/dist/index.js.map +1 -1
- package/dist/tools/localFileTools.js +138 -12
- package/dist/tools/localFileTools.js.map +1 -1
- package/dist/tools/metaTools.js +213 -1
- package/dist/tools/metaTools.js.map +1 -1
- package/dist/tools/progressiveDiscoveryTools.js +2 -2
- package/dist/tools/progressiveDiscoveryTools.js.map +1 -1
- package/dist/tools/qualityGateTools.js +52 -0
- package/dist/tools/qualityGateTools.js.map +1 -1
- package/dist/tools/selfEvalTools.js +630 -0
- package/dist/tools/selfEvalTools.js.map +1 -1
- package/dist/tools/toolRegistry.d.ts +1 -1
- package/dist/tools/toolRegistry.js +239 -1
- package/dist/tools/toolRegistry.js.map +1 -1
- package/package.json +4 -4
|
@@ -19,6 +19,10 @@ import { learningTools } from "../tools/learningTools.js";
|
|
|
19
19
|
import { documentationTools } from "../tools/documentationTools.js";
|
|
20
20
|
import { agentBootstrapTools } from "../tools/agentBootstrapTools.js";
|
|
21
21
|
import { selfEvalTools } from "../tools/selfEvalTools.js";
|
|
22
|
+
import { flickerDetectionTools } from "../tools/flickerDetectionTools.js";
|
|
23
|
+
import { figmaFlowTools } from "../tools/figmaFlowTools.js";
|
|
24
|
+
import { boilerplateTools } from "../tools/boilerplateTools.js";
|
|
25
|
+
import { cCompilerBenchmarkTools } from "../tools/cCompilerBenchmarkTools.js";
|
|
22
26
|
import { createMetaTools } from "../tools/metaTools.js";
|
|
23
27
|
// Assemble all tools
|
|
24
28
|
const domainTools = [
|
|
@@ -31,6 +35,10 @@ const domainTools = [
|
|
|
31
35
|
...documentationTools,
|
|
32
36
|
...agentBootstrapTools,
|
|
33
37
|
...selfEvalTools,
|
|
38
|
+
...flickerDetectionTools,
|
|
39
|
+
...figmaFlowTools,
|
|
40
|
+
...boilerplateTools,
|
|
41
|
+
...cCompilerBenchmarkTools,
|
|
34
42
|
];
|
|
35
43
|
const allTools = [...domainTools, ...createMetaTools(domainTools)];
|
|
36
44
|
const findTool = (name) => {
|
|
@@ -592,7 +600,7 @@ describe("Scenario: Meta Tool Discovery", () => {
|
|
|
592
600
|
}, "meta");
|
|
593
601
|
expect(result.title).toContain("Overview");
|
|
594
602
|
const topics = Object.keys(result.steps[0].topics);
|
|
595
|
-
expect(topics.length).toBe(
|
|
603
|
+
expect(topics.length).toBe(21);
|
|
596
604
|
});
|
|
597
605
|
it("Step 4: Get specific methodology", async () => {
|
|
598
606
|
const methodologies = [
|
|
@@ -689,6 +697,230 @@ describe("Scenario: Self-Reinforced Learning", () => {
|
|
|
689
697
|
});
|
|
690
698
|
});
|
|
691
699
|
// ═══════════════════════════════════════════════════════════════════════════
|
|
700
|
+
// SCENARIO 11: Flicker Detection (env-gated — returns "not configured")
|
|
701
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
702
|
+
describe("Scenario: Flicker Detection Pipeline", () => {
|
|
703
|
+
it("Step 1: run_flicker_detection returns not-configured when no server", async () => {
|
|
704
|
+
const result = await callTool("run_flicker_detection", {
|
|
705
|
+
durationS: 5,
|
|
706
|
+
}, "flicker-detection");
|
|
707
|
+
expect(result.error).toBe(true);
|
|
708
|
+
expect(result.message).toContain("not configured");
|
|
709
|
+
});
|
|
710
|
+
it("Step 2: capture_surface_stats returns not-configured", async () => {
|
|
711
|
+
const result = await callTool("capture_surface_stats", {}, "flicker-detection");
|
|
712
|
+
expect(result.error).toBe(true);
|
|
713
|
+
expect(result.message).toContain("not configured");
|
|
714
|
+
});
|
|
715
|
+
it("Step 3: extract_video_frames returns not-configured", async () => {
|
|
716
|
+
const result = await callTool("extract_video_frames", {}, "flicker-detection");
|
|
717
|
+
expect(result.error).toBe(true);
|
|
718
|
+
expect(result.message).toContain("not configured");
|
|
719
|
+
});
|
|
720
|
+
it("Step 4: compute_ssim_analysis returns not-configured", async () => {
|
|
721
|
+
const result = await callTool("compute_ssim_analysis", {
|
|
722
|
+
framePaths: ["/tmp/frame1.jpg", "/tmp/frame2.jpg"],
|
|
723
|
+
}, "flicker-detection");
|
|
724
|
+
expect(result.error).toBe(true);
|
|
725
|
+
expect(result.message).toContain("not configured");
|
|
726
|
+
});
|
|
727
|
+
it("Step 5: generate_flicker_report returns not-configured", async () => {
|
|
728
|
+
const result = await callTool("generate_flicker_report", {
|
|
729
|
+
ssimScores: [0.95, 0.93, 0.88, 0.91],
|
|
730
|
+
threshold: 0.90,
|
|
731
|
+
}, "flicker-detection");
|
|
732
|
+
expect(result.error).toBe(true);
|
|
733
|
+
expect(result.message).toContain("not configured");
|
|
734
|
+
});
|
|
735
|
+
});
|
|
736
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
737
|
+
// SCENARIO 12: Figma Flow Analysis (env-gated — returns "not configured")
|
|
738
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
739
|
+
describe("Scenario: Figma Flow Analysis Pipeline", () => {
|
|
740
|
+
it("Step 1: analyze_figma_flows returns not-configured when no server", async () => {
|
|
741
|
+
const result = await callTool("analyze_figma_flows", {
|
|
742
|
+
fileKey: "abc123",
|
|
743
|
+
}, "figma-flow");
|
|
744
|
+
expect(result.error).toBe(true);
|
|
745
|
+
expect(result.message).toContain("not configured");
|
|
746
|
+
});
|
|
747
|
+
it("Step 2: extract_figma_frames returns not-configured", async () => {
|
|
748
|
+
const result = await callTool("extract_figma_frames", {
|
|
749
|
+
fileKey: "abc123",
|
|
750
|
+
}, "figma-flow");
|
|
751
|
+
expect(result.error).toBe(true);
|
|
752
|
+
expect(result.message).toContain("not configured");
|
|
753
|
+
});
|
|
754
|
+
it("Step 3: cluster_figma_flows returns not-configured", async () => {
|
|
755
|
+
const result = await callTool("cluster_figma_flows", {
|
|
756
|
+
frames: [],
|
|
757
|
+
}, "figma-flow");
|
|
758
|
+
expect(result.error).toBe(true);
|
|
759
|
+
expect(result.message).toContain("not configured");
|
|
760
|
+
});
|
|
761
|
+
it("Step 4: render_flow_visualization returns not-configured", async () => {
|
|
762
|
+
const result = await callTool("render_flow_visualization", {
|
|
763
|
+
flowGroups: [],
|
|
764
|
+
}, "figma-flow");
|
|
765
|
+
expect(result.error).toBe(true);
|
|
766
|
+
expect(result.message).toContain("not configured");
|
|
767
|
+
});
|
|
768
|
+
});
|
|
769
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
770
|
+
// SCENARIO 13: Boilerplate Scaffolding
|
|
771
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
772
|
+
describe("Scenario: Boilerplate Scaffolding", () => {
|
|
773
|
+
it("Step 1: scaffold_nodebench_project dry run", async () => {
|
|
774
|
+
const result = await callTool("scaffold_nodebench_project", {
|
|
775
|
+
projectPath: "/tmp/eval-harness-scaffold-test",
|
|
776
|
+
projectName: "eval-test-project",
|
|
777
|
+
techStack: "TypeScript/Node.js",
|
|
778
|
+
dryRun: true,
|
|
779
|
+
}, "boilerplate");
|
|
780
|
+
expect(result.dryRun).toBe(true);
|
|
781
|
+
expect(result.summary.totalFiles).toBeGreaterThan(5);
|
|
782
|
+
});
|
|
783
|
+
it("Step 2: get_boilerplate_status on empty dir", async () => {
|
|
784
|
+
const result = await callTool("get_boilerplate_status", {
|
|
785
|
+
projectPath: process.cwd(),
|
|
786
|
+
}, "boilerplate");
|
|
787
|
+
expect(typeof result.completionPercentage).toBe("number");
|
|
788
|
+
expect(result.total).toBeGreaterThan(0);
|
|
789
|
+
});
|
|
790
|
+
});
|
|
791
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
792
|
+
// SCENARIO 14: C-Compiler Benchmark
|
|
793
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
794
|
+
describe("Scenario: C-Compiler Benchmark", () => {
|
|
795
|
+
let benchmarkId;
|
|
796
|
+
it("Step 1: start_autonomy_benchmark with challenge list", async () => {
|
|
797
|
+
const result = await callTool("start_autonomy_benchmark", {
|
|
798
|
+
challenge: "list",
|
|
799
|
+
}, "benchmark");
|
|
800
|
+
expect(result.availableChallenges.length).toBe(5);
|
|
801
|
+
});
|
|
802
|
+
it("Step 2: start_autonomy_benchmark with c_compiler", async () => {
|
|
803
|
+
const result = await callTool("start_autonomy_benchmark", {
|
|
804
|
+
challenge: "c_compiler",
|
|
805
|
+
}, "benchmark");
|
|
806
|
+
expect(result.totalPoints).toBe(100);
|
|
807
|
+
expect(result.milestones.length).toBe(10);
|
|
808
|
+
benchmarkId = result.benchmarkId;
|
|
809
|
+
});
|
|
810
|
+
it("Step 3: log_benchmark_milestone", async () => {
|
|
811
|
+
const result = await callTool("log_benchmark_milestone", {
|
|
812
|
+
benchmarkId,
|
|
813
|
+
milestoneId: "lexer",
|
|
814
|
+
verificationPassed: true,
|
|
815
|
+
notes: "Lexer tokenizes all C keywords correctly",
|
|
816
|
+
}, "benchmark");
|
|
817
|
+
expect(result.milestoneId).toBe("lexer");
|
|
818
|
+
expect(result.points).toBe(15);
|
|
819
|
+
});
|
|
820
|
+
it("Step 4: complete_autonomy_benchmark", async () => {
|
|
821
|
+
const result = await callTool("complete_autonomy_benchmark", {
|
|
822
|
+
benchmarkId,
|
|
823
|
+
reason: "completed",
|
|
824
|
+
}, "benchmark");
|
|
825
|
+
expect(result.score.earnedPoints).toBe(15);
|
|
826
|
+
expect(result.milestones.completed).toBe(1);
|
|
827
|
+
});
|
|
828
|
+
});
|
|
829
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
830
|
+
// SCENARIO 15: Contract Compliance
|
|
831
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
832
|
+
describe("Scenario: Contract Compliance", () => {
|
|
833
|
+
it("Step 1: check_contract_compliance with empty session", async () => {
|
|
834
|
+
const result = await callTool("check_contract_compliance", {
|
|
835
|
+
sessionId: `evalharness-empty-${Date.now()}`,
|
|
836
|
+
}, "self_eval");
|
|
837
|
+
expect(result.score).toBe(0);
|
|
838
|
+
expect(result.grade).toBe("N/A");
|
|
839
|
+
});
|
|
840
|
+
it("Step 2: check_contract_compliance scores a compliant session", async () => {
|
|
841
|
+
// First seed some tool calls
|
|
842
|
+
const sessionId = `evalharness-compliant-${Date.now()}`;
|
|
843
|
+
const logTool = allTools.find(t => t.name === "log_tool_call");
|
|
844
|
+
const sequence = [
|
|
845
|
+
"search_all_knowledge", "getMethodology", "discover_tools",
|
|
846
|
+
"run_recon", "assess_risk",
|
|
847
|
+
"run_closed_loop", "log_test_result", "start_eval_run",
|
|
848
|
+
"run_quality_gate", "run_mandatory_flywheel", "record_learning",
|
|
849
|
+
];
|
|
850
|
+
for (const toolName of sequence) {
|
|
851
|
+
await logTool.handler({ sessionId, toolName, resultStatus: "success" });
|
|
852
|
+
}
|
|
853
|
+
const result = await callTool("check_contract_compliance", {
|
|
854
|
+
sessionId,
|
|
855
|
+
}, "self_eval");
|
|
856
|
+
expect(result.score).toBeGreaterThanOrEqual(80);
|
|
857
|
+
expect(result.grade).toMatch(/^[AB]/);
|
|
858
|
+
expect(result.dimensions).toBeDefined();
|
|
859
|
+
expect(result.dimensions.front_door.score).toBeGreaterThanOrEqual(15);
|
|
860
|
+
expect(result.dimensions.ship_gates.score).toBeGreaterThanOrEqual(20);
|
|
861
|
+
});
|
|
862
|
+
});
|
|
863
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
864
|
+
// SCENARIO 16: Controlled Evaluation (Task Bank + Ablation Grading)
|
|
865
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
866
|
+
describe("Scenario: Controlled Evaluation", () => {
|
|
867
|
+
const taskId = `evalharness-bugfix-${Date.now()}`;
|
|
868
|
+
it("Step 1: create_task_bank creates a task", async () => {
|
|
869
|
+
const result = await callTool("create_task_bank", {
|
|
870
|
+
taskId,
|
|
871
|
+
title: "Fix JWT token expiry bug",
|
|
872
|
+
category: "bugfix",
|
|
873
|
+
difficulty: "medium",
|
|
874
|
+
prompt: "Fix the bug where JWT tokens expire 1 hour early due to timezone offset",
|
|
875
|
+
successCriteria: ["tests pass", "no lint errors", "token expiry is correct"],
|
|
876
|
+
forbiddenBehaviors: ["hardcode timezone", "skip tests"],
|
|
877
|
+
timeBudgetMinutes: 20,
|
|
878
|
+
}, "self_eval");
|
|
879
|
+
expect(result.action).toBe("created");
|
|
880
|
+
expect(result.taskId).toBe(taskId);
|
|
881
|
+
expect(result.totalTasksInBank).toBeGreaterThanOrEqual(1);
|
|
882
|
+
});
|
|
883
|
+
it("Step 2: grade_agent_run grades a bare condition", async () => {
|
|
884
|
+
const result = await callTool("grade_agent_run", {
|
|
885
|
+
taskId,
|
|
886
|
+
condition: "bare",
|
|
887
|
+
outcomeResults: [
|
|
888
|
+
{ criterion: "tests pass", passed: true },
|
|
889
|
+
{ criterion: "no lint errors", passed: true },
|
|
890
|
+
{ criterion: "token expiry is correct", passed: false },
|
|
891
|
+
],
|
|
892
|
+
durationMinutes: 15,
|
|
893
|
+
}, "self_eval");
|
|
894
|
+
expect(result.grade).toBeDefined();
|
|
895
|
+
expect(result.scores.outcome.score).toBeGreaterThan(0);
|
|
896
|
+
expect(result.scores.process.score).toBe(25); // No session = half credit
|
|
897
|
+
expect(result.outcomeDetails.passed).toBe(2);
|
|
898
|
+
expect(result.outcomeDetails.total).toBe(3);
|
|
899
|
+
});
|
|
900
|
+
it("Step 3: grade_agent_run grades a full condition with session", async () => {
|
|
901
|
+
const sessionId = `evalharness-full-${Date.now()}`;
|
|
902
|
+
const logTool = allTools.find(t => t.name === "log_tool_call");
|
|
903
|
+
for (const toolName of ["search_all_knowledge", "assess_risk", "run_closed_loop", "log_test_result", "run_quality_gate", "record_learning"]) {
|
|
904
|
+
await logTool.handler({ sessionId, toolName, resultStatus: "success" });
|
|
905
|
+
}
|
|
906
|
+
const result = await callTool("grade_agent_run", {
|
|
907
|
+
taskId,
|
|
908
|
+
sessionId,
|
|
909
|
+
condition: "full",
|
|
910
|
+
outcomeResults: [
|
|
911
|
+
{ criterion: "tests pass", passed: true },
|
|
912
|
+
{ criterion: "no lint errors", passed: true },
|
|
913
|
+
{ criterion: "token expiry is correct", passed: true },
|
|
914
|
+
],
|
|
915
|
+
durationMinutes: 12,
|
|
916
|
+
}, "self_eval");
|
|
917
|
+
expect(result.scores.outcome.score).toBeGreaterThan(40);
|
|
918
|
+
expect(result.scores.process.score).toBeGreaterThan(20);
|
|
919
|
+
expect(result.ablationComparison).toBeDefined();
|
|
920
|
+
expect(result.ablationComparison.length).toBe(2); // bare + full
|
|
921
|
+
});
|
|
922
|
+
});
|
|
923
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
692
924
|
// COVERAGE REPORT
|
|
693
925
|
// ═══════════════════════════════════════════════════════════════════════════
|
|
694
926
|
describe("Coverage Report", () => {
|
|
@@ -793,7 +1025,11 @@ describe("Coverage Report", () => {
|
|
|
793
1025
|
"Recon": ["run_recon", "log_recon_finding", "get_recon_summary", "check_framework_updates", "search_all_knowledge", "bootstrap_project", "get_project_context"],
|
|
794
1026
|
"Bootstrap": ["discover_infrastructure", "triple_verify", "self_implement", "generate_self_instructions", "connect_channels"],
|
|
795
1027
|
"Autonomous": ["assess_risk", "decide_re_update", "run_self_maintenance", "scaffold_directory", "run_autonomous_loop"],
|
|
796
|
-
"Self-Eval": ["log_tool_call", "get_trajectory_analysis", "get_self_eval_report", "get_improvement_recommendations", "cleanup_stale_runs", "synthesize_recon_to_learnings"],
|
|
1028
|
+
"Self-Eval": ["log_tool_call", "get_trajectory_analysis", "get_self_eval_report", "get_improvement_recommendations", "cleanup_stale_runs", "synthesize_recon_to_learnings", "check_contract_compliance", "create_task_bank", "grade_agent_run"],
|
|
1029
|
+
"Flicker Detection": ["run_flicker_detection", "capture_surface_stats", "extract_video_frames", "compute_ssim_analysis", "generate_flicker_report"],
|
|
1030
|
+
"Figma Flow": ["analyze_figma_flows", "extract_figma_frames", "cluster_figma_flows", "render_flow_visualization"],
|
|
1031
|
+
"Boilerplate": ["scaffold_nodebench_project", "get_boilerplate_status"],
|
|
1032
|
+
"Benchmark": ["start_autonomy_benchmark", "log_benchmark_milestone", "complete_autonomy_benchmark"],
|
|
797
1033
|
"Meta": ["findTools", "getMethodology"],
|
|
798
1034
|
"External (skip)": externalDependencyTools,
|
|
799
1035
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evalHarness.test.js","sourceRoot":"","sources":["../../src/__tests__/evalHarness.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"evalHarness.test.js","sourceRoot":"","sources":["../../src/__tests__/evalHarness.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,7 @@ import path from "node:path";
|
|
|
19
19
|
import { fileURLToPath } from "node:url";
|
|
20
20
|
import { performance } from "node:perf_hooks";
|
|
21
21
|
import { localFileTools } from "../tools/localFileTools.js";
|
|
22
|
+
import { createTextLlmClient, generateTextFromHistory, } from "./helpers/textLlm.js";
|
|
22
23
|
const shouldRun = process.env.NODEBENCH_RUN_GAIA_CAPABILITY === "1";
|
|
23
24
|
const shouldWriteReport = process.env.NODEBENCH_WRITE_GAIA_REPORT === "1";
|
|
24
25
|
async function safeWriteJson(filePath, payload) {
|
|
@@ -70,15 +71,6 @@ function loadDotEnvLocalIfPresent() {
|
|
|
70
71
|
process.env[key] = value;
|
|
71
72
|
}
|
|
72
73
|
}
|
|
73
|
-
async function canImport(pkg) {
|
|
74
|
-
try {
|
|
75
|
-
await import(pkg);
|
|
76
|
-
return true;
|
|
77
|
-
}
|
|
78
|
-
catch {
|
|
79
|
-
return false;
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
74
|
function normalizeAnswer(value) {
|
|
83
75
|
return value
|
|
84
76
|
.trim()
|
|
@@ -88,30 +80,14 @@ function normalizeAnswer(value) {
|
|
|
88
80
|
.replace(/[.]+$/g, "")
|
|
89
81
|
.toLowerCase();
|
|
90
82
|
}
|
|
91
|
-
async function
|
|
92
|
-
const mod = await import("@google/genai");
|
|
93
|
-
const { GoogleGenAI } = mod;
|
|
94
|
-
const apiKey = process.env.GEMINI_API_KEY || process.env.GOOGLE_AI_API_KEY || "";
|
|
95
|
-
if (!apiKey) {
|
|
96
|
-
throw new Error("Missing GEMINI_API_KEY (or GOOGLE_AI_API_KEY)");
|
|
97
|
-
}
|
|
98
|
-
return new GoogleGenAI({ apiKey });
|
|
99
|
-
}
|
|
100
|
-
async function geminiGenerateText(ai, model, contents) {
|
|
83
|
+
async function llmGenerateText(llm, history) {
|
|
101
84
|
const temperature = Number.parseFloat(process.env.NODEBENCH_GAIA_CAPABILITY_TEMPERATURE ?? "0");
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
config: {
|
|
106
|
-
temperature: Number.isFinite(temperature) ? temperature : 0,
|
|
107
|
-
maxOutputTokens: 1024,
|
|
108
|
-
},
|
|
85
|
+
return generateTextFromHistory(llm, history, {
|
|
86
|
+
temperature: Number.isFinite(temperature) ? temperature : 0,
|
|
87
|
+
maxOutputTokens: 1024,
|
|
109
88
|
});
|
|
110
|
-
const parts = response?.candidates?.[0]?.content?.parts ?? [];
|
|
111
|
-
const text = parts.map((p) => p?.text ?? "").join("").trim();
|
|
112
|
-
return text;
|
|
113
89
|
}
|
|
114
|
-
async function baselineAnswer(
|
|
90
|
+
async function baselineAnswer(llm, task) {
|
|
115
91
|
const contents = [
|
|
116
92
|
{
|
|
117
93
|
role: "user",
|
|
@@ -122,7 +98,7 @@ async function baselineAnswer(ai, task) {
|
|
|
122
98
|
],
|
|
123
99
|
},
|
|
124
100
|
];
|
|
125
|
-
return
|
|
101
|
+
return llmGenerateText(llm, contents);
|
|
126
102
|
}
|
|
127
103
|
async function loadFixture(filePath) {
|
|
128
104
|
const raw = await readFile(filePath, "utf8");
|
|
@@ -135,7 +111,7 @@ function createToolIndex(tools) {
|
|
|
135
111
|
m.set(t.name, t);
|
|
136
112
|
return m;
|
|
137
113
|
}
|
|
138
|
-
async function toolAugmentedAnswerFromAudio(
|
|
114
|
+
async function toolAugmentedAnswerFromAudio(llm, task, opts) {
|
|
139
115
|
const localPath = String(task.localFilePath ?? "").trim();
|
|
140
116
|
if (!localPath)
|
|
141
117
|
throw new Error("Task missing localFilePath");
|
|
@@ -166,7 +142,7 @@ async function toolAugmentedAnswerFromAudio(ai, task, opts) {
|
|
|
166
142
|
],
|
|
167
143
|
},
|
|
168
144
|
];
|
|
169
|
-
const answer = await
|
|
145
|
+
const answer = await llmGenerateText(llm, contents);
|
|
170
146
|
return { answer, toolCalls: 1 };
|
|
171
147
|
}
|
|
172
148
|
describe("GAIA capability: audio lane", () => {
|
|
@@ -177,9 +153,12 @@ describe("GAIA capability: audio lane", () => {
|
|
|
177
153
|
if (!existsSync(fixturePath)) {
|
|
178
154
|
throw new Error(`Missing GAIA audio fixture at ${fixturePath}. Generate it with: python packages/mcp-local/src/__tests__/fixtures/generateGaiaCapabilityAudioFixture.py`);
|
|
179
155
|
}
|
|
180
|
-
const
|
|
181
|
-
|
|
182
|
-
const
|
|
156
|
+
const baselineModel = process.env.NODEBENCH_GAIA_BASELINE_MODEL ?? "gemini-2.5-flash";
|
|
157
|
+
const toolsModel = process.env.NODEBENCH_GAIA_TOOLS_MODEL ?? baselineModel;
|
|
158
|
+
const baselineLlm = await createTextLlmClient({ model: baselineModel });
|
|
159
|
+
const toolsLlm = await createTextLlmClient({ model: toolsModel });
|
|
160
|
+
const baselineModelLabel = `${baselineLlm.provider}:${baselineLlm.model}`;
|
|
161
|
+
const toolsModelLabel = `${toolsLlm.provider}:${toolsLlm.model}`;
|
|
183
162
|
const fixture = await loadFixture(fixturePath);
|
|
184
163
|
expect(Array.isArray(fixture.tasks)).toBe(true);
|
|
185
164
|
expect(fixture.tasks.length).toBeGreaterThan(0);
|
|
@@ -200,10 +179,10 @@ describe("GAIA capability: audio lane", () => {
|
|
|
200
179
|
const expected = normalizeAnswer(task.expectedAnswer);
|
|
201
180
|
try {
|
|
202
181
|
const baseStart = performance.now();
|
|
203
|
-
const base = await baselineAnswer(
|
|
182
|
+
const base = await baselineAnswer(baselineLlm, task);
|
|
204
183
|
const baseMs = performance.now() - baseStart;
|
|
205
184
|
const toolsStart = performance.now();
|
|
206
|
-
const tools = await toolAugmentedAnswerFromAudio(
|
|
185
|
+
const tools = await toolAugmentedAnswerFromAudio(toolsLlm, task, { maxToolCalls });
|
|
207
186
|
const toolsMs = performance.now() - toolsStart;
|
|
208
187
|
const baselineCorrect = normalizeAnswer(base) === expected;
|
|
209
188
|
const toolsCorrect = normalizeAnswer(tools.answer) === expected;
|
|
@@ -250,13 +229,13 @@ describe("GAIA capability: audio lane", () => {
|
|
|
250
229
|
taskCount: results.length,
|
|
251
230
|
concurrency,
|
|
252
231
|
baseline: {
|
|
253
|
-
model:
|
|
232
|
+
model: baselineModelLabel,
|
|
254
233
|
correct: baselineCorrect,
|
|
255
234
|
passRatePct: baselinePassRate,
|
|
256
235
|
avgMs: avgBaseMs,
|
|
257
236
|
},
|
|
258
237
|
tools: {
|
|
259
|
-
model:
|
|
238
|
+
model: toolsModelLabel,
|
|
260
239
|
mode: toolsMode,
|
|
261
240
|
correct: toolsCorrect,
|
|
262
241
|
passRatePct: toolsPassRate,
|
|
@@ -286,6 +265,6 @@ describe("GAIA capability: audio lane", () => {
|
|
|
286
265
|
await safeWriteJson(path.join(repoRoot, ".cache", "gaia", "reports", `gaia_capability_audio_${fixture.config}_${fixture.split}_${stamp}.json`), detailed);
|
|
287
266
|
}
|
|
288
267
|
expect(toolsPassRate).toBeGreaterThanOrEqual(baselinePassRate);
|
|
289
|
-
});
|
|
268
|
+
}, 600000);
|
|
290
269
|
});
|
|
291
270
|
//# sourceMappingURL=gaiaCapabilityAudioEval.test.js.map
|