£9.5bn spending gap wasn’t disclosed ‘which under the law ... they should have done’ says fiscal watchdog