test-fix
SKILL.md
Test Fix
Systematic approach to diagnosing and fixing failing tests.
Process
Step 1: Identify Failing Tests
cargo test --all
cargo test test_name -- --exact --nocapture
Step 2: Reproduce Locally
# With debug logging
RUST_LOG=debug cargo test test_name
# Force single-threaded for race conditions
cargo test test_name -- --test-threads=1
Step 3: Diagnose Root Cause
| Pattern | Symptom | Fix |
|---|---|---|
| Async/Await | "future cannot be sent" | Add .await, use Arc |
| Database | "connection refused" | Check env vars, use test DB |
| Race | Intermittent assertion failure | Add Mutex, sequential execution |
| Type | "expected X, found Y" | Update signatures, add conversions |
| Lifetime | "borrowed value" | Clone data, adjust lifetimes |
Step 4: Verify Fix
# Run multiple times
for i in {1..10}; do cargo test test_name -- --exact || break; done
# Run full suite
cargo test --all
Step 5: Regression Prevention
Add test for the specific bug that was fixed.
Debugging Checklist
- Run failing test in isolation
- Check environment variables
- Review recent changes
- Check for missing
.await - Verify database connections
- Look for race conditions
- Check type compatibility
Tools
# Debug logging
RUST_LOG=debug cargo test
# Full backtrace
RUST_BACKTRACE=full cargo test
# Specific module
RUST_LOG=memory_core=debug cargo test
When to Skip vs Fix
Skip (temporarily):
- External service down
- Platform-specific issue
- Known upstream bug
Fix immediately:
- Logic error
- Incorrect assertion
- Missing error handling
Weekly Installs
18
Repository
d-o-hub/rust-se…g-memoryGitHub Stars
5
First Seen
Feb 21, 2026
Security Audits
Installed on
opencode18
claude-code18
github-copilot18
codex18
amp18
kimi-cli18