diff --git a/plan/lobby.md b/plan/lobby.md index c27185a..969f0c1 100644 --- a/plan/lobby.md +++ b/plan/lobby.md @@ -37,10 +37,14 @@ mechanism for getting N humans seated and launched. Asking them first is and a second "are we going" state for the same guarantee, so it is deferred rather than skipped — worth revisiting if a host ever deploys while somebody is mid-sentence. -- [ ] **A lock is forgotten by a restart.** It lives beside chat and - readiness rather than on a row, because a locked slot is precisely the - one with no row. The same bet those two make, stated rather than - hidden. +- [ ] **The API still has a lock nothing sets.** `set_lock`, the `locked` + snapshot and the deploy check are all still there; the web client's + Hold control is not (see the seat control below), so a lock can only + arrive from another client. Either the API drops it or something asks + for it again — matchmaking's queue is the likelier second customer. + Until then it is forgotten by a restart, which it always was: it lives + beside chat and readiness rather than on a row, because a locked slot + is precisely the one with no row. - [ ] **The card's placement can cover the panel it was opened from.** It prefers to sit above its trigger, and a chat line near the bottom of the screen puts it over the scrollback. Correct for a tooltip and @@ -98,6 +102,14 @@ indefinitely because a lobby is a small room the people in it opened. ## Done +- [x] **An open force asks one question.** Who pilots it: You, Invite, Fill, + AI, as one split plate where three loose buttons, a Hold and an + always-open handle field used to sit on every card. The field is what + Invite opens. "Fill" is matchmaking and does not exist, so it is + disabled under the site's own coming-soon stamp rather than left off — + [invitations](invitations.md) owns building it. Hold went: reserving a + force for somebody who may never arrive is the reverse of what an open + force is for, and inviting them is the answer that was wanted. - [x] **A Force card's team and every unit's crew are real.** Both were stubbed "n/a" because the catalog was a retyped unit-name list and carried neither. It parses the `.mms` files now, so a slot has a `team`