Problem
On the dashboard/session PR attention states, changes requested and merge conflict actions currently only expose the generic PR link. In some cases the stored PR URL can also be issue-shaped (/issues/{number}), which sends users to a page that is not the actionable PR surface.
This makes it hard to jump directly to the work needed from the dashboard:
- requested changes should take the user to review comments / files
- merge conflicts should take the user to the GitHub conflict resolution page
- generic PR links should normalize GitHub issue-shaped PR URLs to
/pull/{number}
Reproduction
- Create or observe a session with an open GitHub PR.
- Put the PR into a requested-changes / unresolved-review-comment state.
- Put the PR into a merge-conflict state.
- Open the dashboard/session inspector.
- Check the attention links rendered for requested changes and merge conflict.
Expected
- PR open link points to
https://github.com/<owner>/<repo>/pull/<number>.
- Requested changes fallback points to
https://github.com/<owner>/<repo>/pull/<number>/files when no direct discussion URL is available.
- Merge conflict action points to
https://github.com/<owner>/<repo>/pull/<number>/conflicts.
- Board cards allow those attention links to be clicked directly.
Notes
A real smoke case was verified with whoisasx/test-reverb PR #49: the correct rendered links were /pull/49/conflicts and the direct review discussion anchor.
Problem
On the dashboard/session PR attention states, changes requested and merge conflict actions currently only expose the generic PR link. In some cases the stored PR URL can also be issue-shaped (
/issues/{number}), which sends users to a page that is not the actionable PR surface.This makes it hard to jump directly to the work needed from the dashboard:
/pull/{number}Reproduction
Expected
https://github.com/<owner>/<repo>/pull/<number>.https://github.com/<owner>/<repo>/pull/<number>/fileswhen no direct discussion URL is available.https://github.com/<owner>/<repo>/pull/<number>/conflicts.Notes
A real smoke case was verified with
whoisasx/test-reverbPR #49: the correct rendered links were/pull/49/conflictsand the direct review discussion anchor.