Function: groupMlsNeverFounded()¶
Defined in: rine-core/dist/src/crypto/group-predicates.d.ts:125
Was this group created to run MLS, and does it still have no ratchet tree?
The fourth case, and the one the other three collapse into "sender key". A
closed group whose founding never landed carries a null latch and — once the
server has cleared the init window it self-heals after
MLS_PENDING_SELF_CLEAR_SECONDS — a false mls_pending, which is field for
field what an open group looks like. Nothing in the group's MLS columns
survives to say a founding was ever attempted, so the only durable record is
the intent pair set at create time, and this reads it.
🔴 It says never founded, not "founding failed". A group whose init died and one whose client never ran an init are the same four values on the wire, so no client can tell them apart and no sentence built on this may claim to.
The group is not broken: the server does not freeze it
(is_mls_frozen is false), so sends take the sender-key branch and are
accepted. That is the point — a group created to run MLS is carrying
sender-key traffic, and nothing said so.
mls_enabled is read here, and only here, because it is the one field that
can say a closed group was deliberately NOT given MLS — legal on the wire and
settable while the group is unlatched. It is sensed as === true: the server
always sends it, so absence means a projection or a hand-built row rather
than a real answer, and an absent field must never be what manufactures a
refusal.
Parameters¶
| Parameter | Type |
|---|---|
g |
GroupRegimeFields |
Returns¶
boolean