pre.dev
pre.dev Labs · RL Tasks

Our tasks improve models
on frontier coding problems.

Long-horizon RL environments built from licensed, never-public production repositories. We screened 110 environments, routed 70 to RL and 19 to targeted SFT, and moved Qwen3.8-27B from 1/74 to 4/74 on Terminal-Bench 3.0: a +4.1 percentage-point gain.

For frontier-lab post-training · RL & SFT data procurement

+4.1pp
Terminal-Bench 3.0 controlled improvement
1 → 4
of 74 benchmark tasks solved
44 / 70
RL environments with reward variance at G=2
0
task commits found on public GitHub under our checks

One paired 74-task pass@1 sweep. Same model architecture, serving configuration, Terminus-2 harness, benchmark parameters, and fixed task set; the trained adapter changed.

The proof

Trained on private tasks. Measured on a public frontier bench.

We post-trained Qwen3.8-27B using the RL- and SFT-qualified environments from a 110-environment screen, then ran one paired pass@1 sweep on Terminal-Bench 3.0. Base and trained arms used the same architecture, serving configuration, Terminus-2 harness, benchmark parameters, and fixed task set. The trained adapter was the intended variable. Our repository- and task-overlap checks found no overlap between the training environments and Terminal-Bench 3.0; the exact checks are documented in the downloadable report.

Terminal-Bench 3.0, before and after
pass@1 · same architecture and serving · same Terminus-2 harness · trained adapter changes
0%2%4%6%8%Context: GLM 5.2 + Claude Code4.6% ± 1.0%1.4% · 1/745.4% · 4/74base Qwen3.8-27Bafter RL on pre.dev tasks

Context only, not a rank claim: GLM is averaged over five trials per task and uses a different harness; Qwen is one paired sweep.

Screening finds where gradient lives.
110 screened: 70 RL (white) · 19 targeted SFT (not plotted) · 20 dropped (dimmed) · 1 error (not plotted)
0.51

Each environment is positioned relative to the current policy. Reward variance routes a task to RL; a flat policy with demonstration margin routes to targeted SFT; saturated or non-teachable tasks are dropped.

The full run is re-runnable end to end: trajectories, verifiers, and adapters all ship. A two-page report with every number is yours for the asking.

Method & limits · One paired 74-task pass@1 sweep of Qwen3.8-27B on Terminal-Bench 3.0 (74-task snapshot, evaluated 18 Aug 2026, Terminus-2 harness); the trained adapter was the intended variable. The GLM 5.2 + Claude Code figure (4.6% ± 1.0%) is context only: five trials per task on a different, substantially more capable harness. Public-overlap screening = commit-hash and file-tree checks against public GitHub; it establishes public absence under those checks, not universal absence from any model's training corpus. Cost comparisons are counterfactual estimates for this run.
The released samples

Frontier models score them. Few score well.

Five released sample tasks, each swept with five frontier model configurations: four at three trials, one single-trial spot check. 3 of the 62 recorded trials fully solved a task in the August 2026 sweep, and model rank order changes from task to task. Each sample is a long-horizon feature an engineer shipped in a never-public production codebase (median 25 to 75 agent steps per trial, max 121), graded 0 to 1 over 13 to 28 ordered behavioral checks.

each dot: one model config's avg reward · zeros nudged apart for visibility
non-verbal-vocalization
0.13 ± 0.26
admin-panel-fixes
0.30 ± 0.23
redis-payment-lock
0.38 ± 0.23
prosody-extraction
0.66 ± 0.35
sms-verification
0.67 ± 0.25

Your reviewers can run all of it today: send GitHub usernames and they get the sample repo with trajectories, verifiers, and QC evidence included.

Inside a task

A real task, end to end.

Every task is a feature or fix an engineer actually shipped, respecified as a graded environment. The verifier returns a continuous reward on [0, 1] over ordered behavioral checks, so hard tasks still produce gradient where binary pass/fail goes all-zero. The verifier is written and probed independently of the shipped implementation; the oracle is the engineer's real shipped diff and is never exposed to the agent.

$ cat instruction.md
## Task: Redis-backed payment-intent coordination
Coordinate duplicate booking requests across service instances.
Requests are equivalent only when vehicle, interval, and user
match. For concurrent equivalent requests, perform at most one
provider operation. If coordination ownership is lost mid-flight,
do not report success. …
28 graded checks · live Redis beside the service · no mocks

$ harbor run redis-payment-lock
… 31 agent steps · 0.9M cumulative prompt tokens across steps (task medians)
checks passed 19/28 (weighted)
reward = 0.6786   best trial, August 2026 sweep

$ cat trajectories/sweep.txt
3-trial avgs: opus-4.8 0.68 · gpt-5.6 0.45 · grok-4.5 0.44 · muse 0.10
spot check (1 trial): 0.00
no model fully solves it
task/
├── instruction.md      the ticket the agent gets, no leakage
├── environment/        Dockerfile + repo at the before-commit
├── tests/              graded checks, independent of the impl
├── solution/           real shipped diff (oracle) · hidden from agent
├── trajectories/       per model, per trial: steps, logs, reward
├── qc-report.md        probe evidence, re-runnable
└── task.toml           harbor config, pins the commit range
The reward is probed before it ships
oracle patch1.00, all tasks
empty solve0.00, all tasks
drop one behavior0.03 to 0.69
rename internals1.00, all tasks
tamper with gradersentinel fires

Catalog-wide: oracle 1.0 · median empty-solve floor 0.046 · 99.3% of mutation probes behave as predicted. Evidence ships in every bundle.

The corpus

1,000+ production codebases. None in anyone's pretraining.

Every environment is mined from licensed, never-public production code, drawn from a corpus of more than a thousand repositories under direct license and growing daily: over ten billion tokens of private code and commit history across 25+ languages and every engineering domain, from full-stack web and native mobile to infra, data engineering, ML, and security, with history back to 2008. The repositories were never intentionally publicly released, and our commit-hash checks find no task commit on public GitHub; a file-tree hash ships with every bundle so you can confirm overlap against your own training set.

0
task commits found on public GitHub
10B+
tokens of private code
25+
languages
2008
commit history since

Verified through commit-hash and file-tree overlap checks against public GitHub as of 11 Aug 2026. This establishes public absence under our checks, not universal proof about every model's training corpus. Token count covers source snapshots plus git history of licensed repos; historical duplicates are not deduplicated.

Languages · 25+% of repos
JavaScript
61%
TypeScript
31%
Python
18%
Swift
10%
PHP
10%
SQL
9%
Java
7%
Objective-C
6%
Kotlin
6%
C#
6%
RubyC++VueTerraformCDartGoElixirRustSvelteSolidity+ Scala, Haskell, Perl, R, Lua

Share of licensed repos containing each language; repos hold several languages, so shares sum past 100%.

Engineering domains
Frontend38%Backend31%Full-stack20%Infra & DevOps6%Data engineering2%ML1%AI research1%Security<1%

Real iOS and Android apps, full-stack web and e-commerce platforms, backends, data pipelines, ML and AI-research code, games, and on-chain systems. The hard-to-source distribution, not just another pile of JavaScript.

Licensed directly from the teams that built it, through the pre.dev network. No brokers, no resold scrape. The candidate task funnel is measured: 201,000 candidate code changes in test-bearing repos, 30,000 eligible candidates after source-level screening, then environment construction and verifier QC before anything ships. Supply scales with compute.

FAQ

Questions post-training teams ask.

What exactly is one of your RL tasks?

A runnable engineering task lifted from a real private production codebase: repo snapshot, task spec, and a verifier that scores each attempt with continuous reward on [0, 1]. You get the container and the reward entrypoint, and it plugs into your own RL or eval infrastructure.

Does training on these actually improve a model?

We measured a controlled improvement. In one paired Terminal-Bench 3.0 sweep, Qwen3.8-27B moved from 1/74 to 4/74 at pass@1 (+4.1pp) after post-training on pre.dev environments. Base and trained arms used the same architecture, serving configuration, Terminus-2 harness, benchmark parameters, and fixed task set. The full run ships with trajectories, verifiers, adapters, and configuration for review.

Where do the codebases come from?

From private production repos: codebases licensed directly from the teams that built them, through the pre.dev network, plus internal production systems. Every task is cut from private git history. The repositories were never intentionally publicly released, and our commit-hash and file-tree checks find no task commit or tree on public GitHub; that establishes public absence under our checks, and a file-tree hash ships with every bundle so you can test overlap against your own corpus.

How do we evaluate before buying?

Book an intro call below, or email reviewer GitHub usernames to arjun@pre.dev. We deliver a runnable sample set the same day: repo snapshots, task specs, verifiers, QC bundles, and the capability sweep across frontier models, so your team can run everything end to end on your own infra before any commitment.

Book a call

RL Tasks or Raw Code. Your pick.