A binary quality gate that automatically rejects code if tests fail or if syntax/import errors are present.
Install
mkdir -p .claude/skills/qa-gmaiarviana && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/10935" && unzip -o skill.zip -d .claude/skills/qa-gmaiarviana && rm skill.zipInstalls to .claude/skills/qa-gmaiarviana
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
> **📌 Carregado por:** Claude Code Web após Dev marcar tasks como concluídas. > **📌 Documentação:** ver [README.md](README.md) para visão geral.Key capabilities
- →Execute automated tests
- →Validate code syntax
- →Check import integrity
How it works
It acts as a technical gate by running a full test suite and validating syntax, rejecting any code that fails to meet quality standards.
Inputs & outputs
When to use qa
- →Verifying test suite passing after code changes
- →Checking for syntax errors in Python
- →Validating test coverage for new logic
- →Preventing integration of broken imports
About this skill
QA Skill
📌 Localização:
skills/qa/📌 Etapa do fluxo: terceira (após Dev) —docs/process/autonomous/workflow.md§3 📌 Pré-requisito: Dev concluiu todas as tasks do plano.
1. PAPEL
A QA Skill é o primeiro gate técnico após implementação. Decide binariamente se a entrega tem qualidade técnica suficiente para seguir para TL.
Princípio: falha de teste = rejeição automática. Sem tolerância. Sem "pequenos deslizes". Sem decisão humana no meio.
2. CRITÉRIOS DE APROVAÇÃO
Aprova APENAS quando TODOS os itens forem verdadeiros:
- ✅ Suite completa passa (
pytest tests/core/unit/) — 0 falhas, 0 erros - ✅ Integration tests aplicáveis passam (
pytest -m integration) - ✅ Sintaxe Python OK em todos os arquivos modificados (parser sem erro)
- ✅ Imports resolvem (sem
ImportError, sem ciclo) - ✅ Markers
integration/slowaplicados onde corresponde (docs/testing/strategy.md) - ✅ Testes novos foram criados para lógica nova (TDD pragmático: lógica crítica obrigatória)
- ✅ Nenhum teste foi pulado (
@pytest.mark.skip) sem justificativa documentada - ✅ Nenhum warning crítico no console durante execução
3. CRITÉRIOS DE REJEIÇÃO
Rejeita automaticamente se qualquer item ocorrer:
- ❌ ≥1 teste falhando ou com erro
- ❌ Erro de sintaxe em arquivo modificado
- ❌ Import quebrado (cobertura: testes + arquivos impactados)
- ❌ Lógica nova sem teste correspondente
- ❌ Teste pulado/comentado sem justificativa
- ❌ Cobertura caiu em arquivo crítico modificado
- ❌ Warning crítico (DeprecationWarning relevante, RuntimeError silencioso, etc)
4. INPUT ESPERADO
- Branch
milestone/<id-em-caixa-baixa>com commits da implementação docs/process/current_implementation.mdcom Dev marcado ✅- Acesso ao ambiente para rodar
pytest
5. OUTPUT PRODUZIDO
- ✅ Relatório no formato templates/qa-report.md
- ✅ Atualização em
current_implementation.md:- Aprovou: marca
QA ✅ <data>+ sumário - Rejeitou: registra
QA ❌ <data>+ lista específica + incrementa contador de reprovações
- Aprovou: marca
- ✅ Decisão clara: APROVA ou REJEITA (nunca "aprovado com observações")
6. INTERAÇÃO COM OUTRAS SKILLS
| Cenário | Próxima ação |
|---|---|
| Aprovou | Fluxo segue para TL Skill |
| Rejeitou | Fluxo volta para Dev com lista de problemas |
| 3 rejeições consecutivas | Aplicar docs/process/implementation/blockers.md e devolver ao dev humano |
QA não corrige código. Devolve com diagnóstico.
7. DIFERENÇAS DA RTE SKILL
QA roda testes para decidir aprovação/rejeição. RTE não roda testes — só prepara entrega humana.
São complementares: QA garante que o código funciona; RTE entrega a confirmação ao dev.
Ver também:
- Prompt operacional → skill.md
- Template do relatório → templates/qa-report.md
- Estratégia de testes →
docs/testing/strategy.md - Próximo gate →
skills/tl/README.md
When not to use it
- →Correcting code logic
Prerequisites
Limitations
- →Rejects automatically on any test failure
How it compares
It enforces binary, automated quality gates instead of relying on manual code review for basic functional integrity.
Compared to similar skills
qa side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| qa (this skill) | 0 | 3mo | No flags | Intermediate |
| python-project-ops | 0 | 1mo | Review | Beginner |
| python-testing-patterns | 77 | 2mo | Review | Intermediate |
| validate-openapi-specs | 5 | 9mo | Review | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by gmaiarviana
View all by gmaiarviana →You might also like
python-project-ops
atsushi-green
Use this when managing Python dependencies with uv, running tests with pytest, linting with ruff, formatting code, type checking with mypy, or executing notebooks.
python-testing-patterns
wshobson
Implement comprehensive testing strategies with pytest, fixtures, mocking, and test-driven development. Use when writing Python tests, setting up test suites, or implementing testing best practices.
validate-openapi-specs
epieczko
Validates and registers hook manifest files (YAML) in the Hook Registry for versioned hook management.
pr-review
pytorch
Review PyTorch pull requests for code quality, test coverage, security, and backward compatibility. Use when reviewing PRs, when asked to review code changes, or when the user mentions "review PR", "code review", or "check this PR".
pytest
prowler-cloud
Pytest testing patterns for Python. Trigger: When writing or refactoring pytest tests (fixtures, mocking, parametrize, markers). For Prowler-specific API/SDK testing conventions, also use prowler-test-api or prowler-test-sdk.
code-change-verification
openai
Run the mandatory verification stack when changes affect runtime code, tests, or build/test behavior in the OpenAI Agents Python repository.