Skip to content

feat(vscode): add PR merge readiness controls - #13953

Merged
marius-kilocode merged 14 commits into
mainfrom
add-approval-conflict-actions
Sep 9, 2026
Merged

marius-kilocode merged 14 commits into
mainfrom
add-approval-conflict-actions

Conversation

@marius-kilocode

@marius-kilocode marius-kilocode commented Sep 9, 2026

Copy link
Copy Markdown
Collaborator

What Problem This Solves

The Agent Manager PR panel did not provide a compact view of approval status, merge readiness, conflicts, branch updates, or merge actions. Users had to leave the panel to understand whether a PR could merge or what action was needed next.

Why This Change Was Made

This adds a GitHub-backed merge readiness surface while keeping GitHub responsible for remote mergeability, branch updates, merge methods, and auto-merge. Conflict file paths are loaded on demand with git merge-tree without changing the worktree, index, or stash.

User Impact

  • See approvals and reviewer avatars near the top of the PR summary.
  • See clean, blocked, behind, unstable, unknown, and conflicting merge states.
  • Use Fix with Kilo for conflicts.
  • See a bounded, scrollable list of conflicting files without pushing the rest of the PR view too far down.
  • Update the remote branch from GitHub.
  • Merge with squash, merge commit, or rebase.
  • Enable or disable GitHub auto-merge only when the PR state supports it. Blocked PRs explain why merging waits and what auto-merge will do, matching the GitHub merge box.
  • Keep the last selected merge method per repository in local extension state.

Evidence

Merge-ready state

Agent Manager PR summary ready to merge

Merge method menu

Agent Manager merge method menu

Merging blocked with auto-merge

Agent Manager blocked merge state offering auto-merge

Behind branch and Update branch

Agent Manager behind branch state with Update branch

Conflict state

Agent Manager conflict state with compact conflicting file list

Validation

  • bun run typecheck
  • bun run bundle
  • bun run test:unit, 5378 passed, 2 skipped
  • Focused review regression tests, 122 passed
  • Agent Manager architecture tests, 76 passed
  • Changed-file ESLint checks
  • Real git merge-tree conflict detection test with divergent commits

Comment thread packages/kilo-vscode/src/agent-manager/project/pollers.ts Outdated
Comment thread packages/kilo-vscode/src/agent-manager/pr/merge-actions.ts
Comment thread packages/kilo-vscode/src/agent-manager/GitOps.ts Outdated
Comment thread packages/kilo-vscode/webview-ui/agent-manager/pr/PRMerge.tsx
Comment thread packages/kilo-vscode/webview-ui/agent-manager/pr/PRMerge.tsx Outdated
Comment thread packages/kilo-vscode/src/agent-manager/GitOps.ts Outdated
@kilo-code-bot

kilo-code-bot Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

Code Review Summary

Status: 1 Issue Found | Recommendation: Address before merge

Overview

Severity Count
CRITICAL 0
WARNING 1
SUGGESTION 0
Issue Details (click to expand)

WARNING

File Line Issue
packages/kilo-vscode/src/agent-manager/PRStatusPoller.ts 342 Merge readiness changes can be dropped by the poller hash
Files Reviewed (10 files)
  • packages/kilo-vscode/src/agent-manager/PRStatusPoller.ts - 1 issue
  • packages/kilo-vscode/src/agent-manager/pr/am-pr-utils.ts
  • packages/kilo-vscode/src/agent-manager/pr/am-pr-types.ts
  • packages/kilo-vscode/src/agent-manager/types.ts
  • packages/kilo-vscode/src/agent-manager/AgentManagerProvider.ts
  • packages/kilo-vscode/webview-ui/agent-manager/pr/PRPanel.tsx
  • packages/kilo-vscode/webview-ui/agent-manager/pr/PRSummary.tsx
  • packages/kilo-vscode/webview-ui/agent-manager/pr/pr-types.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/en.ts
  • packages/kilo-vscode/tests/unit/am-pr-utils.test.ts

Fix these issues in Kilo Cloud

Previous Review Summaries (8 snapshots, latest commit 05684c1)

Current summary above is authoritative. Previous snapshots are kept for context only.

Previous review (commit 05684c1)

Status: No Issues Found | Recommendation: Merge

Files Reviewed (5 files)
  • packages/kilo-vscode/src/agent-manager/PRStatusPoller.ts
  • packages/kilo-vscode/src/agent-manager/pr-status-bridge.ts
  • packages/kilo-vscode/src/agent-manager/pr/merge-actions.ts
  • packages/kilo-vscode/src/agent-manager/pr/review-context.ts
  • packages/kilo-vscode/tests/unit/pr-review-actions.test.ts

Previous review (commit 4f430d2)

Status: No Issues Found | Recommendation: Merge

Files Reviewed (20 files)
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/ar.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/br.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/bs.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/da.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/de.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/es.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/fa.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/fr.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/it.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/ja.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/ko.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/nl.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/no.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/pl.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/ru.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/th.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/tr.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/uk.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/zh.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/zht.ts

Previous review (commit 1b7a2ac)

Status: No Issues Found | Recommendation: Merge

Files Reviewed (2 files)
  • packages/kilo-vscode/webview-ui/agent-manager/pr/PRMerge.tsx
  • packages/kilo-vscode/webview-ui/agent-manager/pr/pr-panel.css

Previous review (commit b057881)

Status: No Issues Found | Recommendation: Merge

Files Reviewed (22 files)
  • packages/kilo-vscode/webview-ui/agent-manager/pr/PRMerge.tsx
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/ar.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/br.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/bs.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/da.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/de.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/en.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/es.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/fa.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/fr.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/it.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/ja.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/ko.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/nl.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/no.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/pl.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/ru.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/th.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/tr.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/uk.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/zh.ts
  • packages/kilo-vscode/webview-ui/agent-manager/i18n/zht.ts

Previous review (commit fb55540)

Status: No Issues Found | Recommendation: Merge

Files Reviewed (1 files)
  • packages/kilo-vscode/webview-ui/agent-manager/agent-manager.css

Previous review (commit 5c2df10)

Status: 1 Issue Found | Recommendation: Address before merge

Overview

Severity Count
CRITICAL 0
WARNING 1
SUGGESTION 0
Issue Details (click to expand)

WARNING

File Line Issue
packages/kilo-vscode/webview-ui/agent-manager/pr/PRMerge.tsx 125 Conflict-load onCleanup drops in-flight results and can pin a permanent failure
Files Reviewed (3 files)
  • packages/kilo-vscode/webview-ui/agent-manager/pr/PRMerge.tsx - 1 issue
  • packages/kilo-vscode/webview-ui/agent-manager/agent-manager.css
  • packages/kilo-vscode/webview-ui/agent-manager/pr/pr-panel.css

Fix these issues in Kilo Cloud

Previous review (commit 24c3155)

Status: 1 Issue Found | Recommendation: Address before merge

Overview

Severity Count
CRITICAL 0
WARNING 1
SUGGESTION 0
Issue Details (click to expand)

WARNING

File Line Issue
packages/kilo-vscode/webview-ui/agent-manager/pr/PRMerge.tsx 123 Conflict-load onCleanup drops in-flight results and can pin a permanent failure
Files Reviewed (8 files)
  • packages/kilo-vscode/webview-ui/agent-manager/pr/PRMerge.tsx - 1 issue
  • packages/kilo-vscode/webview-ui/agent-manager/pr/pr-review-request.ts
  • packages/kilo-vscode/src/agent-manager/GitOps.ts
  • packages/kilo-vscode/src/agent-manager/pr/merge-actions.ts
  • packages/kilo-vscode/src/agent-manager/project/pollers.ts
  • packages/kilo-vscode/tests/unit/git-ops.test.ts
  • packages/kilo-vscode/tests/unit/pr-review-actions.test.ts
  • packages/kilo-vscode/tests/unit/pr-review-request.test.ts

Fix these issues in Kilo Cloud

Previous review (commit 3c04a86)

Status: 6 Issues Found | Recommendation: Address before merge

Overview

Severity Count
CRITICAL 0
WARNING 4
SUGGESTION 2
Issue Details (click to expand)

WARNING

File Line Issue
packages/kilo-vscode/src/agent-manager/project/pollers.ts 89 Unbound getPRMergeMethod throws on every PR poll
packages/kilo-vscode/src/agent-manager/pr/merge-actions.ts 152 Untrusted base/head forwarded into git fetch
packages/kilo-vscode/src/agent-manager/GitOps.ts 613 Conflict fetch missing nonInteractiveEnv() and OID guard
packages/kilo-vscode/webview-ui/agent-manager/pr/PRMerge.tsx 87 Conflict-load effect runs twice and can skip retries

SUGGESTION

File Line Issue
packages/kilo-vscode/webview-ui/agent-manager/pr/PRMerge.tsx 166 Auto-merge offered for conflicting/draft PRs
packages/kilo-vscode/src/agent-manager/GitOps.ts 132 conflictCache has no TTL, cap, or dispose cleanup
Files Reviewed (52 files)
  • packages/kilo-vscode/src/agent-manager/project/pollers.ts - 1 issue
  • packages/kilo-vscode/src/agent-manager/pr/merge-actions.ts - 1 issue
  • packages/kilo-vscode/src/agent-manager/GitOps.ts - 2 issues
  • packages/kilo-vscode/webview-ui/agent-manager/pr/PRMerge.tsx - 2 issues
  • packages/kilo-vscode/src/agent-manager/PRStatusPoller.ts
  • packages/kilo-vscode/src/agent-manager/pr-status-bridge.ts
  • packages/kilo-vscode/src/agent-manager/pr/am-pr-utils.ts
  • packages/kilo-vscode/src/agent-manager/vscode-host.ts
  • packages/kilo-vscode/webview-ui/agent-manager/pr/PRSummary.tsx
  • packages/kilo-vscode/webview-ui/agent-manager/pr/pr-conflict-state.ts
  • packages/kilo-vscode/tests/unit/pr-review-actions.test.ts
  • packages/kilo-vscode/tests/unit/git-ops.test.ts
  • plus remaining types, host wiring, changeset, plan, CSS, and i18n locale files

Fix these issues in Kilo Cloud


Reviewed by grok-4.6 · Input: 220.3K · Output: 23.3K · Cached: 2.4M

Review guidance: REVIEW.md from base branch main

Comment thread packages/kilo-vscode/src/agent-manager/pr/am-pr-utils.ts Outdated
@WebReflection

Copy link
Copy Markdown
Contributor

a non-blocking nit (just consistency with similar yet different function before that) and files conflicts to solve. I would approve otherwise.

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.

2 participants