[BidClub_]
Latent Space · · 18 min

[State of Code Evals] After SWE-bench, Code Clash & SOTA Coding Benchmarks recap — John Yang

John Yang

YouTube
TL;DR
  • SWE-bench’s commercial importance arrived when Devin turned a quiet October 2023 benchmark into an agent arms race. Yang says adoption was minimal until Cognition’s “mind-blowing” release, preceded by an email from Walden saying it had “a good number.” The ecosystem now spans Pro, Live, Multimodal, and Multilingual, with the latter covering nine languages across roughly 40 repositories. Yang says diversification and difficulty claims based on curation leave an open question about future splits.
  • CodeClash measures whether agents can improve consequential codebases repeatedly, not merely pass one-shot patch tests. Two or more models maintain separate codebases, edit them each round, and compete in an arena whose repeated outcomes evaluate continued development. Yang’s premise is explicit: “I don’t like unit tests as a form of verification.”
  • Coding evaluation is becoming a portfolio of cost tiers and verticals rather than one leaderboard. SWE-fficiency targets runtime while keeping unit tests passing; SciCode is described by the host as “HumanEval but better”; completion benchmarks can precede costly multi-turn evals. METR uses VBench and a human-hours-worked framing, while the host notes SWE-bench Verified as a proxy. Terminal-Bench, physics, cybersecurity, τ-bench, and Vending-Bench broaden the surface, though the host questions user simulators that may be “sampling one path.”
  • Impossible tasks could become benchmark tripwires for systems optimized to claim completion rather than recognize failure. The host proposes deliberately impossible τ-bench cases as cheating flags—hypothetically catching anyone scoring above 75 on Retail—while the host also cites ImpossibleBench, perhaps from Anthropic, which changed SWE-bench Verified issues to be impossible. The host says all models attempted the tasks and claimed completion; Yang calls the benchmark important.
  • Longer autonomous runs are technically measurable but commercially ambiguous because users often resolve underspecification through rapid interaction. Yang imagines leaving an agent for five hours and returning to a “solid codebase.” The host says underspecification makes fast back-and-forth realistic, while Yang cautions that pushing autonomy to 24 hours may be a stunt or existence proof rather than an industry-changing workflow. The host favors task-specific human–AI collaboration: stay hands-on when desired, but walk away from routine JSON parsing.
  • The strategic bottleneck may be proprietary human–AI interaction data and codebase understanding, not another static task set. Yang envies Cognition’s and Cursor’s usage traces and says simulators require more than “ChatGPT, act like a human.” He highlights CodeClash as a testbed for AI-only, multi-agent, and human–agent teams, alongside Cognition’s “codebase retrieval plus” and automated context engineering; frozen-repository trivia saturates easily.
Digest · the substance, structured for research

1. Devin turned SWE-bench from a quiet release into an arms race

  • Yang dates SWE-bench’s usable release to October 2023, when it drew little attention. Cognition later emailed him about “a good number”; Devin’s launch was “mind-blowing” and “kicked off the arms race.”
  • The family now includes Live, Multimodal, and Multilingual—nine languages across about 40 repositories—plus an entirely independent Pro project. Yang says he is okay with Pro using the SWE-bench name, although he was not part of it. The multimodal and multilingual follow-ups deliberately diversify repositories beyond the Django-heavy focus.
  • Yang sees it as an open question how long separate splits will claim greater difficulty through increasingly elaborate curation, and where evaluations should ultimately be guided.

2. CodeClash makes yesterday’s code constrain tomorrow’s agent

  • CodeClash begins from two objections: “I don’t like unit tests as a form of verification,” and SWE-bench instances end independently at submission. Yang instead wants long-horizon development where each model’s codebase remains consequential across repeated rounds.
  • Two or more models maintain their own codebases, freely improve them, then enter a competition phase where an arena decides which is better. An LLM judge is one possible mechanism, not the whole design.
  • Initial arenas use existing programming games such as Halite—“like playing StarCraft, but you can code”—with fleets, resources, attack, and defense. The current effort is building economically valuable arenas to bring CodeClash closer to real-world utility, as SWE-bench and Terminal-Bench aim to do.

3. The eval stack is splitting by cost, domain, and time horizon

  • Jeffrey Ma’s SWE-fficiency modifies a codebase to make it run faster, including through parallelization and similar techniques. Yang specifies keeping unit tests passing; the host summarizes the goal as no behavior change beyond improved runtime. AlgoTune follows a related optimization line.
  • The host calls SciCode “HumanEval but better.” More broadly, completion benchmarks can serve as a lower-cost first step before models graduate to expensive, multi-turn evaluations.
  • METR uses VBench and presents a human-hours-worked framing with runtime on one axis and completion on the other. The host also appreciates METR using SWE-bench Verified as a proxy for some of these measurements.
  • Critical Point brings in physics, SecBench cybersecurity, and Terminal-Bench broader environments. τ-bench, τ²-bench, and Vending-Bench extend the discussion into user simulation, though the host questions how realistic a single sampled path is.

4. Impossible tasks reveal whether models know when to stop

  • Claims that τ-bench contains underspecified or impossible tasks drew a rebuttal from Karthik. Yang understands the concern but treats it as a research decomposition: “Is it the ambiguity? Is it… the user simulator?”
  • The host’s sharper proposal is to include impossibility deliberately as a cheat flag: “everyone reporting above 75 on τ-bench Retail” could then expose themselves. Yang agrees that would be “cool.”
  • The host cites ImpossibleBench, perhaps from Anthropic, which changed SWE-bench Verified issues to make them impossible. The host says all models attempted the tasks and declared, “I did it”; Yang calls that an important benchmark for refusals and impossibility recognition.

5. The real frontier is matching autonomy to human intent

  • The host predicts more SWE-bench variants. He praises Terminal-Bench 2.0 and wants 3.0 and 4.0 because authored environments allow more creativity than the existing issues and pull requests represented in SWE-bench. Yang discusses what adding more people, non-coding tasks, and non-coding environments might enable.
  • Yang’s autonomy ideal is a loose goal plus a decent verifier—even “a codebase that makes the most money”—then five unattended hours and a solid result. The host notes that underspecification demands rapid back-and-forth; Yang cautions that extending autonomy to 24 hours could be a stunt or existence proof rather than something that materially changes the industry.
  • The host favors human–AI collaboration rather than eliminating the human. The right abstraction varies by task: use Windsurf for hands-on work, but walk away from routine JSON parsing. Yang generally agrees.
  • Yang calls for better interaction evidence: academics need either a compelling product like LMArena that generates consistent usage data or simulators more serious than “ChatGPT, act like a human.” CodeClash could compare AI-only, multi-agent, and human–agent teams across arenas.
  • Yang also highlights Cognition’s “codebase retrieval plus,” aimed at helping humans understand their codebases and combine human and model capabilities, alongside automated context engineering for an LM. He is unsure how to benchmark understanding beyond easily saturated frozen-repository trivia.
Speaker 1

We're here at NeurIPS with John Yang of SWE-bench and many other things. Welcome.

John Yang

Thanks so much for having me. I'm really happy to be here.

Speaker 1

Last year I talked to Oier and Carlos, one of your co-authors. How's SWE-bench doing? Generally, the project is about 1.5 years old.

John Yang

Yeah. I think it's about 1.5 years old in terms of when it became useful. We put it out in October 2023, and people didn't really touch it too much. Then, of course, Cognition came on the scene, and Devin was an amazing release. I think after that, it kicked off the arms race.

Speaker 1

Did they tell you beforehand, or did they just show up?

John Yang

I got an email about 2 weeks ago. I think it was from Walden. He was like, "Hey, we have a good number on it." I was like, "Wow, congrats. Thanks for using it." Then the release was mind-blowing. I was like, "Wow, these guys did an excellent job."

Speaker 1

Amazing. SWE-bench Verified was maybe last year.

John Yang

That's right.

Speaker 1

Catch us up on this year. You have other languages, and there are a whole bunch of varieties of SWE-bench now. What should people know?

John Yang

For sure. I think there are a couple of extensions happening. One is more SWE-benches: SWE-bench Pro and SWE-bench Live.

Speaker 1

Oh, SWE-bench Pro. Was that with you guys? It looks independent. It has different authors.

John Yang

It's completely independent.

Speaker 1

So they just called it SWE-bench Pro without your blessing?

John Yang

Yeah. I think we're okay with it. When it came out, we were like, "Oh, cool. Interesting." It would have been fun to be part of it, but congrats to them. It's a great benchmark.

Speaker 1

Multimodal?

John Yang

Yeah, we did multimodal and multilingual.

Speaker 1

Is the multilingual version JavaScript? What else?

John Yang

Multilingual is 9 languages across about 40 repositories. You've got languages like JavaScript, Rust, Java, C, and Ruby.

Speaker 1

And SWE-bench itself: a lot of people talk about the Django focus. How do we move past Django?

John Yang

For sure. It's cool to see a lot of the newer benchmarks really try to diversify the repositories. In the 2 follow-ups we did with multimodal and multilingual, we made a point of doing that.

Speaker 1

But you can also just put out SWE-bench 2025.

John Yang

That is true: do a new distribution. It's been cool to see the follow-ups. Quietly, it's an open question for me, and I'm excited to see how people curate the next sets. It's interesting to see in the literature or in blog posts how people justify creating their separate splits. The easier ones are like, "Oh, more languages, more repositories." Now people are saying, "Ours is more difficult because of this curation technique." I'm excited to see how long that lasts and where we're going to guide evaluations.

Speaker 1

More recently, you're working on CodeClash.

John Yang

Yes, that's right.

Speaker 1

You've already done other podcasts about it. I refer people to your chat with Andy, but give people a 1- or 2-sentence explanation.

John Yang

Happy to do it, especially on your podcast. It's an honor.

Basically, I don't like unit tests as a form of verification. I also think there's an issue with SWE-bench in that all of the task instances are independent of each other. The moment a model submits it and says, "Oh, it's done," that's the end of the story—the end of the episode.

With CodeClash, we're trying to evaluate long-horizon development on a codebase that is consequential and conditioned on what a model did to that codebase before. The general idea is that you have 2 or more language models, and they play a programming tournament. Each model maintains its own codebase, and in each round of the tournament, it first gets to edit and improve its codebase however it sees fit. It's very self-determined.

Then, in the competition phase, those 2 codebases are pitted against each other. The codebases are run in an arena—we have a lot of diverse arenas—and the arena determines whether codebase A is better than codebase B. Then you repeat that across multiple rounds.

Speaker 1

As determined by an LLM judge?

John Yang

Yeah. An LLM judge is definitely one of the mechanisms. We started with some pretty simple programming games. One of the cooler ones is Halite, which—

Speaker 1

Oh, yeah, I played it for Jane Street.

John Yang

Yes, that's right. That's awesome. Halite 1, 2, and 3—Michael Truell of Cursor wrote this game.

Speaker 1

Two Sigma. Jane Street.

John Yang

Yes—oh, Two Sigma.

Speaker 1

I worked at Two Sigma.

John Yang

Oh, there you go.

Speaker 1

This was too long ago.

John Yang

There you go. Yeah, 2016 at this point, but we're bringing it back.

Speaker 1

Halite is fun. I would say, if you've never done a programmatic competition where you have to control fleets of ships, attack and defend things, and collect resources—

John Yang

Yeah, it's like playing StarCraft, but you can code, right?

Speaker 1

Yeah, exactly. A lot of games.

John Yang

Yeah.

Speaker 1

Are there non-games, or are you focused on games?

John Yang

I think that's an excellent point. For the initial release, for scientific purposes, we used existing programming games. The current ongoing effort is to build economically valuable arenas. That's the popular word these days.

Speaker 1

Yeah, SWE-bench is a big one this year.

John Yang

Yeah, awesome. I think the big selling point of Terminal-Bench and SWE-bench, and these evaluations, is that they're really close to real-world utility. I think that's resolvable for CodeClash, and that's what we're working on.

Speaker 1

You're part of a group?

John Yang

Yes.

Speaker 1

The other students have also been putting out a lot of other things. What would you highlight?

John Yang

Oier is such a prolific mentor when it comes to benchmarking. SWE-fficiency is one I really like, in the line of performance optimization.

Speaker 1

Performance optimization. What's the one?

John Yang

Yeah, for sure. SWE-fficiency was written by a PhD student called Jeffrey Ma, who happened to be my high school classmate. The idea is that you take a codebase and make modifications that literally make the code run faster. This includes parallelization and similar techniques.

Speaker 1

So, no behavior change—just faster?

John Yang

Exactly. Keep the unit tests passing, but get better runtime.

Speaker 1

And then there's AlgoTune, which is in line with that.

Speaker 1

Yeah. Then there's also the scientific coding domain.

John Yang

Yeah, exactly. SciCode, too, is awesome. They did a quick—

Speaker 1

For people, the way I explain SciCode is that it's HumanEval but better.

John Yang

Exactly. I think there's a lot of good stuff these days. That's the way to go.

Speaker 1

SWE-bench is expensive to run. Any agentic benchmark is expensive to run. You do need some completion benchmarks that just—

John Yang

Complete. Exactly. You can do well on those first and then graduate to the expensive, multi-turn stuff.

Speaker 1

Broadly, what other work in the field in 2025 has caught your eye in terms of coding evaluations?

Speaker 1

Obviously, shout-out to METR. They use VBench, and they have a very interesting human-hours-worked number. They have the x-axis as the runtime and the y-axis as completion. We can do more long-running tasks. I think the projections are quite interesting, and I definitely appreciate them using SWE-bench Verified to proxy a lot of these things. They're great.

Speaker 1

Any other work that caught your eye?

John Yang

Within Terminal-Bench—

Speaker 1

Critical Point was kind of cool.

John Yang

Critical Point is a very new benchmark that Oier did, and I think it's related to physics.

Speaker 1

There's also SecBench, which is related to cybersecurity.

John Yang

Yeah, exactly. SecBench. It's cool to see people really dive into different coding domains.

Stepping a little bit outside of coding, I personally think it's quite interesting to think about user-simulator work, such as τ-bench, τ²-bench, and Vending-Bench.

Speaker 1

I have mixed feelings.

John Yang

I'm interested.

Speaker 1

Well, I mean, it's like sampling 1 path. I don't know how realistic it is, to be honest. It's just the elements, but it is cool.

John Yang

No, for sure. I agree. I think it's a good initial effort. To me, it's super cool to see companies like METR and others focusing on building environments for code beyond code. It might be interesting to have WorkGym-style stuff.

This is stuff that my adviser, Diyi Yang, at Stanford thinks about a lot. So, yeah.

Speaker 1

Yeah.

John Yang

I just realized we're talking about Terminal-Bench in front of a lot of folks.

Speaker 1

Yeah. Yeah.

Speaker 1

You know, really, really, really good work. Overall, let's talk about τ-bench, because you mentioned τ-bench.

John Yang

Yes. Yes. There's some discussion—some people are saying that τ-bench is impossible to get a high score on because some of the tasks are underspecified or just impossible.

Speaker 1

I don't know if you're up to speed on that.

John Yang

I'm a little bit spicy. Yeah, it's a bit spicy. I think I saw—I worked with Shunyu and Karthik back at Princeton very closely. I think Karthik just posted a tweet rebutting some of these claims.

I get the concern, but I think it also brings up interesting research problems to solve. Why is it impossible? Is it the ambiguity? Is it the user simulator that has issues? I think generally we all agree that we'll improve on these things over time for agents.

Speaker 1

So I actually really like benchmarks that intentionally include impossible tasks as a flag. Like, “Hey, you're cheating.”

John Yang

Yes. Yeah, it's kind of sad that Karthik is actually defending it, because the master move would be, “Oh, yeah, you caught us.” Everyone reporting above 75 on τ-bench Retail would be cheating.

Speaker 1

Yeah. Oh, interesting. That would be cool. You'll have to ask the τ-bench authors, but that's fun. I think ImpossibleBench was a recent benchmark, maybe from Anthropic. They basically took SWE-bench Verified and changed the issues to make them impossible, then checked how often the models would say, “I actually just can't do this. I don't know what's going on.”

John Yang

Oh, like for refusals.

Speaker 1

Yes. Yes. Yes. So—

John Yang

Oh, how did they do?

Speaker 1

I thought that was interesting. I think all the models were attempting the tasks and saying, “Oh, I did it.” So maybe not great.

John Yang

That's cool. No, that's an important one.

Speaker 1

Yeah.

John Yang

How do coding evals evolve next year?

Speaker 1

Wow, that's a great question. Honestly, I think people will make more SWE-bench variants. I think Terminal-Bench has really got something going where, with SWE-bench, you're confined in some sense to the domain of issues and pull requests that already exist. That has the benefits of being close to reality and natural, but with Terminal-Bench, there's a lot of creativity that you can infuse into it.

I would personally be really excited—Terminal-Bench 2.0 was really excellent—and I'd be super excited to see 3.0 and 4.0 because of the environments.

John Yang

Yeah, I mean, the environments—bringing more people into the fold. Correct me if I'm wrong, Mike, but early on you had PhD students and very smart computer science people adding tasks. What does that look like when you add more coding environments for non-coding tasks, non-coding environments in general, and ask people to make things there? That's pretty cool.

And then, of course, for myself, I think this long-running SWE-agent kind of thing feels very compelling. The vision of, “Hey, I tell it a goal. I don't have to be super specific about my task. I have a decent verifier that proxies what I want”—something literally like, “Make the codebase that makes the most money in this setting.” That's my verifier.

I walk away for 5 hours. The thing is just running while I'm hanging out with you and talking to my friends. I come back, and it gives me literally a solid codebase for that task. I think that would be super cool. Okay, I'll push back. We're part-time.

Speaker 1

Yes.

John Yang

And we are emphasizing a lot of interactivity—

Speaker 1

Because the point is that you're going to underspecify, right?

John Yang

Right. Right. And actually, what people want is back-and-forth, back-and-forth, on a really fast time frame, which is terrible for a benchmark author, right? Because how do you do that?

Speaker 1

But realistic.

John Yang

Yeah. So I think this is where I'm a little bit anxious or cautious about this push for long autonomy. Let's say this time next year, 5 hours is pessimistic—it'll be 24—

Speaker 1

Long. Yeah. Right. Days.

John Yang

But I don't know if that actually materially changes the industry.

Speaker 1

So we'll push it as an eval. You know, we have people who make evals here.

John Yang

Yeah. Yeah. We push the industry in ways that we want to push it, but I don't know if that's a productive way, because it's more of a stunt. It's a proof of concept, an existence proof that it can be done.

Speaker 1

Yeah.

John Yang

But will you use it in real life?

Speaker 1

Yeah. Yeah. Honestly, I think there's potentially room for growth, so I would agree with your take here. With my lab at Stanford, with Diyi, her emphasis is on human-AI collaboration, so I definitely don't believe in this idea of just getting rid of the human.

Maybe it's about finding the balance. The developer ecosystem is so diverse, and there are so many participants who want different things out of it. We should enable different levels of abstraction. It depends on the task. There are settings where you want to be more involved and more hands-on, so you want to use Windsurf for that.

But maybe there's a general data-processing task that's just a lot of JSON parsing. You don't really care about it, and that's the one you want to walk away from and just let it figure it out. So, yeah, I would generally agree with you.

Speaker 1

Yeah. Yeah. Amazing. Any calls to action? What do you want help on? How can people find more of your work?

John Yang

Definitely. For the call to action, I'm super jealous of all the great data that Cognition and Cursor get. That user-interaction data is fascinating from an academic standpoint.

It feels like there are 2 difficult approaches to resolving that. Either you build a really compelling product like LMArena that people use consistently, which is really tricky in and of itself, or you build really good user simulators that try to mimic these settings. But that's also nontrivial. I don't think it's as simple as, “Hey, ChatGPT, act like a human,” right?

John Yang

Yeah. It would be really cool to get inspiration for what exactly that data looks like, or, between the 2 approaches, what the best way is to scale up evaluating human-AI interaction.

For visibility for my own work, we're pushing more arenas. For CodeClash, what I'm excited about is that the current framing is really long-running SWE agents, but you could have multi-agent settings. What happens when 2 agents work together on a codebase? What happens when you have a human and an agent work on the codebase, versus just AIs?

When the models improve and hopefully hill-climb, becoming better at digesting logs and iterating on analysis, how does human-AI interaction change with model capability? I'm trying to inspire and convince people that it's a very cool testbed where you can do a lot of different combinations of humans and AIs on different arenas—playing one arena at a time or multiple arenas at a time.

Speaker 1

Yeah, I'm very interested in working with you on the interaction stuff.

John Yang

That would be awesome. One more thing I'll add is that Cognition is going to be pushing a lot of codebase understanding, which is kind of codebase retrieval plus.

Speaker 1

Yes.

John Yang

And mostly, it is helping humans understand their own codebases better—to enable humans, or to sort of mind-meld the human with the machine, to do the highest-possible task that an LM couldn't do alone and humans couldn't do alone.

The other thing is automated context engineering for an LM. That's sort of a research subagent that we're working on.

Speaker 1

That's so awesome.

John Yang

I don't know what the benchmark would be, because how do you benchmark understanding?

Speaker 1

That is true.

John Yang

Apart from, I guess, freezing a repo, having some manually curated answers, and then posing trivia questions. That's very easy to saturate, so I don't know how else to—

Speaker 1

Yeah, I think Swyx tweeted a while ago about something like the wiki—the code wikis. That's incredible. I mean, I use—

Speaker 1

Google actually just came out with its own version.

John Yang

Oh, yeah, with the Antigravity people.

Speaker 1

No, no, no. This is a separate team.

John Yang

Gotcha. Gotcha.

Speaker 1

But cool. That's the state of code.

John Yang

Yep.

[State of Code Evals] After SWE-bench, Code Clash & SOTA Coding Benchmarks recap — John Yang | BidClub