On removing bots worse than SittingDuck
Let me argue that missing jars is the problem. Suppose you enter a new bot in the rumble and suppose that 10 weakest bots are inaccessible. Then this new bot, will have overall smaller APS than some old bot who already had a chance to pair up with weak ones.
So your APS would be smaller, not because your bot is weaker but because bots are missing. Literumble will show this as "Rankings Not Stable" but its probably not what you want.
Opposite will happen if 10 strong bots are missing.
Thus I am pushing for removal of missing bots so the rankings is done on the same set.
This only happens when no one that runs roborumble has access to those bots. And the real problem is our priority battle algorithm — it takes more than 3000 battles to be guaranteed to have a full pairings, but the default battles threshold is 2000, which leaves new bots typically with missing pairings.
Unstable rankings has nothing to do with those inaccessable bots.
I suggest we tweak the priority battle algorithm a little — when there's no one that has battles below threshold, prioritizing on pairings. Only when everyone has full pairings, run random battles.
However, the first problem to solve is that we make sure every bot is accessible to everyone.
The literumnle already does this. However the delay between generating the priority battles and the client running them and uploading them means that many are run twice.