feat(gui): add confirmed 99% main-account protection controls - #3560
Conversation
|
Warning Review limit reachedNext included review available in 3 minutes. View limit detailsLimit details: You’ve used all 10 included reviews currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Team Run ID: ⛔ Files ignored due to path filters (11)
📒 Files selected for processing (27)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
✅ Deterministic PR hygiene checks passed. |
리뷰 · 우선순위 58 / 80이 PR은 메인 계정 99% 보호의 GUI 레이어입니다. 런타임 정책은 부모 #3552( gui/src/components/MainAccountHardLockSetting.tsx - PUT 응답에서 gui/src/components/MainAccountHardLockSetting.tsx gui/src/pages/codex-set-multiauth.tsx - proxy-scoped controller + gui/src/components/codex-account-pool-main-card.tsx - hardLocked일 때 active 배지·스위치 버튼을 숨기는 건 런타임 차단과 UI가 맞게 보인다. policy.enabled인데 state가 unknown/ready인 모니터링 문구도 i18n 키와 맞다. gui/tests/main-account-hard-lock-setting.test.tsx - happy-dom + 확인/취소/포커스/프록시 교체 시나리오가 많다. exact-head CI가 머지 게이트라는 본문 조건을 그대로 따르자. #3552 - 이 UI PR의 부모다. UI만 먼저 넣으면 설정 키가 서버에 없다. 메인테이너의 판단이 필요한 지점
너의 추천 이 댓글은 grok-bot이 작성했습니다 |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: c79ddb2373
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
c79ddb2 to
080878d
Compare
|
Head 080878d now has all exact-head checks green. The disable-focus finding and subsequent delayed-poll focus-steal countercase are fixed, independently re-reviewed, and manually verified with isolated browser fixtures. Parent #3552 is also green; the third Reserve layer is undergoing final catalog re-review before publication. |
Ingwannu
left a comment
There was a problem hiding this comment.
Approved for the isolated GUI layer at exact head 080878d5df5ad17a696ba7bf4e11c82a35341489.
The setting remains server-authoritative, does not guess during load/save uncertainty, separates acknowledged PUT success from account-status refresh failure, prevents stale proxy completions from replacing the current controller, and preserves keyboard focus without stealing it after deliberate departure. I found no new React waterfall, unstable data subscription, or render-time derived-state issue in this layer.
Local isolated GUI validation: 1,390 pass / 0 fail; GUI lint, i18n lint, and production build all pass. Exact-head hosted CI is green.
Landing conditions: this PR targets the parent stack branch rather than dev, so it must not merge as-is. Also, parent #3552 has two newly confirmed policy-input blockers on its current head despite green CI (out-of-range >100 evidence is clamped into a block, and non-monthly tertiary-only usage can become governing monthly policy). After #3552 is repaired and landed, retarget/rebase this GUI layer onto current dev and require fresh exact-head CI. Per the GUI/text policy, final landing remains owner-controlled.
a7a0ab8 to
b3539dd
Compare
473934e to
03ee2f1
Compare
b3539dd to
363573d
Compare
03ee2f1 to
75dfbad
Compare
363573d to
54fb45a
Compare
75dfbad to
d48b322
Compare
54fb45a to
2ebe76d
Compare
2ebe76d to
fe9ed3b
Compare
Summary
Stack (merge bottom-up): #3552 runtime policy (merged) -> this UI layer -> #3578 explicit Reserve compatibility. This layer now targets dev after the parent squash. Review this layer only.
Verification
Final head
fe9ed3b1b5c122cc0258fa85b077d6776aea0ab2passed exact-head CI, attempt1, all selected platform jobs and governing PR checks. Authorized admin squash landed asa53775103e764e6644d41ec47d2e3e753e9f4613at2026-09-05T06:04:13Z; freshly fetched dev ancestry is verified. All four UI commits remained unchanged in the final rebase and integrated screenshots remain representative. No local suites or deployment.GUI build, i18n lint and GUI lint passed. Documentation build passed (425 pages). Privacy scan and diff check passed.
Native in-app browser QA used real components plus an isolated fixture API: cancel/Escape with zero writes, confirmed save, 99% block, zero unlock while enabled, failed read/save, saved-but-status-refresh-failed recovery without duplicate PUT, same-page Manage, and Tab/Shift-Tab boundaries.
Korean at 390/768/1280 CSS pixels and English at 390/1280 inspected. All screenshot data is synthetic; no live account or installed app setting changed. Preview processes and browser overrides were cleaned up.
Independent source review passed after fixing the stale-proxy completion race. New regression tests are authored for CI. No local test suites were run, per owner instruction; push uses --no-verify. Exact-head CI remains required before merge.
Checklist