Here's the problem distilled through the lens of system design: BA's 'no-show' clause is basically an automated fault-tolerance mechanism, engineered to handle partial failure by canceling the whole system. Sounds like a reasonable approach when we're talking about servers, but when it's actual human beings and their travel plans, suddenly, it's a feature that's misinterpreted as a bug. Consider the case that hit the news: someone skips a leg of their journey and ends up paying £9,000 for new flights. BA treats each leg of a journey like a node in a distributed system; if one node doesn't send its 'alive' signal, the system assumes failure and triggers a cascading shutdown. Logical in a distributed database avoiding data corruption, but in airline terms, it's a massive inconvenience. Why? Because this setup doesn't account for edge cases. What if someone needs to leave a journey for unavoidable reasons? It's like expecting a PC to shut down if a single app fails to respond. We wouldn’t accept that from Microsoft; why do we accept it from airlines? Could the solution be as simple as tweaking the algorithm? Maybe introduce a failover process for ticket cancellations that doesn't penalize the entire itinerary. But then again, BA profits from reselling the unoccupied seat, so is there any incentive for them to change? Are we dealing with a 'bug' that airlines have never been pressured to fix because it serves their financial interests too well? Or is it a case of overlooked complexity in an otherwise robust system? I'd love to hear thoughts. What's the real function here, a logical system or legalized extortion?