The protocol version is now declared once in libcockatrice_protocol/protocol_version.json.
CMake reads it at configure time and emits a generated protocol_version.h exposing
COCKATRICE_PROTOCOL_VERSION; remote_client.cpp and serversocketinterface.cpp both
pick it up via the existing libcockatrice_protocol link.
The same JSON file is bundled into a new @cockatrice/protocol npm package
(scripts/package-protocol.mjs + .github/workflows/protocol-publish.yml) so
TypeScript consumers (Sockatrice/webclient) can derive PROTOCOL_VERSION from the
identical source instead of hand-typing the literal. The workflow dry-runs
npm pack on PRs and publishes to GitHub Packages on stable releases only.