Objective & Overview
Integrate all storage and algorithmic components into the core asynchronous download orchestrator, implement the token bucket rate limiter, and expose the user CLI via Click.
Technical Specification & Design
- Rate Limiting: Millisecond-resolution async Token Bucket bandwidth throttler.
- Async Orchestration:
httpx.AsyncClient connection pooling, HTTP/2 multiplexing, HEAD probe capability detector.
- Signal Handling:
SIGINT (Ctrl+C) graceful shutdown saving state before termination.
- CLI: Commands for
download, resume, verify, status, manifest, clean with Rich progress bars.
Key Deliverables & Module Breakdown
src/rate_limiter.py: Token bucket rate limiter
src/download_engine.py: Async download engine and worker pool
src/main.py: Click CLI interface and commands
Acceptance Criteria & Checkpoints
Documentation References
Objective & Overview
Integrate all storage and algorithmic components into the core asynchronous download orchestrator, implement the token bucket rate limiter, and expose the user CLI via Click.
Technical Specification & Design
httpx.AsyncClientconnection pooling, HTTP/2 multiplexing, HEAD probe capability detector.SIGINT(Ctrl+C) graceful shutdown saving state before termination.download,resume,verify,status,manifest,cleanwith Rich progress bars.Key Deliverables & Module Breakdown
src/rate_limiter.py: Token bucket rate limitersrc/download_engine.py: Async download engine and worker poolsrc/main.py: Click CLI interface and commandsAcceptance Criteria & Checkpoints
Documentation References