Inject counters used by Room.handleMessage to bump metric values.
The manager forwards them to every newly-loaded room.
Snapshot of (roomId, peerCount) for diagnostics / tests.
Across every loaded room; see principal-expiry.ts. Timer: server.ts.
Optionalnow: numberUnload any room with zero peers that has been idle longer than
idleUnloadMs. The persistence layer holds the durable copy, so
unloading is non-destructive — the room is rehydrated on next
connect.
The pending Room for a loaded room id, or undefined when not loaded. Unlike
getOrCreatethis never creates: admin actions (kick) target only rooms that actually exist.