identified
A byte-transparent 2-peer Seam over a Connection whose two identities are known. broadcast == sendTo(remoteId). Woven at construction; Torn on conn EOF/error or close. Concurrent sends are serialized through an internal channel + single writer so wire order matches call order.
Thread-safety. This type is correct under a multi-threaded dispatcher — the injected dispatcher is only the scope for the read/write loops (scheduling); it is not a mutual-exclusion mechanism. Teardown is gated by an atomic single-shot flag (LinkSeam.closed) so close and readLoop's finally tear down exactly once regardless of which thread arrives first. broadcast/sendTo read that flag and, since the suspending outbox.send() is an inherent check-then-send TOCTOU against a concurrent teardown that closes the channel, convert a ClosedSendChannelException into the same clean closed-seam IllegalStateException the pre-check produces — a closed seam never leaks a raw channel exception.
Parameters
The scope for the seam's read/write loops. Production callers pass Dispatchers.Default.limitedParallelism(1); test callers pass a TestCoroutineDispatcher derived from the test scheduler so that the seam's read/write loops share the same virtual clock as the test's withTimeout.