Federated invite creates ghost room with same room_id but wrong room version; invite must be manually rejected before re-invite works #1331
Labels
No labels
Blocked
Bug
Cherry-picking
Database
Dependencies
Dependencies/Renovate
Difficulty
Easy
Difficulty
Hard
Difficulty
Medium
Documentation
Enhancement
Good first issue
Help wanted
Inherited
Matrix/Administration
Matrix/Appservices
Matrix/Auth
Matrix/Client
Matrix/Core
Matrix/Federation
Matrix/Hydra
Matrix/MSC
Matrix/Media
Meta
Meta/CI
Meta/Packaging
Priority
Blocking
Priority
High
Priority
Low
Security
Status
Confirmed
Status
Duplicate
Status
Invalid
Status
Needs Investigation
Support
To-Merge
Wont fix
old/ci/cd
old/rust
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
continuwuation/continuwuity#1331
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?
Continuwuity version:
Environment:
Problem description:
When inviting users across federated homeservers, the first invited user
can usually join the room successfully. However, when inviting an additional
user, the invited client consistently encounters a broken room state.
On the invited user's client (Element), the following happens:
Important observations:
Server-side log on the invited user's homeserver:
WARN event_auth: sender cannot send events without being joined to the room
membership_state="invite"
This indicates that an event requiring "join" permission is being processed
while the membership state is still "invite", leading to authorization failure.
Reproduction steps:
Expected behavior:
Invited users should receive a complete and consistent room state
and be able to join the room without encountering a ghost room,
authorization failure, or forced invite rejection.
Notes:
incorrectly rejects the invite
Is this different to #1249? Furthermore does this happen on clients other than element (I think the "ghost" room is a UI bug resulting from undefined behaviour caused by the stateless invites, I think other clients handle it better)
Fixed by #1346