I've had this on my mind for quite a very long time and never got to sit down to put it down... until now.
Here is a proposal to improve the recording algorithm with regard to replacing existing recordings if newer airings are of better quality.
I'm open to (constructive) criticism and suggestions for improvements.
I am especially interested in what the devs think. Is any of it possible? I do think so. After all, it's just software.
I'm pretty sure condition C1 is already possible because the bit rates of recordings are known/available.
I have doubts for conditions C2 and C3 because, even though you are able to report delays and interruptions in recordings, I'm not sure whether you have/keep the actual corresponding values.
Note that in normal/good conditions, C2 and C3 are always false since all values should be zero.
Also, in this flowchart, the conditions are such that the bit rate has a higher priority than delays, which have a higher priority than interruptions. In other words: C1 > C2 > C3.
We could get "fancier" than that (translation: give a bigger headache for the devs) by giving the user the possibility to change the priorities of the conditions. I didn't want to go there for today!
Hint: if this was offered as an upgraded package with a cost, I would be the first one to say: "shut up and take my money!"