qa-execution
Installation
SKILL.md
Systematic Project QA
Required Inputs
- qa-output-path (optional): Directory where QA artifacts (issues, screenshots, verification reports) are stored. When provided, create the directory if it does not exist and use it for all QA outputs. When omitted, fall back to repository conventions or
/tmp/codex-qa-<slug>.
Procedures
Step 1: Discover the Repository QA Contract
- Read root instructions, repository docs, and CI/build files before running commands.
- Execute
python3 scripts/discover-project-contract.py --root .to surface candidate install, verify, build, test, lint, start commands, Web UI signals, and E2E signals. - Read
references/project-signals.mdwhen command ownership is ambiguous or when multiple ecosystems are present. - Read
references/e2e-coverage.mdto decide whether the repository already supports public-surface automated coverage and how strong that support is. - Prefer repository-defined umbrella commands such as
make verify,just verify, or CI entrypoints over language-default commands. - Identify the changed surface and the regression-critical surface before choosing scenarios.
- Determine whether the project has a Web UI surface. Indicators include: a
startordevcommand that launches a web server, framework config files (next.config.*,vite.config.*,nuxt.config.*,angular.json,svelte.config.*), or HTML/template entry points. Record the dev server URL (defaulthttp://localhost:3000unless the project specifies otherwise). - Record the E2E contract in working notes: support detected or not, harness name, canonical command, known spec locations, and blockers.
- Resolve the QA artifact directory. If the user provided a
qa-output-pathargument, use that path. Otherwise, use repository conventions. If neither exists, fall back to/tmp/codex-qa-<slug>. Create theqa/subdirectory under the resolved path if it does not exist. Store all issues, screenshots, and verification reports under<qa-output-path>/qa/.