Ignore cached bridge descriptors until we check if they are running
Split off #24367 (moved):
[An] underlying issue here is that every use of any_bridge_descriptors_known() in tor is wrong. Instead, we want to know if num_bridges_usable() > 0.
This is a bug introduced in commit 93a8ed3 in 0.3.2.1-alpha by #23347 (moved). But it was also a bug in commit eca2a30 in 0.2.0.3-alpha, but we've never encountered it before, because we always retried our bridges immediately (and far too often).
My branch bug24367 at https://github.com/teor2345/tor.git passes all of make test-network, but fails some of the guard and microdesc unit tests. This probably means the unit tests were relying on the buggy behaviour, and need to be changed. I might need nickm or asn to help me fix the unit tests, because they wrote them.
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information