The shift that matters is control flow. In conventional software a developer specifies the sequence of operations; in an agent, the model chooses it at runtime.
That is what lets agents handle tasks nobody enumerated in advance, and it is the root of every reliability problem they have.
