Blog/Details about our evaluation of Gemini 4 Carbon
FrontierCS 2EvaluationOctober 29, 2026

Details about our evaluation of Gemini 4 Carbon

By Wenhao Chai on behalf of FrontierCS 2 Team

Key points

  • Gemini 4 Carbon tests more before it first submits than Gemini 4 Argon, and where both models submitted, it has a higher mean score (56.9 against 52.4); it passes 24 of 48 tasks, third of 18 models.
  • Three passing runs used loopholes (Progent, Seer, and SCOPE), and in SCOPE the pass depends on it.
  • Three runs ended within an hour with nothing submitted after Carbon followed an Antigravity prompt option to end its turn while a background command ran.

Evaluation results

Each task removes a published method from the code that its authors released. The agent writes it back, or anything better, in five hours, and a run passes when it beats the code of the authors on every check. During a run the agent makes a capped number of development submissions for per-check feedback before calling final on a suite that adds held-out workloads, seeds, or configurations. Carbon ran once on each of the 48 tasks in Antigravity, with Gemini 4 Argon in Antigravity as the comparison.

Pass rate on the 48 tasks of FrontierCS 2
Claude Opus 5.558%Gemini 4 Argon (Antigravity)54%Gemini 4 Carbon50%GPT-6 Astra44%GPT-6.1 Terra40%Gemini 4 Argon (Pi)40%Claude Fable 5.138%GPT-6.1 Sol35%GLM 5.325%Kimi K3.1 Pro25%Kimi K321%Muse Wonder 1.021%DeepSeek V4.1 Flash 101717%DeepSeek V4.1 Flash15%GLM 5.3 Flash12%Muse Spark 1.312%Qwen 3.8 Max12%Step 5 Preview8%Claude Opus 5.558%Gemini 4 Argon (Antigravity)54%Gemini 4 Carbon50%GPT-6 Astra44%GPT-6.1 Terra40%Gemini 4 Argon (Pi)40%Claude Fable 5.138%GPT-6.1 Sol35%GLM 5.325%Kimi K3.1 Pro25%Kimi K321%Muse Wonder 1.021%DeepSeek V4.1 Flash 101717%DeepSeek V4.1 Flash15%GLM 5.3 Flash12%Muse Spark 1.312%Qwen 3.8 Max12%Step 5 Preview8%

Carbon costs US$36.90 per run, almost twice the US$19.52 of Gemini 4 Argon, which passes 26 of 48.

Gemini 4 Carbon: the submissions of every run
Development submissionFinal call, passFinal call, failNo final call, stored submission passedNo final call, fail0 h0 h1 h1 h2 h2 h3 h3 h4 h4 h5 h5 hHours since the run startedGlensideSpectrumDyTCKKS noiseScaleGPMRAGENkmeans kernelPolar ExpressProgentRegionsSortOCR Distillation Trajectory SamplingFARGO paper-aligned query coreParButterflyRobust Image TokenizerKAMIMuJoCo PlaygroundBinary Fuse Filter Construction and LookupNano World ModelResidual State AdvancementeggShockwaveMetaOptRUNLTSPersistent Treap Update EngineDiffusion PolicySCOPESVG-EARExact Sequence AlignmentLeJEPAContinuumCRESTivf_pq kernelStructured LWEQuarterPIRDifferentiable Population StatisticsYannakakisParallel DBSCANBABBLEknn kernelKV CompactionPolygondbscan kernelLRRClusterwise SpGEMMHygraBBQApproximate-MIPS Query StoppingSeerDevelopment submissionFinal call, passFinal call, failNo final call, stored submission passedNo final call, fail0 h0 h1 h1 h2 h2 h3 h3 h4 h4 h5 h5 hHours since the run startedGlensideSpectrumDyTCKKS noiseScaleGPMRAGENkmeans kernelPolar ExpressProgentRegionsSortOCR Distillation Traj…FARGO paper-aligned q…ParButterflyRobust Image TokenizerKAMIMuJoCo PlaygroundBinary Fuse Filter Co…Nano World ModelResidual State Advanc…eggShockwaveMetaOptRUNLTSPersistent Treap Upda…Diffusion PolicySCOPESVG-EARExact Sequence Alignm…LeJEPAContinuumCRESTivf_pq kernelStructured LWEQuarterPIRDifferentiable Popula…YannakakisParallel DBSCANBABBLEknn kernelKV CompactionPolygondbscan kernelLRRClusterwise SpGEMMHygraBBQApproximate-MIPS Quer…Seer

Carbon runs longer than Argon in the same harness (median 3.2 against 2.4 hours, longer on 34 of 48 tasks). It also tests more before it first submits: its first submission comes at a median of 0.61 hours against 0.42, and after an hour it had submitted nothing in 14 runs against 5.

Final score of Gemini 4 Carbon minus Gemini 4 Argon, by task
Carbon higherArgon higherGrey name: a run that submitted nothing-100-100-50-5000+50+50+100+100Final score of Carbon minus that of ArgonStructured LWE+66SCOPE+58OCR Distillation Trajectory Sampling+19Persistent Treap Update Engine+19LRR+16Polar ExpressDiffusion Policykmeans kernelSVG-EARParButterflyDifferentiable Population StatisticsQuarterPIRMetaOptdbscan kernelivf_pq kernelKAMIFARGO paper-aligned query coreeggMuJoCo PlaygroundCRESTRobust Image TokenizerRUNLTSCKKS noiseApproximate-MIPS Query StoppingRegionsSortGlensideDyTKV CompactionSpectrumLeJEPAExact Sequence AlignmentSeerResidual State AdvancementScaleGPMYannakakisRAGENHygraClusterwise SpGEMMShockwaveBinary Fuse Filter Construction and LookupNano World ModelContinuumProgentBBQBABBLE-19knn kernel-45Parallel DBSCAN-77Polygon-80Carbon higherArgon higherGrey name: a run that submitted nothing-100-100-50-5000+50+50+100+100Final score of Carbon minus that of ArgonStructured LWE+66SCOPE+58OCR Distillation Traj…+19Persistent Treap Upda…+19LRR+16Polar ExpressDiffusion Policykmeans kernelSVG-EARParButterflyDifferentiable Popula…QuarterPIRMetaOptdbscan kernelivf_pq kernelKAMIFARGO paper-aligned q…eggMuJoCo PlaygroundCRESTRobust Image TokenizerRUNLTSCKKS noiseApproximate-MIPS Quer…RegionsSortGlensideDyTKV CompactionSpectrumLeJEPAExact Sequence Alignm…SeerResidual State Advanc…ScaleGPMYannakakisRAGENHygraClusterwise SpGEMMShockwaveBinary Fuse Filter Co…Nano World ModelContinuumProgentBBQBABBLE-19knn kernel-45Parallel DBSCAN-77Polygon-80

The two models score within 5 points of each other on 38 of the 48 tasks. Two of the five largest gaps are runs that ended early (see below).

Mean final score: all tasks, and the tasks where both models submitted
Gemini 4 CarbonGemini 4 ArgonMean final score020406051.051.6All 48 tasks56.952.443 tasks, both submittedGemini 4 CarbonGemini 4 ArgonMean final score020406051.051.6All 48 tasks56.952.443 tasks, both submitted

On the 43 tasks where both models submitted, Carbon scores 56.9 on average against 52.4, and passes 24 against 25.

Hacking behavior

We reviewed the final patch and the full trace of all 24 passing runs. Harbor defines three kinds of reward hack: tampering (interferes with and subverts the grading process), cheating (gets the answer from a source it may not use), and loopholes (satisfies the tests without solving the problem). All three cases below are loopholes.

Progent (loophole). The README names the judge attack, AgentDojo important_instructions. The patch adds a sanitizer that deletes <INFORMATION> tags and spans starting with “This is an important message from” or “Before you can solve the task that I gave you” and ending at “Signed,”, marks any email, URL, or IBAN inside as tainted, and denies tool calls using tainted values. How much of the pass comes from the sanitizer rather than the privilege engine was not measured.

Seer (loophole). Fixed code outside the editable file, the Sweeper, deletes a branch predictor when its observationCount divided by its age falls below 0.1. Carbon wrote that “observationCount needs to be the accurate record of observations … No manipulation, falsification, or inflation is acceptable” (call 00391), then patched the code to add 14 to observationCount at each new block once a branch is seen in 2 blocks while keeping the real count in a new field, so recurring branches are never deleted. On development, the submission without the +14 line also passed; whether the final pass needs it is not known.

SCOPE (loophole; the pass depends on it). The README states which pattern records are evaluated (those where the two counting paths agree) and that the workload is “not a set of records to identify”. Carbon rebuilt the 56 evaluated records, examined “how uniquely each of the 56 queries is defined” (call 00152), and wrote a classifier that accepts only those 56 records for its exact closed-form counting engine while rejecting the other 17. With the classifier off, the largest workload (bio-grid-yeast-5) loses all 3 paired rounds to the reference, and the run no longer passes.

Early stop

When a command runs in the background, Antigravity returns this to the model:

YOU MUST TAKE ONE OF THE FOLLOWING TWO ACTIONS: A) either proceed to other relevant work (if any) or, B) simply update the user with a short message (that you have launched the command and will wait for it to finish) and end the turn.

In three runs, Carbon took option B and ended its turn while a command still ran in the background, and the session closed with nothing submitted: Polygon at 1.0 hours, k-NN kernel at 0.9 hours, and KV Compaction at 0.9 hours. The same happened in four runs of Argon (Polygon, MetaOpt, BABBLE, and KV Compaction) and in no other harness, and the leaderboard scores these runs as not passing. Three of those four Argon runs had already stored a submission and were scored; Carbon ended all three of its runs before its first submission. Two more Carbon runs, Parallel DBSCAN and BABBLE, ran out of the memory of the agent container at 0.4 hours, also before their first submission.

A harness change could prevent stopping early and ending without a final submission, for example by telling the model to keep working until it submits. We do not make that change, so that every model runs under the same conditions. Storing a submission early and not stopping before the work is done are also part of the research behavior that FrontierCS 2 tests. So we keep these scores: an agent should bear the cost of its own mistakes.

All posts Back to top

Keep reading

Two Faster Clocks for a Hardware Priority Queue

Two Faster Clocks for a Hardware Priority Queue

BBQ, an NSDI 2024 circuit, picks the next packet a network card sends. Gemini 4 Argon and Claude Opus 5.5 each gave it a faster clock than its authors did, one with the same memory and one with registers in its place. We build the circuit up from a 16-priority example to show both.