admitClaiming

abstract suspend fun admitClaiming(peer: PeerId, verified: Principal?, claimed: Principal)

Admit peer over a link the host verified as verified (null = an unattested connection) while the peer itself asserts claimed — the adversarial case admit cannot state, because there the suite supplies the one principal and then reads it back.

Route claimed through the channel the fabric gives a joiner to say who it is. Every fabric has one, so there is no honest way to implement this by ignoring claimed: send claimed.value.encodeToByteArray() as the first frame the peer puts on the wire (for a hub that registers a connection on its first frame, that is the registering frame). If the fabric also lets a joiner assert an identity somewhere else — a preamble field, a transport header — set it there too; the suite additionally chooses peer's own id to spell the claim, since the self-asserted peer id is a channel every fabric has.

Must not return until the admission is established, on the same terms as admit. The suite then waits to hear claimed arrive on seam before asserting anything, so a harness that silently dropped the claim wedges rather than passing.