polish(pwa): native phone install sheet + PWA-window review and checkpoint closeout#961
Conversation
… steps Install prompt and iOS hint present as a bottom sheet on phones: full bleed to the viewport edges, flush bottom over the composer zone, rounded top, and a static grip bar matching the Mode-menu sheet language (#935). The real app icon (/icons/icon-192) replaces the generic download tile beside the name and tagline; the install card gains a Free/no-store meta row and the iOS hint gains two accent step chips (Share -> Add to Home Screen) as aria-hidden visual reinforcement of the unchanged accessible sentence. Stack bottom offset extracted to --pwa-notice-bottom-gap (standalone override included) so the sheet's flush-bottom math tracks any future re-anchoring. >=640px keeps the #905 card/toast placements. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EXsJcLrbZUXwnBeG91cVo9
…oseout Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EXsJcLrbZUXwnBeG91cVo9
|
This pull request has been ignored for the connected project Preview Branches by Supabase. |
|
Warning Review limit reached
Next review available in: 12 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThe PWA install prompts now share a bottom-sheet presentation with standardized identity and installation steps. Responsive CSS adjusts phone and standalone positioning, while the review ledger records PWA verification and release-gate results. ChangesPWA install-sheet redesign
Estimated code review effort: 3 (Moderate) | ~20 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
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 `@src/app/globals.css`:
- Around line 1977-1978: In the CSS rule containing --pwa-notice-bottom-gap, add
an empty line before the position declaration to satisfy the required
declaration spacing.
🪄 Autofix (Beta)
❌ Autofix failed (check again to retry)
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: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: 4f9bb5cc-e2ef-45c9-96c3-cc0bf75f0e21
📒 Files selected for processing (3)
docs/branch-review-ledger.mdsrc/app/globals.csssrc/components/pwa-lifecycle.tsx
|
Note Autofix is a beta feature. Expect some limitations and changes as we gather feedback and continue to improve it. The agent ran but didn't make any changes. The issues may already be fixed or require manual intervention. |
CodeRabbit stylelint nit (declaration-empty-line-before) in the .pwa-notice-stack rule. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EXsJcLrbZUXwnBeG91cVo9
Summary
src/components/pwa-lifecycle.tsx,src/app/globals.css): the install prompt and the iOS Add-to-Home-Screen hint now present as a native-feeling bottom sheet on phones — full bleed to the viewport edges, flush to the bottom over the composer zone, rounded top corners, and a static grip bar matching the Mode-menu sheet language introduced by feat(ui): phone Mode menu opens as a bottom sheet #935. The real app icon (/icons/icon-192) replaces the generic download tile beside the app name and a tagline; the install card gains a "Free · No app store · Takes a few seconds" meta row with a full-width primary button on phones; the iOS hint gains two accent step chips (1. Tap Share → 2. Add to Home Screen) as aria-hidden visual reinforcement of the unchanged accessible instruction sentence. On ≥640px both notices keep the polish(pwa): redesigned install/update notices for all screen sizes + review follow-ups #905 floating-card/top-toast placements. The notice stack's bottom offset is now a custom property (--pwa-notice-bottom-gap, with the standalone override) so the sheet's flush-bottom math and any future composer re-anchoring are one-line changes.ef042ca..e128384, 44+ commits): agent-verified sweep found only polish(pwa): redesigned install/update notices for all screen sizes + review follow-ups #905/Fix all component-library audit findings #897 (this program's own commits) touched PWA surfaces — sw.js/CACHE_VERSION binding, manifest, icons, kill-switch, and headers all unchanged, so the privacy contract holds by construction. The one geometric risk (five composer/dock-space reworks sharing the fixed-bottom coordinate space) was probed live at 390×844: the non-install notices keep correct clearance at rest. Full verdict in the ledger row.7ec25d9;release-browser-matrixcancelled twice by theCI-${ref}cancel-in-progress concurrency during main churn (livelock at the 2-attempt cap; WebKit verification outstanding — quiet-window dispatch, the weekly scheduled run, or a dedicated matrix concurrency group are the human options); live golden retrieval eval failed 4/36 deterministically with a regression window implicating rag: add deterministic and opt-in semantic reranking #901's rerank merge (vector layer healthy; July 17 passed pre-rag: add deterministic and opt-in semantic reranking #901) — clinical-path, deferred to a human decision. Spend ≈ $1–2.Verification
pwa-lifecycle.dom,pwa-manifest,pwa-service-worker,pwa-kill-switch— 56/56npm run verify:cheap— 2971 passed / 1 failed (the long-baselined container-onlypdf-extraction-budgetartifact, hosted-CI-green through feat(pwa): retirement kill-switch, offline-version binding guard, and dev teardown flag #826–polish(pwa): redesigned install/update notices for all screen sizes + review follow-ups #905)npm run test:e2e:pwa— privacy/offline journey green; sole failure is the container-onlyin-incognitoinstallability artifactnpm run verify:ui— 243 passed / 2 failed (both long-baselined container-only artifacts)npm run build+ client-bundle secret scan +npm run check:bundle-budget— 1303.4 KiB gzip vs 1278.6 KiB enforced baseline, within tolerance (the sheet reuses existing primitives; ~0 added JS)install-sheet--*.png)Risk and rollout
d8d8c4a; the ledger commit is documentation-only.Notes
🤖 Generated with Claude Code
https://claude.ai/code/session_01EXsJcLrbZUXwnBeG91cVo9
Generated by Claude Code
Summary by CodeRabbit