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>
This commit is contained in:
@@ -27,4 +27,5 @@ urlpatterns = [
|
||||
path('room/<uuid:room_id>/tarot/deal', views.tarot_deal, name='tarot_deal'),
|
||||
path('room/<uuid:room_id>/natus/preview', views.natus_preview, name='natus_preview'),
|
||||
path('room/<uuid:room_id>/natus/save', views.natus_save, name='natus_save'),
|
||||
path('room/<uuid:room_id>/sea/partial', views.sea_partial, name='sea_partial'),
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user