Rework getStateSnapshot() in lib/game/state.ts and GET /api/state: own planes/cash/reputation, all open packages with carrier name (join via planes.owner_id), other players' planes if visibility is enabled (decision point from #101). Update StateSnapshot types and the left/right panes to render owner info.
NOTE (2026-09-23): state now reaches clients over BOTH GET /api/state and SSE push (app/api/events/route.ts; broadcastState() after each tick since v0.57.0) - keep both in sync, the sseFrame() projection sits next to getStateSnapshot(). Open packages are already filtered to pool airports only (v0.65.0 per-airport pools).
Part of the #101 multiplayer plan.
Rework getStateSnapshot() in lib/game/state.ts and GET /api/state: own planes/cash/reputation, all open packages with carrier name (join via planes.owner_id), other players' planes if visibility is enabled (decision point from #101). Update StateSnapshot types and the left/right panes to render owner info.
NOTE (2026-09-23): state now reaches clients over BOTH GET /api/state and SSE push (app/api/events/route.ts; broadcastState() after each tick since v0.57.0) - keep both in sync, the sseFrame() projection sits next to getStateSnapshot(). Open packages are already filtered to pool airports only (v0.65.0 per-airport pools).
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Part of the #101 multiplayer plan.
Rework getStateSnapshot() in lib/game/state.ts and GET /api/state: own planes/cash/reputation, all open packages with carrier name (join via planes.owner_id), other players' planes if visibility is enabled (decision point from #101). Update StateSnapshot types and the left/right panes to render owner info.
NOTE (2026-09-23): state now reaches clients over BOTH GET /api/state and SSE push (app/api/events/route.ts; broadcastState() after each tick since v0.57.0) - keep both in sync, the sseFrame() projection sits next to getStateSnapshot(). Open packages are already filtered to pool airports only (v0.65.0 per-airport pools).