Parent Epic: #62
What
Add advanced async programming patterns to rust-development SKILL.md that are currently missing:
Sections to Add
- Graceful Shutdown --
CancellationToken pattern with tokio, signal handling
- Backpressure -- Bounded channels, vectored I/O batching
- Tower Middleware Composition -- Service trait, Layer stacking, rate limiting, concurrency control, load shedding
- Custom Futures -- Retry logic with exponential backoff as a Future implementation
- Structured Concurrency -- Task lifecycle management, JoinSet patterns
Source Reference
Sections 3 (Async Programming with Tokio 1.44+) and 9 (Advanced Async Patterns) from RUST_SYSTEM_PROGRAMMING_BEST_PRACTICES.md
Disciplined Engineering Alignment
These patterns integrate with the disciplined-* skill phases as follows:
| Phase |
Skill |
Rust Async Relevance |
| Research |
disciplined-research |
Identify async boundaries, cancellation requirements, backpressure needs in system under analysis |
| Design |
disciplined-design |
Specify Tower middleware stack, shutdown strategy, channel bounds in design doc |
| Implementation |
disciplined-implementation |
Apply CancellationToken/JoinSet patterns; each middleware layer = one reviewable step |
| Verification |
disciplined-verification |
Unit test cancellation paths, verify backpressure under load, test middleware ordering |
| Validation |
disciplined-validation |
Validate graceful shutdown behaviour in production-like environment; UAT for timeout/retry UX |
The SKILL.md should include a "Disciplined Workflow Integration" subsection noting:
- During research: document async boundaries and failure modes
- During design: specify Tower layer stack and channel capacities
- During verification: test cancellation safety and backpressure behaviour
Acceptance Criteria