Although different types of filters cannot be combined with an OR operator, there is a fairly straightforward workaround for combining numeric and boolean filters with an OR operator.
The following filter syntax would not work and you would receive the error message "Different types are not allowed in the same OR" :
price < 500 OR onSale: true
Algolia's engine considers booleans as integers: false as 0 and true as 1. That means you can apply numeric filters for boolean attributes, so the following revised filter syntax achieves the same intended functionality as the original and its syntax will be allowed:price < 500 OR onSale=1