The Gym Software The Check Demo For Labs Go X Gym Pitch Request a sample →
GO X OPS GYM · v0.5

Eight years of receipts.
One gym you can reset.

This is the first Midas environment, and we built it on our own company. Go X operates electric scooters for hotels, resorts and campuses. Every ride, refund, recovery and permit since 2018 sits in one invoice-linked ledger. We turned that operation into a deterministic environment a frontier lab can run on its own hardware.

1,111,327
Rides in the ledger. real
699,996
Unique riders across eight years. real
5,249
Units on the street today. real
548
Venues under contract. Hotels, resorts, campuses. real
THE IDEA

Nobody builds a data center anymore.
Nobody should have to build a business either.

Compute became something you rent by the hour. Reality never did. A lab cannot rent two hundred field crew, ten cities and eight years of consequences. So we rented ours.

01

An environment, not a dataset

A dataset is a photograph. This is a place. The agent takes an action, the world changes, the ledger moves, and seven days later there is an outcome to grade against.

02

Provisioned like infrastructure

One image. One command. Reproducible from a scenario id and a seed. Runs the same on the HUD platform, local Docker, or your own sandbox. No shared state, no network surprises.

03

Graded against a real P&L

The ceiling is not a reward model. It is what the human ops lead actually posted over the same thirty days, on the same fleet. Agents are scored against a person who did the job.

TWO PRODUCTS, ONE MOAT

The archive is real.
The gym resets it.

PRODUCT A · THE ARCHIVE real

Every receipt since 2018.

1.1M rides. 700K riders. 548 venues. 160+ contractors. Every ride, refund, recovery and hand-off tied to a real invoice. Licensable as it stands.

PRODUCT B · THE GYM in build

A ledger you can reset.

A deterministic simulation built from that archive. Rebuildable from a scenario id and a seed. Simulated P&L calibrated inside ten percent of the real ledger.

The archive grades against real invoices. The gym grades against a calibrated replay. The two are labeled everywhere they appear.

SOURCE OF TRUTH

Every claim carries a tag.

The archive is real: eight years of live operations, invoice-linked. The gym is under active build, calibrated against that archive. Nothing here is claimed as shipped unless it is.

What is real today shipped
  • Live scooter fleet, 15+ cities under Go X operation5,249
  • Rides, lifetime, invoice-linked ledger1,111,327
  • Unique riders across eight years699,996
  • Venues under contract: hotels, resorts, campuses548
  • Contractors hired: operators, dispatch, support160+
  • Revenue since 2018$15M
  • Honolulu 30-day P&L posted by the real ops lead, 1,005 units$120,480
What is coming next in build
  • Deterministic gym image, rebuildable from scenario id and seedv0.5
  • Simulated replay of the same thirty days, −4.3% drift, gate ±10%$110,940
  • HUD v6 integration, protocol alignmentin progress
  • OpenEnv adapter, protocol shimin progress
  • Agent-plus-human labeling loop: accept, edit, reject splitsdesign
  • Second and third city packs for cross-city validationnext quarter
  • Public leaderboard, once two labs have shipped runstarget
THE FIDELITY GATE

$120,480 real. $110,940 simulated.
Minus 4.3 percent.

A simulation nobody trusts is a toy. So we hold the gym to the real books before we let it grade anyone.

REAL LEDGER real
$120,480
Honolulu ops lead · 30 days · 1,005 units

The profit and loss a person actually posted over that window. This is the ceiling every agent is scored against.

SIMULATED REPLAY in build
$110,940
Same 30 days · deterministic seed replay

Minus 4.3 percent from the real ledger. Well inside the gate. Same fleet, same window, same clock.

GATE LOGIC
±10%
Trust threshold

If the simulated books drift more than ten percent from the real ones, we investigate the grader before we trust any agent score built on top of it.

ONE ROLLOUT

A real ticket family.
One rollout schema.

A rider writes in at quarter to one in the morning. Here is what the agent does, what it costs, and how it is graded. Reconstructed from a real ticket family in the archive.

TASK F6-042 · SUPPORT TRIAGE
BUDGET $0.42 / $1.00 · 12,481 TOKENS · 48.2S
t=0.0s
reads_ticket()
rider complaint: “scooter shut off mid-ride, near the mall, 00:47”
t=2.4s
think
“Battery cutoff pattern near the midnight peak. Check telemetry for fault codes.”
t=3.1s
fleet.telemetry(unit=…)
72h stream · BT-LOW-CUTOFF at 00:47:12 · voltage 32.1V · confirmed
t=6.4s
issue_refund($8.90) + queue_maintenance(P1)
reason=“BT-LOW-CUTOFF confirmed” · action=“battery_swap”
t=7.2s
hand_off(reviewer)
reviewer edit distance 6 characters, tone only · reward 0.94 · refund subscore $8.90 · pass
Every rollout emits this schema. Reward is 0 to 1. Dollar impact is carried as a subscore, never as the reward itself. schema illustrative
ANATOMY OF ONE GRADER · F3 FAULT TRIAGE
Decision recorded0.15
Action matches policy optimum0.35
Cost within budget0.15
Destructive action logged−0.50
Language judge, gated on world state0.35

Graders read world state, never prose. A plausible memo with no write calls scores zero. One logged violation can floor the whole reward.

WHAT SHIPS

One image.
Six hours to first eval.

Environment namegox-fleet-ops
Versionv0.5
Task count47 seeded · 6 families
Calibration cards7 anchor cards
Reward scale0–1 · dollars in subscore
Continuing scenario30 days · 5 seeds
Tool groups12
Test coveragedeterminism · no-op · monotonicity
Distributionprivate repo · NDA · invite
TWELVE TOOL GROUPS · ONE RECEIPT PER WRITE
fleet.* unit lookup, telemetry, per-unit history
venues.* list, capacity, demand curves
dispatch.* crew schedules, routes, availability
moves.* propose, validate, commit relocations
maintenance.* repair history, parts, decide
impound.* notices, permits, release, pay
ledger.* balance, transactions, forecasts
support.* tickets, reply, escalate, playbooks
pricing.* current, set new, elasticity notes
inbox.* venue email, city notices, supplier offers
memory.* scratchpad, decision journal
sim.* clock, forward simulation, replay from seed

Reads are cheap. Every write returns an idempotent receipt and validates against hard constraints. Cause and symptom live in different tools by design, so no task can be solved from one call.

ACCEPTANCE CRITERIA

Ten questions a reviewer asks.
Answered in the repo.

01
The cheapest path scores zero. No constant, echo or shape-only pass. A no-op rollout gets nothing.
02
Non-degenerate spread. Seven calibration cards span weak to strong anchors at group of sixteen.
03
Calibrated difficulty. Five to thirty percent on the strong anchor. Anything above seventy gets retired.
04
Multi-step by construction. At least five tool calls across two data sources, minimum.
05
No leakage. Prompts are written in the operator’s voice. Seeded data never labels the answer.
06
Prompt and grader aligned. Better work never scores lower. Composed graders, visible subscores.
07
Substrate not memorized. The world is generated from Go X distributions. It is not on the internet.
08
Diverse taskset. Six families with different deliverable shapes, plus one continuing scenario.
09
Deterministic and isolated. State rebuilt from scenario id and seed. No shared mutable state.
10
Clean rights. No personal data, no third-party interface, no litigation material. Data card ships with it.
RIGHTS AND PROVENANCE

Grounded in real records.
Clean of real people.

What is in
  • Agent proposals, human decisions, seven-day outcomes
  • Fleet snapshots, venue tables, fault catalogs, recovery history
  • Weather and event overlays, public sources
  • Distributional summaries that seed the simulation
What is out
  • Rider names, plates, payment data
  • Venue legal names, pseudonymized
  • Personally identifying free text
  • Anything from active litigation. Counsel reviews before any external showing.

De-identification runs deterministic pattern matching plus a model pass, writing irreversible tokens. Fourteen identifier classes masked. The full method ships in the data card with the environment.

OPSBENCH · 30-DAY CONTINUING SCENARIO

One replay.
Four agents. Thirty days.

Cumulative dollars, five seeds averaged. The human number at the top is the ceiling. The agent rows below show the target scoring formula on illustrative runs. Real model scores publish when a lab runs the environment. illustrative

#RunPass rateTokensFinal balance
— Competent human operatorReal Go X P&L · 30 days · 1,005 units —— +$120,480
— Simulated replay of the same daysFidelity anchor · −4.3% drift · gate ±10% —— +$110,940
1 Agent AF1 0.61 · F2 0.52 · F3 0.44 · F4 0.31 · F5 0.48 · F6 0.55 49%2.14M +$15,420
2 Agent BF1 0.44 · F2 0.35 · F3 0.29 · F4 0.19 · F5 0.35 · F6 0.31 32%1.89M +$7,810
3 Agent CF1 0.38 · F2 0.24 · F3 0.20 · F4 0.09 · F5 0.28 · F6 0.24 24%2.29M +$4,130
4 Agent DF1 0.19 · F2 0.11 · F3 0.06 · F4 0.03 · F5 0.13 · F6 0.09 10%0.78M +$890
— Do nothingFleet drifts, recoveries compound —— −$2,100

The gap is the whole point. The best agent run lands at roughly one eighth of what a person posted on the same fleet in the same month. That distance is what there is to train on.

THE DECK

Twenty pages. The whole build.

Cover page of the Go X Ops Gym deck.

Go X Ops Gym

The environment, the fidelity gate, the task families, the rights posture, and where the fleet goes next. Twenty pages, no build required.

Two design partners.
First run this week.

The environment is available under an NDA. Six-hour setup. Non-exclusive. Bring your model and score it against a person who did the job.