refactor(homepage): simplify clipboard and gallery interactions [Codex] - #1362
jderochervlk wants to merge 6 commits into
Conversation
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
guide | b64eccc | Commit Preview URL Branch Preview URL |
Sep 20 2026, 02:45 PM |
Lighthouse baselineCompared with target branch
Download the full Lighthouse reports and baseline Commit |
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. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 58a23c2941
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
58a23c2 to
1acc537
Compare
Persist the first-photo fallback when the selected index disappears, so shrinking or emptying the list cannot revive stale selection on regrowth. Cover both transitions without introducing an effect. Addresses PR #1362 review comment 4053846691.
Keep persistent live regions beside the copy controls, independent of their disabled state. Reuse the existing positioned copy box and keep noninteractive feedback click-through so clipboard failure can be retried without adding DOM wrappers. Extend the real-browser clipboard flow to require sibling status regions and exposed failure and disabled-success feedback. Addresses PR #1362 review comment 4053846682.
0c3cab1 to
f9d92c6
Compare
f9d92c6 to
7d54dfb
Compare
d357ce4 to
92ff56a
Compare
|
Codex Review: Didn't find any major issues. Another round soon, please! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
92ff56a to
0f78842
Compare
Extract install controls, use the typed Clipboard API with declarative status, and remove clipboard and gallery effects. Replace gallery transitions with native reduced-motion-aware CSS and keyboard-accessible controls. Cover retries, feedback reset, pending writes, gallery bounds, real clipboard permission recovery, and keyboard selection. Keep existing visual baselines and record measured bundle and DOM changes.
Persist the first-photo fallback when the selected index disappears, so shrinking or emptying the list cannot revive stale selection on regrowth. Cover both transitions without introducing an effect. Addresses PR #1362 review comment 4053846691.
Keep persistent live regions beside the copy controls, independent of their disabled state. Reuse the existing positioned copy box and keep noninteractive feedback click-through so clipboard failure can be retried without adding DOM wrappers. Extend the real-browser clipboard flow to require sibling status regions and exposed failure and disabled-success feedback. Addresses PR #1362 review comment 4053846682.
Exercise native keyboard gallery selection, clipboard rejection and recovery, and repeated copying of both install commands. Addresses PR #1355 comment 4054821928.
Replace the handwritten homepage interaction spec with a typed ReScript source and add the minimal Cypress bindings it requires.
Keep app/routes limited to React Router route modules for the homepage interaction files introduced in this layer.
b9855d0 to
b64eccc
Compare
Context
The homepage's copy controls create and remove DOM nodes from an effect, and its gallery carries an unused automatic timer mode plus a JavaScript transition dependency. This fourth layer of stack #1359 follows #1360 and contributes to #1354.
Changes
Measured Impact
Compared with the font-loading layer using the same production build settings:
The native gallery fade and accessible copy feedback add 100 compressed CSS bytes while removing 5,947 compressed JavaScript bytes overall. Initial asset request counts and media counts are unchanged. Both homepage interaction effects are removed.