Today, we match case insensitive strings by invoking the regex matching engine. But, we have quite a few of these features in our rule set (409???). Like with bytes above, consider emitting lowercased strings as features, and matching case-insensitive strings via hash lookup.
The tradeoff is one additional feature emitted per string, and a bit more code complexity.
Again, I think this may be able to help the rule logic planner, since it can pre-filter more rules when the hashable features are known.
Today, we match case insensitive strings by invoking the regex matching engine. But, we have quite a few of these features in our rule set (409???). Like with bytes above, consider emitting lowercased strings as features, and matching case-insensitive strings via hash lookup.
The tradeoff is one additional feature emitted per string, and a bit more code complexity.
Again, I think this may be able to help the rule logic planner, since it can pre-filter more rules when the hashable features are known.