# US-06 — Cook cooperatively with 2–4 players **As a** member of a group, **I want to** see the other cooks move in real time and share one kitchen, **so that** we can divide tasks instead of racing for the same knife. ## Acceptance criteria 1. Every client sees every other cook at their server-authoritative position with smooth motion (interpolated), a name label, and a distinct color. 2. Remote motion at 150 ms RTT looks continuous: no teleporting, ≤ 0.25 tile visible error while moving, and no rubber-banding of the local cook. 3. The local cook responds to input before the server confirms it (prediction) and is corrected gently (≤ 150 ms ease) when the server disagrees. 4. Players physically block each other with a soft push (no standing on tiles already occupied). Carrying players is out of scope; passing an item hand-to-hand happens by both cooks using the same counter/prep tile. 5. A contested pickup/station gives exactly one winner; the loser sees `denied` and can immediately target the next-best option. 6. Occupancy: a station being actively worked shows who is working it; a second player cannot start a parallel job on it. 7. All clients converge on the same score and the same result screen within 1 s of the round end. 8. 4 players in one room keeps the mean server tick ≤ 2 ms. ## E2E suite `tests/e2e/test_us06_coop_shared_kitchen.py` — two contexts cooperatively serve one order and both observe the same score/result; contested-pickup arbitration test; 4-connection integration test server-side. ## Phases `06_realtime_websocket_protocol`, `08_client_prediction_and_touch`, `09_co_op_two_player_e2e`