quality-strict
Quality (Strict) skill for the ikigai project
安装与使用
请根据来源仓库和你的 AI 工具说明安装此技能。先阅读技能文件和依赖要求,再添加到工作流。
查看来源 ↗使用指南技能说明
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
使用示例
查看来源仓库中的使用示例与配置说明。
查看来源 ↗来源历史
- 收录时间
- 2026-01-20
- 索引更新时间
- 2026-01-26
- Branch
- main
收录与同步日期属于本站记录。源码修改历史请查看来源仓库。
GitHub ↗chat Comments (0)
Sign in to join the discussion and leave a comment.
No comments yet. Be the first to share your thoughts!