hostLost

suspend fun hostLost(at: Instant, reason: FailureReason = FailureReason.WindowExpired)

Emit MembershipEvent.HostLost (terminal event on a joiner's room). After this, broadcast and sendTo become silent no-ops per the contract.

Tagged with this fake's current Room.localFabric, as partition is — so a test can reproduce #1712's headline case (our own radio died, so "the host is gone" is not a claim about the host) by calling setLocalFabric with FabricAvailability.Unavailable first.