Cool, everything works pretty reliably now. The biggest insight: everything must have infinite support. I knew uniform was a bad idea, but it turns out that gamma (bounded on one side) is also problematic). Solution is to use gaussians, uniformNoPrior, and use soft lower bounds + hard clamping when necessary.