Three e2e UI assertions failing on both prod + preview — investigate and fix #114

Open
opened 2026-04-21 01:48:58 +00:00 by forgejo_admin · 0 comments
Contributor

Type

Bug

Lineage

Discovered during pipelines #125 (against prod URL) and #127 (against preview webServer). These three tests fail in BOTH environments — they are not preview-vs-prod drift, they are real test or UI bugs that need investigation.

Repo

forgejo_admin/pal-e-app

What Broke

Three Playwright tests fail consistently:

  1. e2e/home.spec.ts:53Home page › recently modified section is rendered with note list
  2. e2e/note-detail.spec.ts:21Note detail page › TOC sidebar is present with contents heading
  3. e2e/note-detail.spec.ts:35Note detail page › note type badge is displayed

All three test for UI elements. Both retries (1 retry on CI) also fail. Failure is consistent across pipelines #125 and #127, ruling out flake.

Repro Steps

  1. Run npx playwright test home.spec.ts:53 note-detail.spec.ts:21 note-detail.spec.ts:35 locally with the preview server.
  2. Observe each test's specific assertion and trace.

Expected Behavior

All three tests pass. Diagnosis options:

  • (A) UI element selector drifted — fix the test selector to match current markup
  • (B) UI element was removed/renamed in PR #105 or #109 — restore element or update test expectation
  • (C) Test depends on specific seed data (e.g., specific note slug for note-detail tests) that no longer exists — adjust test fixture or use a stable slug

Environment

  • Repo: forgejo_admin/pal-e-app at SHA ≥ 4454c8d (PR #109)
  • Test framework: Playwright + chromium, 1 worker on CI, 1 retry
  • Backend: pal-e-docs API at pal-e-docs.tail5b443a.ts.net (live)
  • Pipelines: #125 and #127 logs both show these 3 as the only persistent failures across runs

Acceptance Criteria

  • Each of the 3 tests has its failure cause classified (A/B/C above or a new category)
  • Fix applied (test update, UI restore, or fixture adjustment as appropriate)
  • Pipeline run with these 3 tests passing for 2 consecutive CI runs (rule out flake)
  • No other tests regress

Out of Scope

  • Broader test refactoring (one ticket per concern)
  • Mocking the backend API for tests (separate ticket if pursued)
  • forgejo_admin/pal-e-app#110, #112 — sibling fixes in PR #111 (these 3 should not block #111 if other 7 failures are resolved)
  • feedback_qa_ci_blockers.md — tests that can't pass in CI are blockers
### Type Bug ### Lineage Discovered during pipelines #125 (against prod URL) and #127 (against preview webServer). These three tests fail in BOTH environments — they are not preview-vs-prod drift, they are real test or UI bugs that need investigation. ### Repo `forgejo_admin/pal-e-app` ### What Broke Three Playwright tests fail consistently: 1. `e2e/home.spec.ts:53` — `Home page › recently modified section is rendered with note list` 2. `e2e/note-detail.spec.ts:21` — `Note detail page › TOC sidebar is present with contents heading` 3. `e2e/note-detail.spec.ts:35` — `Note detail page › note type badge is displayed` All three test for UI elements. Both retries (1 retry on CI) also fail. Failure is consistent across pipelines #125 and #127, ruling out flake. ### Repro Steps 1. Run `npx playwright test home.spec.ts:53 note-detail.spec.ts:21 note-detail.spec.ts:35` locally with the preview server. 2. Observe each test's specific assertion and trace. ### Expected Behavior All three tests pass. Diagnosis options: - (A) UI element selector drifted — fix the test selector to match current markup - (B) UI element was removed/renamed in PR #105 or #109 — restore element or update test expectation - (C) Test depends on specific seed data (e.g., specific note slug for note-detail tests) that no longer exists — adjust test fixture or use a stable slug ### Environment - Repo: `forgejo_admin/pal-e-app` at SHA ≥ `4454c8d` (PR #109) - Test framework: Playwright + chromium, 1 worker on CI, 1 retry - Backend: `pal-e-docs` API at `pal-e-docs.tail5b443a.ts.net` (live) - Pipelines: #125 and #127 logs both show these 3 as the only persistent failures across runs ### Acceptance Criteria - [ ] Each of the 3 tests has its failure cause classified (A/B/C above or a new category) - [ ] Fix applied (test update, UI restore, or fixture adjustment as appropriate) - [ ] Pipeline run with these 3 tests passing for 2 consecutive CI runs (rule out flake) - [ ] No other tests regress ### Out of Scope - Broader test refactoring (one ticket per concern) - Mocking the backend API for tests (separate ticket if pursued) ### Related - `forgejo_admin/pal-e-app#110, #112` — sibling fixes in PR #111 (these 3 should not block #111 if other 7 failures are resolved) - `feedback_qa_ci_blockers.md` — tests that can't pass in CI are blockers
Commenting is not possible because the repository is archived.
No milestone
No project
No assignees
1 participant
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ldraney/pal-e-app#114
No description provided.