This ClojureScript change
tracked this Clojure change
A consequence is that int? is satisfied by goog.math.Integer which is not fixed-precision.
Also, it creates a situation where it is possible to have values that satisfy int? but don't satisfy integer? or number?. (Note that this also affects things like pos-int?.)
I'd propose two alternative approaches to fix this that we can debate:
Alternative A: Simply remove the goog.math items from int? and friends.
Alternative B: Have goog.math.Long values satisfy number?, integer?, and int? and have goog.math.Integer values satisfy number? and integer?.
In either case, the docstrings should be updated.
I'll attached two concrete patches for consideration / debate.