XEP-0444 specifies it in the business rules, although its not very strict, basically says you should use the original id but everyone should also support everything else.

XEP-0308 does not overwrite the original message id, the client just replaces the payload of the message.

From XEP-308
> If the same message is to be corrected several times, the id of the original message is used in each case (e.g. If a message of id 1 is corrected by a message of id 2, a subsequent correction should correct 1, not 2).

So all corrections point to the original message.

I would argue the case if the corrections XEP itself always references the original message, all other XEPs should do aswell.

Regards
Philipp


On Mon, Apr 21, 2025, at 16:41, Tedd Sterr wrote:
Additionally, XEP-0444 (Message Reactions), and pretty much anywhere an ID will ever be used to reference another message.

The issue stems from XEP-0308 replacing/overwriting the message ID, and consequently all references already using the previous message ID are left pointing to a non-existent message.

Amongst other things, this provides a way to avoid moderation — send an offensive message, it gets moderated, just LMC the message and it's no longer moderated.

So, while it feels 'wrong' from a purist view, NOT replacing the message ID would be the better option - old and new references will then all point to the same message. Otherwise, presumably, clients (and servers?) will be required to track all past message IDs for each corrected message.