https://developers.google.com/web/updates/2019/02/intersectionobserver-v2

IntersectionObserver を使っていて VSCode の補完に出てこない isVisible ってプロパティがあるけどずっと false なのが気になって調べてみると上のページが出てきました
v2 の機能みたいです

v2 では実際に見えているかをチェックできるみたいです
ただ 単純な位置計算だけでできなくて重くなるので気軽に使うものではなさそうです

IntersectionObserver コンストラクタのオプションに delay と trackVisibility が追加されて trackVisibility が true だと v2 の機能が使えるようになるようです

isVisible の「見える」というのは「対象の要素が他の要素に完全に遮られておらず スクリーン上で変更や歪めるようなエフェクトを受けてないことを強く保証するもの」だそうです
逆に 「見えない」はその保証ができないということのようです

仕様では isVisible は false negatives は許可されてて false positives は許可されてないそうです
見えてるのに false になることはあるけど 見えてないのに true になることはない ということですね