Overview of protected quality thresholds and quick reference for all quality tools...
Understand quality metrics and route to appropriate specialized skill for fixes.
Success Criteria: Know which skill to use for your specific quality issue.
CRITICAL: These thresholds are protected and must NEVER be lowered.
| Metric | Required | Fix With |
|---|---|---|
| Quality | 100% | complexity-management |
| Complexity | 94% | complexity-management |
| Architecture | 100% | deptrac-fixer |
| Style | 100% | Run make phpcsfixer |
| Metric | Required | Fix With |
|---|---|---|
| Quality | 95% | complexity-management |
| Complexity | 95% | complexity-management |
| Architecture | 90% | deptrac-fixer |
| Style | 95% | Run make phpcsfixer |
| Tool | Metric | Required | Fix With |
|---|---|---|---|
| Deptrac | Violations | 0 | deptrac-fixer |
| Psalm | Errors | 0 | Fix reported issues |
| Psalm | ForbiddenCode | 0 | Use Symfony Serializer and follow the architecture guards documented in code-organization |
| Psalm | Security Issues | 0 | Fix tainted flows |
| Infection | MSI | 100% | testing-workflow |
| PHPUnit | Coverage | 100% | testing-workflow |
# Run all CI checks (recommended before commit)
make ci
Success: Must output "✅ CI checks successfully passed!"
| Check | Command | Purpose |
|---|---|---|
| Code quality | make phpinsights |
All PHPInsights metrics |
| Complexity analysis | make phpmd |
Find high-complexity methods |
| Static analysis | make psalm |
Type checking and errors |
| Security taint | make psalm-security |
Security vulnerability scan |
| Architecture | make deptrac |
Layer boundary validation |
| Code style | make phpcsfixer |
Auto-fix PSR-12 style |
| Composer validation | make composer-validate |
Validate composer.json |
| Check | Command | Purpose |
|---|---|---|
| Unit tests | make unit-tests |
Domain/Application logic |
| Integration tests | make integration-tests |
Component interactions |
| E2E tests | make behat |
Full user scenarios (Behat) |
| All tests | make all-tests |
Unit + Integration + E2E |
| Test coverage | make tests-with-coverage |
Generate coverage report |
| Mutation tests | make infection |
Test quality validation |
When quality checks fail, use the appropriate specialized skill:
Deptrac violations → deptrac-fixer
DDD architecture patterns → implementing-ddd-architecture
High cyclomatic complexity → complexity-management
Structural/naming issues → code-organization
.envCode style issues → Run make phpcsfixer
Before committing → ci-workflow
PR review feedback → code-review
make ci
Check output for specific failure:
❌ CI checks failed:
- phpinsights: Complexity score too low (93.5% < 94%)
Based on failure type, use appropriate skill:
| Failure Pattern | Skill to Use |
|---|---|
| "Complexity score too low" | complexity-management |
| "Deptrac violations" | deptrac-fixer |
| "must not depend on" | deptrac-fixer |
| "Class not found" | code-organization |
| "Namespace mismatch" | code-organization |
| "tests failed" | testing-workflow |
| "Psalm found errors" | Fix type errors directly |
| "escaped mutants" | testing-workflow |
make ci
Repeat until: "✅ CI checks successfully passed!"
phpinsights.php, infection.json5, etc.)deptrac.yaml to allow violations (fix code, not config)@SuppressWarnings, @infection-ignore*, @codeCoverageIgnore*, @psalm-suppress, @phpstan-ignore*, phpcs:ignore, @phpinsights-ignore*)make ci before creating commits✅ CI checks successfully passed!
[CODE] 100.0 pts ✅ Target: 100%
[COMPLEXITY] 94.0 pts ✅ Target: 94%
[ARCHITECTURE] 100 pts ✅ Target: 100%
[STYLE] 100.0 pts ✅ Target: 100%
✅ No violations found
Mutation Score Indicator (MSI): 100%
After using this skill:
For detailed examples and patterns, see: