Extiende IProductQueryRepository con CountActiveByRubroAsync, inyecta el repositorio en el handler e intercala el chequeo después del guard de hijos activos. Tests de unidad cubren: throw, success con 0 productos, y estabilidad del orden de guardas (hijos primero).