Commit Graph

2 Commits

Author SHA1 Message Date
Disco DeDisco
ff3e4d295c PICK SEA Sprint B FTs: deck stacks, OK btn, card draw, LOCK HAND/DEL — red — TDD
9 tests in PickSeaDealTest: DEAL btn absent; LOCK HAND present+disabled;
DEL present; two deck stacks (.sea-deck-stack--levity/gravity); stack click
shows .sea-stack-ok; elsewhere hides it; OK click fills .sea-pos-cover;
6 draws enables LOCK HAND; DEL clears .sea-card-slot--filled positions.
All 9 fail red — no implementation yet.

Code architected by Disco DeDisco <discodedisco@outlook.com>
Git commit message Co-Authored-By:
Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-28 22:50:39 -04:00
Disco DeDisco
39e12d6a3d PICK SEA Sprint A: async sky→sea transition via WS room:sky_confirmed — TDD
- natus_save: group_send room:sky_confirmed after confirm (carries seat_role)
- consumer: sky_confirmed handler rebroadcasts to room group
- _notify_sky_confirmed() helper mirrors _notify_pick_sky_available
- sea_partial view: renders _sea_overlay.html partial for in-page injection (403 if not sky_confirmed)
- epic:sea_partial URL registered
- _natus_overlay.html: data-user-seat-role attr; _onSkyConfirmed() fetches sea partial,
  removes natus overlay + backdrop, injects sea HTML, toggles sea-open on html root;
  room:sky_confirmed WS listener calls _onSkyConfirmed only for matching seat role
- user_seat_role added to SKY_SELECT context
- FT: PickSeaAsyncTransitionTest (3 tests, ChannelsFunctionalTest) — sea overlay,
  natus gone, sea-open class — all green

Code architected by Disco DeDisco <discodedisco@outlook.com>
Git commit message Co-Authored-By:
Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-28 22:16:38 -04:00