An agent carries a model of its world. The mismatch between what the model predicts and what actually arrives is surprise, and free energy is a tractable bound on it. Friston's claim is that living systems act to keep that bound small — and there are only two ways down. Change the model to fit the world, and you have perception; the maths comes out as Bayesian inference exactly. Change the world to fit the model, and you have action. Both are the same move: shrink the mismatch at the boundary between the agent and everything else. That is the shape you have been meeting since the antenna. This is not only a theory on paper. VERSES has built an active-inference agent, Genius, that runs exactly this two-way descent on Meta's Habitat benchmark — TidyHouse, PrepareGroceries, SetTable — and reports a 66.5% success rate against a 54.7% baseline that needed 1.3 billion pretraining steps, adapting online instead of training once and freezing. Read that number for what it is: a simulation-only result, self-reported by the company, not yet independently replicated, and not a deployment on a physical robot. A separate, unrelated benchmark — Atari-100k — is where VERSES reports '96% less compute'; marketing copy sometimes runs the two together as if active inference does robot manipulation on a sliver of the compute, and it does not — they are different tasks. What survives the correction is still real: an agent minimising one free energy two ways, in code, at a scale bigger than anything in this course's cells.