feat(ui): remove experimental gate from self-serve OIDC flow - #9288
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
@clerk/astro
@clerk/backend
@clerk/chrome-extension
@clerk/clerk-js
@clerk/electron
@clerk/electron-passkeys
@clerk/eslint-plugin
@clerk/expo
@clerk/expo-google-signin
@clerk/expo-passkeys
@clerk/express
@clerk/fastify
@clerk/hono
@clerk/localizations
@clerk/nextjs
@clerk/nuxt
@clerk/react
@clerk/react-router
@clerk/shared
@clerk/tanstack-react-start
@clerk/testing
@clerk/ui
@clerk/upgrade
@clerk/vue
commit: |
🦋 Changeset detectedLatest commit: abfbac2 The changes in this PR will be included in the next version bump. This PR includes changesets to release 23 packages
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 |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository YAML (base), Organization UI (inherited) Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
🔗 Linked repositories identifiedCodeRabbit considers these linked repositories for cross-repo context during reviews:
📝 WalkthroughWalkthroughSelf-serve OIDC configuration is enabled for all applications. The experimental Estimated code review effort: 3 (Moderate) | ~20 minutes Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Comment |
API Changes Report
Summary
@clerk/sharedCurrent version: 4.25.9 Subpath
|
There was a problem hiding this comment.
🧹 Nitpick comments (1)
packages/ui/src/components/ConfigureSSO/steps/__tests__/SelectProviderStep.test.tsx (1)
108-114: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winUse an accessible Testing Library query for the OIDC option.
container.querySelector('input[value="oidc_custom"]')couples the test to the DOM implementation and can pass even if the option is not exposed as an operable radio. Query the OIDC option by accessible role/name or label, matching the existing Okta assertion.Suggested assertion
- const { container } = renderStep(wrapper); + renderStep(wrapper); - expect(container.querySelector('input[value="oidc_custom"]')).toBeInTheDocument(); + expect(screen.getByRole('radio', { name: /OIDC/i })).toBeInTheDocument();As per coding guidelines, React Testing Library tests should use proper test queries.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@packages/ui/src/components/ConfigureSSO/steps/__tests__/SelectProviderStep.test.tsx` around lines 108 - 114, Update the OIDC assertion in the renders OIDC provider tile test to use an accessible Testing Library query, such as the radio role with the option’s accessible name or its associated label, instead of container.querySelector. Keep the existing Okta Workforce radio assertion pattern and continue verifying the OIDC option is present and operable.Source: Coding guidelines
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Nitpick comments:
In
`@packages/ui/src/components/ConfigureSSO/steps/__tests__/SelectProviderStep.test.tsx`:
- Around line 108-114: Update the OIDC assertion in the renders OIDC provider
tile test to use an accessible Testing Library query, such as the radio role
with the option’s accessible name or its associated label, instead of
container.querySelector. Keep the existing Okta Workforce radio assertion
pattern and continue verifying the OIDC option is present and operable.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository YAML (base), Organization UI (inherited)
Review profile: CHILL
Plan: Pro Plus
Run ID: d286f553-20da-46bb-b667-e73ccbaec498
📒 Files selected for processing (7)
.changeset/quiet-moons-shine.mdpackages/shared/src/types/clerk.tspackages/ui/src/components/ConfigureSSO/ConfigureSSOContext.tsxpackages/ui/src/components/ConfigureSSO/steps/ConfigureStep/__tests__/ConfigureStep.test.tsxpackages/ui/src/components/ConfigureSSO/steps/ConfigureStep/index.tsxpackages/ui/src/components/ConfigureSSO/steps/SelectProviderStep.tsxpackages/ui/src/components/ConfigureSSO/steps/__tests__/SelectProviderStep.test.tsx
🔗 Linked repositories identified
CodeRabbit considers these linked repositories for cross-repo context during reviews:
clerk/clerk_go(manual)clerk/dashboard(manual)clerk/accounts(manual)clerk/backoffice(manual)clerk/clerk(manual)clerk/clerk-docs(manual)clerk/cloudflare-workers(manual)clerk/clerk-ios(auto-detected)clerk/clerk-android(auto-detected)clerk/cli(auto-detected)
💤 Files with no reviewable changes (2)
- packages/ui/src/components/ConfigureSSO/ConfigureSSOContext.tsx
- packages/shared/src/types/clerk.ts
🚧 Files skipped from review as they are similar to previous changes (3)
- .changeset/quiet-moons-shine.md
- packages/ui/src/components/ConfigureSSO/steps/SelectProviderStep.tsx
- packages/ui/src/components/ConfigureSSO/steps/ConfigureStep/index.tsx
The OIDC group now always renders, so the step shows 5 provider cards instead of 4.
Description
Removes the
experimental.oidcSelfServegate now that the self-serve OIDC flow is complete.Behaviour changes for applications that never set the option:
<OrganizationProfile />Security tab provider picker.oauth_custom_<slug>/oidc_*) resolves toOidcCustomConfigureStepsinstead of degrading to the unsupported-provider state.resolveConfigureStepsdrops its second parameter,ConfigureSSODatadropsisOIDCFlowEnabled, andClerkOptions['experimental']dropsoidcSelfServe. The option was declared inside anAutocomplete<..., Record<string, any>>, so applications still passing it keep type-checking; it is now inert.The unsupported-provider fallback stays for provider families a given SDK version doesn't recognise.
Checklist
pnpm testruns as expected.pnpm buildruns as expected.Type of change