Don't let helper failures hurt a relay's results (as much)
Created by: pastly
This is something that has been bothering me for a while, especially if we drum up many people to run helper that aren't the authorities, aren't necessarily easily reachable on IRC, etc.
sbws should be able to figure out when helpers aren't online. It should either not use that helper because it knows ahead of time that it's not good to use currently, or it should not record a result that penalizes the target relay when it happened to get paired with a down helper.
Some ideas
- Reachability tests. Periodically build circuits to helpers and connect to their sbws server with the sole purpose of determining if it seems to be in a good state.
- (More) granular error types, that are also monitored. If sbws can tell that it failed to test a target and it probably wasn't the target's fault, then
- That error shouldn't count (as much) against the target as other error types, or not be recorded at all
- Those errors should be noticed by other parts of sbws that keep track of errors-per-helper and disable or disfavor helpers that have too many errors.
Just as the 1.0 milestone nearly completion, I suggest that this is important enough to consider for 1.0