aboutsummaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
authorChristophe Besson <cbesson@gmail.com>2026-09-10 23:56:59 +0200
committerChristophe Besson <cbesson@gmail.com>2026-09-10 23:56:59 +0200
commitb045ba0010d69360b6a0265eb7c73a07900fe328 (patch)
tree96f3f96a42a7c22d89fbcedb363e5e80976003d4 /docs
parent32a86417d0edc3bf5c4cf859243c9e34b29bf1ef (diff)
downloadmeshbay-b045ba0010d69360b6a0265eb7c73a07900fe328.tar.gz
docs(guide): mark USERGUIDE.md deprecated
It is too far out of date to be worth repairing. It describes identity keys derived from a username and password, one `shared_dir` per group with an `uploads/` quarantine, ChaCha20 as the content cipher, a hub that stores users' public keys and the wrapped group keys, and a member wrapping that key for another member — which is finding H3, in the section that explains why the hub cannot read your files. The banner lists each of those against what is actually true, so that no section below it is mistaken for current, and points at MESHBAY_DESIGN.md and MESHBAY_NODE_PROTOCOL.md instead. It also records what the document predates entirely: encrypted chat, the sealed index and upload path, transfer leases, device linking, the application framework. Repairing it section by section is refused deliberately. Enough of it is wrong that a reader cannot tell the sound parts from the stale ones, which is worse than having no guide, and fixing one section leaves exactly that problem in place. The previous commit — which translated two French passages and corrected the errors immediately around them — is dropped for the same reason: it made a small part of a misleading document accurate, which makes the whole harder to distrust, not easier. There is no replacement user guide today. That gap is real and is better stated than papered over. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YVoHVCcfBqud6ZjG4db3y7
Diffstat (limited to 'docs')
-rw-r--r--docs/MESHBAY_DESIGN.md2
-rw-r--r--docs/USERGUIDE.md29
2 files changed, 30 insertions, 1 deletions
diff --git a/docs/MESHBAY_DESIGN.md b/docs/MESHBAY_DESIGN.md
index 67f0bff..d34351b 100644
--- a/docs/MESHBAY_DESIGN.md
+++ b/docs/MESHBAY_DESIGN.md
@@ -33,7 +33,7 @@
| `MESHBAY_NODE_PROTOCOL.md` | the MNP wire format, message by message |
| `transfers-v1.md` | the transfer system's failure-mode analysis, kept because a synthesis cannot carry "every way a slot can be lost" |
| `playlists.md` | the playlist design in full — decided, not built (§9.10) |
-| `USERGUIDE.md` | how to use and operate a deployment |
+| ~~`USERGUIDE.md`~~ | **deprecated** — a large majority of it predates per-node identity, named roots and the sealed wire, and is wrong. Kept for provenance; its own banner lists what is false |
| `PACKAGING-GUIDE.md`, `QUICKSTART.md`, `HTTPS.md`, `MAIL-SERVER.md`, `windows-build.md` | installation and server operations |
| `CLAUDE.md` | project conventions and the engineering lessons that govern how changes are made |
| `old-draft.md` | historical archive of drafts v1–v4. Nothing there is authoritative |
diff --git a/docs/USERGUIDE.md b/docs/USERGUIDE.md
index 3c0e30c..c9febff 100644
--- a/docs/USERGUIDE.md
+++ b/docs/USERGUIDE.md
@@ -1,5 +1,34 @@
# MeshBay User Guide
+> # ⚠️ DEPRECATED — do not rely on this document
+>
+> **A large majority of it is wrong.** It describes the system as it stood before
+> several of the changes that define it now, and it has not been maintained since.
+> It is kept for provenance only. **Read `MESHBAY_DESIGN.md` for the architecture
+> and the security model, and `MESHBAY_NODE_PROTOCOL.md` for the wire format.**
+>
+> What is known to be false here, so that nothing below is mistaken for current:
+>
+> | Section | What it claims | What is true |
+> |---|---|---|
+> | §2 Account Management | Identity keys are derived from username + password, or generated in the browser and stored on the hub as an encrypted bundle | Identity keys are **per node**, created at first contact with each node and left there. Registration generates nothing, and the hub stores no keypair bundle and no user public key |
+> | §4 Setting up a Node, §5 Sharing Files | A group has one `shared_dir`, and everything members send lands in `shared_dir/uploads/` | A group has **several named roots**, each read-only or read-write. The `uploads/` quarantine was removed on 2026-09-06 |
+> | §8 Security Model — ciphers | ChaCha20-Poly1305 is the principal cipher, AES-GCM an optional browser variant | **AES-256-GCM encrypts everything.** No production path constructs a ChaCha20 cipher |
+> | §8 Security Model — what the hub stores | The hub holds users' identity public keys and the wrapped group keys | It holds neither. Removing the key directory is what closed finding **H3**; the bundles moved to the node |
+> | §8 GEK wrapping | A member wraps the group key for another member, and the hub stores the bundle | **The node wraps it**, on every connection, for a key the joiner proved possession of. The described flow *is* finding H3 |
+> | §10 Troubleshooting | `GET /v1/groups/{id}/gek` returns 404 | That endpoint no longer exists |
+>
+> And it predates, so never mentions: encrypted chat, the sealed index and upload
+> path, transfer leases, device linking, and the group-application framework.
+>
+> Two passages are also still in French, and one code fence is unbalanced.
+>
+> **Do not repair this file section by section.** Enough of it is wrong that a
+> reader cannot tell the sound parts from the stale ones, which is worse than
+> having no guide — and a patch that fixes one section leaves that problem intact.
+> A user guide, when there is one again, starts from `MESHBAY_DESIGN.md`.
+
+
This guide covers MeshBay in depth — architecture, configuration, security, and the full API. Read the [Quickstart](QUICKSTART.md) first if you have not set up a node yet.
---