In real life, on the phone of a real proxy user (i.e. not the software testers at Telegram company), proxy lists contain thousands of dead proxies, and every healthy proxy becomes available/unavailable by internet service providers every 30 seconds once, and its availability status becomes switched, frequently.
But users mostly think any unavailable proxy is dead. They cannot distinguish dead proxies from healthy unavailable ones (proxies which are temporarily unavailable for a few seconds).
When users try removing dead proxies manually, they mistakenly delete healthy unavailable ones, too.
The solution is to record the number of failures and successes of each proxy, the latest time when the proxy has passed a ping test successfully (Last Availability Time), and other statistics for each proxy. Then you can create a smart removal feature which distinguishes and deletes unavailable proxies which are more likely to be dead, but lets other unavailable proxies remain undeleted.
For example, a batch proxy removal button, or an option for auto proxy removal, to make removal decisions smarter, decreasing the number of mistaken killed proxies, and easing the job for the user. The decisions can never become 100% smart but they could be improved. User decisions are mostly wrong when too many healthy proxies become temporarily unavailable at the same time by the ISP.
There's also an easier alternative solution for such a smart removal feature which doesn't need to save any history or statistics of proxies on the disk. Therefore, its implementation is much easier for you too. There's only one downside to it: Its decisions are not very precise. But it almost solves the problem and decreases mistaken removals by 99%: In each sort, order unavailable proxies by thei... #28639
There are also some other cards suggesting a similar batch removal feature (though they didn't specify a solution for distinguishing dead proxies from other unavailable ones which are healthy):
#22406, #22499, #24008, #2568, #24761
Having a large number of dead proxies in the list, causes the proxy auto-switcher to get stuck in checking dead proxies each time it tries finding an available proxy. So, batch removal improves auto-switcher too.