aboutsummaryrefslogtreecommitdiffstats
path: root/docs/desktop-client-v1.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/desktop-client-v1.md')
-rw-r--r--docs/desktop-client-v1.md17
1 files changed, 17 insertions, 0 deletions
diff --git a/docs/desktop-client-v1.md b/docs/desktop-client-v1.md
index c0bbb90..08dd548 100644
--- a/docs/desktop-client-v1.md
+++ b/docs/desktop-client-v1.md
@@ -1091,6 +1091,23 @@ Deletions enabled once native is the recommended client are unchanged from
---
+## 10b. Group settings, and where they live
+
+The group tab that was "Members" is **"Settings"**, and it is where anything about the
+group is administered: invitations, operator pairing, your devices on this node, whether
+members may upload, leaving or deleting the group, and the roster โ€” last, because it is
+the only part with no upper bound.
+
+Two rules came out of building it and both are easy to undo by accident:
+
+- **The tab bar does not wait for the node.** Membership is hub-side. Gating the tab on a
+ live connection makes "leave this group" unreachable exactly when a node is down, which
+ is when someone most wants it. Sections that do need the node say so.
+- **A setting that governs the node is stored on the node and enforced by the node.**
+ `member_upload` is the worked example: signed operator instruction, row in `roster.db`,
+ refusal in `_do_file_upload`. Hiding the Upload button and the chat paperclip is a
+ courtesy to people who are not trying; it is not the control. See draft-v6 ยง2.1b.
+
## 11. Open items, each needing its own review
| # | Item | Why it is not decided here |