Add RateTracker (rolling deque, events/sec) and LatencyTracker (circular buffer, p50/p95/p99 in ms) to the Metrics class. Both are recorded in _handle_client and exposed via summary(), to_dict(), /status, and /metrics. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1.3 KiB
1.3 KiB
s5p -- Roadmap
v0.1.0 (current)
- SOCKS5 server (CONNECT command)
- Proxy chaining (SOCKS5, SOCKS4/4a, HTTP CONNECT)
- Per-hop authentication
- YAML config + CLI flags
- DNS leak prevention
- Container deployment (Alpine + podman-compose)
- Graceful SIGTERM/SIGINT shutdown
- cProfile support
- Dynamic proxy source API integration
- Weighted proxy selection (recency-based)
- Per-proxy backoff (connection failure cooldown)
- Stale proxy expiry (last_seen TTL)
- Pool stats in periodic metrics log
- Instant warm start (trust cached state, defer all health tests)
- Static chain health check (pre-flight before pool tests)
- SIGHUP hot config reload
- Dead proxy reporting to source API
v0.2.0
- Built-in control API (runtime metrics, pool state, config reload)
- SOCKS5 server authentication (username/password)
- Tor control port integration (circuit renewal via NEWNYM)
- Metrics (connections/sec, bytes relayed, hop latency)
v0.3.0
- UDP ASSOCIATE support (SOCKS5 UDP relay)
- BIND support
- Chain randomization (random order, random subset)
v1.0.0
- Stable API and config format
- Comprehensive test suite with mock proxies
- Systemd service unit
- Performance benchmarks