Files
s5p/ROADMAP.md
user 3593481b30 feat: listener retry override, pool protocol filter, conn pool docs
- Per-listener `retries` overrides global default (0 = inherit)
- Pool-level `allowed_protos` filters proxies during merge
- Connection pooling documented in CHEATSHEET.md
- Both features exposed in /config and /status API responses
- 12 new tests (config parsing, API exposure, merge filtering)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-21 20:35:14 +01:00

54 lines
1.9 KiB
Markdown

# s5p -- Roadmap
## v0.1.0
- [x] SOCKS5 server (CONNECT command)
- [x] Proxy chaining (SOCKS5, SOCKS4/4a, HTTP CONNECT)
- [x] Per-hop authentication
- [x] YAML config + CLI flags
- [x] DNS leak prevention
- [x] Container deployment (Alpine + podman-compose)
- [x] Graceful SIGTERM/SIGINT shutdown
- [x] cProfile support
- [x] Dynamic proxy source API integration
- [x] Weighted proxy selection (recency-based)
- [x] Per-proxy backoff (connection failure cooldown)
- [x] Stale proxy expiry (last_seen TTL)
- [x] Pool stats in periodic metrics log
- [x] Instant warm start (trust cached state, defer all health tests)
- [x] Static chain health check (pre-flight before pool tests)
- [x] SIGHUP hot config reload
- [x] Dead proxy reporting to source API
## v0.2.0
- [x] Built-in control API (runtime metrics, pool state, config reload)
- [x] Tor control port integration (circuit renewal via NEWNYM)
- [x] Metrics (connections/sec, bytes relayed, hop latency)
- [x] Multi-listener with per-port chain depth
- [x] Per-listener latency tracking
- [x] Dynamic health test concurrency (auto-scales to ~10% of pool)
- [x] Multi-Tor round-robin (`tor_nodes`)
- [x] Named proxy pools with per-listener assignment (`proxy_pools:`)
- [x] MITM source filter (`mitm: true/false` on pool sources)
## v0.3.0 (current)
- [x] SOCKS5 server authentication (username/password)
- [x] Systemd service unit
- [x] CLI test coverage
- [x] Protocol test coverage (SOCKS5/4/HTTP handshakes)
- [x] API documentation (full response schemas)
- [x] Prometheus metrics endpoint (`/metrics` OpenMetrics format)
- [x] Listener-level retry override
- [x] Pool-level proxy protocol filter (`allowed_protos`)
- [x] Connection pooling documentation
- [ ] UDP ASSOCIATE support (SOCKS5 UDP relay)
- [ ] BIND support
- [ ] Chain randomization (random order, random subset)
## v1.0.0
- [ ] Stable API and config format
- [ ] Performance benchmarks