2026-09-23

Xiaomi's CodeMidas Turns Any Codebase Into RL Training Tasks — With No Word on What Model Grades Its Own Homework

AIOpen Source🌍 Asia

Researchers at Xiaomi's MiMo team, Peking University, the University of Hong Kong, and Renmin University published CodeMidas: a pipeline that builds reinforcement-learning training tasks directly from existing source code, rather than from issues, pull requests, or commits the way prior pipelines (SWE-bench, SWE-rebench) have. An agent explores a codebase's implemented functionality, writes a behavioral spec for it, strips it back out to create a starting point, builds tests grounded in the original code's actual execution, then filters candidates through adversarial rollouts (checking whether the spec leaks the answer) and repeated solution attempts.

The result is 5,545 training tasks from 3,185 repositories across 23 languages. Training MiMo-V2.5 on them with GRPO improves all five external benchmarks tested: DeepSWE pass rate from 10.0% to 21.7%, Terminal-Bench v2.1 from 63.7% to 72.2%, ProgramBench's Almost-Solved score from 4.5 to 21.5, plus gains on SWE-bench Pro and RepoZero C2Rust. The task set and the benchmark sets are confirmed disjoint.

Quality beats scale, cleanly

The paper's sharpest result is an ablation most launches wouldn't bother running: a 3,000-task filtered subset outperforms an 8,000-task pool sampled before the filtering pipeline runs, on every one of three metrics tested. Filtering — execution-consistency checks, adversarial leakage probes, solution review — removes more than 5,000 raw candidates and still leaves a training set that beats them. That's a genuinely useful, checkable finding about what to spend engineering effort on when building RL environments, more informative than the headline pass-rate deltas.

Nobody says which model builds the training data

Here's the gap worth naming: at no point in the paper — not the method section, not the appendix's full training-configuration table, which lists batch size, learning rate, Adam betas, and every other hyperparameter down to gradient-clipping threshold — does it state which model actually runs CodeMidas itself. The agent that explores repositories, writes specs, constructs tests, executes adversarial rollouts, and reviews candidate solutions against verifier decisions is never named. Only the model being trained on the output, MiMo-V2.5, is specified.

That's not a small omission. If the pipeline itself runs on MiMo, a Xiaomi model is generating and grading the curriculum that then trains a later Xiaomi model — a self-reinforcement loop worth knowing about, not necessarily invalidating the result, but a different claim than an independently-constructed dataset. If it runs on a stronger third-party model, that's a materially different cost and reproducibility story than the paper's framing suggests. Either way, it's the one specification a reader can't get from this paper that would change how to read every number in it.

Xiaomi's MiMo-V2.6 launch, three weeks after this preprint, invoked "RSI" — recursive self-improvement — to describe scaling RL on verifiable tasks. CodeMidas is a concrete instance of exactly that mechanism: a pipeline that manufactures its own training signal from raw material with no human-curated task statement. Worth watching whether the model that builds the curriculum ever gets named.