long term goal: add config options that look like:
all_good_requirements = numeric_version | peer_height | block_hash_ok
all_good_ewma_source = protocol_only # or find_headers_ok or block_hash_ok
merely_synced_enough_requirements = numeric_version | peer_height
merely_synced_enough_ewma_source = protocol_only
``
to allow operator to customize tests and the probe that gets used for the EWMA/uptime calculation should the probes become tetchy/unreliable -- without needing to modify the Rust code:
for instance an operator might want to:
* disable the hash test to revert the seeder to the legacy behavior in case it's giving false negatives
* require that the probe type for the uptime calculation be protocol only (vs a headers check)
long term goal: add config options that look like: