Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion tests/ui-phone-scroll.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,11 @@ test("phone chrome has an opaque header, one edge-to-edge footer, and releases b
}) => {
await page.emulateMedia({ reducedMotion: "no-preference" });
await page.setViewportSize(phoneViewport);
await gotoPhoneSurface(page, "/?mode=documents");
// /formulation/worry is a non-home GlobalSearchShell route: heroOwnsPhoneComposer
// is false here so the bottom dock IS rendered and the backdrop is present in
// the DOM (CSS hides it). /?mode=documents in its home state sets
// heroOwnsPhoneComposer=true and omits the dock entirely.
await gotoPhoneSurface(page, "/formulation/worry");

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Select a route that actually renders the footer dock

When this test navigates to /formulation/worry, isInformationPage() classifies it as an information page (src/lib/information-pages.ts:42), while shouldShowSearchComposer suppresses composers on information pages unless isToolDetailWithFooterSearch() accepts them (global-search-shell.tsx:203-208,329-334); that exception covers only services, forms, and medications. Consequently, .answer-footer-search-dock remains absent, dockBackdropDisplay is still "missing", and the assertion expecting "none" fails. Use a non-information, non-home route that renders the compact dock.

Useful? React with 👍 / 👎.


const visible = await page.evaluate(() => {
const header = document.querySelector<HTMLElement>("header#search");
Expand Down