Skip to content

docs(adr): record Signal for DMs and MLS for groups (0002) - #690

Open
kosisochukwu1234 wants to merge 1 commit into
codebestia:devfrom
kosisochukwu1234:docs/adr-signal-dms-mls-groups
Open

kosisochukwu1234 wants to merge 1 commit into
codebestia:devfrom
kosisochukwu1234:docs/adr-signal-dms-mls-groups

Conversation

@kosisochukwu1234

Copy link
Copy Markdown

Summary

Adds docs/adr/0002-signal-dms-mls-groups.md recording the architecture decision to use the Signal Protocol (X3DH + Double Ratchet) for direct messages and Messaging Layer Security (MLS, RFC 9420) for groups.

Details

  • Base Branch: Targets dev
  • Follows ADR Template: Structured with Context, Decision, Alternatives Rejected, Consequences, and Status.
  • Trade-off Analysis: Documents per-device fan-out cost in large groups ($O(N)$ vs. $O(1)$), MLS epoch boundaries and lack of historical messages for new joiners, and library audit status / maturity across runtimes.
  • References Existing Material: Cites docs/signal-integration.md and apps/backend/docs/signal-migration.md instead of restating them.
  • Transition Plan: Covers the transition from Phase-1 sealed box (never re-encrypting history, envelope protocol tagging, per-device-pair capability negotiation, send-path downgrade rejection).
  • Status Section: Accurately reflects what is live in production, what is implemented but not fully wired, and what remains planned.

Closes #642

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant