[BUG] 8.1.0rc3 Numeric expression on string returns 0 instead of failover

I’m trying to use toInt({value}, -999999) to check if the value is a string or a number, however the expression returns “0” even if the value is a string like “off”.

Is there any other way that I can check this?

maybe use the

try( toInt({value}, -999999),{value})

Definitely a bug.
It is evaluating the text as literals. Just tested this on 7.9.16 as well.
If you have off or on or true or false as the text it will evaluate it as 0,1,1,0