Skip to content

fix(devex): keep a PR you requested changes on out of Dealt with - #185

Merged
webjunkie merged 2 commits into
mainfrom
fix/devex-change-request-holds-pr-open
Oct 12, 2026
Merged

webjunkie merged 2 commits into
mainfrom
fix/devex-change-request-holds-pr-open

Conversation

@webjunkie

Copy link
Copy Markdown
Contributor

A topic folded every tile under Dealt with, including an open PR where you had requested changes and the author hadn't addressed them yet. So the one PR that still mattered was hidden. Cause: isPrDone called a handled open PR done as long as it wasn't your move, and a change request waiting on the author passes that.

New rule: your change request holds the PR open (owner call, 2026-10-12)

  • An open PR where your newest verdict is "changes requested" is never done. It stays in Open with its usual footer ("waiting on alice to address your changes"). It uses the same check as the Changes you requested tier, so a later plain comment review doesn't clear it.
  • The hold ends only when your verdict changes (you approve, or the review gets dismissed) or the PR is merged or closed. A NOT_YOURS glance doesn't end it. Snooze still works for parking one whose author went quiet.

Read state vs. done

  • The old done rule is kept as nothingAskedOfViewer. A mark-read now shows it as TileAfterRead.nothingAsked, and the open-read check uses that (doneAfterRead was renamed to nothingAskedAfterRead).
  • So opening a held PR, or pressing Mark read, still marks it read on GitHub when it's the author's move. The button says "Mark read", never "Done for now".
  • The other quiet-read paths (bot-only, judged, request_gone, touched) never read done, so nothing changes there.
  • The property spec gets the same split, plus invariants checking that the preview's nothingAsked matches the spec.

holdingPrLine (BOARD-A-14)

Kept. With this change the Changes you requested case can't happen anymore, but a team mention that has been read, or a review request the glance calls not yours, can still leave an ask PR under Dealt with. Its comment and tests now use those cases.

Fake mode: sample #1963 (the change request waiting on tove) now shows under Open. The fake engine test checks this.

Owner report 2026-10-12: a topic folded all its tiles under Dealt with,
including an open PR where the viewer requested changes and the author
had not addressed them yet. isPrDone treated a handled open PR whose
turn was not the viewer's as done, and a standing change request that
waits on the author passed that check. BOARD-A-14's holdingPrLine only
patched over it in the topic header.

New rule "Your change request holds the PR open": an open PR whose
viewer's newest verdict asks for changes (viewerRequestedChanges, same
notion as the Changes you requested tier) and that they have not
approved since is never done. It ends only when the verdict changes
(approve, dismissed) or the PR is merged or closed. NOT_YOURS does not
end it. Snooze still parks it.

Read state stays separate from done: the old done rule lives on as
nothingAskedOfViewer, exposed as TileAfterRead.nothingAsked, and the
open-read dwell reads that (OpenedReadInput.nothingAskedAfterRead,
renamed from doneAfterRead). So a held PR waiting on the author still
gets its thread marked read and handled, while its button says "Mark
read", never "Done for now". The property spec gets the same split
(expectedNothingAsked, expectedChangeRequestHold).

holdingPrLine stays: a read team mention or a not-yours review request
can still leave an ask PR under Dealt with.
@posthog

posthog Bot commented Oct 12, 2026 •

Copy link
Copy Markdown

PostHog Review · Standard · reviewed f8b4b67

Nothing to post.

Step Status Result
Prepare the diff done 29 files
Main review and lenses done 0 issues
Merge and cap done 0 → 0
Publish done Nothing to post

…est-holds-pr-open

# Conflicts:
#	CHANGELOG.md
#	NEXT.md
@webjunkie
webjunkie merged commit 02cc0dc into main Oct 12, 2026
11 checks passed
@webjunkie webjunkie mentioned this pull request Oct 12, 2026
webjunkie added a commit that referenced this pull request Oct 12, 2026
Patch release on top of 0.28.0 with two board fixes: a topic click counts as
picking the tile it opens on again, so the dwell marks it read (#184), and a PR
with a standing change request from the viewer stays under Open instead of
folding into Dealt with (#185). Every package.json goes to 0.28.1 and the
0.28.1 changelog section gets its date for the release workflow.
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