In the process of testing the pointsOnly flag, I realized RPT's optimization to force the predicate to Intersects from Within|Contains isn't sound. In the case of Within, this is only valid if there is one point per document but not multiple (since all points on a doc need to intersect the query shape), and for Contains it was simply wrong.
Note that the strategy has no multi-valued hint or some-such. If it did, then if !multiValued && pointsOnly, then Within could be changed to Intersects. Regardless, swapping the predicate can be done at a higher level (Solr/ES).