molecule-core/canvas/e2e
Hongming Wang e58ecf2974 fix(e2e): scrollIntoView before toBeVisible — clipped tabs were "missing"
Seventh E2E bug, surfaced after the AuthGate mock from the previous
commit finally let the harness reach the tab-iteration loop:

  Error: tab-skills button missing — TABS list may have drifted
  Locator: locator('#tab-skills')

The TABS bar in SidePanel is `overflow-x-auto` (intentional — there
are 13 tabs and they don't all fit on smaller viewports; the
right-edge fade gradient signals the overflow). Tabs after position
~3 are clipped, and Playwright's `toBeVisible()` returns false for
clipped elements (it checks getBoundingClientRect against viewport).

Fix: `scrollIntoViewIfNeeded()` before the visibility assertion,
mirroring what SidePanel's own keyboard handler does on arrow-key
navigation. The tab is then in view and `toBeVisible()` passes.

This was the test's 7th and (probably) final harness bug. The
chain mapping all the way from "staging E2E timed out at 1200s"
this morning:

  1. instance_status field name (#2066)
  2. staging.moleculesai.app DNS zone (#2066)
  3. X-Molecule-Org-Id TenantGuard header (#2066)
  4. Hydration selector waited pre-click (#2066)
  5. networkidle never settles (this PR's parent commits)
  6. AuthGate /cp/auth/me redirect
  7. Tab buttons clipped by overflow-x-auto

If THIS run still fails, the failure surfaces in actual product
behavior (a tab's panel content), not test mechanics.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-24 20:37:36 -07:00
..
chat-separation.spec.ts initial commit — Molecule AI platform 2026-04-13 11:55:37 -07:00
context-menu-delete.spec.ts feat(canvas/e2e): add Playwright test for context-menu → delete confirm flow (#1344) 2026-04-21 08:11:48 +00:00
filestab-smoke.spec.ts test(e2e): add Playwright smoke for FilesTab split 2026-04-13 18:14:54 -07:00
org-template-import.spec.ts initial commit — Molecule AI platform 2026-04-13 11:55:37 -07:00
staging-setup.ts fix(e2e): send X-Molecule-Org-Id header — TenantGuard 404s without it 2026-04-24 18:13:13 -07:00
staging-tabs.spec.ts fix(e2e): scrollIntoView before toBeVisible — clipped tabs were "missing" 2026-04-24 20:37:36 -07:00
staging-teardown.ts fix(e2e): CP DELETE /cp/admin/tenants body uses 'confirm', not 'confirm_token' 2026-04-21 04:50:28 -07:00