diff --git a/config.py b/config.py index 99156d1..0af12fc 100644 --- a/config.py +++ b/config.py @@ -101,8 +101,9 @@ class Config(ComboParser): self.add_item(section, 'timeout_fail_max', float, 15, 'max extra timeout for failures (default: 15)', False) self.add_item(section, 'submit_after', int, 200, 'min. number of tested proxies for DB write', False) self.add_item(section, 'debug', bool, False, 'whether to print additional debug info', False) - self.add_item(section, 'checktime', int, 1800, 'base checking interval for proxies in db in seconds', False) - self.add_item(section, 'perfail_checktime', int, 3600, 'additional checking interval for proxies in db in seconds per experienced failure', False) + self.add_item(section, 'working_checktime', int, 300, 'retest interval for working proxies in seconds (default: 300)', False) + self.add_item(section, 'fail_retry_interval', int, 60, 'retry interval for failing proxies in seconds (default: 60)', False) + self.add_item(section, 'fail_retry_backoff', bool, True, 'use linear backoff for failures: 60, 120, 180... (default: True)', False) self.add_item(section, 'database', str, 'proxies.sqlite', 'filename of database', True) self.add_item(section, 'oldies', bool, False, 're-test old proxies as well ? (default: False)', False) self.add_item(section, 'oldies_checktime', int, 43200, 'base checking interval for *old* proxies in seconds (default: 43200)', False) @@ -113,6 +114,7 @@ class Config(ComboParser): self.add_item(section, 'tor_safeguard', bool, True, 'enable tor safeguard (default: True)', False) self.add_item(section, 'checktype', str, 'head', 'secondary check type: irc, head, judges (used when ssl_first fails)', False) self.add_item(section, 'ssl_first', bool, True, 'try SSL handshake first, fallback to checktype on failure (default: True)', False) + self.add_item(section, 'ssl_only', bool, False, 'when ssl_first enabled, skip secondary check on SSL failure (default: False)', False) self.add_item(section, 'scale_cooldown', int, 10, 'seconds between thread scaling decisions (default: 10)', False) self.add_item(section, 'scale_threshold', float, 10.0, 'min success rate % to scale up threads (default: 10.0)', False) @@ -147,6 +149,14 @@ class Config(ComboParser): self.add_item(section, 'libretranslate_url', str, 'https://lt.mymx.me/translate', 'LibreTranslate API URL (default: https://lt.mymx.me/translate)', False) self.add_item(section, 'libretranslate_enabled', bool, False, 'enable LibreTranslate for dynamic translations (default: False)', False) + section = 'verification' + self.add_item(section, 'enabled', bool, True, 'enable manager verification system (default: True)', False) + self.add_item(section, 'threads', int, 2, 'number of verification threads (default: 2)', False) + self.add_item(section, 'batch_size', int, 10, 'proxies per verification cycle (default: 10)', False) + self.add_item(section, 'interval', int, 30, 'seconds between verification cycles (default: 30)', False) + self.add_item(section, 'max_queue', int, 1000, 'max pending verifications (default: 1000)', False) + self.add_item(section, 'spot_check_pct', float, 1.0, 'percent of working proxies to spot-check (default: 1.0)', False) + section = 'worker' self.add_item(section, 'batch_size', int, 100, 'proxies per work batch (default: 100)', False) self.add_item(section, 'heartbeat', int, 60, 'heartbeat interval in seconds (default: 60)', False)