element-hq / element-hq/element-meta

Upgrading a room can orphan it from its space

Open
#460 4 comments 0 reactions 0 assignees View on GitHub
A-Room-Upgrades A-Spaces O-Uncommon S-Major T-Defect X-Spec-Changes
Dominant language
No language data
Stars
112
Forks
25
Avg merge
6h 6m
Merged PRs (30d)
4

Description

### Steps to reproduce

1. As User A, create a space
2. Add Room A to the space
3. Invite User B to the space and Room A
4. Make User B an admin in Room A, but not the space
5. As User B, upgrade Room A to Room B
6. Invite User C to the space and Room B

For context, while this is an uncommon scenario, it's already happened in the Element Corp. space.

### Outcome

#### What did you expect?

User C should see Room B listed as a child of the space.

#### What happened instead?

To User C, Room B appears as an orphaned room, since the space actually only lists Room A as a child, and User C has no way to know about the upgrade.

Well, that's not entirely true. User C could find out about the upgrade by looking at the room creation event. But if the room were upgraded twice rather than once, this would still not be enough information to connect the upgraded room back to Room A.

I'm not sure how this could be resolved. Perhaps spec changes?

### Operating system

NixOS unstable

### Browser information

Firefox 97.0.1

### URL for webapp

develop.element.io

### Application version

Element version: 95de708f4ee7-react-1a6134e441ba-js-53aa34fba57c Olm version: 3.2.8

### Homeserver

Synapse 1.52.0

### Will you send logs?

No

Contributor guide

No contributing guide indexed for this repository

Research direction

Review the room-upgrade and space-child relationship in the relevant Matrix/Element specification, using the reported sequence as the starting case. Compare it with the room creation event and the twice-upgraded case; done means a newly invited user can identify the upgraded room as a child of the space.

Written by the indexing model from the issue text.

Assessment

Domain
backend-api-design, distributed-systems
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.