systematic-qa
Installation
SKILL.md
Systematic Project QA
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, and start commands. - Prefer repository-defined umbrella commands such as
make verify,just verify, or CI entrypoints over language-default commands. - Read
references/project-signals.mdwhen command ownership is ambiguous or when multiple ecosystems are present. - Identify the changed surface and the regression-critical surface before choosing scenarios.
- Choose a QA artifact location using repository conventions. If the repository has no QA artifact convention, store scratch artifacts under
/tmp/codex-qa-<slug>.
Step 2: Define the QA Scope
- Build a short execution matrix covering baseline verification, changed workflows, and unchanged business-critical workflows.
- Read
references/checklist.mdand ensure every required category has a planned validation. - Prefer public entry points such as CLI commands, HTTP endpoints, browser flows, worker jobs, and documented setup commands over internal test helpers.
- Create the smallest realistic fixture or fake project needed to exercise the workflow when the repository does not already include one.
- Treat mocks as a local unit-test boundary only. Do not use mocks or stubs as final proof that a user flow works.
Step 3: Establish the Baseline
- Install dependencies with the repository-preferred command before testing runtime flows.
- Run the canonical verification gate once before scenario testing to establish baseline health.
- If the baseline fails, read the first failing output carefully and determine whether it is pre-existing or introduced by current work before moving on.
- Start services in the closest supported production-like mode and confirm readiness through observable signals such as health checks, startup logs, or successful handshakes.
Step 4: Execute User-Like Flows
- Drive workflows through the same interfaces a real operator or user would use.
- Capture the exact command, input, and observable result for each scenario.
- Validate changed features first, then validate at least one regression-critical flow outside the changed surface.
- Exercise live integrations when credentials and local prerequisites exist. When they do not, validate every reachable local boundary and record the blocked live step explicitly.
- Re-run the scenario from a clean state when the first attempt leaves the environment ambiguous.
Step 5: Diagnose and Fix Regressions
- Reproduce each failure consistently before proposing a fix.
- Activate companion debugging and test-hygiene skills when available, especially root-cause debugging and anti-workaround guidance.
- Add or update the narrowest regression test that proves the bug when the repository supports automated coverage for that surface.
- Fix production code or real configuration at the source of the failure. Do not weaken tests to match broken behavior.
- Re-run the narrow reproduction, the impacted scenario, and the baseline gate after each fix.
- Use
assets/issue-template.mdwhen the user wants persisted issue files or when the repository already has a QA issue convention.
Step 6: Verify the Final State
- Re-run the full repository verification gate from scratch after the last code change.
- Re-run the most important user-like scenarios after the full gate passes.
- Summarize the evidence using
assets/verification-report-template.md. - Report blocked scenarios, missing credentials, or environment gaps with the exact command or prerequisite that stopped execution.
- Do not claim completion without fresh verification evidence from the current state of the repository.
Error Handling
- If command discovery returns multiple plausible gates, prefer the broadest repository-defined command and explain the tie-breaker.
- If no canonical verify command exists, read
references/project-signals.md, choose the broadest safe install, lint, test, and build commands for the detected ecosystem, and state that assumption explicitly. - If a required live dependency is unavailable, validate every local boundary that does not require the missing dependency and report the blocked live validation separately.
- If a workflow requires data or services absent from the repository, create the smallest realistic fixture outside the main source tree unless the repository has its own fixture convention.
- If a failure appears unrelated to the requested change, prove that with a clean reproduction before excluding it from the QA scope.
Weekly Installs
1
Repository
pedronauck/kodebase-goGitHub Stars
2
First Seen
5 days ago
Security Audits
Installed on
amp1
cline1
openclaw1
opencode1
cursor1
kimi-cli1