Following up on our discussion in #8247 (comment), we need to switch ufunc overrides to always raise TypeError if any arguments set __array_ufunc__ = None. The avoids potential for confusion with x + y and np.add(x, y) yielding different results.
This is a blocker for the 1.13.0 release.