Add auto-merge setting and merge now functionality

This commit is contained in:
2026-07-28 17:42:49 +02:00
parent 7511311297
commit 42dcceaf4b
10 changed files with 689 additions and 63 deletions

View File

@@ -126,6 +126,8 @@ open = ["enter", "l"]
dashboard = ["d"]
health = ["H"]
edit = ["e"]
auto_merge = ["a"]
merge_now = ["M"]
toggle_list = ["tab"]
[keybindings.threads]
@@ -256,6 +258,8 @@ history and metadata.
| `H` | Open application health and diagnostics |
| `d` | Open the current pull request dashboard |
| `e` | Edit the current PR title, target branch, and description from its dashboard |
| `a` | Enable or disable auto-merge from the dashboard |
| `M` | Merge now when GitHub reports that all represented requirements are satisfied |
| `/` | Fuzzy-search paths and filter with `status:`, `author:`, `updated:true` |
| `F` | Clear active thread filters |
| `n` / `N` | Next / previous thread with a new update |
@@ -288,6 +292,15 @@ cancels. Replies and resolution changes require an explicit `y` confirmation.
Write keys remain disabled for cached snapshots, during refreshes, and whenever
GitHub does not grant the corresponding capability.
Auto-merge and immediate merge actions are available from the dashboard and
always require confirmation. The selected method is the repository's first
available method in `squash`, `merge`, then `rebase` preference order. Both
mutations include the currently displayed head commit OID, so a force-push or
new commit prevents a stale merge. “Merge now” is gated for drafts, conflicts,
required reviews, required checks, unresolved required conversations, closed
PRs, and branches that require a merge queue; GitHub performs the final
permission and mergeability validation.
The dashboard editor works with raw Markdown so template checklists can be
updated directly. The active line is highlighted without inserting a
layout-changing block character. It opens with the description focused;
@@ -324,10 +337,11 @@ submission is blocked rather than overwriting the newer metadata.
## Current scope
The application can reply to review threads, resolve or unresolve them, and
update the PR title, target branch, and description. Comment reactions remain
read-only. Other write operations remain disabled. The dashboard shows the
capability gate, including why each action is unavailable. Read state
The application can reply to review threads, resolve or unresolve them, update
the PR title, target branch, and description, enable or disable auto-merge, and
merge an eligible PR immediately. Comment reactions remain read-only. Other
write operations remain disabled. The dashboard shows the capability gate,
including why each action is unavailable. Read state
persists beside the configuration, and recent PR data is cached for offline
fallback. Check contexts and annotations are paginated. GitHub features which
depend on server-side context, such as unfurling issue references or displaying