matrix-org / matrix-org/matrix-spec

The order of events in v2 sync `state` blocks is unspecified

Open
#1,497 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

clarification
Dominant language
HTML
Stars
330
Forks
150
Avg merge
2h 21m
Merged PRs (30d)
3

Description

**Link to problem area**: https://spec.matrix.org/v1.6/client-server-api/#get_matrixclientv3sync, Response -> Joined Rooms -> `state`

**Issue**
The order of events in v2 sync `state` blocks is unspecified. While this makes no difference in determining the state before the first event in a timeline, users will likely expect to see any state changes from the block expressed in a sensible order.

I suggest that the spec recommen (mandate?) that the `state` block events are ordered by the time they were received by the homeserver.

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

Read the Matrix client-server API section linked in the issue, under GET /_matrix/client/v3/sync → Joined Rooms → state, and review how v2 sync state events are described. Determine the intended ordering guidance and update the specification so the behavior is explicit; done means the relevant section clearly states the ordering rule.

Written by the indexing model from the issue text.

Assessment

Domain
documentation
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.