The boundingbox_pick documentation says “The pick criteria can be for completely-contained or partially-contained entities, similar to how the Selection tool works.”
And “pick_type — PICK_INSIDE to select entities completely contained or PICK_CROSSING to select entities partially contained.”
However, PICK_CROSSING will not select a face unless one of the face’s edges crosses the pickbox.
So if a pickbox is entirely within the face edges, but penetrates the surface of the face, the face will not be picked.
This contrasts with the Selection tool partial select (drawing a selection rectangle from lower right to upper left) which DOES select any face even if none of its edges crosses the selection rectangle.
Sounds like you need to combine PICK_INSIDE with PICK_CROSSING to get what the UI gives you when selecting from right to left. I suppose there are cases when only picking on the crosses can be useful too but if the behavior is kept at least the docs should mention this.
The problem is, if you need to include such faces, where the edges are outside the box, but only the surface passes through the box, there is no way to do it.
But that only works inside a Tool where the user clicks on a point.
Boundingbox_pick can be called in any method where you are deriving the spacial relationships between sets of entities iteratively and do not want user input.
boundingbox_pick was added in a much later SU version and does (what I know of) not in any way take input from mouse coordinates. I don’t think there’s anything saying it needs to be used with a Tool or with user interaction other than the outdated docs.