Here is the situation: if someone makes a post that needs to go into the validation queue, and someone else posts in the same topic after this without needing validation, when the "validated" post appears in the topic, everyone that might have visited the topic after the next topic was published will NOT see this post as new, but they would see it as already read.

Is this intended or not? Is it correct or not? In my view, it is not quite right (but not quite wrong either).

A relatively simple way to "fix" this was that the validation process would update the posting time to that of validation. But that would break some other things, like the fact that the software "assumes" that the higher post_ids are always published later than lower post_ids (this would not be the case above).

I think that it would be beneficial, for this and other situations, to change the way "first_post_id" and "last_post_id" are calculated (for topics and forums), and not rely on the fact that lower post_ids are published before higher post_ids, but use the actual post_time for such calculations. From a performance point of view, there should be not much of a difference (if any), as indexes exist already for both columns.