The desktop submenu (.desktop-only) is CSS-hidden on mobile
viewports — the mobile sidebar tucks the same sub-panel entries
behind a dropdown popover. Assert `toBeAttached()` instead of
`toBeVisible()` so the dev-bundle smoke check works on every
viewport.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- lobby-create-screen: call lobbyData.refresh() after a successful
POST so the new game shows up in the private-games panel
immediately. The shared lobby-data store is otherwise lazy
(ensure-on-first-mount), which rendered a stale list across the
post-create navigation in the e2e suite.
- e2e tests that move between lobby sub-panels now go through
`window.__galaxyNav.go(...)` rather than clicking the sidebar
items. The mobile sidebar tucks the submenu behind a dropdown, so
testid-based clicks fail on the mobile-iphone-13 / pixel-5
viewports — the dev nav surface bypasses that UX (which has its
own coverage in `lobby-tier-gate` / future submenu specs).
- game-shell-map missing-membership test: assert
`lobby-account-name` instead of `lobby-create-button` on
drop-back-to-lobby (the button moved into the paid-only
private-games sub-panel; the identity strip is the constant lobby
chrome).
- inspector-ship-group + ship-group-send synthetic loader specs:
jump straight to the dev-only `synthetic-reports` top-level
screen via the dev nav surface before looking for the file
input (the loader moved off Overview in F8-04b).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Reshape the lobby UI from a single Overview into a two-level sidebar
(games · profile · DEV synthetic-reports) with four games sub-panels
(active-past · recruitment · invitations · private-games). Move the
`create new game` button into the private-games panel, merge the
applications section into recruitment cards as status chips, and add
DEV-only synthetic-report loader as a top-level screen.
Add a paid-tier gate at backend `lobby.game.create`: free callers get
`403 forbidden` before the lobby service is invoked. The UI hides the
private-games sub-panel + create button on free tier (DEV affordances
flag overrides). Update every integration test that creates a game to
use a new `testenv.PromoteToPaid` helper; add a new
`TestLobbyFlow_FreeUserCreateGameForbidden`.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>