test(e2e): Ignore - #9303
Conversation
🦋 Changeset detectedLatest commit: c0f648c The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
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.
|
API Changes Report
Summary
No API Changes DetectedAll packages have stable APIs with no detected changes. Report generated by Break Check Last ran on |
@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: |
📝 WalkthroughWalkthroughThe change adds runtime-controlled Android debug logging for Clerk Expo and the Clerk Android SDK. Native configuration failures now emit warnings in release builds, while development builds retain detailed error logs. The Expo native template adds conditional OkHttp alignment rules. The profile navigation flow now covers separate iOS and Android paths. A patch changeset documents the behavior. Estimated code review effort: 3 (Moderate) | ~20 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 2 | ❌ 3❌ Failed checks (1 warning, 2 inconclusive)
✅ Passed checks (2 passed)
Comment |
There was a problem hiding this comment.
🧹 Nitpick comments (1)
packages/expo/android/src/main/java/expo/modules/clerk/ClerkExpoDebug.kt (1)
9-10: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winConsider consolidating
debugLoghere instead of duplicating it per module.
debugLog(tag, message)is defined identically inClerkExpoModule.kt,ClerkAuthViewModule.kt, andClerkUserProfileViewModule.kt, each guarded byclerkExpoDebugEnabled(). Move a singleinternal fun debugLog(tag: String, message: String)into this file and have the three modules call the shared version. This keeps the debug-logging policy defined in one place and avoids future drift if the guard condition changes again.♻️ Proposed consolidation
internal fun clerkExpoDebugEnabled(): Boolean = BuildConfig.DEBUG || Log.isLoggable(CLERK_EXPO_DEBUG_TAG, Log.DEBUG) + +internal fun debugLog(tag: String, message: String) { + if (clerkExpoDebugEnabled()) { + Log.d(tag, message) + } +}Then remove the private
debugLogcopies from the three modules.🤖 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/expo/android/src/main/java/expo/modules/clerk/ClerkExpoDebug.kt` around lines 9 - 10, Move the shared debugLog(tag: String, message: String) implementation into ClerkExpoDebug.kt, retaining the clerkExpoDebugEnabled() guard and existing logging behavior. Update ClerkExpoModule, ClerkAuthViewModule, and ClerkUserProfileViewModule to use this internal helper, then remove their duplicated private debugLog definitions.
🤖 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/expo/android/src/main/java/expo/modules/clerk/ClerkExpoDebug.kt`:
- Around line 9-10: Move the shared debugLog(tag: String, message: String)
implementation into ClerkExpoDebug.kt, retaining the clerkExpoDebugEnabled()
guard and existing logging behavior. Update ClerkExpoModule,
ClerkAuthViewModule, and ClerkUserProfileViewModule to use this internal helper,
then remove their duplicated private debugLog definitions.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository YAML (base), Organization UI (inherited)
Review profile: CHILL
Plan: Pro Plus
Run ID: 3a7ea04b-4dd7-40f1-b2c9-fe580acb5f07
📒 Files selected for processing (7)
.changeset/expo-native-debug-logging.md.github/workflows/expo-native-build.ymlpackages/expo/android/src/main/java/expo/modules/clerk/ClerkAuthViewModule.ktpackages/expo/android/src/main/java/expo/modules/clerk/ClerkExpoDebug.ktpackages/expo/android/src/main/java/expo/modules/clerk/ClerkExpoModule.ktpackages/expo/android/src/main/java/expo/modules/clerk/ClerkUserProfileViewModule.ktpackages/expo/src/provider/nativeClientSync.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)
… embedded flow per platform
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 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.
Inline comments:
In `@integration/templates/expo-native/plugins/withClerkOkHttpAlignment.js`:
- Around line 19-23: Update the injection guard in withClerkOkHttpAlignment to
verify that all three required OkHttp coordinates are already present before
skipping GRADLE_BLOCK, or use a unique marker for the complete injected block.
Ensure configurations containing only com.squareup.okhttp3:okhttp:5.4.0 still
receive the logging-interceptor and okhttp-urlconnection rules.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository YAML (base), Organization UI (inherited)
Review profile: CHILL
Plan: Pro Plus
Run ID: 5603267a-a07d-42a2-8355-c906d46e6f66
📒 Files selected for processing (3)
integration/templates/expo-native/app.jsonintegration/templates/expo-native/plugins/withClerkOkHttpAlignment.jsintegration/tests/expo-native/flows/embedded-profile-host-back.yaml
🔗 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)
| module.exports = function withClerkOkHttpAlignment(config) { | ||
| return withAppBuildGradle(config, cfg => { | ||
| if (!cfg.modResults.contents.includes('com.squareup.okhttp3:okhttp:5.4.0')) { | ||
| cfg.modResults.contents += GRADLE_BLOCK; | ||
| } |
There was a problem hiding this comment.
🗄️ Data Integrity & Integration | 🟡 Minor | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
set -euo pipefail
# Inspect all existing OkHttp declarations and force rules in the Expo fixture.
rg -n -C 3 \
'com\.squareup\.okhttp3:(okhttp|logging-interceptor|okhttp-urlconnection)|resolutionStrategy|force' \
integration/templates/expo-nativeRepository: clerk/javascript
Length of output: 1983
🏁 Script executed:
#!/bin/bash
set -euo pipefail
printf '%s\n' '--- plugin and related tests ---'
sed -n '1,180p' integration/templates/expo-native/plugins/withClerkOkHttpAlignment.js
rg -n -C 4 \
'withClerkOkHttpAlignment|GRADLE_BLOCK|logging-interceptor|okhttp-urlconnection|resolutionStrategy|okhttp:5\.4\.0' \
integration packages .github 2>/dev/null | head -n 300 || true
printf '%s\n' '--- Expo template Gradle files ---'
find integration/templates/expo-native -type f \( -name '*.gradle' -o -name '*.gradle.kts' -o -name 'app.json' -o -name 'app.config.*' \) -printRepository: clerk/javascript
Length of output: 6057
🏁 Script executed:
#!/bin/bash
set -euo pipefail
python3 - <<'PY'
from pathlib import Path
path = Path("integration/templates/expo-native/plugins/withClerkOkHttpAlignment.js")
text = path.read_text()
marker = "com.squareup.okhttp3:okhttp:5.4.0"
block = [
"com.squareup.okhttp3:okhttp:5.4.0",
"com.squareup.okhttp3:logging-interceptor:5.4.0",
"com.squareup.okhttp3:okhttp-urlconnection:5.0.0-alpha.16",
]
def inject(contents):
return contents + ("""\\nconfigurations.all {
resolutionStrategy {
force 'com.squareup.okhttp3:okhttp:5.4.0'
force 'com.squareup.okhttp3:logging-interceptor:5.4.0'
force 'com.squareup.okhttp3:okhttp-urlconnection:5.0.0-alpha.16'
}
}
""" if marker not in contents else "")
cases = {
"empty": "",
"complete_block": "\\n".join(f"force '{x}'" for x in block),
"core_only": "dependencies { implementation 'com.squareup.okhttp3:okhttp:5.4.0' }",
"core_and_unrelated": "\\n".join([
"implementation 'com.squareup.okhttp3:okhttp:5.4.0'",
"force 'com.squareup.okhttp3:other:1.0.0'",
]),
}
for name, contents in cases.items():
output = inject(contents)
missing = [x for x in block if x not in output]
print(f"{name}: injected={output != contents}, missing_required_coordinates={missing}")
PYRepository: clerk/javascript
Length of output: 615
Check all required OkHttp coordinates before skipping injection. If another plugin adds only com.squareup.okhttp3:okhttp:5.4.0, this condition skips the logging-interceptor and okhttp-urlconnection rules. Use a unique block marker or verify all three coordinates before skipping injection.
🤖 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 `@integration/templates/expo-native/plugins/withClerkOkHttpAlignment.js` around
lines 19 - 23, Update the injection guard in withClerkOkHttpAlignment to verify
that all three required OkHttp coordinates are already present before skipping
GRADLE_BLOCK, or use a unique marker for the complete injected block. Ensure
configurations containing only com.squareup.okhttp3:okhttp:5.4.0 still receive
the logging-interceptor and okhttp-urlconnection rules.
Description
Checklist
pnpm testruns as expected.pnpm buildruns as expected.Type of change