Fix Android compile against cores without the background-layer transparency local - #40
Merged
Merged
Conversation
…transparency local mobile-ui installs into apps running the distributed core, which does not ship LocalBackgroundLayerPresent yet — the hard reference broke compileDebugKotlin for every app with the plugin installed. The host keeps rendering the layer beneath content; the transparency signal returns when the distributed core ships the composition local with the tabs-hosting work. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This was referenced Aug 4, 2026
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.
What
#37's Android host hard-referenced
LocalBackgroundLayerPresent, a composition local that only exists in the dev core (super-native-web) — not in the distributed core (mobile-air). Since plugin Kotlin compiles into the app module of every install, that single unresolved reference brokecompileDebugKotlinfor every app on mobile-ui dev-main + mobile-air dev-main, background layer used or not (first hit in a real app within hours of merging).The host now renders the layer beneath content without providing the transparency signal, and carries a NOTE that plugin sources must not reference core symbols absent from cores the plugin installs into. The signal returns once the distributed core ships the local alongside the tabs-hosting work.
Verified:
LocalBackgroundLayerPresentwas the only cross-core symbol gap — every other symbol the #37/#38 plugin files reference (NativeRootHostRegistry on both platforms,NodeView(overrideModifier:),NativeRendererRegistry,sendTextChangeEvent) exists in mobile-air dev-main.Follow-up
The structural fix (also noted on #37) is a core-version gate in the plugin manifest so install-time mismatches fail loudly instead of at Kotlin compile.
🤖 Generated with Claude Code