refactor(gui): react-doctor cleanup for Providers#474
Conversation
|
Warning Review limit reached
Next review available in: 30 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (18)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
Drop unused oauthLabel import and accept Promise<boolean> from fetchAccountSets so gui tsc stays clean for the extracted hooks.
57024c1 to
333b42e
Compare
Review follow-up (Codex findings)Rebased onto
Verification
HEAD: |
readJsonOrThrow/readJsonIfOk can yield undefined for empty success bodies; coalesce before setState.
removeProvider moved into use-providers-crud after the Providers split; assert the confirm-only path there.
Re-review (HEAD
|
| Check | Result |
|---|---|
bun test tests/oauth-tos-warning.test.ts tests/provider-workspace-auth.test.ts |
20 pass |
bun test ./gui/tests/rail-hover-delete.test.ts |
4 pass |
bun run privacy:scan |
passed |
gh pr checks 474 |
all green (ubuntu/macos/windows, npm-global, react-doctor, label) |
Maintainer security review — still required
This PR moves authentication / OAuth credential-handling UI (login, logout, reauth, manual redirect/code paste, API-key form fields). Per MAINTAINERS.md and AGENTS.md, authentication and credential-handling changes require explicit maintainer security review before merge.
This re-review does not constitute that security approval. Please treat maintainer security review as a remaining merge gate.
Security Review: PR #474Pull request: The pull request is open, non-draft, and mergeable. ResultNo reportable security vulnerability, credential leak, or authentication regression was found in this diff. Verified Security BoundariesProvider secrets remain server-side
API keys are not accidentally round-tripped or overwrittenNew keys are handled through password inputs and dedicated credential endpoints. Provider settings cannot patch OAuth state remains provider-scoped and race-protectedLogin generations invalidate stale attempts. Cancellation clears matching login information. Reauthentication verifies that the requested account is present, and mismatched or still-invalid accounts are rejected. Manual OAuth data does not leak into later attemptsThe Add Provider flow clears the pasted redirect or authorization code and its status whenever a login starts. It clears the code again after successful submission. The unresolved review comment claiming that stale manual redirect data survives between attempts is not reproducible at the reviewed head. OAuth terms-of-service warnings remain enforcedProviders marked as carrying additional terms-of-service risk are intercepted before login in both the main Providers page and the Add Provider modal. Login continues only after explicit confirmation. Server-side SSRF protections remain authoritativeNew providers default to The server performs resolved-destination validation when providers are created. Provider settings updates are validated after merging the requested changes with the existing provider configuration. No new credential exposure surfacesNo new instance was found of:
CI VerificationThe reviewed head passed:
Security Sign-offThe explicit authentication and security review requirement is satisfied for: No security changes are required before merge. |
Summary
type="button".Stack
Test plan
bun x tsc -bingui/