BMAD-METHOD/scripts/epic-execute-lib
Caleb c45d4fa875 feat(epic-execute): UI flow execution - Playwright spec generation + run
Second half of the contract execution engine (held on branch per bundle plan).

- generate_playwright_spec: translate ui.flows into a Playwright spec - goto /
  getByTestId click+fill (with getByLabel/getByRole/getByText fallback),
  visible/hidden/text/url assertions, role-based storageState for allowed/
  forbidden checks; persistence is delegated to backend cases
- run_ui_flows: generate the spec, run it via the project's `npx playwright
  test --reporter=json`, and parse results
- parse_playwright_report: read stats.unexpected + failed titles into
  CONTRACT_EXEC_FAILURES for the fix loop
- _pw_locator (testid → label → role → text) and _ts_safe helpers

Tested: spec generation for the canonical "create a quote" allowed flow + a
"viewer cannot" forbidden flow produces correct TS; report parsing handles
pass and fail. Live browser execution needs the real app + browser binaries.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-04 05:42:21 -05:00
..
INIT.md merge: sync with upstream v6.8.0 2026-05-26 06:00:02 -05:00
contract-exec.sh feat(epic-execute): UI flow execution - Playwright spec generation + run 2026-06-04 05:42:21 -05:00
contract-harness.sh feat(epic-execute): UI contract - ui: harness schema, preflight, test-id planning 2026-06-04 05:28:36 -05:00
decision-log.sh feat(epic-execute): add phase 2+3 improvements with modular architecture 2026-01-26 14:23:16 -06:00
design-phase.sh feat(epic-execute): UI contract - ui: harness schema, preflight, test-id planning 2026-06-04 05:28:36 -05:00
json-output.sh feat(epic-execute): domain-aware design (frontend/backend/fullstack lenses) 2026-06-03 06:25:00 -05:00
regression-gate.sh feat(scripts): port memory-safe execution and reliability improvements from revive-dev 2026-04-12 11:52:39 -05:00
tdd-flow.sh feat(epic-execute): reconcile TDD test specs with design plan 2026-06-03 06:05:33 -05:00
test-failure-filter.sh feat(epic-execute): add test failure filtering and sync improvements from revive-dev 2026-02-10 13:49:55 -06:00
utils.sh feat(scripts): port memory-safe execution and reliability improvements from revive-dev 2026-04-12 11:52:39 -05:00