".......... it now it seems totally nonsensical that TFL should claer my balance..."
That's happened to me too Rick. A few minutes after waiting on the platform an announcement was made saying there was a serious problem with the Piccadilly line and the next train would arrive in 35 minutes. That would have made me late for my appointment so I decided to go back home and take the car. On leaving the station several pounds were deducted from my Oyster card.
"Surely its not too difficult to programmed in this contingency??"
I visit the Netherlands regularly and use an "OV-chipkaart" which is essentially the same as an Oyster card except it works on all modes of public transport throughout the country. If a traveller checks in and checks out at the same metro station within 20 minutes (or one hour for a rail station) there's no charge. That's perfect for the situations we found ourselves in, or even if someone wants to meet a friend on the platform or escort their elderly relative to the train etc.