matrix-org / matrix-org/matrix-spec

There is no documentation on how to treat media events with both url and file set

Open
#1,007 0 comments 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.2/client-server-api/#sending-encrypted-attachments

**Issue**

There is no documentation on what to do when an event that includes an attachment such as `m.audio` has both a `url` field ("Required if the file is unencrypted") and a `file` field ("Required if the file is encrypted"). This could lead to different clients displaying the same event differently¹.

The matrix SDKs preference for this has changed previously, see

* https://github.com/matrix-org/matrix-rust-sdk/issues/406

¹ usually some failing to display the event in cases such as the linked issue, but it's not hard to imagine a situation where different clients successfully display different media for the same event

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

Start with the encrypted attachments section of the Matrix Client-Server API specification and review the linked matrix-rust-sdk issue for prior context. Determine and document the required behavior when an attachment event contains both url and file, including how clients should interpret the event, then verify the specification is explicit about the outcome.

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.