use reportSuccess / reportError since we'd like to save the last result