Encrypted sends: hoist m.relates_to into the cleartext content (aggregations dead in E2EE rooms) #53
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Found by the #47 demo e2e: SessionCrypto.encryptOutgoing encrypts the full content and never copies m.relates_to to the m.room.encrypted cleartext, but relation-fact extraction (aggregation/Relations.kt, D26) reads it from the wire content — per the Matrix spec the sender copies m.relates_to into the unencrypted portion. Result: reactions/edits sent by katrix into an E2EE room never form relation facts anywhere (own client, remote katrix, and spec-following peers see no relation). Fix at the encryptOutgoing choke point + §10.4.2 MUST line + test (§10.6.4, CR-6).