CI Fix Skill
Diagnose and fix GitHub Actions CI failures using patterns from past CI issues.
Quick Diagnosis Pattern
- Get CI status:
gh run list --limit 5 --json status,conclusion,name,headBranch
- Get failed job logs:
gh run view <run_id> --log --job <job_name>
-
Categorize failure:
-
lint: fmt/clippy warnings
-
test: test failures or timeouts
-
build: compilation errors
-
security: cargo audit/deny failures
-
coverage: coverage threshold missed
-
deprecated: old action versions (common!)
Common Fixes (From History)
Deprecated GitHub Actions
Detect
grep -r "actions/checkout@v1" .github/workflows/ grep -r "actions-rs" .github/workflows/
Fix: Update to v2+
Optional Dependency Issues (libclang, wasmtime)
Pattern: --all-features triggered optional dep issues
Fix: Use workspace exclude
cargo build --workspace --exclude memory-mcp
Clippy Lint Allow-List
See new warnings
cargo clippy --all -- -D warnings | grep "warning:"
Fix: Add #[allow(...)] comments
Coverage Threshold
Generate coverage
cargo tarpaulin --workspace
Check threshold in .github/workflows/
Benchmark Timeout
Increase timeout-minutes in workflow YAML
Fix Commands
Linting
cargo fmt --all cargo clippy --workspace --fix --allow-dirty
Testing
cargo test --workspace -- --nocapture
Security
cargo audit cargo deny check
Build
cargo build --workspace
Success Criteria
-
All CI jobs pass
-
No new warnings introduced
-
Changes committed if needed