Skip to content

test(expo): change instance settings with host.useSettings - #10596

Merged
mikepitre merged 2 commits into
mainfrom
mike/use-settings
Nov 3, 2026
Merged

mikepitre merged 2 commits into
mainfrom
mike/use-settings

Conversation

@mikepitre

Copy link
Copy Markdown
Contributor

Description

The Expo native e2e tests now turn on biometric sign-in with host.useSettings inside biometric-availability.e2e.ts, and its .settings.json file is gone. This follows clerk/internal-mobile-e2e#9, which replaces spec settings files with host.useSettings: a test changes any instance-config setting, on or off, at any point, and the CLI puts it back when the test ends.

The verify-clerk-expo skill and integration/expo-native/README.md now describe host.useSettings, the restore, the read-only settings verb that prints the test application's live config, and a table of settings that tests often change. On a CI probe of the native SDKs, Android kept showing the settings it read at launch until the app relaunched, so the docs say to call host.launch() after host.useSettings. The host test of the deleted settings-file planner is removed.

Full device run on this branch, 17 tests on iOS and 16 on Android, all passed: run. The biometric change is restored in both run.json files.

Checklist

  • pnpm test runs as expected.
  • pnpm build runs as expected.
  • (If applicable) JSDoc comments have been added or updated for any package exports
  • (If applicable) Documentation has been updated

Type of change

  • 🐛 Bug fix
  • 🌟 New feature
  • 🔨 Breaking change
  • 📖 Refactoring / dependency upgrade / documentation
  • other:

🤖 Generated with Claude Code

mikepitre and others added 2 commits November 2, 2026 17:51
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A test now changes instance settings with host.useSettings, and the CLI
restores them after each test. Spec settings files, settings groups, and
their rules are gone. Document the call, the restore, the run.json
settings entries, and the read-only settings verb.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@vercel

vercel Bot commented Nov 2, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
clerk-js-sandbox Ready Ready Preview Nov 2, 2026 11:23pm UTC
swingset Ready Ready Preview Nov 2, 2026 11:23pm UTC

Request Review

@changeset-bot

changeset-bot Bot commented Nov 2, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: bee6e61

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 0 packages

When 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

@coderabbitai

coderabbitai Bot commented Nov 2, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

No actionable comments were generated in the recent review.

Recent review info
Run configuration
  • Source mode: Auto
  • Repository: clerk/javascript
  • Branch: main
  • File: .coderabbit.yaml
  • Commit: 18f2fa8
  • Layers: Repository YAML (base), Organization UI (inherited)
  • Review profile: ASSERTIVE
  • Plan: Team
  • Run ID: 83b2ab5d-8ada-4fe1-b4fd-7f1bb75a6841
Commits

Reviewing files that changed from the base of the PR and between 18f2fa8 and bee6e61.

Files ignored due to path filters: 1
  • integration/expo-native/package-lock.json is excluded by !**/package-lock.json
Files selected for processing: 11
  • .changeset/expo-native-use-settings.md
  • .claude/skills/verify-clerk-expo/SKILL.md
  • .claude/skills/verify-clerk-expo/features/native-auth-view.md
  • .claude/skills/verify-clerk-expo/features/native-modules.md
  • .claude/skills/verify-clerk-expo/references/instances.md
  • .claude/skills/verify-clerk-expo/references/output.md
  • integration/expo-native/README.md
  • integration/expo-native/package.json
  • integration/expo-native/specs/features/native-modules/biometric-availability.e2e.ts
  • integration/expo-native/specs/features/native-modules/biometric-availability.settings.json
  • integration/expo-native/test/host.test.ts
Linked repositories identified

CodeRabbit considers these linked repositories for cross-repo context during reviews:

Files with no reviewable changes: 2
  • integration/expo-native/specs/features/native-modules/biometric-availability.settings.json
  • integration/expo-native/test/host.test.ts

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 8 reviews per hour.

Walkthrough

The Expo native test guidance now describes per-test settings changes through host.useSettings instead of settings files and grouped runs. The biometric availability test uses this API, and its settings file is removed. The documentation also describes restoring changed settings, inspecting live config with the settings command, and updated run records. The internal mobile E2E dependency reference changes.

Estimated code review effort: 2 (Simple) | ~12 minutes

Possibly related PRs

  • clerk/javascript#10556: Pins the same internal mobile E2E dependency to the earlier commit that this pull request advances.

Suggested reviewers: wobsoriano

Merge Risk: Minimal · up to bee6e

The settings workflow and biometric test change have no established merge-blocking risk.

Pre-merge checks: Passed 5
Check name Status Explanation
Title check Passed The title clearly identifies the main change: updating Expo tests to use host.useSettings for instance settings.
Description check Passed The description directly explains the biometric test change, documentation updates, settings restoration, and validation results.
Docstring Coverage Passed No eligible functions found in the changed files. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentat…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Docstring Coverage

Explanation

No eligible functions found in the changed files. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentation-only edits and deletions within surviving functions are included; unchanged diff context and fully deleted functions are excluded. Analyzed 0 functions across 1 files. (8 skipped: 8 unsupported.)

  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Warning

Linked repositories: Some configured repositories could not be included in this review. Cross-repository analysis may be incomplete. Please check linked-repository access and settings.

CodeRabbit Verify

  • Run CodeRabbit Verify to test the changes in this pull request.

@mikepitre mikepitre changed the title test(expo-native): change instance settings with host.useSettings test(expo): change instance settings with host.useSettings Nov 2, 2026
@pkg-pr-new

pkg-pr-new Bot commented Nov 2, 2026

Copy link
Copy Markdown

Open in StackBlitz

@clerk/astro

npm i https://pkg.pr.new/@clerk/astro@10596

@clerk/backend

npm i https://pkg.pr.new/@clerk/backend@10596

@clerk/chrome-extension

npm i https://pkg.pr.new/@clerk/chrome-extension@10596

@clerk/clerk-js

npm i https://pkg.pr.new/@clerk/clerk-js@10596

@clerk/electron

npm i https://pkg.pr.new/@clerk/electron@10596

@clerk/electron-passkeys

npm i https://pkg.pr.new/@clerk/electron-passkeys@10596

@clerk/eslint-plugin

npm i https://pkg.pr.new/@clerk/eslint-plugin@10596

@clerk/expo

npm i https://pkg.pr.new/@clerk/expo@10596

@clerk/expo-biometrics

npm i https://pkg.pr.new/@clerk/expo-biometrics@10596

@clerk/expo-google-signin

npm i https://pkg.pr.new/@clerk/expo-google-signin@10596

@clerk/expo-native-components

npm i https://pkg.pr.new/@clerk/expo-native-components@10596

@clerk/expo-passkeys

npm i https://pkg.pr.new/@clerk/expo-passkeys@10596

@clerk/express

npm i https://pkg.pr.new/@clerk/express@10596

@clerk/fastify

npm i https://pkg.pr.new/@clerk/fastify@10596

@clerk/hono

npm i https://pkg.pr.new/@clerk/hono@10596

@clerk/localizations

npm i https://pkg.pr.new/@clerk/localizations@10596

@clerk/mosaic

npm i https://pkg.pr.new/@clerk/mosaic@10596

@clerk/nextjs

npm i https://pkg.pr.new/@clerk/nextjs@10596

@clerk/nuxt

npm i https://pkg.pr.new/@clerk/nuxt@10596

@clerk/react

npm i https://pkg.pr.new/@clerk/react@10596

@clerk/react-router

npm i https://pkg.pr.new/@clerk/react-router@10596

@clerk/shared

npm i https://pkg.pr.new/@clerk/shared@10596

@clerk/tanstack-react-start

npm i https://pkg.pr.new/@clerk/tanstack-react-start@10596

@clerk/testing

npm i https://pkg.pr.new/@clerk/testing@10596

@clerk/ui

npm i https://pkg.pr.new/@clerk/ui@10596

@clerk/upgrade

npm i https://pkg.pr.new/@clerk/upgrade@10596

@clerk/vue

npm i https://pkg.pr.new/@clerk/vue@10596

commit: bee6e61

@mikepitre
mikepitre merged commit d22c84b into main Nov 3, 2026
61 of 62 checks passed
@mikepitre
mikepitre deleted the mike/use-settings branch November 3, 2026 13:29

This branch was successfully deployed

2 active deployments
Preview – swingset — bee6e615 Deployed Nov 2, 2026 by vercel[bot]
Preview – clerk-js-sandbox — bee6e615 Deployed Nov 2, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants