Skip to content

Add a Playwright end-to-end harness with a containerised gateway #89

Description

@bburda

Summary

The repository has no end-to-end coverage. Everything is verified with Vitest against jsdom, so nothing exercises the app in a real browser talking to a real gateway. Contract mismatches between the UI and the gateway, and regressions that only appear once a real network round trip and a real DOM are involved, can only be caught by hand today.


Proposed solution (optional)

Add a Playwright harness that runs the app against a gateway in a container:

  • playwright.config.ts plus an e2e/ directory, with the dev server started by Playwright itself
  • a Compose file pinning a specific gateway image, its parameter file, a small manifest, and a named volume so anything the gateway writes stays out of the checkout
  • a global setup that waits for the gateway to be healthy and seeds the stored server URL, so specs do not have to drive the connection dialog
  • a smoke test proving the stack comes up and the entity tree renders
  • a CI job alongside the existing checks, dumping the gateway's container logs when a run fails so a container that dies during startup can be diagnosed from the run alone
  • a section in CONTRIBUTING describing how to run the suite locally

Additional context (optional)

The harness is the prerequisite for end-to-end coverage of the Scripts tab (#45), which is where the need surfaced: several of its behaviours depend on what the gateway actually does with a script process, and cannot be verified against a mock.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions