I did a lot of weird, don’t-do-this-at-home moderation to make this happen, therefore I don’t feel right reporting it as a bug, but I figured I should at least try document my actions and let anyone interested have a look at the outcome:
I then realised that these 3 replies could have been merged into an existing thread instead,
so I moved them again, this time all 3 posts comprising their own topic, into an existing one.
Lastly, it turned out a post had been made to the original topic while I was exercising my volatile moderation rights. The 3-replies series was actually 4-replies, so I moved that one as well.
Here’s the end result:
Doesn’t look that weird at first but:
This is the first of the 3 (eventually 4) posts that were moved. If you click to unfold its reply, it comes up empty.
The second one is pointing to the 1st topic, which is wrong because it was originally a reply to the post directly before it.
The third one is OK, followed by my reply.
The fourth is replying to something that doesn’t exist.
The reply to @opattison in that topic was originally made when both posts occupied the same topic.
I can’t help but think that the current design is a bit too fragile. One handy thing about bbPress is that every single post has a unique ID, so no matter how many times you move it in and out of parent topics, you’d still be able to pin-point that specific post.
You can’t do that in Discourse because post#15 inside topic#108 might not always be post#15 inside topic#108. It might become post#2 inside topic #712 tomorrow, and suddenly all the neat quote links and reply chains get all messed up.
If post#15 inside topic#108 was actually identified as post#84727, any connections to it wouldn’t get lost so easily.