Files
osmaczko 2a1ed26282 feat: name the group state each member holds
A GroupV2 group can divide into branches that never converge again, and no member can tell from its own view that it happened: both halves keep a roster and an epoch number, each simply stops being able to read what the other sends, and a fresh split leaves both carrying the same members. A member that has merely fallen behind produces the same endless run of undecryptable frames, from a different cause needing a different fix, and nothing separates the two.

MLS derives a value for exactly this comparison, meant to be compared out of band: at one epoch number, different epoch authenticators are a fork and identical ones are real convergence.

Write it once per epoch a conversation reaches, so a run leaves behind the one thing that partitions its members.
2026-08-24 18:23:34 +02:00
..
2026-03-24 18:21:00 -07:00

Core

Crates in this directory will one day be separated into a separate shared repository.

They could be moved now, but it's desirable to have a monorepo setup at this time.

These crates MUST not depend on any code outside of this folder.