pub struct OrgJoinResult {
pub org_id: String,
pub restart_required: bool,
}Expand description
Result of Request::OrgJoin — the pinned org id echoed back (surface-clean; the fingerprint is
computed porcelain-side from the invite’s org_root_pk). Additive-only.
Fields§
§org_id: String§restart_required: booltrue when the org root was pinned but this node’s ROSTER TRANSPORT is not running, so the
join is only half in effect until the daemon restarts (#93). api_minor >= 46.
Roster mode is decided at BOOT: it fixes the ALPN set bound on the endpoint and whether
gossip, presence and app-blobs are constructed at all. The roster GATE hot-swaps live. So a
node that booted in pairing mode and then joins an org reaches a state where MCP sessions to
org members work as soon as a roster arrives, while status.presence stays permanently
empty and every blob verb hard-closes with blobs not enabled — succeeding partially, with
no error anywhere, which a caller previously had no way to detect.
What to do with it: if true, tell the user the join succeeded and the node must
restart before presence and file sharing work. Do not treat it as a failure — nothing was
left half-written; the pin is durable and the restart is sufficient.
false when the transport is already composed (the node booted with an org root pinned), or
on a re-join of an org this node is already in.
Same shape as SetRelaysResult::restart_required (#53), for the same reason. Additive:
absent from an older daemon’s payload and reads as false — which was that daemon’s
implicit, and wrong, answer.
Trait Implementations§
Source§impl Clone for OrgJoinResult
impl Clone for OrgJoinResult
Source§fn clone(&self) -> OrgJoinResult
fn clone(&self) -> OrgJoinResult
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more