Skip to content

MSC4528: M_INCOMPATIBLE_SERVER error code - #4528

Open
erikjohnston wants to merge 1 commit into
mainfrom
erikj/incompatible_server_error_code
Open

MSC4528: M_INCOMPATIBLE_SERVER error code#4528
erikjohnston wants to merge 1 commit into
mainfrom
erikj/incompatible_server_error_code

Conversation

@erikjohnston

@erikjohnston erikjohnston commented Aug 11, 2026

Copy link
Copy Markdown
Member

Specify appropriate error codes for MSC4291 and MSC4311 where it was left as a 5xx.

Rendered

Disclaimer: Claude was used for the rough first draft. This has been subsequently edited a fair bit.

@erikjohnston
erikjohnston force-pushed the erikj/incompatible_server_error_code branch from 04a0539 to fa4e525 Compare August 11, 2026 13:45
Specify appropriate error codes for MSC4291 and MSC4311 where it was
left as a 5xx.
@erikjohnston
erikjohnston force-pushed the erikj/incompatible_server_error_code branch from fa4e525 to 84c3585 Compare August 11, 2026 13:53
@erikjohnston
erikjohnston marked this pull request as ready for review August 11, 2026 13:54
@erikjohnston erikjohnston changed the title MSCxxxx: M_INCOMPATIBLE_SERVER error code MSC4528: M_INCOMPATIBLE_SERVER error code Aug 11, 2026

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Implementation requirements:

  • Server (throwing)
  • Client (backwards compatibility)
  • Client (forwards compatibility)

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure if this really requires an impl?

@turt2live turt2live added proposal A matrix spec change proposal. Process state. A-Client Server Client-Server API kind:maintenance MSC which clarifies/updates existing spec needs-implementation This MSC does not have a qualifying implementation for the SCT to review. The MSC cannot enter FCP. labels Aug 11, 2026
Comment on lines +3 to +12
Following [MSC4291](https://github.com/matrix-org/matrix-spec-proposals/pull/4291) and
[MSC4311](https://github.com/matrix-org/matrix-spec-proposals/pull/4311), the Server-Server API
tells sending servers to convert certain federation errors into 5xx errors over the Client-Server
API. [`PUT /_matrix/federation/v2/send_join/{roomId}/{eventId}`](https://spec.matrix.org/v1.19/server-server-api/#put_matrixfederationv2send_joinroomideventid)
and [`PUT /_matrix/federation/v2/invite/{roomId}/{eventId}`](https://spec.matrix.org/v1.19/server-server-api/#put_matrixfederationv2inviteroomideventid)
both say of their `400` response:

> If `M_MISSING_PARAM` or `M_INVALID_PARAM` is returned and the request is associated
> with a Client-Server API request, the Client-Server API request SHOULD fail
> with a 5xx error rather than being passed through.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This MSC is spawning from trying to implement the spec, see element-hq/synapse#19723 (comment)

Comment thread proposals/4528-incompatible-server-error.md
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-Client Server Client-Server API kind:maintenance MSC which clarifies/updates existing spec needs-implementation This MSC does not have a qualifying implementation for the SCT to review. The MSC cannot enter FCP. proposal A matrix spec change proposal. Process state.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants