The bug
Blockstate matching uses the default values for not set properties instead of allowing any value. This means that for example stone matches only stone[variant=stone]
How to reproduce
Place granite below you
/setblock ~ ~-1 ~ stone[variant=granite]Try to test for stone in general
/execute if block ~ ~-1 ~ stone run say Any stone found→ The message is not displayed, only when changing
stonetostone[variant=granite]
Made the report more generic, I hope you are fine with that.