rustnake 1.3.1

Classic Snake for the terminal, built in Rust.
# Releasing

Maintainer-only release checklist for Rustnake.

## Prerequisites

- Push access to `main` and tag creation rights.
- GitHub Actions enabled for this repository.
- `CHANGELOG.md` contains an entry for the release version.
- `Cargo.toml` version matches the intended tag version.

## Signing policy

- Release binaries are intentionally unsigned on all platforms.
- No signing/notarization rollout is currently planned.
- CI does not run signing/notarization steps.

## Release steps

1. Run local quality checks:
   - `cargo fmt --all --check`
   - `cargo check --all-targets --all-features --locked`
   - `cargo clippy --all-targets --all-features --locked -- -D warnings`
   - `cargo test --all-targets --all-features --locked`
2. Update `CHANGELOG.md` with the release section.
3. Bump crate version in `Cargo.toml`.
4. Commit and push to `main`.
5. Create and push a semver tag:
   - `git tag vX.Y.Z`
   - `git push origin vX.Y.Z`
6. Confirm release workflow success (`.github/workflows/release.yml`):
   - tag/changelog/version validation
   - cross-platform binary build/upload
   - crates.io publish (idempotent)
   - final release publication

## Post-release checks

- Verify release assets and checksums exist on GitHub Releases.
- Verify crate version is visible on crates.io.
- Confirm README install commands still match current asset names.