Skip to content

ci(board): add Changes requested status to the board sweep - #925

Open
navareamol wants to merge 1 commit into
mainfrom
board-sweep-changes-requested
Open

navareamol wants to merge 1 commit into
mainfrom
board-sweep-changes-requested

Conversation

@navareamol

Copy link
Copy Markdown
Collaborator

Why

When a reviewer asks for changes, the PR card goes back to In Progress. It then looks the same as a draft. The board cannot show which PRs are waiting on their author after a review.

Workflow

Columns, in order: Todo -> In Progress -> Changes requested -> Needs review -> Review -> Done

PR state Before Now
Draft (any reviews) In Progress In Progress
Ready, no review yet Needs review Needs review
Ready, a reviewer asked for changes, not asked back In Progress Changes requested
Author re-requested every blocking reviewer Needs review Needs review
Reviewed, nothing blocking Review Review

Issues still take the furthest status of their trusted linked PRs.

Use cases

  • A reviewer requests changes on a ready PR: the card moves to Changes requested. The author knows the next move is theirs.
  • The author pushes fixes and re-requests review: the card moves to Needs review.
  • One reviewer approves and another requests changes: Changes requested. One approval does not outweigh a blocking review.
  • An issue whose only linked PR has changes requested shows Changes requested.

Negative and edge cases

  • Draft PR with changes requested: stays In Progress. The author already owns it.
  • Changes requested by a bot or by the PR's author: ignored.
  • Only some blocking reviewers re-requested: stays Changes requested.
  • Dismissed changes-requested review: no longer a verdict, so the PR counts as reviewed (Review).
  • An issue with one PR in Changes requested and another waiting for review: Needs review, since a reviewer has work to do.
  • Column not created yet: cards that would move to Changes requested stay where they are. The private health card reports the missing option and says NEEDS ATTENTION. Other cards still move. Nothing breaks.
  • Privacy: the public Actions log still prints totals only. A test checks that "Changes requested" never appears in it.

Before merge

Add a Changes requested option to the board's Status field, between In Progress and Needs review. Use the website, not the API. The API rewrites all options.

Tests

59 pass (8 new or changed). Run against the old code, 8 fail, so they check the new rule.

A ready PR whose reviewer asked for changes used to go back to In
Progress, next to drafts. The board could not show which PRs were
waiting on their author after a review.

The sweep now moves such a PR to a new Changes requested status. It
sits between In Progress and Needs review. When the author asks every
blocking reviewer to look again, the PR moves to Needs review as
before. Drafts stay In Progress. Issues follow their furthest linked
PR, so an issue whose only PR has changes requested shows Changes
requested.

Tests: 59 pass, 8 of them new or changed. 8 fail against the old
code. The privacy test checks the new status name never reaches the
public log.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant