Nailing down what we expect IO to do and not do - and why