Planning Quality Lifecycle
Quality Command Matrix
task quality:fmt— Format all Go sources in repo.task quality:fmt:check— Validate formatting without mutation.task quality:ci— Pre-merge quality gate (non-mutating; fmt check + vet + optional staticcheck + diff/staged lint).task quality:fmt-staged— Format and lint staged files only.task quality:fmt-staged:check— Check formatting and lint staged/diff files (PR-safe, non-mutating).task quality:quick— Fast loop (QUALITY_PACKAGESscoped optional), readonly.task quality:quick:fix— Auto-fix local loop (format all + staged format/lint + quick checks).task quality:quick:check— Fast non-mutating quality loop (quality:fmt:check+lint:changed+ targeted tests).task quality:quick:all— Runquality:quickand equivalent sibling project quality checks viaquality:parent-sibling.task lint— Rungolangci-lintacross all packages.task lint:changed— Rungolangci-linton changed/staged Go files.task test:smoke— Startup and control-plane smoke test subset in CI.task quality:vet— Rungo vet ./....task quality:staticcheck— Optional staticcheck run (ENABLE_STATICCHECK=1).task quality:release-lint— Validate release-facing config examples and docs snippets.task test:unit/task test:integration— Tag-filtered package tests.task test:baseline— Rungo testwith JSON and plain-text baseline output (target/test-baseline.jsonandtarget/test-baseline.txt).task test— Full test suite.task verify:all— Unified local audit entrypoint (fmt:check,test:smoke,lint:changed,release-lint,vet,staticcheck,test).task hooks:install— Install local pre-commit checks.
Recommended local sequence
task quality:fmt:checktask quality:quicktask lint:changedtask quality:vet(ortask quality:staticcheckwhen needed)task test(ortask test:unit)task test:smoketask verify:allbefore PR handoff.
CI alignment notes
preflightis shared by all test/quality tasks and fails fast on missinggo,task, orgit.preflightalso validatestask -l, and if aMakefileexists validatesmake -nfor build-task sanity.tasknow includescache:unlockin test gates to avoid stale lock contention.- CI baseline artifacts are now emitted as both JSON and text for auditability.