diff options
| author | Christophe Besson <cbesson@gmail.com> | 2026-09-10 17:30:22 +0200 |
|---|---|---|
| committer | Christophe Besson <cbesson@gmail.com> | 2026-09-10 17:30:22 +0200 |
| commit | 6cf21a019963468cb853e5c763ef0097115efa46 (patch) | |
| tree | ac0fd6261252b744ffdf15f0b100af7fd252d221 /packages/meshbay-node/src/meshbay_node/chat/__init__.py | |
| parent | efc93c187dba9027292b51ff0e9caa29349c953e (diff) | |
| download | meshbay-6cf21a019963468cb853e5c763ef0097115efa46.tar.gz | |
refactor(common): delete the sender-key implementation nothing uses
`senderkeys.py` and its 13 tests implemented Signal-style sender keys, and
production has never called them: chat is a key per group, per epoch, per
device, derived by name. The reasoning that ruled the ratchet out stays where it
belongs — in `chatbox.py`, at the top of the module that replaced it — because
the argument is the useful part, and it now stands on its own instead of
pointing at a file to compare against.
Kept code that nothing calls is worse than absent code: it reads as an
alternative somebody may reach for, and it has to be maintained past every
refactor to stay compiling, which is maintenance spent on a decision already
made.
The three comments naming `GroupSenderKeyStore` are rewritten to say the thing
they were illustrating.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AsoWC3GmhNdwVFomW3QjH3
Diffstat (limited to 'packages/meshbay-node/src/meshbay_node/chat/__init__.py')
| -rw-r--r-- | packages/meshbay-node/src/meshbay_node/chat/__init__.py | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/packages/meshbay-node/src/meshbay_node/chat/__init__.py b/packages/meshbay-node/src/meshbay_node/chat/__init__.py index cb2c868..400cb1a 100644 --- a/packages/meshbay-node/src/meshbay_node/chat/__init__.py +++ b/packages/meshbay-node/src/meshbay_node/chat/__init__.py @@ -1,10 +1,8 @@ """MeshBay Node — chat storage and relay. -Encryption is the client's: the node holds an epoch key it delivers to members -and never a plaintext message once a group has the switch on. See -`docs/chat-sender-keys.md`. It is not the Sender Keys ratchet this module's -docstring used to name — `senderkeys.py` is unused by production and is kept for -a possible future 1:1 DM, alongside `ratchet.py`. +Encryption is the client's: the node holds an epoch key it delivers to members, +and never a plaintext message. Not a ratchet — a key per group, per epoch, per +device, for the reasons `meshbay_common/chatbox.py` sets out. """ from .store import ( FORMAT_PLAIN, |