diff options
Diffstat (limited to 'packages/meshbay-node/src/meshbay_node/ops/groups.py')
| -rw-r--r-- | packages/meshbay-node/src/meshbay_node/ops/groups.py | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/packages/meshbay-node/src/meshbay_node/ops/groups.py b/packages/meshbay-node/src/meshbay_node/ops/groups.py index 905aa44..1d8003c 100644 --- a/packages/meshbay-node/src/meshbay_node/ops/groups.py +++ b/packages/meshbay-node/src/meshbay_node/ops/groups.py @@ -122,7 +122,10 @@ async def list_groups(state: dict) -> dict: "peers": sum(1 for p in peers.values() if p.get("group_id") == gid), }) roster = state.get("roster") - has_operator = False + # None, not False, until the roster is published (after the hub login): a + # node still waiting for its account has not lost its operator, and saying + # "no operator paired" sent the reader after a pairing that was intact. + has_operator = None if roster: members = await roster.list_members() has_operator = any(m["role"] == "operator" and m["status"] == "active" |