FIX: Add plugin event to topic list user lookup (PR #14116)

This can be used to change the list of topic posters. For example, discourse-solved can use this to move the user who posted the solution after the original poster.


I’ve always found DiscourseEvent to be a bit of a hack because it doesn’t allow us to clearly define what the extension is supposed to do. In this case, user_ids is being mutated by the plugin which may be surprising when debugging an problem. Instead of a trigger, can we do something like what we do for TopicView where we define a clear API for plugins to follow.

That makes sense. I updated the PR with the new plugin API.

Thank you for the change :+1: PR looks good. Minor comment, can we add a test here for the API?