Package-level declarations

Types

Link copied to clipboard

A live source of NetworkReachability readings for the WebSocket fabric.

Link copied to clipboard
class KtorClientLoom(httpClient: HttpClient, dispatcher: CoroutineDispatcher = Dispatchers.Default, val selfPeerId: PeerId = PeerId(Uuid.random().toString()), weft: Weft<WebSocketDialContext> = { WebSocketDialContext() }, connectivity: ConnectivityObserver = UnobservedConnectivity) : Loom

Client-side Loom backed by Ktor WebSockets.

Link copied to clipboard
class KtorMeshClientLoom(httpClient: HttpClient, dispatcher: CoroutineDispatcher = Dispatchers.Default, val selfPeerId: PeerId = PeerId(Uuid.random().toString()), random: Random = Random.Default, policy: DeliveryPolicy = DeliveryPolicy.Reliable) : Loom

Client-side Loom that joins a hub-spoke mesh — the spoke counterpart of a us.tractat.kuilt.core.MuxServerLoom hub.

Link copied to clipboard

What this device's operating system says about its ability to reach a network right now — the live environmental signal that takes a WebSocket us.tractat.kuilt.core.Seam's us.tractat.kuilt.core.Seam.capability off the FabricAvailability.Unknown floor (#1725).

Link copied to clipboard

The no-observer ConnectivityObserver: publishes null forever, so a seam built on it reports the roleless-availability FabricAvailability.Unknown floor and never a fabricated verdict.

Link copied to clipboard
data class WebSocketAdvertisement(val url: String, val serverPeerId: PeerId, val sessionName: String, val roomKey: String? = null) : Tag

Tag for WebSocket transports.

Link copied to clipboard
class WebSocketConnection(session: DefaultWebSocketSession) : Connection

Adapts any Ktor DefaultWebSocketSession into a kuilt Connection — byte-transparent binary framing, single-collection incoming, idempotent close.

Link copied to clipboard
data class WebSocketDialContext(val queryParams: Map<String, String> = emptyMap(), val headers: Map<String, String> = emptyMap())

Per-dial request decoration for KtorClientLoom, supplied fresh on every attempt by a us.tractat.kuilt.core.Weft. Named for what it carries generically, not for the one use case (auth) that motivated it — queryParams/headers are equally at home carrying a trace id or a client-version header as a ticket.