Discourse email messages are incorrectly threaded

No, I see that icon.

Ah. Whereas I, as an email nonforum person expected that indicator on every reply because I’m not thinking about this as an instant messaging layout (maybe). So my expectations are at variance with what you’ve chosen to do.

It isn’t required. Think of it as “quality of service”. You explicitly go:

@message.header['In-Reply-To'] = referenced_post_message_ids[0] || topic_canonical_reference_id

and you could just drop the [0] there. Clients could then use just one message-id or do something very funky at their whim and it would all be valid.

“Should” is a strong word. You could include all the message-ids if they’re easily to hand. You’re not obliged, and the code is valid as is.

Aye. I know I like it myself so that I know my post made it to the list/forum - email being very queue based and some (cough, large Australian telco, cough) ISP mail handlers being very… unreliable, slow, etc etc. Occasionally I have seen other people want this (in lists, but that’s the mode we’re effectively talking about here). The default for such an option should probably be false.

As a nerd, I like being at least able to get an unfiltered feed so that I can make my own policy decisions.

Given that the Message-ID is effectively opaque/set-once I don’t view that as a problem unless there’s scope for reissuing the same message-id - if all your counters are strictly monotonic I would not expect that to happen. I just found it very tedious to match up post.id eg 98 to topic/post eg 59/1. It would have been handy to have something like category.id/topic.id/post-in-topic.id there instead of the 98.

That would also be sufficient. This is just convenience on the debugging headers side.

Cheers,
Cameron

4 Likes