fix(ui): restore Safari edge-to-edge after hidden-composer regression#933
Conversation
PR #932 reintroduced env(safe-area-inset-bottom) into the hidden composer content reserve and inflated no-composer shell padding, undoing #922 and leaving a toolbar-sized blank band. Restore the 0.75rem hidden contract, stop stacking shell pad under DocumentViewer routes, and sync hide/show motion with reduced-motion respect. Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
|
This pull request has been ignored for the connected project Preview Branches by Supabase. |
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
CI triageCI failed on this PR. Automated classification of the 3 failed job(s):
Compared with main CI run #3627 (cancelled). Classification is evidence routing, not permission to ignore a failure. Exact quarantined Playwright identities remain governed by the flake ledger. |
Child surfaces under GlobalSearchShell/ClinicalDashboard kept large pb-[calc(Nrem+env(safe-area-inset-bottom))] clearance that could not collapse when the phone dock hid, so edge-to-edge still failed on those routes. Rely on --mobile-composer-reserve as the single phone clearance owner and lock the removed stack pads in merge-artifacts. Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
Raise the differentials compare visible reserve to 12.5rem so the shared host clears Compare + search without a child env(safe-area) pad, and strengthen document/forms/differentials Playwright assertions so a toolbar-sized hidden reserve cannot regress again. Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
Share mobile composer reserve tokens between GlobalSearchShell and ClinicalDashboard, sync differentials compare backdrop heights to the 12.5rem clearance, use testable safe-area vars on sm+ shell padding, and add tablet/desktop clearance coverage so phone hide-collapse cannot leak. Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
Move visible reserve resolution into mobile-composer-reserve helpers so the dashboard stays within the no-growth line budget, and drop the aliased document-viewer reserve export that knip flagged as a duplicate. Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
Padding-bottom on the shell's column flex scrollport was omitted from scrollHeight, so long service pages parked footers under the visible dock. Move phone reserve onto a sibling spacer, drop min-h-dvh overflow on phone detail pages, and point Playwright proofs at the spacer height. Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
A flex spacer sibling never extended scrollHeight when the content child overflowed a flex-1 min-h-0 wrapper. Use a block scrollport with an inner padding pad so end-of-page content clears the visible composer. Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
Give formulation/specifier pages the same max-sm:min-h-0 treatment as service/form detail, simplify document-route ownership classification, and lock the hidden-pad CSS token in merge-artifact guards. Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
Append the branch-review ledger outcome for the phone dock reserve closure so merge readiness is auditable. Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
Resolve globals.css token conflict by retaining both --header-edge-pad and the phone-dock reserve variables from #933. Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
Ledger closeout for the Safari edge-to-edge merge and stale PR policy body cleanup.
Summary
Verification
npm run verify:cheap— local run on PR head: lint, typecheck, and 2892/2895 unit tests passed; 3 known failures remain intests/pdf-extraction-budget.test.ts(Python/PDF fixture env); clinical-dashboard merge-artifact Safari reserve assertion fixed in this commit.npm run check:production-readiness— passed locally for auth/privacy/admin-route changes.npm run verify:ui— hosted Production UI gate on this PR head (UI-scoped paths includeglobal-search-shell, detail pages, andDocumentViewer).Risk and rollout
Clinical Governance Preflight
Clinical KB Database(sjrfecxgysukkwxsowpy)Notes