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:

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!

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


Pending

  • 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

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?

5개의 좋아요

이 부분에 대해 UI 스크린샷이 있나요 @sam? 마무리하기 위해서요.

2개의 좋아요

현재의 동작 방식은 다음과 같습니다.

새 게시글을 작성하면:


가능한 개선 사항:

  1. 최종 사용자의 “삭제” 기능은 확인 없이 1클릭으로 영구 삭제되며, 되돌릴 수 없습니다.

  2. 검토 대기열에 있는 게시글은 "수정"할 수 없으며, 삭제 후 다시 게시해야 합니다.

  3. “승인 대기” 상태의 게시글은 전체 맥락(답글을 단 대상)을 표시하지 않습니다.

  4. 모든 대기 중인 게시글을 볼 수 있는 위치로 연결하는 기능이 없습니다. (활동 페이지로 하이퍼링크 없음)

    image

  5. 관리자 영역의 링크는 주제 내 "최상단 게시글"로 이동하며, 방금 답글을 단 게시글이나 주제 맨 아래로 이동하지 않습니다.


제가 이 문제를 처음 제기한 이후 상당한 진전이 있었지만, 다음 사항들이 해결되기 전에는 이 이슈를 닫고 싶지 않습니다:

  • 삭제 시 확인 또는 되돌리기 기능 추가
  • "대기 중인 게시글 2개"를 사용자 활동 페이지로 연결하여 쉽게 찾을 수 있도록 하기
  • 처리 이력에서 답글을 단 대상을 표시
  • 링크를 개선하여 주제 내 첫 번째 게시글이 아니라 해당 게시글로 이동하도록 하기

수정 기능은 좋은 추가 목표(stretch goal)이지만, 레이스 컨디션(race condition) 문제 때문에 다소 까다롭습니다.

이 기능을 얼마나 완벽하게(gold plate) 다듬을지 결정해야 할 것 같습니다. 제 생각에는 개발 시간을 1주 더 확보한 후, 모든 명확하고 쉬운 개선 사항을 완료하고 이 이슈를 닫는 것이 좋겠습니다.

또한 관리자 관점에서 보면, 승인 대기 중인 게시글에 대해 어떻게 해야 할지 결정하는 것이 항상 매우 어렵습니다. 승인 대기열에서 맥락이 부족하기 때문입니다.

특히 스팸 봇이 답글을 복사해서 단어나 두어 개만 바꾸고 다시 게시하는 경우를 목격했습니다. 맥락 없이 보면 합리적으로 보이지만, 주제 페이지에 방문하여 맥락을 파악하면 그들이 무엇을 했는지 알 수 있습니다. 따라서 주제 내에서 직접 승인을 지원하도록 하는 것이 의미가 있을 수 있습니다. 이렇게 하면 더 많은 맥락이 필요한 경우 사람들이 답글을 단 장소에서 게시글을 승인할 수 있습니다. 다만 이 부분은 분명히 나중에 해도 무방합니다.

2개의 좋아요