Skip to content
This repository was archived by the owner on Dec 15, 2022. It is now read-only.

Feature Request: Review author flow #2095

Merged
merged 19 commits into from
May 7, 2019
Merged

Conversation

vanessayuenn
Copy link
Contributor

@vanessayuenn vanessayuenn commented Apr 24, 2019

The first draft of the review author workflow proposal is ready! This is nowhere near its final form yet, but hopefully, it will at least get the conversation started.


View rendered docs/feature-requests/006-pull-request-reviewer-flow.md

@vanessayuenn vanessayuenn added the feature request Propose new features or design label Apr 24, 2019
@vanessayuenn vanessayuenn requested a review from a team April 24, 2019 23:26
Copy link
Contributor

@smashwilson smashwilson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Left some initial thoughts based on the writeup 😄 Looking pretty promising 👍

I'm wondering a little about the complexity of adding a distinct additional tab for pending reviews. I like keeping them all in one place, separate from the existing reviews, but I do worry about increasing the number of navigation steps needed to reach it; GitHub tab, reviews tab, pending review tab. Can we add a "pending" section to a single reviews tab, instead? It would likely feel pretty crowded, so I'm not sure.

#### Responding to a comment thread
![responding to a comment thread](https://user-images.githubusercontent.com/6842965/56689748-cdd05700-66a9-11e9-90e8-266c69cbc589.png)

User can respond to a comment thread by adding a single line comment (current implementation) or starting a new review. The two buttons should only show up when the comment textbox is in focus, or is _not_ empty.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

We can fiddle with the "in focus or not empty" behavior once we have an implementation to play with. I'm remembering that we had to scrap the "comment editor that expands when focused" because it made the surrounding UI elements jolt around.

It also feels a little awkward to have two rows of buttons right next to one another. Not sure what else we could do there, though 🤔

Copy link
Contributor

@kuychaco kuychaco left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for tackling this @vanessayuenn! It's super clear and thorough ✨

Left a few questions to ponder, all pretty minor



### "All Reviews" tab
This tab shows all review summaries and review comments, including the ones that are part of a _pending review_ that has not been submitted yet.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm... since the pending review will be in the "All Reviews" tab, is it necessary to have a separate "Pending Review" tab?

Quite possibly. I haven't thought too deeply about it. Just wanted to throw out the question.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My major concerns with keeping both published comments and pending comments in the same space are that 1) it would get too crowded, and 2) there would be no obvious hierarchy in the information presented.

I would argue that when a user is in the middle of reviewing a PR (i.e. have a review pending), the most relevant information to them would be their pending comments, as well as the summary textbox that they need to fill out before publishing a review. I couldn't figure out a way to fit all this along with other published comments, while preserving the hierarchy of importance.


#### Pending comments

![pending comment](https://user-images.githubusercontent.com/6842965/56692893-2ce59a00-66b1-11e9-81cc-bc7956bc8bec.png)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oooh interesting. I kinda like this placement, and I like the arrow that indicates it'll take you to somewhere else if you click it.

Minor UI question...

I think our current implementation has the badge on the top of the comment next to the author name. Should we consider keeping it up there? Or do we want to make it more pronounced like it is here?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hrmm yea honestly I am 50/50 on this one. I am open to fiddle with it once we are at implementation stage, and then decide which treatment has better UX.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah - the existing "pending" badge is at the top. But it also has no click action. I think being actionable would justify moving it below though. 🤔


![pending review summary](https://user-images.githubusercontent.com/6842965/56699584-23196200-66c4-11e9-94a4-193c9d662bb3.png)

The summary section of the Pending Review tab is sticky (although still collapsible), so it stays within view regardless of how long the list of comments below it is. The icon on the left indicates the type of review, which can be selected in the dropdown underneath the text box. The button to submit review will be disabled a review type has not been chosen from the dropdown menu.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this imply we won't have a default? Looks like dotcom has "Comment" as default (at least for me)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hrmm.. I can see the value in both having "Comment" as a preseleted default, and making users explicitly choose the type of review they're making. I think I am indifferent? Do you have a preference for one?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Preselecting it would reduce the interactions required to submit a comment review, but increase the number of users who submit one by accident or without thinking. I'm kind of indifferent too, but I think slightly on the side of not having a default and making the user make a conscious choice... ?

Co-Authored-By: vanessayuenn <6842965+vanessayuenn@users.noreply.github.com>
@vanessayuenn
Copy link
Contributor Author

vanessayuenn commented May 1, 2019

@smashwilson:

I'm wondering a little about the complexity of adding a distinct additional tab for pending reviews.

That's a very valid point. Another thing I just thought of is that while a user can only have one pending review per PR, it is entirely possible for a user to have a pending review for multiple PRs, which would then result in 2 review tabs per PR -- that can get confusing really fast.

I started exploring the option of having "sub-tabs" within a review tab 👇. That way we can keep all reviews (pending and published) for a PR in one place, with a simpler navigation model.

image

@codecov
Copy link

codecov bot commented May 1, 2019

Codecov Report

Merging #2095 into master will increase coverage by <.01%.
The diff coverage is n/a.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #2095      +/-   ##
==========================================
+ Coverage   92.55%   92.55%   +<.01%     
==========================================
  Files         207      207              
  Lines       12021    12016       -5     
  Branches     1746     1745       -1     
==========================================
- Hits        11126    11122       -4     
+ Misses        895      894       -1
Impacted Files Coverage Δ
lib/views/reviews-view.js 82.71% <0%> (-0.52%) ⬇️
lib/atom/gutter.js 92.3% <0%> (+2.56%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 4ef8aac...b6c4789. Read the comment docs.

@vanessayuenn vanessayuenn changed the title [WIP] Review author flow Review author flow May 1, 2019
Copy link
Contributor

@smashwilson smashwilson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 I think we've got enough to get started 😄


#### Pending comments

![pending comment](https://user-images.githubusercontent.com/6842965/56692893-2ce59a00-66b1-11e9-81cc-bc7956bc8bec.png)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah - the existing "pending" badge is at the top. But it also has no click action. I think being actionable would justify moving it below though. 🤔


![pending review summary](https://user-images.githubusercontent.com/6842965/56699584-23196200-66c4-11e9-94a4-193c9d662bb3.png)

The summary section of the Pending Review tab is sticky (although still collapsible), so it stays within view regardless of how long the list of comments below it is. The icon on the left indicates the type of review, which can be selected in the dropdown underneath the text box. The button to submit review will be disabled a review type has not been chosen from the dropdown menu.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Preselecting it would reduce the interactions required to submit a comment review, but increase the number of users who submit one by accident or without thinking. I'm kind of indifferent too, but I think slightly on the side of not having a default and making the user make a conscious choice... ?

@vanessayuenn vanessayuenn changed the title Review author flow Feature Request: Review author flow May 7, 2019
@vanessayuenn vanessayuenn merged commit e0b5fb4 into master May 7, 2019
@vanessayuenn vanessayuenn deleted the vy/meta-rfc-pr-reviewer-flow branch May 7, 2019 01:52
@smashwilson smashwilson mentioned this pull request May 8, 2019
11 tasks
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
feature request Propose new features or design
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants