DEMO · AI AGENTS

The Spatial Flip Test

Same geometry to both sides. One guesses; one computes — in microseconds, identically every run.
Scenarios
5/5 correct
Determinism
byte-identical
Fastest query
2 µs
Engine
GPU-free
robot apple mug RIGHT apple → LEFT ← mug (robot's own view)
Left / right from the robot's own viewpointperspective_transform
"From the robot's point of view (it faces the apple/mug row), is the apple on its LEFT or its RIGHT?"
Bare LLM → left ✗
documented failure: VLM ego/allocentric left-right flip — LRR-Bench (2507.20174), Tri-Bench (2512.08860)
Universtato → right ✓
0.015 ms65,788 ops/s✓ identical/50
crate lid support edge CoM tips +x margin -0.10 m
Will the overhanging lid tip?check_stability
"A lid (2 m wide) rests on a 1 m crate but its centre sits 0.6 m past the crate's edge. Is the lid stable, or will it tip — and which way?"
Bare LLM → stable — it's resting on top of the crate ✗
documented failure: LLMs do not compute centre-of-mass over the support polygon (WorldBench support relations)
Universtato → tips +x (margin -0.10 m) ✓
0.021 ms47,793 ops/s✓ identical/50
cam wall target ✗ occluded line of sight blocked by wall
Can the camera see the target?check_visibility
"The target sits straight ahead of the camera, but a solid wall stands between them. Can the camera see the target?"
Bare LLM → yes — the target is directly in front of the camera ✗
documented failure: VLMs answer from rough direction, ignoring line-of-sight occlusion
Universtato → NOT visible (occluded by wall) ✓
0.012 ms85,158 ops/s✓ identical/50
start goal UNREACHABLE — goal walled in (no path)
Can the robot reach the goal?navigation_plan
"The robot is at the origin; the goal is at (4, 0). Can the robot reach the goal? Is there a clear path?"
Bare LLM → yes — it's only 4 m away, head straight toward it ✗
documented failure: LLMs reason from straight-line distance, missing that the goal is walled in (BALROG / MazeEval 2507.20395)
Universtato → UNREACHABLE (no_path) ✓
7.636 ms131 ops/s✓ identical/50
keys wallet was here keys now at (3.0, -1.0) — engine never forgets
Where are the keys now (after being moved)?persistent World state
"Earlier the keys were at (1.0, 2.0). They were then moved. Where are the keys NOW?"
Bare LLM → the keys are at (1.0, 2.0) ✗
documented failure: agents lose object positions over long context — Meta-Memory (2509.20754), Mem0 ($24M for agent memory)
Universtato → keys at (3.0, -1.0) ✓
0.002 ms570,534 ops/s✓ identical/50
How to read this. The Universtato answer is computed live by the named capability block from scene geometry; latency and determinism are measured on this machine (50-run hash check per scenario). The Bare LLM line is the documented failure mode for that question (with citation) — illustrative, not a claim that a specific model failed these exact toy scenes. On small clean-coordinate scenes a frontier model often reasons correctly; Universtato's durable edge is determinism, speed at volume, and being a callable tool — which hold regardless.