nit: @private, `_handleError` ?