Terminal PRs (merged/closed) show a merged/closed status in the sidebar instead of the Review Summary, and hide the moot Mergeability section #602
Labels
No labels
actions
bug
cli
duplicate
enhancement
fork
forum
git storage
help wanted
insights
invalid
issues
moderation
oidc
ownership transfer
packages
pr/merge protection rules
projects
pull requests
question
releases
sponsorships
tags
webhooks
wiki
wontfix
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
crueber/walhub#602
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Terminal PRs (merged/closed) show a merged/closed status in the sidebar instead of the Review Summary, and hide the moot Mergeability section
What's requested
On a terminal PR —
pr().mergedtrue, or stateclosedwithout merge — the right-hand sidebar should stop showing the review-workflow sections, which are meaningless once the PR can no longer change state:pullBadgeView,web/src/lib/pull-state.js:52) already surfaces Merged/Closed at the top of the page, but the sidebar still leads with "Review summary" — a verdict snapshot derived client-side that can only mislead on a terminal PR (e.g. a "stale" marker orREVIEW_REQUIREDchip on a PR that was already merged). In its place show a terminal-state section in the same idiom: uppercase micro-label (e.g. "Status") with the terminal state as the VALUE line — "Merged" via the existingchip-mergedclass for merged PRs (the merge strategy + merge commit SHA are available from the merged event /pullEventText, seepull-state.js:82-83), "Closed" via the existingchip-closedstyling for plain-closed PRs.mergeabilityDisplay,pull-state.js:174-175) plus base/head SHAs and commits/files links; for a closed-unmerged PR it shows a mergeable assessment that no longer matters. None of this has action value once the PR is terminal — drop the wholeMergeabilitysection (the<div class="grid gap-1 p-3">block atweb/src/pages/Pull.jsx:1372-1412) whenpr().merged || pr().state === "closed".Keep both sections exactly as-is for open PRs — this change is strictly a terminal-state branch.
Evidence (static read; no local repro)
web/src/pages/Pull.jsx:1366-1412— the sidebar (<aside aria-label="Details">, one divide-y card) renders "Review summary" first, then "Mergeability", unconditionally; there is no terminal-state branch.web/src/pages/Pull.jsx:95-131—ReviewSummaryBarderives the verdict and "(stale)" markers purely client-side fromsummary()+ head SHA; on a merged PR this displays a stale review snapshot as the sidebar's first section.web/src/lib/pull-state.js:52-53, 99—pullBadgeViewalready knowspr?.merged→ "Merged" /chip-merged;:174-175— mergeability already mapsmerged→ "Already merged" muted, i.e. the data for a terminal status section is already in the client payload. No new wire data needed.Architecture notes
pr().merged,pr().state, and the merged event (ThreadTimelinealready rendersmerged as <sha> (<strategy>)viapullEventText). Pure UI branching inPull.jsx; possibly one small helper inweb/src/lib/pull-state.jsalongsidepullBadgeView/pullCloseVisibilityif the terminal status view is shared/tested.p-3block with the uppercase micro-label above its value — the new status section replaces the Review summary slot in the same shape, no new card chrome.chip-merged/chip-closedrather than new styles.Acceptance criteria
Fixed by #609 (merged): terminal PRs show a Status section (Merged chip + SHA/strategy/by with commit link, or Closed chip) replacing Review summary, and the Mergeability section hides; open PRs byte-identical; Reviewers/Checks/Merge untouched. Verified: 1561 unit green (smoke excluded, pre-existing), vite/esbuild green, independent review APPROVE.