not all get_consensus() relays are in get_server_descriptors()
The reverse is to expected and it's often up to 1000 relays. However, the mismatch in this case is often anywhere from 1 to 100 relays.
How to replicate:
Code highlighting:
{{{#!python
serverdescriptors_dict = dict((str(x.fingerprint), x) for x in DescriptorDownloader().get_server_descriptors().run())
consensus_list = [x for x in DescriptorDownloader().get_consensus().run()]
mismatch_count = len([x.fingerprint for x in consensus_list if x.fingerprint not in serverdescriptors_dict])
}}}
Here are the results from multiple runs:
88 16 91 1 1 86 1 88 90 90 17
Unclear where this bug is, it could be in the TOR protocol itself perhaps.
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information