matrix-org / matrix-org/matrix-rust-sdk

redacting a state event in a space trigger bugs in sync

Open
#6,336 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Rust
Stars
2.3k
Forks
500
Avg merge
1d 16h
Merged PRs (30d)
106

Description

Original report by @ll-SKY-ll in the EXI repo: https://github.com/element-hq/element-x-ios/issues/5294

### Steps to reproduce

- Create a new space
- send a `m.space.child` state event with `[2026-03-21 23:28:03] Fetching current space children from API...` as the state key (empty content)
- send a redaction for the state event
- element x goes into a constant loop between sync and "server unavailable/offline"

### Outcome

#### What did you expect?
nothing

#### What happened instead?
app bugging out

### Your phone model

iPhone 16 Pro Max

### Operating system version

iOS 26.3.1

### Application version

26.03.3

### Homeserver

codestorm.net

### Will you send logs?

No

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the sync loop using the reported m.space.child state event, empty content, and subsequent redaction. Trace the SDK's sync and redaction handling for that event, then add a regression test showing that the client remains synchronized and does not enter the server-unavailable loop.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
backend, distributed-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.