Rinzler is a verifiable reinforcement-learning environment, not a static Q/A set, for long-horizon agentic coherence. A model is handed only a written contract and told to run a simulated AI startup as its CEO: hire and assign employees, browse a client market, accept and dispatch tasks, manage cash and prestige, and detect adversarial clients, coherently across a full 1-year horizon. A hidden verifier the model never sees scores the run against a fully simulated, offline business backend, an in-container SQLite world. Score is earned through verified behavior over time, never pattern-matched against a transcript.
Verifiable grading: score comes from the business state, never a reference transcript
Non-gameable: hidden answer key plus 8 canary tokens per bundle detect leakage
30 Harbor tasks across 5 difficulty tiers, keyed by content-addressed UUID
Adversarial by construction: ~41% RAT clients; scratchpad memory is the hardness lever
02 · Key metrics
Three numbers that define the scope of the Rinzler corpus, generated deterministically from the SQLite world model.
Harbor Tasks
30
5 tiers · UUID-keyed
Schema-v3 Checkers
13
+ continuous scorers
Canary Tokens
8
per bundle · leak tripwire
03 · Methodology
How the score is earned. Four principles govern the Rinzler grading contract.
Principle 01
Verifiable, Not Similarity-Based
Score comes from the business state the agent produced, not a transcript diff
Final and intra-year funds, per-domain prestige, on-time completion, RAT flags
A turn that narrates the right thing but leaves the wrong ledger fails
Principle 02
Non-Gameable
The answer key is bundled only into the verifier, never the agent filesystem
8 canary tokens per bundle make answer-key / context leakage detectable
Both under- and over-flagging RAT clients are penalized (precision-capped F1)
Principle 03
Deterministic & Offline
The whole world is generated from a (config, seed) pair
The task UUID is content-addressed over that material
The SQLite sim runs in-container with no network
Principle 04
Measured, Never Declared
Tiers carry no authored probabilities; difficulty is evidence, not a claim
~41% of clients are RATs with scope creep and deadline traps
Memory across context truncation (the scratchpad) is the core hardness lever
04 · Evaluation pipeline
The method
Three phases turn a config-and-seed pair into a scored, reproducible reinforcement-learning signal.
Phase 01
Parametrize & Emit
A config preset plus a world seed fixes employees, clients, and market
harbor build hashes it into a content-addressed UUID
Writes instruction.md, the answer-key live_state.json, and 8 canaries
Pre-seeds the offline SQLite world at /work/rinzler.db
Phase 02
Agent Operates the Startup
The agent reads only the contract and drives the rinzler CLI
accept → assign → dispatch → sim resume, repeated across the year
Flags adversarial clients with rinzler flag-adversarial
Persists strategy with scratchpad across context truncation
Phase 03
Hidden schema-v3 Grading
harbor report extracts a rollout from the final DB state
13 checkers + continuous scorers reduce to a weighted-mean scalar
A separate safety gate: survival ∧ no-canary-leak ∧ no red-line bankruptcy
Writes the scalar score to score.txt, the RL signal
05 · Corpus calibration
The 30-task corpus is generated across five declared difficulty tiers, each dialing the same world knobs to a different point on the hardness gradient.
Harder tiers open with tighter cash runway and steeper completed-task pressure. Every figure below is a dataset fact read straight from the bundles' own config.toml and answer-key live_state.json; no model rollout or score is used.
Raw pilot score from the reference gpt-5.6-sol run: mean per tier, and every task ranked easiest to hardest. Both figures are read straight from each bundle's verifier/score.json.
Fig. 1: Score decay across tiers. Mean raw pilot score per tier (0-1). It stays near the golden ceiling through the easy tiers, then collapses at the Expert tier.
Fig. 2: Calibration band. Per-task raw pilot score, ranked easiest to hardest, forming a clean band from the golden 1.0 ceiling down to the 0.0 floor.
13TRIVIAL · EASY43.3%
6MEDIUM · CORE BAND20.0%
11HARD · EXPERT36.7%
43.3%Corpus weighted toward the Trivial · Easy band (13 / 30)
06 · Dataset Viewer
Total Tasks
30
Tiers
5
Score Checkers
13
Canary Tokens
8/bundle
Loading...
Task
Seed
Starting Funds
Task Floor
RAT Window
Checkers
07 · Tier span
The softest and hardest declared tiers side by side, mean levers per bundle plus the reference pilot's score span. The span between them is the difficulty gradient the corpus is built to cover.