Commit Graph

32 Commits

Author SHA1 Message Date
Username
d1e22a388c httpd: add ASN enrichment for worker-reported proxies
All checks were successful
CI / validate (push) Successful in 21s
Load pyasn database in httpd and look up ASN when workers report
working proxies. Previously ASN was only populated by proxywatchd
which doesn't run independently on the master node, leaving all
worker-reported proxies with asn=null.
2026-02-22 11:18:51 +01:00
Username
438e956be9 httpd: log report-proxies 500 errors
All checks were successful
CI / validate (push) Successful in 19s
2026-02-20 09:30:53 +01:00
Username
56accde90d httpd: add mitm field to JSON proxy list endpoints
Some checks failed
CI / syntax-check (push) Failing after 1s
CI / memory-leak-check (push) Successful in 16s
2026-02-18 18:21:58 +01:00
Username
d7b004f0ac httpd: include protocol in /proxies plain text format 2026-02-18 00:18:58 +01:00
Username
d184dc2926 httpd: remove V1 work distribution and result submission
Drop _work_claims tracking, claim_work(), submit_results(),
get_due_proxy_count(), calculate_fair_batch_size(), and the
/api/work + /api/results endpoint handlers.
2026-02-17 22:12:57 +01:00
Username
ba9553f4aa httpd: add freshness filter, mitm param, and provenance to upsert
Export endpoints now require last_seen within 60 minutes. Add optional
mitm=0|1 query parameter to filter MITM proxies. Fix upsert to track
success_count, consecutive_success, last_check, and last_target.
2026-02-17 21:06:27 +01:00
Username
c5287073bf httpd: add score-based url scheduling with EMA tracking
Replace ORDER BY RANDOM() in claim_urls with composite score:
age/interval ratio, yield bonus, quality bonus, error/stale penalties.

Rewrite submit_url_reports with adaptive check_interval and EMA for
avg_fetch_time and yield_rate. Add working_ratio correlation in
submit_proxy_reports via pending count tracking.
2026-02-17 15:20:07 +01:00
Username
6c111af630 httpd: add /api/report-proxies endpoint 2026-02-17 13:44:57 +01:00
Username
66157b5216 httpd: add /api/report-urls endpoint 2026-02-17 13:43:56 +01:00
Username
3162c65549 httpd: add /api/claim-urls endpoint 2026-02-17 13:42:59 +01:00
Username
5197c3b7e6 httpd: pass url database to api server 2026-02-17 13:42:01 +01:00
Username
00afd141ae httpd: add /proxies/all endpoint for unlimited proxy list 2026-02-15 12:27:55 +01:00
Username
6ba4b3e1e9 httpd: exclude untested proxies from results
Filter out entries with proto IS NULL from /proxies and /proxies/count
endpoints. These are proxies added to the database but never validated,
leaking into results with null proto, asn, and zero latency.
2026-02-15 04:02:00 +01:00
Username
2960458825 httpd: fix wsgi /proxies route ignoring query params
The WSGI _handle_route had a hardcoded LIMIT 100 query for /proxies,
ignoring limit, proto, country, asn, and format parameters. Align
with the BaseHTTPRequestHandler path that already supported them.
2026-02-15 03:58:57 +01:00
Username
d87ff73d95 httpd: remove memory profiling code
Remove objgraph/pympler imports, gc.get_objects() caching,
and memory_samples tracking. Keep basic RSS tracking for dashboard.
2026-01-17 19:25:33 +01:00
Username
6cc903c924 httpd: add batch API endpoint and worker improvements
- /api/dashboard: single endpoint returning stats + workers + countries
- dashboard.js: use batch endpoint (2 requests -> 1 per poll cycle)
- _get_workers_data: refactored from /api/workers for code reuse
- worker verification: trust scoring based on result accuracy
- fair distribution: dynamic batch sizing based on queue and workers
- queue tracking: session progress, due/claimed/pending counts
2026-01-08 09:02:56 +01:00
Username
480a652889 httpd: add stats export endpoint with CSV/JSON support 2025-12-28 17:23:44 +01:00
Username
18ae73bfb8 httpd: add worker test rate tracking
Track per-worker test rates using 120s sliding window.
Display combined rate in dashboard and individual rates
in worker cards.
2025-12-28 16:43:53 +01:00
Username
0fbfee2855 httpd: add worker registration and distributed testing API 2025-12-28 15:19:08 +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
50f49a20ff httpd: restrict /api/memory to localhost only 2025-12-26 19: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
9429d24fd5 httpd: extract static files to separate directory 2025-12-25 02:51:30 +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
f2e6b8216b httpd: fix dashboard accuracy and add memory tracking
- Add from __future__ import division
- Change "Tests This Session" to "Tests (Cumulative)"
- Fix Tor status to show IDLE when available but 0% success
- Add memory leak detection: RSS growth, peak, GC stats
2025-12-24 00:19:05 +01:00
Username
f83733dd46 proxywatchd: mark confirmed-dead proxies as permanently dead
- Add DEAD_PROXY=-1 constant for permanently dead proxies
- Mark proxy dead when: failed >= max_fail*2, or max_fail with fatal error
- Fatal errors: refused, unreachable, auth (proxy definitely not working)
- Dead proxies excluded from testing (failed >= 0 query)
- Cleanup_stale also removes old dead proxies
- Dashboard shows separate dead vs failing counts
2025-12-23 18:03:01 +01:00
Username
1e2054bec5 dashboard: fix missing tor pool and db stats fields 2025-12-23 17:56:12 +01:00
Username
53f37510f3 dashboard: add system monitoring and enhanced stats
- prominent check type badge in header (SSL/judges/http/irc)
- system monitor bar: load, memory, disk, process RSS
- anonymity breakdown: elite/anonymous/transparent counts
- database health: size, recent activity, dead proxy count
- enhanced Tor pool stats: requests, success rate, latency
- SQLite ANALYZE/VACUUM functions for query optimization
- database statistics API functions
2025-12-23 17:47:12 +01:00
Username
1c437d2246 httpd: modern dashboard with gevent WSGI
- dark theme with CSS custom properties
- responsive grid layout for stats cards
- sparkline charts for rate/success history
- gevent pywsgi server with BaseHTTPServer fallback
- new API endpoints: /api/stats, /api/judges, /api/protocols
- protocol breakdown, latency percentiles, geo distribution
- tor pool health, judge availability, engine stats
- auto-refresh with configurable interval
2025-12-23 17:23:58 +01:00
Username
901f2c1aee httpd: improve api error handling 2025-12-21 23:37:49 +01:00
Username
2212a9e00a httpd: add HTTP API server for proxy queries
- Endpoints: /proxies, /proxies/count, /health
- Query params: limit, proto, country, format (json/plain)
- Threaded server with CORS support
2025-12-20 22:28:10 +01:00