AI-406 : joint resources before persistence and pass back promise for error handling