End user pre-approval queue experience can be much improved


(Sam Saffron) #1

At the moment the pre-approval queue feature is pretty user hostile.

If you submit a topic you see:

How can you tell what topics you have in the queue? There is nothing in activity.

Allowing edit is possibly a spam vector if implemented incorrectly (cause people could edit it JUST as you are approving a previous version) however if we were careful you could very cleanly allow safe edits. Which enormously improves the end user experience.

The situation for posting in a topic is even worse.

You get the same dialog.

However on the actual topic you see no trace of your pending post.

I can not tell it exists in my profile, I can not tell it is out there for approval on the topic. I can not edit it.

As an end user, when I experienced this whole thing at https://discuss.reactjs.org/ I felt absolutely terrible. It is like you are driving completely blind.

@xrav3nz as you are improving the moderation queue I really want you to keep this in mind, making a user hostile feature even more easy for moderators may not be the correct order of operation here. We got to think about the users.


Moderating content
(Erlend Sogge Heggen) #2

Same problem with Akismet: Akismet has temporarily hidden your post, but which one?


(Sam Saffron) #3

Akismet and moderation queue really need to be unified, having 2 systems now that have radically different features is really bad. Akismet is now missing all the fancy edit stuff @xrav3nz just added.


#4

Thanks for pointing this out! As I was testing the approval workflow for my last PR, I did feel awkward about the end-user experience. Chose to ignore that at the moment because that wasn’t the area of focus. Now is probably a good time to come back to this!


A few potential improvements off the top of my head:

  • User Activity Page:
    • include pending posts into all/topics/replies, with indication that they’re awaiting approval
    • a separate section dedicated to pending posts; only visible if the user has pending posts
  • “Post Needs Approval” Dialog
    • link to the “pending posts” section on User Activity Page
    • “3 staff who are online have been notified”? - This can also be a bad idea
  • Topic list / post stream
    • could display the pending topic/reply with clear indication that it’s invisible and awaiting approval
    • the pending posts’ ordering with respect to other posts is important
  • Approval queue edit:
  • Improved notification upon approval
    • “your post have been approved, here’s the link to it”
    • maybe a generated message from the staff who approved the post; implement with care as we do not want to spam the user
    • or something close to what we have right now:
      image

The above list is actually missing how to treat rejected post:

  • Do they continue to show up in pending posts?
  • Should we notify the user? If so, how?

Will try to compile a better and more detailed list after giving it some more thoughts.


I actually don’t know anything about the behavior of the posts affected by Akismet and its queue; will get myself familiar with it.


(Jeff Atwood) #5

Problem is, that is a plugin vs. core. So that implies we move Akismet to core.


(Sam Saffron) #6

No need to do that, the problem was the we built akismet prior to building the approval queue.

If we had to do it from scratch akismet would simply extend the approval queue UI and use it via the plugin instead of introducing its own ui.


#7

A few proposed new features that aims to improve the approval queue experience:


Notification upon approval

Currently, the user has no insight into the status of their pending post; they will not even know when their post is approved!

notification popup menu

Similarly, when a post is rejected, a system generated PM could be sent with an optional reject reason.


"Pending" section on user activity page

  • This section is only visible to the user him/herself.
  • This section is only visible if the user had posts pending approval
  • Posts awaiting approval can be deleted, but not edited.

Record full edit revisions on queued posts

This does not improve the user experience directly. However, what happens when the user finds out his/her post had been magically edited?

I actually have a PR ready for this, and it can benefit from some serious review :wink:


"Post needs approval" Modal

Obviously, this could link to the “Pending” section mentioned above:

Additionally, what about a system generated PM similar to the one we have for Akismet? This is to empathize with the user, and it is only sent the first time that a user submitted a post pending approval.


Show pending reply in an existing topic

This should only be visible to the author:

When the user is replying to the same topic again, a composer message could be helpful:

It looks like that you already have a reply that’s pending approval:

Original reply excerpt here

Are you sure you want submit another one?


I understand that this may not be a priority for the team; I’d love to work on them once the specs are finalized.

Open to suggestions, cheers! :muscle:


Moderating content
(Sam Saffron) #8

I think you are scoping a GIANTENORMOUS bit of work here.

Start with 1 feature, I would say the most URGENT feature is showing the end user the post they have in the queue

You have one post pending approval on this topic

:arrow_up_small: just scope how this should work for now.