Skip to content

feat(review): support multi-repo workspace reviews#543

Open
Oscar-Silva wants to merge 3 commits intobacknotprop:mainfrom
Oscar-Silva:feat/review-workspace-multi-repo
Open

feat(review): support multi-repo workspace reviews#543
Oscar-Silva wants to merge 3 commits intobacknotprop:mainfrom
Oscar-Silva:feat/review-workspace-multi-repo

Conversation

@Oscar-Silva
Copy link
Copy Markdown

Summary

  • add workspace review support so Plannotator can review multiple nested repos from a non-git parent directory in one session
  • make review state repo-aware end-to-end, including diff switching, file-content lookup, staging, PR actions, viewed state, and agent path routing
  • add in-app workspace repo controls plus regression coverage for workspace discovery, duplicate repo-relative paths, export/file tree/search behavior, and non-git workspace root detection

Closes #527

Test plan

  • bun test packages/server/review-workspace.test.ts packages/server/vcs.test.ts packages/review-editor/utils/exportFeedback.workspace.test.ts packages/review-editor/utils/buildFileTree.workspace.test.ts packages/review-editor/utils/reviewSearch.workspace.test.ts
  • bun run --cwd apps/review build && bun run build:hook && bun run build:opencode
  • Manual OpenCode workspace review from a non-git parent directory with multiple nested repos
  • Verify repo selector appears in the review UI and repos with local changes are selected by default
  • Verify repo-specific diff switching and workspace review feedback work correctly

- Fix race condition in label generation by pre-computing labels sequentially
- Fix rewritePatchLine to support quoted paths and rename/copy headers
- Add separator between aggregated patches to avoid invalid diffs
- Normalize input paths in resolveWorkspaceFilePath
- Add timeout to PR discovery (15s) to prevent server hangs
- Fix PATCH /api/workspace/repo to rollback state on failure via applyRepoMutation
- Validate body.source runtime (must be 'local' or 'pr')
- Snapshot active repo in agent jobs at launch to prevent race in onJobComplete
- Prevent double-prefixing of agent findings when paths are already prefixed
- Fix frontend findWorkspaceRepoForPath to use longest-prefix matching
- Fix shared types: diffType uses DiffType, platformUser is string | null
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.

Feature Request: Make review support multiple repos

1 participant