Repository navigation
feat(mosaic): wire up user profile active devices - #9992
austincalvelage wants to merge 25 commits into
Conversation
🦋 Changeset detectedLatest commit: 3b5b948 The changes in this PR will be included in the next version bump. This PR includes changesets to release 0 packagesWhen changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configuration
📒 Files selected for processing (23)
🔗 Linked repositories identifiedCodeRabbit considers these linked repositories for cross-repo context during reviews:
Included review availability: This review used your included allowance. 5 included reviews remain after this review. Your included PR review attempts over the past 7 days set your current allowance at 6 reviews per hour. 📝 WalkthroughWalkthroughThe changes add a user-profile active-devices section that loads sessions, displays eligible devices, and supports revoking other sessions. The security panel now accepts the section through a slot, and a live page renders it for signed-in users. The changes also update fake API routes, localization, confirmation retry handling, fixtures, and tests. Priority: ➖ Normal Estimated code review effort: 4 (Complex) | ~45 minutes Merge Risk: ⚪ Minimal · up to No actionable issue is established that should block merging. The intermittent focus report remains unverified. 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Full details: Docstring CoverageExplanation Docstring coverage is 3.57% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 28 functions across 21 files. (1 skipped: 1 unsupported.)
Comment ✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
|
d03939e to
8dca13f
Compare
84791ee to
1ab18cb
Compare
c917bd5 to
e664a41
Compare
2cd2d16 to
a0ab7dd
Compare
@clerk/astro
@clerk/backend
@clerk/chrome-extension
@clerk/clerk-js
@clerk/electron
@clerk/electron-passkeys
@clerk/eslint-plugin
@clerk/expo
@clerk/expo-biometrics
@clerk/expo-google-signin
@clerk/expo-passkeys
@clerk/express
@clerk/fastify
@clerk/hono
@clerk/localizations
@clerk/mosaic
@clerk/nextjs
@clerk/nuxt
@clerk/react
@clerk/react-router
@clerk/shared
@clerk/tanstack-react-start
@clerk/testing
@clerk/ui
@clerk/upgrade
@clerk/vue
commit: |
74d2c85 to
0ca1f20
Compare
Description
Wire the Mosaic active devices section to Clerk so users can view sessions and device details, then sign out another device. Show localized activity dates, current-device and impersonation badges, and revocation errors with retry actions. Locally rejected sign-outs use catalog copy for unavailable devices. Open details update their localized name and activity text when the locale changes. Keep the details dialog open while sign-out is pending and restore focus after removal.
Use the existing SDK session-list behavior. Results remain cached, and failed list requests resolve to an empty list. SDK API changes, list-load error/retry enhancements, and shared focus-hook changes are outside this PR. One browser run returned focus to the current-device fallback after sign-out from details instead of the next row; subsequent runs passed with the unchanged hook. The next-row regression test remains in place. This intermittent focus failure needs investigation before choosing a fix.
Session reverification UI is deferred. Requests that require it surface the API error and leave the device in place. Ignore stale work after the active user or session changes. Compose the connected section through the security panel's
activeDevicesSlot. Bulk sign-out is deferred, with both gaps documented in feature tests. Full UserProfile assembly is outside this PR.Checklist
pnpm testruns as expected. The scoped active-device and composition Chromium suites passed with 32 tests and 2 existing TODOs on the latest run. Active-device Chromium coverage lives in one colocated connected feature file. Existing bulk-action and delayed-row contracts remain in the unit suite. The intermittent focus failure remains unresolved. The targeted device, security-panel, error, and confirmation unit suites passed with 66 tests. Mosaic type checks, targeted lint, and formatting passed.pnpm buildruns as expected. The Mosaic JS, CSS, and bundle checks passed locally.Type of change