diff --git a/AGENTS.md b/AGENTS.md index 6305adc..d07cd73 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -28,6 +28,10 @@ When you run into a repeatable problem during testing (e.g. port assignment coll - Rollback tests must fetch Player/Obstacle/Challenge/Vote rows again by ID after `apply_game_state`; it deletes and recreates those rows, so old ORM instances cannot be refreshed. +- The project `.venv` uses Python 3.9. Use `Optional[T]` (or postponed annotations) instead of evaluated `T | None` annotations, which fail during import. + +- Multi-socket TestClient tests must use `with TestClient(app) as client` so sockets share one event loop; separate portals can hang on cross-socket broadcasts. Close sockets explicitly before asserting disconnect messages. Override lifespan when using an isolated test database. + ## Versioning & changelog The app shows its version number and a player-facing changelog in the ☰ menu → About. Both come from `frontend/src/lib/changelog.js` (rendered by `frontend/src/components/AboutModal.svelte`). diff --git a/TODO.md b/TODO.md index c9f27f0..4384c1e 100644 --- a/TODO.md +++ b/TODO.md @@ -1,10 +1,10 @@ ## Features -- [ ] Add a note taking area to store game state between sessions -- [ ] Add an online indicator that displays if a player is connected +- [x] Add an online indicator that displays if a player is connected - [ ] PvP challenges should linger in the UI after completion so that players can see the result -- [ ] Add hat/gun icons next to player names on the player list to indicate if they're the captain and/or have a gat +- [x] Add hat/gun icons next to player names on the player list to indicate if they're the captain and/or have a gat - [ ] Replace red/green borders of successful/failed cards with checks and crosses in the upper corner of the card. +- [ ] Add a note taking area to store game state between sessions ## Polish diff --git a/frontend/src/components/CrewSidebar.svelte b/frontend/src/components/CrewSidebar.svelte index 5618dd6..0494f32 100644 --- a/frontend/src/components/CrewSidebar.svelte +++ b/frontend/src/components/CrewSidebar.svelte @@ -1,4 +1,5 @@ + + + {online ? '●' : '○'} + {#if player.id === state.game.captain_player_id}🎩{/if} + {#if player.completed_personal_1}🔫{/if} + + + diff --git a/frontend/src/components/scene/CrewColumn.svelte b/frontend/src/components/scene/CrewColumn.svelte index 23f0a73..7925122 100644 --- a/frontend/src/components/scene/CrewColumn.svelte +++ b/frontend/src/components/scene/CrewColumn.svelte @@ -1,4 +1,5 @@