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.