refactor: make code review capabilities dynamic - #1723
Merged
limityan merged 2 commits intoJul 24, 2026
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
ReviewWorker, while keeping one owning review agent, a conditional judge, and bounded managed packets for genuinely large targets.needs_remote_selectionresults for distinct repositories, and route ordinary review child sessions to the populated detail pane.ReviewWorkerUI copy for en-US, zh-CN, and zh-TW.CI root cause and fix
The frontend CI completeness test enumerates the current fallback review roles. The runtime and TypeScript fallback had moved from the six legacy fixed roles to
worker, but the three Web UIscenes/agents.jsoncatalogs still contained only the legacy role entries. This leftreviewTeams.members.worker.funNameand the rest of the worker role copy undefined in every supported Web UI locale.The fix adds the same four fields and three responsibilities for
workerin all three locale catalogs. It does not change locale identity, fallback behavior, prompt language selection, or{LANGUAGE_PREFERENCE}.Design and compatibility
origin,upstream, then lexical preference.get_workspace_snapshotintentionally retains its overview semantics: no remote yields an empty snapshot and multiple remotes use the service's connected/supported preference. The strict remote-selection gate applies to the 12 concrete PR operations that can otherwise produce the reported ambiguity error.Verification
cargo test -p bitfun-agent-runtimecargo test -p bitfun-core --lib(1401 passed, 1 ignored on the original implementation head)cargo check --workspacepnpm --dir src/web-ui run test:run src/shared/services/reviewTeamLocaleCompleteness.test.ts(6 passed)pnpm run i18n:contract:test:ci(23 passed, 14 skipped)pnpm run i18n:audit(0 warnings)pnpm run lint:webpnpm run build:webnode --test scripts/check-core-boundaries.test.mjs(16 passed)pnpm run check:repo-hygienepnpm run theme:color-audit:allgit diff --check gcwing/main...HEADThe full Web suite no longer reports any review-team locale failure. On the Windows checkout, one unrelated source-string contract test remains sensitive to CRLF (
RemoteConnectDialog.contract.test.ts); that file is outside this PR and the same test passed in the prior Ubuntu CI run. The updated Ubuntu CI run is the final authority for the full suite.Three independent read-only re-reviews covered correctness/compatibility, architecture and competitor alignment, and Rust/TypeScript/UI/remote boundaries. No remaining high-confidence blockers were found.