Commit Graph

393 Commits

Author SHA1 Message Date
Username
1c8e3062b7 add configurable thread scaling and queue counter reset
All checks were successful
CI / syntax-check (push) Successful in 3s
CI / memory-leak-check (push) Successful in 12s
- Add scale_cooldown and scale_threshold config options
- ThreadScaler now reads scaling params from config
- Reset priority queue counter when queue empties to prevent unbounded growth
2025-12-28 14:37:32 +01:00
Username
d219cc567f phase 2: code cleanup and simplification
All checks were successful
CI / syntax-check (push) Successful in 3s
CI / memory-leak-check (push) Successful in 11s
- Remove unused result_queue from WorkerThread and worker mode
- Remove num_targets abstraction, simplify to single-target mode
- Add _db_context() context manager for database connections
- Refactor 5 call sites to use context manager (finish, init, cleanup_stale, periodic saves)
- Mark _prep_db/_close_db as deprecated
- Add __version__ = '2.0.0' to ppf.py
- Add thread spawn stagger (0-100ms) in worker mode for Tor-friendly startup
2025-12-28 14:31:37 +01:00
Username
72a2dcdaf4 ppf: add worker mode with distributed testing
All checks were successful
CI / syntax-check (push) Successful in 3s
CI / memory-leak-check (push) Successful in 11s
- Add --worker mode for distributed proxy testing
- Workers claim batches from manager, test via local Tor, submit results
- Add --register to register new workers with manager
- Add thread spawn stagger (0-100ms) to avoid overwhelming Tor
- Verify Tor connectivity before claiming work
- Add heartbeat and batch timeout handling
- Track worker profiling state for dashboard display
2025-12-28 14:12:59 +01:00
Username
e46a3f6ef1 proxywatchd: add DNS cache TTL, IP validation, debug logging
- DNS cache entries now expire after 1 hour (DNS_CACHE_TTL)
- Add is_valid_ip() to validate extracted IPs have valid octets
- Add debug logging to silent exception blocks (ASN lookup, socket disconnect)
- Convert rwip() to static method with cleaner int() implementation
- Add _sample_dbg() for sampled diagnostic logging
- Add set_config() for worker mode imports
- Remove unused tor_targets (tor checktype was removed)
- Move tor_proxy_url to misc.py for shared use
2025-12-28 14:12:50 +01:00
Username
58d83ae52f dashboard: always show SSL badge
All checks were successful
CI / syntax-check (push) Successful in 3s
CI / memory-leak-check (push) Successful in 10s
2025-12-26 21:37:37 +01:00
Username
d9205614fc proxywatchd: secondary check only for SSL handshake failures
All checks were successful
CI / syntax-check (push) Successful in 3s
CI / memory-leak-check (push) Successful in 11s
2025-12-26 21:36:45 +01:00
Username
03dd277c54 dashboard: fix ssl badge after use_ssl config removal
All checks were successful
CI / syntax-check (push) Successful in 2s
CI / memory-leak-check (push) Successful in 11s
2025-12-26 21:30:23 +01:00
Username
9f81e1e4af watchd: remove use_ssl config, use HTTP for non-ssl checks
All checks were successful
CI / syntax-check (push) Successful in 2s
CI / memory-leak-check (push) Successful in 11s
2025-12-26 21:25:52 +01:00
Username
f7a762331a watchd: add tor checktype, use Tor API for secondary check
All checks were successful
CI / syntax-check (push) Successful in 3s
CI / memory-leak-check (push) Successful in 11s
2025-12-26 21:20:16 +01:00
Username
d2bd7d4f34 fetch: retry with different Tor circuit on failure
All checks were successful
CI / syntax-check (push) Successful in 3s
CI / memory-leak-check (push) Successful in 12s
2025-12-26 20:57:28 +01:00
Username
6ea201805f watchd: configurable adaptive timeout per failure 2025-12-26 20:57:21 +01:00
Username
7232846b0f ppf: add --reset flag to clear all state 2025-12-26 20:57:15 +01:00
Username
906d1b33ae fetch: cache is_usable_proxy results
All checks were successful
CI / syntax-check (push) Successful in 3s
CI / memory-leak-check (push) Successful in 11s
2025-12-26 20:04:01 +01:00
Username
1f41f3df5c dashboard: pause polling when tab is hidden
All checks were successful
CI / syntax-check (push) Successful in 2s
CI / memory-leak-check (push) Successful in 11s
2025-12-26 19:58:20 +01:00
Username
ad89eb262e httpd: add rate limiting and security headers
All checks were successful
CI / syntax-check (push) Successful in 3s
CI / memory-leak-check (push) Successful in 11s
2025-12-26 19:52:45 +01:00
Username
59fe2c4a14 dashboard: support multiple checktype badges
All checks were successful
CI / syntax-check (push) Successful in 2s
CI / memory-leak-check (push) Successful in 10s
2025-12-26 19:34:23 +01:00
Username
adbe20dae3 cleanup: remove unused imports and dead code 2025-12-26 19:34:23 +01:00
Username
a20b5525f0 ppf: handle confidence field in proxy tuples 2025-12-26 19:34:22 +01:00
Username
481dc514fb fetch: add IPv6, auth proxy, and confidence scoring support 2025-12-26 19:13:36 +01:00
Username
50f49a20ff httpd: restrict /api/memory to localhost only 2025-12-26 19:12:39 +01:00
Username
07262e8b50 proxywatchd: cap threads by queue size, faster scale-down 2025-12-26 18:12:39 +01:00
Username
8ae639cb94 httpd: cache gc.get_objects and get_db_health calls 2025-12-26 18:12:31 +01:00
Username
b955281b51 config: set checktype to judges,head 2025-12-25 20:25:43 +01:00
Username
560230988d support multiple checktypes with random selection 2025-12-25 20:23:05 +01:00
Username
755abc7f6e dashboard: add queue ETA countdown to Worker Pool pane 2025-12-25 19:58:49 +01:00
Username
0424527e84 proxywatchd: add 0.3s delay before SSL fallback to HTTP 2025-12-25 19:49:59 +01:00
Username
3ac7305954 proxywatchd: persist MITM certificate stats across restarts
Add save_state/load_state to MITMCertStats for JSON persistence.
Stats saved periodically (5min) and at shutdown, loaded at startup.
2025-12-25 19:47:51 +01:00
Username
272eba0f05 scraper: reuse connections, cycle circuit on block
All checks were successful
CI / syntax-check (push) Successful in 6s
CI / memory-leak-check (push) Successful in 15s
2025-12-25 19:26:23 +01:00
Username
68e8b88afa tor: use random credentials for circuit isolation
All checks were successful
CI / syntax-check (push) Successful in 6s
CI / memory-leak-check (push) Successful in 14s
2025-12-25 19:18:25 +01:00
Username
9ba965c87f proxywatchd: ensure socket cleanup before SSL fallback
All checks were successful
CI / syntax-check (push) Successful in 6s
CI / memory-leak-check (push) Successful in 14s
2025-12-25 19:13:47 +01:00
Username
b41d077905 proxywatchd: make peak_rate per-session, not persistent
All checks were successful
CI / syntax-check (push) Successful in 6s
CI / memory-leak-check (push) Successful in 14s
2025-12-25 18:54:05 +01:00
Username
92b4036c37 proxywatchd: delay peak measurement until after startup
All checks were successful
CI / syntax-check (push) Successful in 6s
CI / memory-leak-check (push) Successful in 14s
2025-12-25 18:48:27 +01:00
Username
a8d06666b7 proxywatchd: fallback to HTTP when SSL fails
All checks were successful
CI / syntax-check (push) Successful in 6s
CI / memory-leak-check (push) Successful in 14s
2025-12-25 18:39:51 +01:00
Username
c459736561 proxywatchd: add sanity checks to rate/peak calculations
All checks were successful
CI / syntax-check (push) Successful in 6s
CI / memory-leak-check (push) Successful in 14s
2025-12-25 18:11:22 +01:00
Username
9ebfa01185 docs: add project instructions
All checks were successful
CI / syntax-check (push) Successful in 6s
CI / memory-leak-check (push) Successful in 14s
2025-12-25 11:14:41 +01:00
Username
d09f6d5e08 docs: update roadmap and todo 2025-12-25 11:14:27 +01:00
Username
5e184c1130 update config sample, requirements, searx instances 2025-12-25 11:13:34 +01:00
Username
269fed55ff refactor core modules, integrate network stats 2025-12-25 11:13:20 +01:00
Username
2201515b10 proxywatchd: track failures by protocol and SSL category 2025-12-25 02:51:47 +01:00
Username
9429d24fd5 httpd: extract static files to separate directory 2025-12-25 02:51:30 +01:00
Username
630ed96aa2 engines: add Bing and Yahoo search engines 2025-12-25 02:51:11 +01:00
Username
26f00c20de add network statistics tracking module 2025-12-25 02:49:34 +01:00
Username
372d7643cc httpd: add country pie chart to dashboard
All checks were successful
CI / syntax-check (push) Successful in 6s
CI / memory-leak-check (push) Successful in 14s
2025-12-24 01:37:57 +01:00
Username
9738cc9664 httpd: consolidate map page with shared css
All checks were successful
CI / syntax-check (push) Successful in 6s
CI / memory-leak-check (push) Successful in 14s
2025-12-24 01:34:33 +01:00
Username
38fb16a439 proxywatchd: fix mitm reset logic, track ssl_mitm category 2025-12-24 01:26:37 +01:00
Username
1a40f63bac docs: fix project name to Python Proxy Finder
All checks were successful
CI / syntax-check (push) Successful in 6s
CI / memory-leak-check (push) Successful in 14s
2025-12-24 01:23:04 +01:00
Username
4f17e7c546 proxywatchd: treat MITM as working, mark fatal errors as dead
All checks were successful
CI / syntax-check (push) Successful in 6s
CI / memory-leak-check (push) Successful in 14s
2025-12-24 01:17:02 +01:00
Username
97a7dc3316 fetch: use raw strings for regex patterns
All checks were successful
CI / syntax-check (push) Successful in 6s
CI / memory-leak-check (push) Successful in 14s
2025-12-24 01:06:49 +01:00
Username
c6dca3e51b ci: switch to python3 for all checks
All checks were successful
CI / syntax-check (push) Successful in 6s
CI / memory-leak-check (push) Successful in 18s
2025-12-24 01:00:28 +01:00
Username
ec861d94c4 ci: fix yaml syntax in import check step
Some checks failed
CI / syntax-check (push) Failing after 5s
CI / memory-leak-check (push) Failing after 12s
2025-12-24 00:58:47 +01:00