Add `core go qa` command with subcommands: - fmt: check/fix code formatting (gofmt) - vet: run go vet - lint: run golangci-lint - test: run tests - race: run tests with race detector - vuln: check for vulnerabilities (govulncheck) - sec: run security scanner (gosec) - quick: fmt, vet, lint only - full: all checks Default (no subcommand) runs fmt, vet, lint, test. All commands support --fix flag where applicable. Also update Taskfile.yml to use core CLI commands throughout. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
132 lines
2.3 KiB
YAML
132 lines
2.3 KiB
YAML
version: '3'
|
|
|
|
tasks:
|
|
# --- CLI Management ---
|
|
cli:build:
|
|
desc: "Build core CLI to ./bin/core"
|
|
cmds:
|
|
- go build -o ./bin/core .
|
|
|
|
cli:install:
|
|
desc: "Install core CLI to system PATH"
|
|
cmds:
|
|
- go install .
|
|
|
|
# --- Development ---
|
|
test:
|
|
desc: "Run all tests"
|
|
cmds:
|
|
- core test
|
|
|
|
test:verbose:
|
|
desc: "Run all tests with verbose output"
|
|
cmds:
|
|
- core test --verbose
|
|
|
|
test:run:
|
|
desc: "Run specific test (use: task test:run -- TestName)"
|
|
cmds:
|
|
- core test --run {{.CLI_ARGS}}
|
|
|
|
cov:
|
|
desc: "Run tests with coverage report"
|
|
cmds:
|
|
- core go cov
|
|
|
|
fmt:
|
|
desc: "Format Go code"
|
|
cmds:
|
|
- core go fmt
|
|
|
|
lint:
|
|
desc: "Run linter"
|
|
cmds:
|
|
- core go lint
|
|
|
|
mod:tidy:
|
|
desc: "Run go mod tidy"
|
|
cmds:
|
|
- core go mod tidy
|
|
|
|
# --- Quality Assurance ---
|
|
qa:
|
|
desc: "Run QA: fmt, vet, lint, test"
|
|
cmds:
|
|
- core go qa
|
|
|
|
qa:quick:
|
|
desc: "Quick QA: fmt, vet, lint only"
|
|
cmds:
|
|
- core go qa quick
|
|
|
|
qa:full:
|
|
desc: "Full QA: + race, vuln, security"
|
|
cmds:
|
|
- core go qa full
|
|
|
|
qa:fix:
|
|
desc: "QA with auto-fix"
|
|
cmds:
|
|
- core go qa --fix
|
|
|
|
# --- Build ---
|
|
build:
|
|
desc: "Build project with auto-detection"
|
|
cmds:
|
|
- core build
|
|
|
|
build:ci:
|
|
desc: "Build for CI (all targets, checksums)"
|
|
cmds:
|
|
- core build --ci
|
|
|
|
# --- Environment ---
|
|
doctor:
|
|
desc: "Check development environment"
|
|
cmds:
|
|
- core doctor
|
|
|
|
doctor:verbose:
|
|
desc: "Check environment with details"
|
|
cmds:
|
|
- core doctor --verbose
|
|
|
|
# --- Code Review ---
|
|
review:
|
|
desc: "Run CodeRabbit review"
|
|
cmds:
|
|
- coderabbit review --prompt-only
|
|
|
|
check:
|
|
desc: "Tidy, test, and review"
|
|
cmds:
|
|
- task: mod:tidy
|
|
- task: test
|
|
- task: review
|
|
|
|
# --- i18n ---
|
|
i18n:generate:
|
|
desc: "Regenerate i18n key constants"
|
|
cmds:
|
|
- go generate ./pkg/i18n/...
|
|
|
|
i18n:validate:
|
|
desc: "Validate i18n key usage"
|
|
cmds:
|
|
- go run ./internal/tools/i18n-validate ./...
|
|
|
|
# --- Multi-repo (when in workspace) ---
|
|
dev:health:
|
|
desc: "Check health of all repos"
|
|
cmds:
|
|
- core dev health
|
|
|
|
dev:work:
|
|
desc: "Full workflow: status, commit, push"
|
|
cmds:
|
|
- core dev work
|
|
|
|
dev:status:
|
|
desc: "Show status of all repos"
|
|
cmds:
|
|
- core dev work --status
|