Conversation
The replacement-failure recovery test passed even when the SDK sheet was cached before replaceSync, which would leave later roots unstyled. Assert that the recovered root adopts a populated sheet. Also explain why the picker search inputs use onInput and why two picker stories clear search with fireEvent.input inside shadow roots. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
🦋 Changeset detectedLatest commit: c4a417a The changes in this PR will be included in the next version bump. This PR includes changesets to release 0 packagesWhen 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 |
This branch has not been deployed
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.
Summary
Follow-ups from a review of the merged Shadow DOM rollout PRs (#420, #423, #424, #426). No runtime behavior changes.
replaceSync. With that bug, every later root would adopt an empty sheet and render unstyled. The test now asserts that the recovered root adopts a populated sheet.onInput, and why two picker stories clear search withfireEvent.inputinside shadow roots.Evidence
shadow-root-hosttests passreplaceSynconChangeinstead ofonInputonInputis required and the stories guard ituserEvent.clearin place offireEvent.inputdocument.activeElement, which is the shadow hostVerification
pnpm lint: passedshadow-root-host.test.tsx: 10/10 passedbible-reader-search.test.tsxpassed 18/18 on its own, and the other failing files passed on unchangedjourney-to-the-shadow-dom.🤖 Generated with Claude Code
The PR appears safe to merge; no actionable issue was identified in the changed code.
Summary
This PR strengthens the shadow stylesheet recovery test to catch reuse of a sheet whose replacement failed, and adds explanatory comments to picker components and stories. It does not change runtime behavior.
Reviews (1) · Last reviewed commit: "test(ui): catch shadow stylesheet cache ..."