Skip to content

Add the Docs module and the Playwright automation foundation #7519

Description

@xuang7

Feature Summary

Step 1 of the operator-demo video generator: the shared Playwright automation foundation.

Proposed Solution or Design

Add a new Docs sbt module with Playwright (Chromium) as a dependency. This module provides the shared framework that later operator-demo controllers and generated scripts will build on.

The module includes:

  • ControllerContext and shared base types: define ControllerContext together with the common step, controller, and builder abstractions used by later UI controllers.
  • Shared Playwright utilities: add reusable helpers for common browser interactions, including cursor-visible clicks, optional press-and-hold behavior for controls that do not reliably respond to instantaneous clicks, dropdown selection, explicit waits, and canvas geometry helpers.
  • OperatorScript interface: define the interface implemented by each per-operator script. It includes separate setup and demo phases so preparation work, such as creating or importing the sample workflow, runs before recording starts and remains outside the final video.
  • Shared execution constants: centralize commonly used values such as delay tiers, timeout ceilings, retry counts, and Run button state strings.

Controllers follow a builder-style API:

new SomeControllerBuilder(ctx)
  .someAction(...)
  .execute()

Affected Area

No response

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions