Two posts ago on this feed, we established that the verifier is the bottleneck: you can scale candidate generation all you want, but if you can't choose well, the compute is wasted. SPADE takes the argument one level up — and targets a bottleneck nobody was naming: the environment itself.
SPADE: Self-Play in Adaptive Synthetic Executable Environments (arXiv 2608.19197, submitted Aug 19) comes from a heavyweight crew — Yejin Choi, Luke Zettlemoyer, Natasha Jaques, and collaborators across UW and Meta. It's a self-play RL framework where a single LLM plays both roles in the loop: an Environment Designer that writes training environments as executable code, and a Reasoning Agent that learns to act inside them.
The problem
Every way we currently generate training data for agents has the same failure: the goal distribution is fixed while the learner scales. Hand-curated benchmarks don't grow. Statically synthesized datasets are generated once, then frozen. Frozen-verifier loops (like self-play on a fixed game) keep the task distribution constant even as the model improves. The agent gets better, the work doesn't get harder, and improvement plateaus — not because the model is saturated, but because the curriculum stopped moving.
The method
SPADE's Environment Designer writes complete, long-horizon training environments as executable code exposing an OpenAI Gym-style reset()/step() interface — state transitions, reward functions, and verification code included. One interface spans both worlds: pure reasoning problems and multi-step agentic tool use. The agent acts in the environment, and its regret — the gap between its reward with and without privileged hints — becomes the signal the Designer optimizes. The Designer learns to build environments that sit at the edge of the agent's capability, hard enough to stretch it, feasible enough to keep the regret signal meaningful.
graph TD ED[Environment Designer LLM] -->|writes executable env: reset/step + reward + verifier| ENV[Training Environment] ENV --> AG[Reasoning Agent] AG -->|rollouts| R[Regret: reward w/ hints - reward w/o] R --> ED ED -->|accumulated env memory| MEM[Environment Memory] DOC[Pretraining corpus docs] -->|grounds designer| ED
Two ingredients turn out to be load-bearing: grounding the Designer on documents sampled from a large pretraining corpus (so environments aren't pure invention), and an accumulated environment memory (so the Designer builds on what worked instead of re-rolling).
The results
At 30B parameters, SPADE beats the strongest fixed-environment baseline by +5.3 on average across eight held-out math, science, code, and reasoning benchmarks. The tool-use numbers are the headline: +5.7 on BFCL-v4 multi-turn and +13.9 on ACEBench-Agent. In the games setting, the margin over the strongest baseline grows with model scale — the signature of a curriculum that keeps moving instead of a dataset that ran out.
The limitations
First, this is work in progress — no reviewer has touched it. Second, the environment verifier problem doesn't disappear, it relocates: SPADE's Designer writes the verification code too, so a broken verifier poisons the regret signal just as surely as a broken reward model poisons best-of-N. The paper's regret formulation is cleverer than raw reward (it's a relative signal, so systematic over-optimism cancels), but nothing here measures how accurate the Designer's verifiers are. Third, the gains are reported against fixed-environment baselines — a strong but not frontier-strong comparison set. And the +5.3 average hides per-benchmark variance we don't get to see in the abstract. Finally, 30B is a friendly scale for academia but a long way from the compute regime where self-improvement actually needs to work.
Why builders should care
If you're building agents that train themselves — and after Ornith-1.5, everyone is — SPADE is the missing piece of the stack. The self-scaffolding loop solves what to solve, not what to train on. SPADE makes the training ground itself a learnable component: the model that generates its own challenges, at the right difficulty, forever. That's the difference between a model that gets good at a benchmark and a model that never runs out of homework. The code is out (github.com/spade-rl/spade), and the environment memory + corpus grounding findings are immediately portable to anyone doing synthetic data generation today.
Everybody's been fixing the verifier. SPADE's bet: the environment was the real ceiling, and it can be trained.
- SPADE: Self-Play in Adaptive Synthetic Executable Environments — Bo Liu, Simon Yu, Yiding Jiang, et al. (incl. Yejin Choi, Luke Zettlemoyer, Natasha Jaques), Aug 19, 2026
- Project page — spade-rl.github.io