bbovenzi opened a new pull request, #74367: URL: https://github.com/apache/airflow/pull/74367
The UI e2e jobs spend most of their runtime loading pages and seeding Dag runs for checks that only exercise client-side rendering, or that repeat another test against the same component. This moves those checks to Vitest and merges per-page display checks into a single page load, so Playwright only covers flows that need a real Airflow backend. Playwright (Chromium): **142 → 89 tests**. **Moved to Vitest** (each new assertion was confirmed to fail when the behaviour is broken): - Calendar total/failed view: failed-only filtering, fewer active cells, `data-view-mode`, mixed-cell color layers (`Calendar.test.tsx`) - Code tab: source, language and line numbers passed to the editor (`Code.test.tsx`) - Tasks tab: operator / trigger rule / retries filters and name search (`Tasks.test.tsx`) - XCom expand/collapse all (`XCom.test.tsx`) - Dags list card/table toggle (`DagsList.test.tsx`) - Backfill date range validation, including the #54429 date-only regression (`RunBackfillForm.test.tsx`) - DataTable column hide and re-show (`DataTable.test.tsx`) - Log levels, timestamp format and log settings menu (`Logs.test.tsx`) **Removed as duplicates:** - HITL review modal opened from Dag detail (button and route), Dag run button, and Dags card-view badge. The same modal and route-sync hook are still covered from the dashboard, Dag run route, Dags table badge and required actions drawer, plus the existing `HITLReviewModal` / `useHITLReviewModalRouteSync` unit tests. - Success-state filter tests (the failed-state ones exercise the same path), and the Dag Runs tab filter tests (the tab and the global runs page render the same `<DagRuns />`). **Merged** into one test per page load: plugins, providers, Dag bundles, assets list, XComs, Dags list, calendar and Runs tab. Page-object members left unused by these removals are deleted (including `DagDetailPage`). Not moved: "code is scrollable" (needs real Monaco layout) and the dashboard alert clamp test (measures real rendered heights). Data seeding and setup cost (`beforeAll` hooks, per-fixture-file workers) will be addressed in a follow-up PR. Checks run locally: `pnpm lint`, `prettier --check`, full `pnpm test` for the UI (184 files, 1622 tests) and the simple auth manager UI, `prek` pre-commit and manual stages. --- ##### Was generative AI tooling used to co-author this PR? - [X] Yes — Claude Code (Opus 5.5) Generated-by: Claude Code (Opus 5.5) following [the guidelines](https://github.com/apache/airflow/blob/main/contributing-docs/05_pull_requests.rst#gen-ai-assisted-contributions) --- 🤖 Generated with [Claude Code](https://claude.com/claude-code) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
