Skip to main content

Module status

Module status 

Source
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 connection ended. 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 it error with error when it could not connect or lost the connection. Otherwise it is disconnected if settle; 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 connection started (an SSH pane’s ssh, a durable pane’s attach): one more pane has it open. logged_in says it is a live login already (a durable pane’s helper answered, or nothing better can be known); otherwise it is only connecting, its ssh perhaps 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. error is shown in the pane’s overlay; it is cleared on any non-error state.
update 🔒