In typestats, the thought process behind the "n_any" counts, is b x: Any is equivalent to an untyped x. So in that sense it's (strictly speaking) not "typed". So typestats only considers something "any" when it's "100% any".
However, pyrefly report seems to also count e.g. x: np.floating, which is equivalent to np.floating[Any], as "any". The consequence is that in scipy-stubs the strict coverage is below 50%, even though the non-strict coverage is 100%. And according to typestats, the strict coverege of scipoy-stubs is 99.7%: https://jorenham.github.io/typestats/dashboard/
So I propose that pyrefly report only counts an annotations as any if it's "100% any", like typstats does.
In typestats, the thought process behind the
"n_any"counts, is bx: Anyis equivalent to an untypedx. So in that sense it's (strictly speaking) not "typed". So typestats only considers something "any" when it's "100% any".However,
pyrefly reportseems to also count e.g.x: np.floating, which is equivalent tonp.floating[Any], as "any". The consequence is that inscipy-stubsthe strict coverage is below 50%, even though the non-strict coverage is 100%. And according to typestats, the strict coverege of scipoy-stubs is 99.7%: https://jorenham.github.io/typestats/dashboard/So I propose that
pyrefly reportonly counts an annotations as any if it's "100% any", like typstats does.