I don't think anyone is assuming the Oyster fare is always £16.80. A vast majority know roughly what their regular journey costs.
PAYG is horrendous in disruption when making a longer journey. An actual example
Yesterday, my sister was looking to travel from Hampton Court to Cookham. The cheapest route is via the pink reader at Richmond and Ealing Broadway. She aimed to catch the 1554 train from Hampton Court but touched in around 1540. On arrival at Richmond, the District Line wasn't running due to trespass. Not much advice on what to do instead.
At this point she could have got a 65 bus to Ealing Broadway, but then she would trigger not only the £1.75 bus fare but a peak time journeys from Ealing Broadway at £13.40, with no chance of recovering the additional cost.
At about 5pm it seemed obvious that nothing was going to move, and, with Clapham Junction to West Brompton shut this week, it seemed to make sense to go via Windsor.
Next train to Staines was 1723. Arrived at 1741 and she timed out. Arrived in Cookham about 3½ hours after leaving
Result is that a journey that should have cost £7.50 has come through at about £25.
No Delay Repay possible as it was a TfL problem that she then had to divert round using only National Rail services. Now needs a call to TfL support to get some sort of refund, but it is unlikely to be back to £7.50 given the journey she actually had to make.