End user pre-approval queue experience can be much improved

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.

「いいね!」 12

Same problem with Akismet: Akismet has temporarily hidden your post, but which one? - #9 by erlend_sh

「いいね!」 1

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.

「いいね!」 2

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.

「いいね!」 4

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

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:

「いいね!」 1

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.

「いいね!」 5

Allowing user edits to posts in the queue would be very valuable for us. I anticipate that members of our community will post topics without reading the pinned topic we have. Providing a list of a few things to make sure their post includes in the ‘Post needs Approval’ dialogue would reduce the amount of back-and-forth between our moderators and the topic creator.

「いいね!」 2

I agree with the editing request here @sam but we need to unify all post queues first yes?

「いいね!」 2

I just experienced this on https://discuss.python.org/ again. As an end user it felt really crummy. :sob:

  1. I can not tell in which topics I have pending approval posts
  2. I can not edit my pending approval posts
  3. I can not tell when my thing is going to be approved

What I would like:

  1. On topics, simply display my unapproved post as the last post in the stream with special formatting saying it is pending approval. It will always be last no matter what. This is editable by me.

  2. When I post instead of “Please be patient”, “It usually takes about 4 hours for posts to be approved”, we can recalculate weekly.

  3. Extra super bonus points stretch goal, allow 2 TL3s to approve one of these guys so it happens faster

@eviltrout maybe we can assign this out once your review queue is shipped? It would be a nice little first project for someone who is not yet familiar with the review queue.

「いいね!」 11

I feel like we have a feature request here that ties into the work @dan is doing… basically, arbitrary staff post annotations.

What’s the difference between this…

and this…

and this…

?? cc @hawk

「いいね!」 5

I agree – same works here. Maybe a different colour when it’s just for you and when it’s for everyone though.

「いいね!」 5

Sure, I’d be happy to do it myself but there is value in letting other people explore and test out my code.

「いいね!」 6
  1. and I can’t tell if my post has been approved! (of course unless someone has liked or replied to my post).

may number 4 be a simple notification?

image

「いいね!」 5

ここで何が行われたかのUIスクリーンショットはありますか、@sam?これを完了するために。

「いいね!」 2

これは現在の状況です。

新しい投稿を行う場合:


改善の可能性:

  1. エンドユーザーによる「削除」には確認が不要です。ワンクリックで元に戻すことなく永久に削除されます。

  2. レビューキューに入った後は「編集」する方法がなく、削除して再投稿する必要があります。

  3. 「承認待ち」の投稿には完全なコンテキスト(返信先)が表示されません。

  4. 保留中のすべての投稿を確認できる場所へのリンクがありません(アクティビティへのハイパーリンクではありません)。


これを最初に提起して以来、多くの進歩があったと言えますが、以下の点が完了するまでこれを閉じたくありません。

  • 削除の確認または元に戻す機能の追加
  • 「2件の投稿が保留中」をユーザーアクティビティにリンクし、簡単に見つけられるようにする。
  • ペーパートレイルで返信先を表示する
  • トピックの最初の投稿ではなく、投稿に移動するリンクを改善する。

編集は、競合状態があるため、やや難しいですが、素晴らしい目標です。

この機能にどれだけ磨きをかけるかを決定する必要があると思います。さらに1週間の開発時間を設け、その後、簡単で明確な成果をすべて達成して、これを終了するのが良いと思います。

また、管理者としての視点から、承認が必要な投稿をどうするかを決定するのが常に非常に困難です。承認キューでコンテキストが不足しているためです。

具体的には、スパムボットが返信をコピー&ペーストし、単語を1つか2つ変更して再度投稿したのを見たことがあります。コンテキストがなければ妥当に見えますが、トピックにアクセスしてコンテキストを取得すると、何をしたかがわかります。より多くのコンテキストを求める場合は、トピックから直接承認を追加するのが理にかなっているかもしれません。ただし、これは明らかに待つことができます。

「いいね!」 2