Skip to content

Add dedicated web E2E test gate before re-enabling Playwright in just test-all #11

@ifsheldon

Description

@ifsheldon

Problem

just test-all previously depended on test-web-e2e, which ran cd frontends/web && bunx playwright test directly. The web app does not currently have a dedicated Playwright E2E config, fixture strategy, or stable E2E command, so this is not a reliable MVP release gate. It can pick up the wrong files or fail for setup reasons unrelated to the MVP smoke surface.

For MVP, just test-all should stay limited to the reliable Rust and frontend unit gates.

Proposed solution

Add a dedicated web E2E setup before wiring Playwright back into the default gate:

  • Add an explicit Playwright config for Agentics web E2E.
  • Put E2E specs under a dedicated directory such as frontends/web/e2e/.
  • Define a package script, for example bun run test:e2e, that starts or targets the correct web server.
  • Use stable fixtures and explicit auth/session setup for admin, creator, public, and agent-facing views.
  • Re-enable a just test-web-e2e target only after the command is reliable locally and in CI.

Alternatives and tradeoffs

  • Keep Playwright out of test-all until after MVP: fastest and least noisy, but browser regressions rely on targeted/manual checks.
  • Add a single smoke-only Playwright test now: catches basic routing issues, but may still create a false sense of coverage if auth and data setup are not stable.
  • Build the full E2E harness now: best long-term quality, but too much release-gate work for the current MVP polish pass.

Acceptance criteria

  • frontends/web has a dedicated Playwright config and E2E test directory.
  • The E2E command is documented and deterministic on a clean checkout.
  • CI and just test-web-e2e use the same command.
  • just test-all includes test-web-e2e only after the E2E command is stable.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions