It is possibly an undocumented feature 
I quite like using it because that ensure that you won’t silently break gradients with your custom Functions that are not implemented to be double differentiable!
Also the doc mentioning that you’re getting a Tensor is possibly something that has not been changed from the old style Function doc.