Merge UI treats CHANGES_REQUESTED as blocking with no protection rule while the server merges it #612
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#612
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?
Evidence (live field test, scratch stack :18099, throwaway repo field/demo)
What's requested
Make UI and server agree. Recommended: the client should only treat CHANGES_REQUESTED as merge-blocking when a required-reviews rule actually applies to the base ref — the page already fetches policy for checks (Pull.jsx getPolicy, requiredChecks()), so the same rules list can drive a reviews gate (any required-reviews effect matching base → changes-requested blocks; none → red phrase stays as information but the button enables). Server behavior (merge allowed without a rule) stays as-is. Alternative (server blocks always): contradicts GitHub semantics and the #586 Decision-1b design — not recommended; note the choice.
Acceptance criteria
Fixed by #615 (merged): client gates the CHANGES_REQUESTED block on a matching required-reviews rule (same policy list as checks); no-rule → red phrase stays informational but button enables, matching the server; with-rule → disabled + blocked tooltip. Server untouched. Simplification (presence-only, exact ref) documented; server authoritative. Verified: 1579 unit green (smoke excluded, pre-existing), vite/esbuild green, independent review APPROVE.