This is backport from core. It makes the API much more understandable. See https://github.com/bitcoin/bitcoin/pull/10297/commits/db994b2de93f52c9e7bed8529ca925de5064a46f for details.
I would rather return some object that forces you to check, but we have this and it is needed for the utxo work, so be it.