So the definition that it is log probs has historically grown, but as a rule of thumb, probabilities very close to 1 are difficult to work with (try evaluating 1-1e-20, and it’s a lot less for float vs. double). Now if you know that your probabilities are close to 1 but not close to 0, you can avoid this by using 1-p consistently, but it seems that using log-probs as the default representation of probabilities is a good idea in general.
Now this of distinctly practical relevance and crops up quite frequently

it is much more sane to use log_probs as neural network output if you want to train with negative log likelihood aka cross entropy,
When computing p-values that can be very small, it is a bad idea to compute 1-p first, see e.g. Bug in scipy.stats.ks_2samp for two-sided auto and exact modes on a few thousand samples (when n1!=n2) · Issue #12999 · scipy/scipy · GitHub , (where my solution is to compute p directly instead of going via 1-p).
Scipy has separate implementations for the lower (=usual) and upper incomplete gamma function (1-CDF for the gamma distribution) for stability reasons.

So to me, it makes a lot of sense to have log probs whenever actually doing something with it, but I would agree that it might be better to mention it explicitly also in the kl_div documentation (personally, I try to name my parameters log_probs or so, but I guess that’s not trivial to change).
Best regards
Thomas