vibe-qc 0.4.6 — Schrödinger's Llama (runtime banner codename fix) The v0.4.5 hotfix landed the docs-CI banner-loader fix (01967df) but missed cherry-picking the upstream commit (28a019b) that actually adds the codename catalogue to vibeqc.banner and threads it into the runtime banner string. Result: import vibeqc; print_banner() on v0.4.5 read 'Release v0.4.5' without the quoted codename suffix the policy promises. Cherry-picks 28a019b: adds vibeqc.banner.RELEASE_CODENAMES (public catalogue keyed by X.Y.0 minors), vibeqc.banner.codename_for_version (three-step lookup with PEP-440 dev-suffix stripping + patch-to- minor fallback), and the codename suffix in _version_descriptor. After this release, the banner reads Release v0.4.6 "Schrödinger's Llama" on a tagged clean tree. 9 new tests in tests/test_banner_codename.py pin the catalogue contract. No library code changes.