vdg · 4 August 2026

Three weeks ago this was a voice pipeline on a bench.

Three weeks ago, our field brain was a voice pipeline on a bench. Here is what reality taught it since.

It got senses — and learned to verify them. The biggest bug of the project fell in late July: the lidar ring was mirrored, and the error had been masked for weeks by a second sign error that cancelled it. A sensor you have not cross-checked is a sensor you are trusting on faith. Fixing both gave us motion estimation that verifies every single step against the world — recent mapping missions matched 120 of 120 stops — with two independent rotation estimates agreeing on hardware to 0.1°.

Top-down room map rendered from the mission log: lidar wall points in grey, the driven path in orange, start and end marked
A mapping mission, rendered from the raw log. Grey: lidar wall returns from 78 stops. Orange: the driven path (green ring = start, red = end). Every stop's pose verified by re-aligning consecutive scans — measured motion, not assumed motion.

It survived reality’s curriculum. A collision with a stair leg — invisible to every sensor on board — bought a progress watchdog: detection by consequence, not by sight. It has since fired for real and mapped an unseen obstacle mid-mission. A walking person was stopped at 448 mm; a crossing person was missed exactly the way the geometry predicts, became a test fixture the same afternoon, and the rebuilt detector caught the repeat — twice. The robot now waits for people instead of mapping them. A 53° tilt ended in self-rescue.

Polar plot of two consecutive lidar scans with the crossing person's transient signature circled in red
The recorded signature of the person the guard missed — kept as the regression fixture the rebuilt detector now fires on. Two consecutive scans overlaid; the red circle is the narrow, sharp range-drop with stable flanks: a person at half a metre. Green arrow: the robot's heading.

It goes where it’s told — then where it’s never been. First hardware go-to-position arrived 178 mm from its goal. Two days later: find-a-target-in-unknown-space — 15 stops, five metres into territory it had never mapped, arriving 284 mm out, zero interventions.

It got eyes, and honesty about them. The object hunt shipped, and promptly delivered the best lesson of the month: a false FOUND, born of a leading question the vision model was happy to agree with. The rebuild separates hypothesis from verdict — spot from afar, investigate closely, and put the final call to a model that is never told what we hope is there. Hours after publishing “confirmed at close range”, we retracted it — with the robot’s own footage of the mistake.

That ledger is public — the mission maps, the robot’s own footage, and the recorded signature of the person the guard missed are on the field log. The model card carries the full navigation arc — 12% → 40% → 85% goal-reach in simulation, then 92% with no prior map at all — and it carries the retraction too, because an eval you cannot fail honestly is not an eval.

learned controller (sim: 92%)
NOT deployed to hardware
↓ future, gated
deterministic layers
own the map, routing, sensing, pose
chassis
self-calibrated actuator model
Know which layer owns which job. The sim series proved the split — 12% → 40% → 85% → 92% with no prior map — and the hardware runs that prescription with the learned controller still behind its deployment gates.

Three weeks: bench to field. Maps, navigates, recovers, refuses — and publishes its own mistakes.

If you’re building for the places the network can’t reach, talk to us.

The robot's own camera, 2× speed — the horizon keels over, the tracks halt at 51°, and the reverse-pulse rescue levels the world again. Cut from the black box by the tilt alert's timestamp in the robot's own event log.