Skip to content

Conversation

@patchmemory
Copy link
Owner

Title: E2E foundation, contracts, and CI

Summary

  • Implements Playwright E2E scaffold with smoke + core flow specs (browse, scan)
  • Adds minimal API contracts for /api/scan, /api/scans//status, /api/directories
  • Aligns Dev CLI timestamps to timezone-aware ISO8601
  • Adds stable data-testid hooks to UI templates
  • Wires CI for pytest and strict E2E smoke
  • Updates docs/testing.md with quickstarts and CI notes

Related

  • Story: story:e2e-testing
  • Phase: 02–03
  • Task(s):
    • task:e2e:02-playwright-scaffold (Done)
    • task:e2e:03-core-flows (partially addressed by initial specs; remaining flows in next branch)

Local verification

  • Python tests: python -m pytest -q → green
  • Playwright E2E: npm install && npx playwright install --with-deps && npm run e2e → green

CI

  • GitHub Actions workflow runs:
    • Python tests (3.11)
    • E2E smoke (Node 18) — strict, SCIDK_PROVIDERS=local_fs

How to run locally

  • API contracts: python -m pytest tests/contracts/test_api_contracts.py -q
  • E2E: npm run e2e (uses e2e/global-setup.ts to boot the Flask server)

Risk assessment

  • Low risk. Mostly additive tests/config/docs. UI changes limited to data-testid attributes.

Merge checklist

  • pytest green locally
  • E2E green locally
  • CI expected to pass (strict E2E)
  • task:e2e:02-playwright-scaffold marked Done with completed_at
  • Reviewer sanity pass on docs/testing.md and CI workflow

Post-merge (follow-up branch)

  • Expand Phase 03 core flows E2E and refine contracts as needed.

… Ready Queue no longer includes scaffold task at top. Ensure Dev CLI timestamps align (complete_task uses timezone-aware ISO8601).
…ontracts, CI tighten, docs

- Add Playwright config/global setup already in repo; add browse.spec.ts and scan.spec.ts specs using stable data-testid hooks
- Fix scan E2E assertions to avoid regex pitfalls and allow multiple occurrences
- Add API contracts for /api/scan, /api/scans/<id>/status, /api/directories
- Make E2E job strict in CI; document in docs/testing.md and add PR template
- Align Dev CLI timestamps and finalize task:e2e:02-playwright-scaffold bookkeeping
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants