Gate inputs are treated very differently from normal occluders in Umbra. Occluders are sampled at voxel granularity, whereas gates are processed triangle by triangle. In a perfect world arbitrarily complex gate objects would just work, but usually using simpler proxy geometry, e.g. simple boxes or even planes for the visibility "gate" is a good idea for computation performance.
It might be a good idea to even automate this in your tools if possible: use the OBB of an object as the gate instead of the renderable geometry.