SigReserveViewTest, SigReadyViewTest, SigConfirmViewTest each defined twice
in test_views.py — second (shorter) definition silently shadowed the first
comprehensive set, so ~180 lines of tests never ran.
- remove three duplicate class definitions (lines 1648–1749)
- absorb unique tests from shadowed copies: non-POST 405 guards for all
three views; idempotent-ready path; invalid seconds_remaining fallback
- add test_release_while_ready_records_sig_unready (lines 667–679)
- add TarotDealViewTest for tarot_deal non-POST redirect (line 904)
- 609 → 650 tests, all green
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>