quality-strict
Quality (Strict) skill for the ikigai project
Installation
Suivez les instructions du dépôt pour votre agent. Consultez les fichiers et dépendances avant l’installation.
Voir la source ↗GuidesInstructions
Quality (Strict)
Description
Strict testing, coverage, and quality requirements for coverage phase. 90% is mandatory.
Pre-Commit Requirements
BEFORE creating ANY commit (mandatory, no exceptions):
-
make fmt- Format code -
make check- ALL tests pass (100%) -
make lint- ALL complexity/file size checks pass -
make check-coverage- ALL metrics (lines, functions, branches) at 90.0% -
make check-dynamic- ALL sanitizer checks pass (ASan, UBSan, TSan)
If ANY check fails: fix ALL issues, re-run ALL checks, repeat until everything passes.
Never commit with ANY known issue - even "pre-existing" or "in another file".
Test Execution
By Default: Tests run in parallel, with 24 parallel tests on this machine.
-
MAKE_JOBS=24- up to 24 concurrent tests -
PARALLEL=1- all 4 check-dynamic subtargets in parallel
When you need clear debug output (serialize execution):
PARALLEL=0 MAKE_JOBS=1 make check
PARALLEL=0 MAKE_JOBS=1 make check-valgrind
Best practice: Test individual files during development, run full suite before commits.
Example:
make build/tests/unit/array/basic_test && ./build/tests/unit/array/basic_test
Build Modes
make BUILD={debug|release|sanitize|tsan|coverage}
-
debug- Development builds with symbols -
release- Optimized production builds -
sanitize- Address and undefined behavior sanitizers -
tsan- Thread sanitizer -
coverage- Code coverage analysis
Quality Gates
- Use
make checkto verify tests while working on code changes - Use
make lint && make check-coveragebefore commits - 90% coverage is MANDATORY -
CRITICAL: Never run multiple
makecommands simultaneously. Different targets use incompatible compiler flags and will corrupt the build.
Coverage Phase Mindset
- Every uncovered line is a bug waiting to happen
- Every untested branch is a failure mode you haven't verified
- LCOV exclusions are a last resort, not a shortcut
- Zero tolerance for coverage gaps
Exemples
Consultez les exemples du dépôt source.
Voir la source ↗Historique source
- Date d’indexation
- 2026-01-20
- Mise à jour de l’index
- 2026-01-26
- Branch
- main
Les dates concernent ce répertoire. Consultez le dépôt pour l’historique du code.
GitHub ↗chat Comments (0)
Sign in to join the discussion and leave a comment.
No comments yet. Be the first to share your thoughts!