Skip to content

Commit 228bc17

Browse files
committed
feat: hacky solution
1 parent f73da36 commit 228bc17

File tree

1 file changed

+25
-3
lines changed

1 file changed

+25
-3
lines changed

apps/open-swe/langbench/evaluator.eval.ts

Lines changed: 25 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,12 +58,12 @@ async function formatOpenSWEInputs(inputs: {
5858
repoName: string;
5959
baseCommit?: string;
6060
userInput: string;
61+
branchName?: string;
6162
}) {
6263
const targetRepository: TargetRepository = {
6364
owner: inputs.repoOwner,
6465
repo: inputs.repoName,
65-
branch: undefined,
66-
baseCommit: inputs.baseCommit,
66+
branch: inputs.branchName,
6767
};
6868

6969
const userMessageContent = `<request>
@@ -73,6 +73,7 @@ ${inputs.userInput}
7373
return {
7474
messages: [{ type: "human", content: userMessageContent }],
7575
targetRepository,
76+
branchName: inputs.branchName,
7677
autoAcceptPlan: true,
7778
};
7879
}
@@ -85,6 +86,7 @@ async function runOpenSWEWithStreamTracking(inputs: {
8586
repoName: string;
8687
baseCommit?: string;
8788
userInput: string;
89+
branchName?: string;
8890
}): Promise<OpenSWEStreamResults> {
8991
const result: OpenSWEStreamResults = {
9092
success: false,
@@ -319,6 +321,26 @@ async function processPR(prData: PRData): Promise<PRProcessResult> {
319321
githubInstallationToken: githubToken,
320322
});
321323

324+
logger.info('starting to push pre-merge state to a test branch')
325+
326+
// Push the pre-merge state to a test branch
327+
const preMergeBranch = `pre-merge-test-${Date.now()}`;
328+
await sandbox.process.executeCommand(
329+
`git checkout -b ${preMergeBranch}`,
330+
repoDir,
331+
undefined,
332+
120000,
333+
);
334+
await sandbox.git.push(
335+
repoDir,
336+
"git",
337+
githubToken,
338+
);
339+
340+
logger.info("Pushed pre-merge state to a test branch", {
341+
branch: preMergeBranch,
342+
});
343+
322344
// Setup Python environment
323345
logger.info("Setting up Python environment...");
324346
const envSetupSuccess = await setupEnv(sandbox, repoDir);
@@ -331,8 +353,8 @@ async function processPR(prData: PRData): Promise<PRProcessResult> {
331353
const openSWEResults = await runOpenSWEWithStreamTracking({
332354
repoOwner: prData.repoOwner,
333355
repoName: prData.repoName,
334-
baseCommit: preMergeCommit,
335356
userInput: createPRFixPrompt(prData),
357+
branchName: preMergeBranch,
336358
});
337359
result.openSWEResults = openSWEResults;
338360

0 commit comments

Comments
 (0)