Why doesn't the Ethereum protocol have a clear indicator for a transaction that is reverted?

There's a heuristic here as well as a workaround using Geth. But there are probably ways that the protocol could provide a clear indicator. For example, could a transaction receipt have a boolean property for outofgas?

What could the protocol do to provide an Out of Gas indicator, and why were none implemented?