Skip to content

RFC: reboot as a minimal Playwright test-generation eval—or archive #5

Description

@BaseInfinity

Context

PlaywrightGPT was useful in 2023 as a demonstration of natural-language browser control and Playwright test generation. The ecosystem now provides maintained versions of most of that surface:

The current repository also carries substantial legacy weight: an early LangChain/AutoGPT stack, HNSW memory, custom HTML parsing, dynamic execution of model-generated JavaScript, stale model defaults, and large demo media.

A dependency-only refresh would produce another generic browser agent without a clear reason to exist.

Proposed decision

Run a small spike to decide between:

  1. Reboot: make this a tiny, provider-neutral evaluation harness for natural-language-to-Playwright-test generation.
  2. Archive: preserve it as a historical project, add a maintenance-status banner, and point users to current first-party alternatives.

Do not begin a broad modernization until the spike demonstrates a distinct use case.

Possible differentiated scope

The reboot should evaluate generated test artifacts, not compete as another general-purpose browser controller:

  • provide a small set of local deterministic web fixtures and natural-language tasks;
  • accept generated Playwright specs from pluggable model/agent adapters;
  • run the specs in isolated Playwright contexts;
  • report pass/fail, repair attempts, locator quality, runtime, and optional token/cost metadata;
  • preserve generated specs, traces, and structured results for comparison;
  • never execute arbitrary generated code implicitly—generation and --run should be separate, explicit steps.

Lightweight constraints

  • Prefer @playwright/test and standard-library code.
  • Remove LangChain, AutoGPT, vector memory, JSDOM/custom DOM serialization, and native HNSW dependencies unless the spike proves one is essential.
  • Target Node LTS and TypeScript.
  • Aim for no more than five runtime dependencies and roughly 500 lines for the initial core.
  • Keep provider integrations behind a small adapter boundary; one reference adapter is enough initially.
  • Add one deterministic fixture, one generation task, one scoring report, and CI.
  • Do not rewrite git history to remove the existing demo assets.

Decision gates

Proceed with a reboot only if the spike proves all of the following:

  • it measures something that Playwright MCP/Test Agents do not already expose as a reusable comparison artifact;
  • a new contributor can install and run the example in under five minutes;
  • the generated test is executable and its result is scored deterministically;
  • the core stays within the lightweight constraints above;
  • ongoing maintenance is bounded and does not require chasing every frontier-model SDK.

If those gates fail, archive the repository and update the README with historical context and links to maintained alternatives.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions