Added a --status flag that allows filtering GitHub Actions runs by status using clap 4.
# Default (completed runs only)
gh-jobs-purge
# Delete specific statuses
gh-jobs-purge --status "success,failure,cancelled"
# User-friendly dashes work too
gh-jobs-purge --status "in-progress,timed-out,action-required"queued,in-progress,requested,waiting,pending
success,failure,cancelled,skipped,neutral,stale,timed-out,action-required
completed- All finished runs (default)
✅ Dash/underscore flexibility: in-progress and in_progress both work
✅ Comma-separated lists: Multiple statuses in one flag
✅ Validation: Helpful errors for typos
✅ Tested: 19 new tests covering all scenarios
gh-jobs-purge --status failuregh-jobs-purge --status "failure,cancelled"gh-jobs-purge --status "failure,cancelled,timed-out,stale"gh-jobs-purge --help- ✏️
Cargo.toml- Added clap dependency - ✏️
src/lib.rs- Added status validation functions + 19 unit tests - ✏️
src/main.rs- Added CLI args with clap, updated to use status filter - ✏️
tests/integration_tests.rs- Added 9 integration tests - ✏️
README.md- Documented new flag and status options - ➕
EXAMPLES.md- Comprehensive usage examples - ➕
CHANGELOG.md- Version history - ✏️
TEST_SUMMARY.md- Updated test counts (47 → 66 tests)
- Before: 47 tests
- After: 66 tests (+19 for status filtering)
- Coverage: 100% of status validation logic
See EXAMPLES.md for more use cases!