Expand description
Each connection’s status, published as connchange events.
The frontend already has the consumer, from the Wave code AgentMux grew out
of: conn-status.ts loads every status with GetAllConnStatus and then
follows connchange events, and ConnStatusOverlay shows a pane’s
connection state with Reconnect and Disconnect actions. This is the producer
it never had. local is never listed: it is always connected.
Modules§
- state
- The status words the frontend’s overlay understands.
Functions§
- all
- Every known connection’s status, for
GetAllConnStatus. - apply 🔒
- get
connection’s status, if it has one.- pane_
ended - A pane’s process on
connectionended. A status is shared by every pane on the connection, and the overlay covers each of them, so while another pane still has it open nothing changes. The last one leaves iterrorwitherrorwhen it could not connect or lost the connection. Otherwise it isdisconnectedifsettle; else it is left for the shared connection’s watcher (remote::link), since that connection can outlive its last pane. - pane_
started - A pane’s process on
connectionstarted (an SSH pane’sssh, a durable pane’s attach): one more pane has it open.logged_insays it is a live login already (a durable pane’s helper answered, or nothing better can be known); otherwise it is only connecting, itssshperhaps waiting at a password prompt, until the shared connection answers (remote::link). A connection already up stays up. - registry 🔒
- set
- Record a connection’s new state and tell the frontend.
erroris shown in the pane’s overlay; it is cleared on any non-error state. - update 🔒