coding-agent-benchmarks 0.3.2 → 0.4.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 +97 -257
- package/dist/adapters/claudeCodeCLI.d.ts.map +1 -1
- package/dist/adapters/claudeCodeCLI.js +4 -6
- package/dist/adapters/claudeCodeCLI.js.map +1 -1
- package/dist/adapters/copilotCLI.d.ts +0 -3
- package/dist/adapters/copilotCLI.d.ts.map +1 -1
- package/dist/adapters/copilotCLI.js +4 -9
- package/dist/adapters/copilotCLI.js.map +1 -1
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +0 -7
- package/dist/config/loader.js.map +1 -1
- package/dist/evaluator.d.ts +0 -12
- package/dist/evaluator.d.ts.map +1 -1
- package/dist/evaluator.js +24 -40
- package/dist/evaluator.js.map +1 -1
- package/dist/reporter.d.ts +5 -0
- package/dist/reporter.d.ts.map +1 -1
- package/dist/reporter.js +36 -6
- package/dist/reporter.js.map +1 -1
- package/dist/runner.js +13 -10
- package/dist/runner.js.map +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/utils/baselineManager.d.ts.map +1 -1
- package/dist/utils/baselineManager.js +0 -4
- package/dist/utils/baselineManager.js.map +1 -1
- package/dist/utils/gitUtils.d.ts +1 -15
- package/dist/utils/gitUtils.d.ts.map +1 -1
- package/dist/utils/gitUtils.js +17 -28
- package/dist/utils/gitUtils.js.map +1 -1
- package/dist/utils/timeUtils.d.ts +9 -0
- package/dist/utils/timeUtils.d.ts.map +1 -0
- package/dist/utils/timeUtils.js +23 -0
- package/dist/utils/timeUtils.js.map +1 -0
- package/dist/utils/workspaceUtils.d.ts.map +1 -1
- package/dist/utils/workspaceUtils.js +0 -5
- package/dist/utils/workspaceUtils.js.map +1 -1
- package/dist/validators/llmJudge.d.ts.map +1 -1
- package/dist/validators/llmJudge.js +3 -3
- package/dist/validators/llmJudge.js.map +1 -1
- package/package.json +1 -1
package/dist/runner.js
CHANGED
|
@@ -44,6 +44,7 @@ const llmJudge_1 = require("./validators/llmJudge");
|
|
|
44
44
|
const githubAuth_1 = require("./utils/githubAuth");
|
|
45
45
|
const errorHandler_1 = require("./utils/errorHandler");
|
|
46
46
|
const reporter_1 = require("./reporter");
|
|
47
|
+
const gitUtils_1 = require("./utils/gitUtils");
|
|
47
48
|
const program = new commander_1.Command();
|
|
48
49
|
program
|
|
49
50
|
.name("coding-agent-benchmarks")
|
|
@@ -59,7 +60,7 @@ program
|
|
|
59
60
|
.option("--category <categories>", "Filter by category (comma-separated)")
|
|
60
61
|
.option("--tag <tags>", "Filter by tags (comma-separated)")
|
|
61
62
|
.option("--adapter <type>", "Code generation adapter (copilot or claude-code)", "copilot")
|
|
62
|
-
.option("--model <model>", "LLM model for judge (default: openai/gpt-
|
|
63
|
+
.option("--model <model>", "LLM model for judge (default: openai/gpt-5)")
|
|
63
64
|
.option("--threshold <number>", "Minimum passing score", "0.8")
|
|
64
65
|
.option("--verbose", "Show detailed output")
|
|
65
66
|
.option("--output <file>", "Export JSON report to file")
|
|
@@ -67,6 +68,16 @@ program
|
|
|
67
68
|
.action(async (options) => {
|
|
68
69
|
try {
|
|
69
70
|
const { config, scenarios } = await (0, loader_1.loadConfig)(options.workspaceRoot || process.cwd());
|
|
71
|
+
const workspaceRoot = options.workspaceRoot || process.cwd();
|
|
72
|
+
const changedFiles = (0, gitUtils_1.getChangedFilesExcluding)(workspaceRoot, [
|
|
73
|
+
".benchmarks",
|
|
74
|
+
]);
|
|
75
|
+
if (changedFiles.length > 0) {
|
|
76
|
+
console.error("\n❌ Workspace has uncommitted changes. Please commit or stash changes before running evaluations.\n");
|
|
77
|
+
console.error("Changed files (excluding .benchmarks/):");
|
|
78
|
+
changedFiles.forEach((file) => console.error(` - ${file}`));
|
|
79
|
+
process.exit(1);
|
|
80
|
+
}
|
|
70
81
|
const evaluator = new evaluator_1.Evaluator({
|
|
71
82
|
adapter: options.adapter,
|
|
72
83
|
model: options.model,
|
|
@@ -100,14 +111,12 @@ program
|
|
|
100
111
|
evaluator.on("log", (message) => {
|
|
101
112
|
reporter.log(message);
|
|
102
113
|
});
|
|
103
|
-
// Check adapter availability
|
|
104
114
|
const isAvailable = await evaluator.checkAdapterAvailability();
|
|
105
115
|
if (!isAvailable) {
|
|
106
116
|
console.error(`Error: ${options.adapter} CLI not found`);
|
|
107
117
|
console.error(`Please install ${options.adapter} CLI to use this adapter`);
|
|
108
118
|
process.exit(1);
|
|
109
119
|
}
|
|
110
|
-
// Filter scenarios
|
|
111
120
|
const filteredScenarios = evaluator.filterScenarios(scenarios, {
|
|
112
121
|
scenarioPattern: options.scenario,
|
|
113
122
|
category: options.category,
|
|
@@ -119,16 +128,12 @@ program
|
|
|
119
128
|
console.log("No scenarios match the specified filters");
|
|
120
129
|
return;
|
|
121
130
|
}
|
|
122
|
-
// Run evaluation
|
|
123
131
|
const report = await evaluator.evaluate(filteredScenarios);
|
|
124
|
-
// Finish reporter and display summary
|
|
125
132
|
reporter.finish(report);
|
|
126
|
-
// Export JSON report if requested
|
|
127
133
|
if (options.output) {
|
|
128
134
|
fs.writeFileSync(options.output, JSON.stringify(report, null, 2), "utf-8");
|
|
129
135
|
console.log(`\nReport exported to: ${options.output}`);
|
|
130
136
|
}
|
|
131
|
-
// Exit with error code if any scenarios failed
|
|
132
137
|
if (report.summary.failed > 0 || report.summary.skipped > 0) {
|
|
133
138
|
process.exit(1);
|
|
134
139
|
}
|
|
@@ -150,14 +155,12 @@ program
|
|
|
150
155
|
try {
|
|
151
156
|
const { scenarios } = await (0, loader_1.loadConfig)();
|
|
152
157
|
let filtered = scenarios;
|
|
153
|
-
// Filter by category
|
|
154
158
|
if (options.category) {
|
|
155
159
|
const categories = options.category
|
|
156
160
|
.split(",")
|
|
157
161
|
.map((c) => c.trim());
|
|
158
162
|
filtered = filtered.filter((s) => categories.includes(s.category));
|
|
159
163
|
}
|
|
160
|
-
// Filter by tags
|
|
161
164
|
if (options.tag) {
|
|
162
165
|
const tags = options.tag.split(",").map((t) => t.trim());
|
|
163
166
|
filtered = filtered.filter((s) => tags.some((tag) => s.tags.includes(tag)));
|
|
@@ -218,7 +221,7 @@ program
|
|
|
218
221
|
program
|
|
219
222
|
.command("test-llm")
|
|
220
223
|
.description("Test LLM judge with a custom prompt")
|
|
221
|
-
.option("--model <model>", "LLM model to use (default: openai/gpt-
|
|
224
|
+
.option("--model <model>", "LLM model to use (default: openai/gpt-5)")
|
|
222
225
|
.action(async (options) => {
|
|
223
226
|
try {
|
|
224
227
|
console.log("Testing LLM judge...\n");
|
package/dist/runner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,yCAAoC;AACpC,uCAAyB;AACzB,4CAA6C;AAC7C,2CAAwC;AAExC,sDAA0D;AAC1D,4DAAgE;AAChE,oDAA0D;AAC1D,mDAAqD;AACrD,uDAAuD;AACvD,yCAA8C;
|
|
1
|
+
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baselineManager.d.ts","sourceRoot":"","sources":["../../src/utils/baselineManager.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEtF,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,WAAW,CAAS;gBAEhB,aAAa,EAAE,MAAM;IAIjC;;OAEG;IACH,OAAO,CAAC,eAAe;IAQvB;;OAEG;IACH,YAAY,CACV,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,MAAM,GACZ,IAAI;
|
|
1
|
+
{"version":3,"file":"baselineManager.d.ts","sourceRoot":"","sources":["../../src/utils/baselineManager.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEtF,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,WAAW,CAAS;gBAEhB,aAAa,EAAE,MAAM;IAIjC;;OAEG;IACH,OAAO,CAAC,eAAe;IAQvB;;OAEG;IACH,YAAY,CACV,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,MAAM,GACZ,IAAI;IAqBP;;OAEG;IACH,YAAY,CACV,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,GACjB,YAAY,GAAG,IAAI;IAgBtB;;OAEG;IACH,mBAAmB,CACjB,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,MAAM,GACZ;QACD,aAAa,EAAE,MAAM,CAAC;QACtB,KAAK,EAAE,MAAM,CAAC;QACd,aAAa,EAAE,OAAO,CAAC;KACxB,GAAG,IAAI;IAiBR;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,YAAY,EAAE;IA0BnE;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAe/B;;OAEG;IACH,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO;IAgBhF;;OAEG;IACH,kBAAkB,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM;CA8CjE"}
|
|
@@ -64,11 +64,9 @@ class BaselineManager {
|
|
|
64
64
|
};
|
|
65
65
|
const baselinePath = this.getBaselinePath(adapter, model, result.scenario.id);
|
|
66
66
|
const dir = path.dirname(baselinePath);
|
|
67
|
-
// Ensure directory exists
|
|
68
67
|
if (!fs.existsSync(dir)) {
|
|
69
68
|
fs.mkdirSync(dir, { recursive: true });
|
|
70
69
|
}
|
|
71
|
-
// Write baseline file
|
|
72
70
|
fs.writeFileSync(baselinePath, JSON.stringify(baseline, null, 2), 'utf-8');
|
|
73
71
|
}
|
|
74
72
|
/**
|
|
@@ -113,7 +111,6 @@ class BaselineManager {
|
|
|
113
111
|
if (!fs.existsSync(adapterDir)) {
|
|
114
112
|
return baselines;
|
|
115
113
|
}
|
|
116
|
-
// If model specified, only search that model directory
|
|
117
114
|
if (model) {
|
|
118
115
|
const modelDir = path.join(adapterDir, model);
|
|
119
116
|
if (fs.existsSync(modelDir)) {
|
|
@@ -121,7 +118,6 @@ class BaselineManager {
|
|
|
121
118
|
}
|
|
122
119
|
}
|
|
123
120
|
else {
|
|
124
|
-
// Search all model directories
|
|
125
121
|
const modelDirs = fs.readdirSync(adapterDir, { withFileTypes: true });
|
|
126
122
|
for (const dir of modelDirs) {
|
|
127
123
|
if (dir.isDirectory()) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baselineManager.js","sourceRoot":"","sources":["../../src/utils/baselineManager.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,uCAAyB;AACzB,2CAA6B;AAa7B,MAAa,eAAe;IAG1B,YAAY,aAAqB;QAC/B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;IAC1E,CAAC;IAED;;OAEG;IACK,eAAe,CACrB,OAAoB,EACpB,KAAa,EACb,UAAkB;QAElB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,UAAU,OAAO,CAAC,CAAC;IAC3E,CAAC;IAED;;OAEG;IACH,YAAY,CACV,MAAwB,EACxB,OAAoB,EACpB,KAAa;QAEb,MAAM,QAAQ,GAAiB;YAC7B,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE;YAC9B,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;YAC3C,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,OAAO;YACP,KAAK;SACN,CAAC;QAEF,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC9E,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAEvC,
|
|
1
|
+
{"version":3,"file":"baselineManager.js","sourceRoot":"","sources":["../../src/utils/baselineManager.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/gitUtils.d.ts
CHANGED
|
@@ -1,24 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Git utilities for tracking file changes
|
|
3
3
|
*/
|
|
4
|
-
/**
|
|
5
|
-
* Get git status in porcelain format
|
|
6
|
-
* @param workspaceRoot The workspace root directory
|
|
7
|
-
* @returns Git status output
|
|
8
|
-
*/
|
|
9
4
|
export declare const getGitStatusPorcelain: (workspaceRoot: string) => string;
|
|
10
|
-
/**
|
|
11
|
-
* Parse git status porcelain output to get changed files
|
|
12
|
-
* @param statusOutput Output from git status --porcelain
|
|
13
|
-
* @returns Array of file paths that were changed
|
|
14
|
-
*/
|
|
15
5
|
export declare const parseGitStatus: (statusOutput: string) => string[];
|
|
16
|
-
/**
|
|
17
|
-
* Get list of files that have changed in the working directory
|
|
18
|
-
* @param workspaceRoot The workspace root directory
|
|
19
|
-
* @returns Array of file paths that were changed
|
|
20
|
-
*/
|
|
21
6
|
export declare const getChangedFiles: (workspaceRoot: string) => string[];
|
|
7
|
+
export declare const getChangedFilesExcluding: (workspaceRoot: string, excludePaths: string[]) => string[];
|
|
22
8
|
/**
|
|
23
9
|
* Get files that changed between two git status snapshots
|
|
24
10
|
* @param before Git status output before operation
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gitUtils.d.ts","sourceRoot":"","sources":["../../src/utils/gitUtils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH
|
|
1
|
+
{"version":3,"file":"gitUtils.d.ts","sourceRoot":"","sources":["../../src/utils/gitUtils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,eAAO,MAAM,qBAAqB,GAAI,eAAe,MAAM,KAAG,MAU7D,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,cAAc,MAAM,KAAG,MAAM,EAkB3D,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,eAAe,MAAM,KAAG,MAAM,EAG7D,CAAC;AAEF,eAAO,MAAM,wBAAwB,GACnC,eAAe,MAAM,EACrB,cAAc,MAAM,EAAE,KACrB,MAAM,EAUR,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,GAC9B,QAAQ,MAAM,EACd,OAAO,MAAM,EACb,gBAAgB,MAAM,KACrB,MAAM,EAuBR,CAAC;AA+BF;;;GAGG;AACH,eAAO,MAAM,UAAU,QAAO,MAS7B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAI,WAAW,MAAM,KAAG,OAWnD,CAAC"}
|
package/dist/utils/gitUtils.js
CHANGED
|
@@ -36,15 +36,10 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
36
36
|
};
|
|
37
37
|
})();
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.isGitRepository = exports.getGitRoot = exports.getChangedFilesDiff = exports.getChangedFiles = exports.parseGitStatus = exports.getGitStatusPorcelain = void 0;
|
|
39
|
+
exports.isGitRepository = exports.getGitRoot = exports.getChangedFilesDiff = exports.getChangedFilesExcluding = exports.getChangedFiles = exports.parseGitStatus = exports.getGitStatusPorcelain = void 0;
|
|
40
40
|
const child_process_1 = require("child_process");
|
|
41
41
|
const fs = __importStar(require("fs"));
|
|
42
42
|
const path = __importStar(require("path"));
|
|
43
|
-
/**
|
|
44
|
-
* Get git status in porcelain format
|
|
45
|
-
* @param workspaceRoot The workspace root directory
|
|
46
|
-
* @returns Git status output
|
|
47
|
-
*/
|
|
48
43
|
const getGitStatusPorcelain = (workspaceRoot) => {
|
|
49
44
|
try {
|
|
50
45
|
return (0, child_process_1.execSync)("git status --porcelain", {
|
|
@@ -58,24 +53,13 @@ const getGitStatusPorcelain = (workspaceRoot) => {
|
|
|
58
53
|
}
|
|
59
54
|
};
|
|
60
55
|
exports.getGitStatusPorcelain = getGitStatusPorcelain;
|
|
61
|
-
/**
|
|
62
|
-
* Parse git status porcelain output to get changed files
|
|
63
|
-
* @param statusOutput Output from git status --porcelain
|
|
64
|
-
* @returns Array of file paths that were changed
|
|
65
|
-
*/
|
|
66
56
|
const parseGitStatus = (statusOutput) => {
|
|
67
|
-
const lines = statusOutput
|
|
68
|
-
.trim()
|
|
69
|
-
.split("\n")
|
|
70
|
-
.filter((line) => line.length > 0);
|
|
57
|
+
const lines = statusOutput.split("\n").filter((line) => line.length > 0);
|
|
71
58
|
const files = [];
|
|
72
59
|
for (const line of lines) {
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
if (line.length > 3) {
|
|
77
|
-
const filename = line.substring(3).trim();
|
|
78
|
-
// Handle renamed files (format: "old -> new")
|
|
60
|
+
const match = /^.{2}\s(.+)$/.exec(line);
|
|
61
|
+
if (match) {
|
|
62
|
+
const filename = match[1];
|
|
79
63
|
if (filename.includes(" -> ")) {
|
|
80
64
|
const newFilename = filename.split(" -> ")[1];
|
|
81
65
|
files.push(newFilename);
|
|
@@ -88,16 +72,23 @@ const parseGitStatus = (statusOutput) => {
|
|
|
88
72
|
return files;
|
|
89
73
|
};
|
|
90
74
|
exports.parseGitStatus = parseGitStatus;
|
|
91
|
-
/**
|
|
92
|
-
* Get list of files that have changed in the working directory
|
|
93
|
-
* @param workspaceRoot The workspace root directory
|
|
94
|
-
* @returns Array of file paths that were changed
|
|
95
|
-
*/
|
|
96
75
|
const getChangedFiles = (workspaceRoot) => {
|
|
97
76
|
const statusOutput = (0, exports.getGitStatusPorcelain)(workspaceRoot);
|
|
98
77
|
return (0, exports.parseGitStatus)(statusOutput);
|
|
99
78
|
};
|
|
100
79
|
exports.getChangedFiles = getChangedFiles;
|
|
80
|
+
const getChangedFilesExcluding = (workspaceRoot, excludePaths) => {
|
|
81
|
+
const allChangedFiles = (0, exports.getChangedFiles)(workspaceRoot);
|
|
82
|
+
return allChangedFiles.filter((file) => {
|
|
83
|
+
return !excludePaths.some((excludePath) => {
|
|
84
|
+
const normalizedExclude = excludePath.endsWith("/")
|
|
85
|
+
? excludePath
|
|
86
|
+
: excludePath + "/";
|
|
87
|
+
return file.startsWith(normalizedExclude) || file === excludePath;
|
|
88
|
+
});
|
|
89
|
+
});
|
|
90
|
+
};
|
|
91
|
+
exports.getChangedFilesExcluding = getChangedFilesExcluding;
|
|
101
92
|
/**
|
|
102
93
|
* Get files that changed between two git status snapshots
|
|
103
94
|
* @param before Git status output before operation
|
|
@@ -111,11 +102,9 @@ const getChangedFilesDiff = (before, after, workspaceRoot) => {
|
|
|
111
102
|
const newOrModified = [];
|
|
112
103
|
for (const line of afterLines) {
|
|
113
104
|
if (!beforeLines.has(line)) {
|
|
114
|
-
// Extract file path (e.g. "?? src/file.tsx" becomes "src/file.tsx")
|
|
115
105
|
const match = /^.{3}(.+)$/.exec(line);
|
|
116
106
|
if (match) {
|
|
117
107
|
const filePath = match[1];
|
|
118
|
-
// If it's a directory, list files inside it
|
|
119
108
|
if (filePath.endsWith("/") && workspaceRoot) {
|
|
120
109
|
const dirPath = path.join(workspaceRoot, filePath);
|
|
121
110
|
const filesInDir = listFilesRecursively(dirPath, workspaceRoot);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gitUtils.js","sourceRoot":"","sources":["../../src/utils/gitUtils.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,iDAAyC;AACzC,uCAAyB;AACzB,2CAA6B;
|
|
1
|
+
{"version":3,"file":"gitUtils.js","sourceRoot":"","sources":["../../src/utils/gitUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export interface TimeDifference {
|
|
2
|
+
milliseconds: number;
|
|
3
|
+
seconds: number;
|
|
4
|
+
minutes: number;
|
|
5
|
+
hours: number;
|
|
6
|
+
days: number;
|
|
7
|
+
}
|
|
8
|
+
export declare const calculateTimeDifference: (startDate: Date, endDate: Date) => TimeDifference;
|
|
9
|
+
//# sourceMappingURL=timeUtils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"timeUtils.d.ts","sourceRoot":"","sources":["../../src/utils/timeUtils.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAkBD,eAAO,MAAM,uBAAuB,GAAI,WAAW,IAAI,EAAE,SAAS,IAAI,KAAG,cAUxE,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.calculateTimeDifference = void 0;
|
|
4
|
+
const MILLISECONDS_PER_SECOND = 1000;
|
|
5
|
+
const SECONDS_PER_MINUTE = 60;
|
|
6
|
+
const MINUTES_PER_HOUR = 60;
|
|
7
|
+
const HOURS_PER_DAY = 24;
|
|
8
|
+
const millisecondsToSeconds = (ms) => ms / MILLISECONDS_PER_SECOND;
|
|
9
|
+
const millisecondsToMinutes = (ms) => ms / (MILLISECONDS_PER_SECOND * SECONDS_PER_MINUTE);
|
|
10
|
+
const millisecondsToHours = (ms) => ms / (MILLISECONDS_PER_SECOND * SECONDS_PER_MINUTE * MINUTES_PER_HOUR);
|
|
11
|
+
const millisecondsToDays = (ms) => ms / (MILLISECONDS_PER_SECOND * SECONDS_PER_MINUTE * MINUTES_PER_HOUR * HOURS_PER_DAY);
|
|
12
|
+
const calculateTimeDifference = (startDate, endDate) => {
|
|
13
|
+
const milliseconds = Math.abs(endDate.getTime() - startDate.getTime());
|
|
14
|
+
return {
|
|
15
|
+
milliseconds,
|
|
16
|
+
seconds: millisecondsToSeconds(milliseconds),
|
|
17
|
+
minutes: millisecondsToMinutes(milliseconds),
|
|
18
|
+
hours: millisecondsToHours(milliseconds),
|
|
19
|
+
days: millisecondsToDays(milliseconds),
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
exports.calculateTimeDifference = calculateTimeDifference;
|
|
23
|
+
//# sourceMappingURL=timeUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"timeUtils.js","sourceRoot":"","sources":["../../src/utils/timeUtils.ts"],"names":[],"mappings":";;;AAQA,MAAM,uBAAuB,GAAG,IAAI,CAAC;AACrC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAC9B,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAC5B,MAAM,aAAa,GAAG,EAAE,CAAC;AAEzB,MAAM,qBAAqB,GAAG,CAAC,EAAU,EAAU,EAAE,CAAC,EAAE,GAAG,uBAAuB,CAAC;AAEnF,MAAM,qBAAqB,GAAG,CAAC,EAAU,EAAU,EAAE,CACnD,EAAE,GAAG,CAAC,uBAAuB,GAAG,kBAAkB,CAAC,CAAC;AAEtD,MAAM,mBAAmB,GAAG,CAAC,EAAU,EAAU,EAAE,CACjD,EAAE,GAAG,CAAC,uBAAuB,GAAG,kBAAkB,GAAG,gBAAgB,CAAC,CAAC;AAEzE,MAAM,kBAAkB,GAAG,CAAC,EAAU,EAAU,EAAE,CAChD,EAAE,GAAG,CAAC,uBAAuB,GAAG,kBAAkB,GAAG,gBAAgB,GAAG,aAAa,CAAC,CAAC;AAElF,MAAM,uBAAuB,GAAG,CAAC,SAAe,EAAE,OAAa,EAAkB,EAAE;IACxF,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC;IAEvE,OAAO;QACL,YAAY;QACZ,OAAO,EAAE,qBAAqB,CAAC,YAAY,CAAC;QAC5C,OAAO,EAAE,qBAAqB,CAAC,YAAY,CAAC;QAC5C,KAAK,EAAE,mBAAmB,CAAC,YAAY,CAAC;QACxC,IAAI,EAAE,kBAAkB,CAAC,YAAY,CAAC;KACvC,CAAC;AACJ,CAAC,CAAC;AAVW,QAAA,uBAAuB,2BAUlC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspaceUtils.d.ts","sourceRoot":"","sources":["../../src/utils/workspaceUtils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB,GAAI,eAAe,MAAM,KAAG,
|
|
1
|
+
{"version":3,"file":"workspaceUtils.d.ts","sourceRoot":"","sources":["../../src/utils/workspaceUtils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB,GAAI,eAAe,MAAM,KAAG,MAmB5D,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAC3B,eAAe,MAAM,EACrB,eAAe,SAAS,MAAM,EAAE,KAC/B,MAAM,EAOR,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAC3B,eAAe,MAAM,EACrB,cAAc,SAAS,MAAM,EAAE,KAC9B,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAsBzC,CAAC"}
|
|
@@ -51,7 +51,6 @@ const gitUtils_1 = require("./gitUtils");
|
|
|
51
51
|
* @returns Absolute path to workspace root
|
|
52
52
|
*/
|
|
53
53
|
const resolveWorkspaceRoot = (explicitRoot) => {
|
|
54
|
-
// 1. Use explicit root if provided
|
|
55
54
|
if (explicitRoot) {
|
|
56
55
|
const resolved = path.resolve(explicitRoot);
|
|
57
56
|
if (fs.existsSync(resolved)) {
|
|
@@ -59,7 +58,6 @@ const resolveWorkspaceRoot = (explicitRoot) => {
|
|
|
59
58
|
}
|
|
60
59
|
throw new Error(`Specified workspace root does not exist: ${resolved}`);
|
|
61
60
|
}
|
|
62
|
-
// 2. Try to get git root
|
|
63
61
|
try {
|
|
64
62
|
const gitRoot = (0, gitUtils_1.getGitRoot)();
|
|
65
63
|
if (gitRoot) {
|
|
@@ -69,7 +67,6 @@ const resolveWorkspaceRoot = (explicitRoot) => {
|
|
|
69
67
|
catch {
|
|
70
68
|
// Not a git repository, continue
|
|
71
69
|
}
|
|
72
|
-
// 3. Fall back to current working directory
|
|
73
70
|
return process.cwd();
|
|
74
71
|
};
|
|
75
72
|
exports.resolveWorkspaceRoot = resolveWorkspaceRoot;
|
|
@@ -81,11 +78,9 @@ exports.resolveWorkspaceRoot = resolveWorkspaceRoot;
|
|
|
81
78
|
*/
|
|
82
79
|
const resolveFilePaths = (workspaceRoot, relativePaths) => {
|
|
83
80
|
return relativePaths.map(relativePath => {
|
|
84
|
-
// If already absolute, return as-is
|
|
85
81
|
if (path.isAbsolute(relativePath)) {
|
|
86
82
|
return relativePath;
|
|
87
83
|
}
|
|
88
|
-
// Otherwise, resolve relative to workspace root
|
|
89
84
|
return path.resolve(workspaceRoot, relativePath);
|
|
90
85
|
});
|
|
91
86
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspaceUtils.js","sourceRoot":"","sources":["../../src/utils/workspaceUtils.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,2CAA6B;AAC7B,uCAAyB;AACzB,yCAAyD;AAEzD;;;;;;;;;GASG;AACI,MAAM,oBAAoB,GAAG,CAAC,YAAqB,EAAU,EAAE;IACpE,
|
|
1
|
+
{"version":3,"file":"workspaceUtils.js","sourceRoot":"","sources":["../../src/utils/workspaceUtils.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,2CAA6B;AAC7B,uCAAyB;AACzB,yCAAyD;AAEzD;;;;;;;;;GASG;AACI,MAAM,oBAAoB,GAAG,CAAC,YAAqB,EAAU,EAAE;IACpE,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAC5C,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,4CAA4C,QAAQ,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAA,qBAAU,GAAE,CAAC;QAC7B,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,OAAO,CAAC;QACjB,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,iCAAiC;IACnC,CAAC;IAED,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC;AACvB,CAAC,CAAC;AAnBW,QAAA,oBAAoB,wBAmB/B;AAEF;;;;;GAKG;AACI,MAAM,gBAAgB,GAAG,CAC9B,aAAqB,EACrB,aAAgC,EACtB,EAAE;IACZ,OAAO,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;QACtC,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAClC,OAAO,YAAY,CAAC;QACtB,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAVW,QAAA,gBAAgB,oBAU3B;AAEF;;;;;GAKG;AACI,MAAM,gBAAgB,GAAG,CAC9B,aAAqB,EACrB,YAA+B,EACW,EAAE;IAC5C,MAAM,aAAa,GAAG,IAAA,wBAAgB,EAAC,aAAa,EAAE,YAAY,CAAC,CAAC;IACpE,MAAM,OAAO,GAA6C,EAAE,CAAC;IAE7D,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;QACzC,IAAI,CAAC;YACH,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;gBACjC,OAAO,CAAC,IAAI,CAAC,2BAA2B,YAAY,EAAE,CAAC,CAAC;gBACxD,SAAS;YACX,CAAC;YAED,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YACvD,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,YAAY,CAAC;gBAChD,OAAO;aACR,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,+BAA+B,YAAY,KAAK,KAAK,EAAE,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAzBW,QAAA,gBAAgB,oBAyB3B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llmJudge.d.ts","sourceRoot":"","sources":["../../src/validators/llmJudge.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EACL,aAAa,EACb,YAAY,EACZ,gBAAgB,EAEjB,MAAM,UAAU,CAAC;AA6DlB,qBAAa,iBAAkB,YAAW,aAAa;IACrD,SAAgB,IAAI,EAAG,WAAW,CAAU;IAC5C,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,YAAY,CAAS;gBAEjB,aAAa,CAAC,EAAE,MAAM,EAAE,KAAK,GAAE,
|
|
1
|
+
{"version":3,"file":"llmJudge.d.ts","sourceRoot":"","sources":["../../src/validators/llmJudge.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EACL,aAAa,EACb,YAAY,EACZ,gBAAgB,EAEjB,MAAM,UAAU,CAAC;AA6DlB,qBAAa,iBAAkB,YAAW,aAAa;IACrD,SAAgB,IAAI,EAAG,WAAW,CAAU;IAC5C,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,YAAY,CAAS;gBAEjB,aAAa,CAAC,EAAE,MAAM,EAAE,KAAK,GAAE,MAAuB;IAMlE;;OAEG;IACG,QAAQ,CACZ,KAAK,EAAE,SAAS,MAAM,EAAE,EACxB,QAAQ,EAAE,YAAY,GACrB,OAAO,CAAC,gBAAgB,CAAC;IA8E5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA+B3B;;OAEG;YACW,UAAU;IA4ExB;;OAEG;IACG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAYjE"}
|
|
@@ -60,10 +60,10 @@ Respond ONLY with valid JSON in this exact format:
|
|
|
60
60
|
"summary": "one sentence summary"
|
|
61
61
|
}`;
|
|
62
62
|
class LLMJudgeValidator {
|
|
63
|
-
constructor(workspaceRoot, model = "openai/gpt-
|
|
63
|
+
constructor(workspaceRoot, model = "openai/gpt-5") {
|
|
64
64
|
this.type = "llm-judge";
|
|
65
65
|
this.workspaceRoot = (0, workspaceUtils_1.resolveWorkspaceRoot)(workspaceRoot);
|
|
66
|
-
this.apiToken = (0, githubAuth_1.getGitHubToken)();
|
|
66
|
+
this.apiToken = (0, githubAuth_1.getGitHubToken)();
|
|
67
67
|
this.defaultModel = model;
|
|
68
68
|
}
|
|
69
69
|
/**
|
|
@@ -177,7 +177,7 @@ Be strict but fair in your evaluation.`;
|
|
|
177
177
|
{ role: "system", content: judgeSystemPrompt },
|
|
178
178
|
{ role: "user", content: prompt },
|
|
179
179
|
],
|
|
180
|
-
|
|
180
|
+
max_completion_tokens: 1000,
|
|
181
181
|
response_format: { type: "json_object" },
|
|
182
182
|
}),
|
|
183
183
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llmJudge.js","sourceRoot":"","sources":["../../src/validators/llmJudge.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,uCAAyB;AACzB,2CAA6B;AAO7B,4DAGiC;AACjC,oDAAqD;AAqCrD,MAAM,iBAAiB,GAAG;;;;;;;;;;;;;;;;;EAiBxB,CAAC;AAEH,MAAa,iBAAiB;IAM5B,YAAY,aAAsB,EAAE,QAAgB,
|
|
1
|
+
{"version":3,"file":"llmJudge.js","sourceRoot":"","sources":["../../src/validators/llmJudge.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "coding-agent-benchmarks",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "Testing coding agents (GitHub Copilot CLI, Claude Code, etc.) with your repo's context to evaluate their code generation quality.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|