Files
kandev/docs/plans/unlink-task-github-pr/task-03-pr-unlink-e2e.md
T
2026-08-02 17:00:32 +01:00

2.1 KiB

id, title, status, wave, depends_on, plan, spec
id title status wave depends_on plan spec
03-pr-unlink-e2e PR unlink E2E coverage done 3
01-backend-unlink-contract
02-frontend-multi-pr-unlink
plan.md ../../specs/tasks/link-existing-task-github-issue.md

Task 03: PR Unlink E2E Coverage

Acceptance

  • Desktop Playwright coverage unlinks the older of two PRs from the hover popover and proves the sibling plus persisted single-PR state remain after reload.
  • Mobile Playwright coverage performs the same action through the existing PR status drawer using a touch event, verifies the close target hitbox, and proves document containment.
  • Shared page-object/API seed helpers identify associations without relying on unstable visible copy.

Verification

cd apps/web && pnpm e2e:run --host --project chromium e2e/tests/pr/pr-multi-popover.spec.ts
cd apps/web && pnpm e2e:run --host --project mobile-chrome e2e/tests/pr/mobile-pr-ci-chip.spec.ts

Files likely touched

  • apps/web/e2e/tests/pr/pr-multi-popover.spec.ts
  • apps/web/e2e/tests/pr/mobile-pr-ci-chip.spec.ts
  • apps/web/e2e/pages/session-page.ts
  • apps/web/e2e/helpers/api-client.ts only if the existing seed helpers cannot express the required association identity

Dependencies

Tasks 01 and 02.

Parallelism

Sequential. The scenarios exercise the completed backend contract and shared frontend component.

Inputs

  • Spec scenarios: desktop unlink and coarse-pointer unlink.
  • Plan section: E2E Tests and the complete mobile design contract.
  • Existing seed/open patterns in the two named PR specs.

Risks

  • The mobile project only discovers mobile-*.spec.ts; keep the existing file name and run the managed E2E runner so production frontend/backend artifacts are rebuilt.
  • When the second PR disappears the drawer/popover may unmount; assert the resulting task state rather than waiting on a detached close control.

Output contract

Report RED/GREEN Playwright evidence, screenshots or rendered inspection, files changed, exact command result, remaining risks/blockers, and update this task plus plan.md status in the same conversation.