github-workflows
GitHub Workflows
Diagnose, fix, and optimize GitHub Actions workflows for Rust projects.
Quick Reference
- Caching Strategies - Manual cache, rust-cache, sccache
- Troubleshooting - Common issues, debugging, fixes
- Advanced Features - Coverage, security, benchmarking
- Release Management - Automated releases, versioning
When to Use
- Setting up CI/CD for Rust projects
- Troubleshooting workflow failures
- Optimizing build times with caching
- Ensuring best practices for testing, linting, releases
Before Making Changes
ALWAYS verify current state first:
# Get repo info
gh repo view --json nameWithOwner,owner,name
# List existing workflows
gh workflow list
# Check recent runs
gh run list --limit 10
# View workflow files
ls -la .github/workflows/
Complete Rust CI Workflow
See the full workflow template with:
- Check job (format, clippy, check)
- Test job (unit, integration, doc tests)
- Coverage job (tarpaulin, codecov)
- Audit job (security, licenses)
See linked files for caching strategies, troubleshooting, and release management.
Core Workflow Components
| Job | Purpose | Tools |
|---|---|---|
| check | Code quality | rustfmt, clippy, cargo check |
| test | Verification | cargo test |
| coverage | Test metrics | cargo tarpaulin |
| audit | Security | cargo audit, deny |
Common Patterns
- Caching: Dependencies, target directory, sccache
- Matrix builds: Multiple Rust versions, targets
- Conditional jobs: Skip on docs-only changes
- Quality gates: Block merge on failures
PR Check Attachment Guardrail
- After pushing fixes, validate checks are attached to the PR head SHA:
gh pr view --json statusCheckRollup,mergeStateStatusgh run list --commit <head_sha>
- If rollup is empty for required checks, treat as blocked and investigate trigger/path conditions.
More from d-o-hub/rust-self-learning-memory
loop-agent
Execute workflow agents iteratively for refinement and progressive improvement until quality criteria are met. Use when tasks require repetitive refinement, multi-iteration improvements, progressive optimization, or feedback loops until convergence.
51web-search-researcher
Research topics using web search and content fetching to find accurate, current information. Use when you need modern information, official documentation, best practices, technical solutions, or comparisons beyond your training data.
46perplexity-researcher-reasoning-pro
Highest level of research and reasoning capabilities for complex decision-making with significant consequences, strategic planning, technical architecture decisions, multi-stakeholder problems, or high-complexity troubleshooting requiring expert-level judgment and sophisticated reasoning chains. Prioritizes actively maintained repositories and validates website sources for 2025 relevance.
44context-retrieval
Retrieve relevant episodic context from memory for informed decision-making. Use when you need past episodes, patterns, or solutions to similar tasks.
44rust-code-quality
Perform comprehensive Rust code quality reviews against best practices for async Rust, error handling, testing, and project structure
43codebase-analyzer
Analyze implementation details, trace data flow, explain technical workings, locate files, and consolidate codebases. Use when you need to understand HOW code works, find file locations, or assess technical debt.
40