nit: better reject with a real Error: `reject(new Error(errorMsg))`