Looking at the source, inline mesh declarations also appear to use auto as the default accel type for each shape.
But the confusion here is over specifying the accel type at the mesh level or the scene level. I would argue that specifying it at the mesh level is something that should not be exposed, as most users are more likely to make things worse than help themselves by overriding the auto selection on a per-mesh basis. Bad meshes sometimes give QBVH problems, but those are so rare, it’s really not worth worrying about. And the real solution is to fix the mesh, since while kdtree may load it, it’s still gonna make the render suffer.
If you expose a parameter, it should only be for the scene-level accelerator used to collect all the none/global meshes at the end of scene prep. And again, I think for 99% of the cases, just setting it to qbvh is what you want, and doesn’t really need to be exposed to the user.