Agree they're possible, but I don't agree they're big wins. All the tests in 29.228 are simple in-memory tests (at worst, regexp matches), so essentially free compared to the network traffic we have elsewhere.

Doing this would make the code significantly more complex - e.g., we'd need a separate pass before evaluating an SPT where we check all the groups it mentions (there can be more than one) to see if all of them can be shortcircuited. I don't think it's worth it.