Skip to content

feat: add multi-repository review picker - #20

Open
ileadall42 wants to merge 2 commits into
jhochenbaum:mainfrom
ileadall42:codex/multi-repo-review-picker
Open

feat: add multi-repository review picker#20
ileadall42 wants to merge 2 commits into
jhochenbaum:mainfrom
ileadall42:codex/multi-repo-review-picker

Conversation

@ileadall42

@ileadall42 ileadall42 commented Sep 2, 2026

Copy link
Copy Markdown

Problem

A Herdr workspace can contain agent panes from several Git repositories, especially when a top-level project is composed of multiple checkouts. The existing review actions intentionally follow the focused pane, but that makes it easy to review the wrong repository/base or send comments to the wrong agent when several repositories are active.

Changes

  • add review:pick for explicit repository, base branch, and feedback-agent selection
  • add send-review:pick so an open review can be sent to any live agent selected at delivery time
  • discover Git worktrees and agents from every pane in the current Herdr workspace, preferring each pane's foreground cwd
  • open Hunk with an explicit <base>...HEAD range and persist the chosen agent association for later send-review
  • use dependency-free numbered overlay pickers, including POSIX and Windows pane entries
  • preserve the existing focus-based review actions unchanged
  • document the workflows and cover discovery, selection, branch refs, pane reuse, delivery, association, manifest, and keys with tests

The new send-time picker has no plugin-wide default key because likely prefix+alt+... candidates can collide with Herdr defaults. Users with a freed key can bind jhochenbaum.hunkdiff.send-review:pick explicitly.

Validation

  • npm run check
  • npm run build
  • npm test (28 files, 686 tests)
  • npm audit --audit-level=high --registry=https://registry.npmjs.org/ (0 vulnerabilities)
  • installed the branch as a real Herdr plugin and invoked review:pick successfully

Related to #15: the picker makes the comparison base explicit instead of assuming a single repository/base for the whole workspace.

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