Conversation
Current setup results in absolute paths being used which will result in cache-misses as we build between different machines or git worktrees
landomen
approved these changes
Feb 10, 2026
Contributor
landomen
left a comment
There was a problem hiding this comment.
I re-ran exp3 and confirmed the issue is fixed. Also tested update from develop to this branch and it works fine 💪
nalcalag
added a commit
that referenced
this pull request
Feb 11, 2026
)" This reverts commit 009c584.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Task/Issue URL: https://app.asana.com/1/137249556945/task/1213076149941930
Description
Fixes
Roomschema export by switching to the Room Gradle plugin. Several modules were usingannotationProcessorOptionsto configure the schema location, but this only works withkapt, notKSP. SinceRoomis compiled withKSPin these modules, schemas weren't being exported.Additionally (the original reason I was looking at this), absolute paths were being used which breaks
Gradlecaching.Changes
androidx.room Gradleplugin to affected modulesannotationProcessorOptionsandksp { arg(...) }with the new room{ schemaDirectory(...) }Why the JSON schema changes/creation
Because many of the DB schema files were missing, and one was wrong. They've been missing for some time.
6 databases were affected:
2 databases were already working (
PirDatabase,Autofilldatabases) because they used the correctksp { arg(...) }syntax already.Why this matters
Steps to test this PR
Note
Medium Risk
Build config changes span many modules and regenerate schema artifacts; risk is mainly in build/cache behavior and Room migration test expectations rather than runtime logic.
Overview
Migrates Room schema export configuration to the official
androidx.roomGradle plugin across multiple modules (includingapp,vpn-store,broken-site-store,remote-messaging-store,site-permissions-store,voice-search-store,experiments-impl,pir-impl, andautofill-impl). This removes the oldannotationProcessorOptions/ksp { arg("room.schemaLocation", ...) }approach, switches schema paths to project-relative ($projectDir/schemas), and addsroom { schemaDirectory(...) }plus schema assets wiring for tests.Adds/updates Room exported schema JSONs for several databases (new versions for
AppDatabase,VpnDatabase,RemoteMessagingDatabase,SitePermissionsDatabase,VoiceSearchDatabase) and correctsBrokenSiteDatabasev1 schema (primary key/identity hash), enabling migration testing and improving Gradle build cache reliability.Written by Cursor Bugbot for commit 6b0827e. Configure here.