A run says which world it was in.
Every run records its reality once, before its first device or simulator record. Simulated and physical records never mix, and only a physical run of a physical world reaches hardware.

One reality a run
Only one path reaches hardware.
A physical world has physical runs and simulated ones: its twin, a fork, a proposal. A simulation world, and every other file, has simulated runs only.
The reality is the run's first word.
One of 160 simulated SO-101 runs with drags in CommandAGI's Drive, as it is stored. The run's file says reality: simulation and names the world it is of; its commands say who gave them.
run.json "of": "cloud://global/worlds/so101-cube/world.tsx" "reality": "simulation" "kind": "session"
"simulator": { "driver": "sim", "settings": { "hz": 240, "record_hz": 30, "trajectory": 155 } }
05:57:52.400 command agent:policy-mover: trajectory robot=arm, 6 waypoints over 0.3 sCounted in the Drive
583 runs. Each knows what it was.
Every run.json under simulations/ and worlds/ in CommandAGI's production Drive, read on 2026-11-04 (case-studies/physical-vs-simulated/stats.json).
No physical run yet, and it says so. CommandAGI's shop is a physical world of 92 units. Its 34 devices are uncommissioned, so none of its runs is physical yet. A surrogate says it is one. A neural surrogate's prediction carries reality: surrogate. It is never a simulator's evidence, and never physical evidence. A lost link is unknown. A reply never implies the commanded state. A lost link records state: unknown, and a stream with no end is interrupted.
- run.json files read
- 583
- say reality: simulation
- 577
- physical runs yet
- 0
cloud://home/user-commandagi/simulations/ (production)Resultado case-studies/physical-vs-simulated/stats.jsonHerramienta scripts/sites/case-studies.mjs physical-vs-simulatedSe ejecutó en This computer (dell-gb10-1), reading the production DriveCuándo Try it in simulation. Then run it for real.
The same file, the same commands, a different reality, written on the record.