| name | vibe-blog-e2e-verification |
| description | Use when validating VibeBlog changes that affect Flask APIs, Vue routes, service startup, SSE progress, generation, history, details, publishing, scheduling, or other user-facing workflows. |
VibeBlog E2E Verification
Overview
Verify changed boundaries and core workflows with tracked commands. Treat exit codes, HTTP, browser errors, artifacts, and Git state as separate gates.
Select Scope
| Change | Required browser scope |
|---|
| Frontend-only cleanup | Affected Vitest, full Vitest, build, affected Playwright case |
| Flask Blueprint, API, startup, config, or service initialization | Backend tests, /health, smoke E2E |
| Generation, SSE, history, details, publishing, or shared infrastructure | Full non-LLM tests and full E2E suite |
Use the broader scope when a change crosses rows. Never claim E2E coverage when pytest skipped the suite because RUN_E2E_TESTS was unset.
Establish Baseline
Run from the worktree root:
git status --short --branch
uv lock --project backend --check
uv sync --project backend --extra test --frozen
npm ci --prefix frontend
Record existing Git changes. Keep artifacts under ignored var/. Do not attach deployment .env before static tests; feature toggles and background tasks pollute isolation. Provide it only for browser E2E.
Run Static Gates
uv run --project backend pytest backend/tests -m "not llm" -q
npm test --prefix frontend -- --run
npm run build --prefix frontend
git diff --check