Repository navigation
fix(kiro): scope failed-login rollback - #5842
Conversation
|
@lidge-jun @Wibias Please review the auth-store receipt/CAS rollback boundary. This prevents a failed forced Kiro login from deleting or reselecting over a concurrent successful login. @codex security review |
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository: lidge-jun/opencodex/.coderabbit.yaml Review profile: ASSERTIVE Plan: Advanced Run ID: 📒 Files selected for processing (5)
Included review availability: Your plan provides up to 10 included reviews per hour; 0 remain after this review. 📝 WalkthroughWalkthroughForced Kiro login now records a credential-write receipt. If later persistence fails, rollback checks whether the written credential and selection state still match before restoring or removing the account. Regression tests cover concurrent account changes and failure during the first login. ChangesForced Kiro login rollback
Priority: ⬇️ Low Estimated code review effort: 3 (Moderate) | ~20 minutes Change: Bug fix Merge Risk: ⚪ Minimal · up to The reported first-login rollback issue is addressed and covered by a regression test. No concrete merge-blocking risk remains beyond normal checks. 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Full details: Docstring CoverageExplanation Docstring coverage is 50.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 6 functions across 3 files. (2 skipped: 2 unsupported.)
✨ Finishing Touches 💡 2📝 Generate docstrings 💡
🧪 Generate unit tests (beta)
🛠️ Fix failing CI checks 💡
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. |
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: 062ee79f4a
ℹ️ 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".
리뷰 · 우선순위 68 / 80이 PR은 Kiro 강제 로그인이 계정은 저장했는데, 그다음 설정 기록이 실패했을 때 방금 쓴 칸만 되돌리게 바꿉니다. 예전에는 로그인 전에 있던 계정 번호만 기억했습니다. 실패하면 그 뒤에 생긴 번호를 전부 지우고, 예전 활성 계정으로 다시 골랐습니다. 같은 시각에 다른 로그인이 성공해도 그 계정까지 지울 수 있었습니다. 이제는 저장할 때 영수증을 만듭니다. 영수증에는 이번에 쓴 계정 번호, 토큰 내용으로 만든 해시(credentialGeneration), 고른 계정의 버전 번호(selectionRevision), 그 칸의 이전 내용이 들어갑니다. 실패하면 저장소가 그 영수증과 아직 같을 때만 그 칸을 지우거나 예전 내용으로 되돌립니다. 그 사이에 다른 로그인이 같은 칸을 바꿨으면 손대지 않습니다. 일반 저장 함수는 예전처럼 반환값이 없고, 강제 Kiro 로그인만 이 영수증을 씁니다. 이미 계정이 있는 경우는 테스트로 확인됩니다. src/oauth/store.ts:850 - Kiro 계정이 하나도 없을 때 새 묶음을 만드는데, 여기에는 selectionRevision이 없습니다. 메인테이너의 판단이 필요한 지점 첫 계정 실패 때 토큰이 디스크에 남는 문제를 고치기 전에 머지할지 정해 주세요. 작성자가 요청한 대로, 이 TypeScript OAuth 경로에 대응하는 Go 코드가 있는지도 확인해 주세요. ADR-0109는 버전 번호가 어긋나면 실패한 로그인의 토큰을 일부러 남기기로 했습니다. 이번 빈 저장소 경우는 다른 로그인이 고친 것이 아니라, 같은 저장이 영수증을 만든 뒤에 번호를 붙인 것입니다. 그 정책에 넣을 일이 아닙니다. 너의 추천 영수증을 만들기 전에 새 묶음에도 실제로 남을 selectionRevision을 넣으세요. 넣기 어렵으면 mutateStore가 번호를 고친 뒤 그 값을 영수증에 다시 적으세요. 계정이 없는 상태에서 강제 로그인이 실패하면 그 계정이 사라지는 테스트를 추가하세요. 그 테스트가 통과하기 전에는 머지하지 마세요. 이 댓글은 grok-bot이 작성했습니다 |
Summary
Verification
CPUQuotaat 75% or lower,MemoryMaxat 1536 MiB or lower, no swap, low I/O weight, and bounded task countsSecurity and compatibility
saveCredentialcallers keep the same void-returning contract; only forced Kiro login uses the receipt-bearing writerChecklist
Summary by CodeRabbit