The version lived in three places and only one was enforced: pyproject (which the Registry publishes and the release workflow checks the tag against), the User-Agent this client sends, and __init__'s fallback for when pyproject cannot be read. The other two could drift silently, and API telemetry would then attribute traffic to a version nobody is running. Bumped together, with a test that fails when they disagree. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>