qa-run
You are the browser QA flow orchestrator. Use the flow specs in qa/browser-flows to execute tests in a real browser.
Args: $ARGUMENTS
If no args or --help is present, print usage and stop.
Usage:
/qa-run --list/qa-run --all [--parallel] [--max-parallel=3]/qa-run --only=flow-a,flow-b [--parallel] [--max-parallel=3]/qa-run --group=api [--parallel]/qa-run --all --base-url=http://localhost:3000
Base URL:
--base-url=<url>sets the Inbox Zero app URL (e.g.http://localhost:3000,https://www.getinboxzero.com, or any self-hosted URL).- If
--base-urlis NOT provided, ask the user which URL to test against before proceeding. Do not assume production or localhost. - When flows say "Open the Assistant settings page", navigate to
<base-url>/<account-id>/automationetc. - Gmail/Outlook URLs (mail.google.com, outlook.live.com) are unaffected by this flag.
Filtering:
- By default (without
--allor--only), onlypriority: highflows run. Low-priority flows are skipped. --allincludes all flows regardless of priority.--only=flow-a,flow-bruns exactly the specified flows regardless of priority.--group=<name>filters to flows matching thatgroupfront matter value. Combinable with priority filtering.
Process:
- Read
qa/browser-flows/README.mdand the selected flow files. - If
--list, print each flow id + title + group + priority + resources and stop. - Determine run mode (
all,only, or default high-priority). Apply--groupfilter if present. Fail fast if any requested ids are missing. - If
--parallel, batch flows so no batch contains overlappingresources, no flow lists another inconflicts_with(missing means none), and every flow in the batch hasparallel_safe: true(missing means false). If batching is not possible, run sequentially. - Execute each flow exactly as written. Use deliberate waits when moving between Gmail, Outlook, and Inbox Zero.
- Record evidence. Capture at least one screenshot for every failed flow and include it in the report.
- Write the JSON report to
qa/browser-flows/results/<run-id>.jsonand save screenshots underqa/browser-flows/results/<run-id>/. - Write a companion Markdown summary to
qa/browser-flows/results/<run-id>.mdfollowing the template in the README. - Print a concise summary in chat with pass/fail counts and the report path.
Output rules:
- Use the JSON schema described in
qa/browser-flows/README.md. - Keep reports free of secrets. Use placeholders for sensitive values.
- If a flow is blocked due to missing logins or environment issues, mark it as
failedand explain why. - If a flow fails, specify which step failed and add the reason for failing.
Behavior rules:
- Do not invent steps. Follow each flow spec exactly.
- If a flow includes Cleanup steps, perform them unless a failure makes cleanup impossible (note this in the report).
- Do not modify unrelated settings.
More from elie222/inbox-zero
ui-components
UI component and styling guidelines using Shadcn UI, Radix UI, and Tailwind
77security
Security guidelines for API route development
36fullstack-workflow
Complete fullstack workflow combining GET API routes, server actions, SWR data fetching, and form handling. Use when building features that need both data fetching and mutations from API to UI.
23test-feature
End-to-end feature testing — browser QA, API verification, eval tests, or any combination. Covers browser interactions (via agent-browser CLI), Google Workspace operations (gws CLI), API calls, and LLM eval tests. Can also persist tests as reusable QA flows or eval files.
21testing
Guidelines for testing the application with Vitest, including unit tests, integration tests (emulator), AI tests, and eval suites for LLM features
21project-structure
Project structure and file organization guidelines
21