I've grepped in the code for "407", "proxy_challenge", challenge calls, but none seems to be possibly called in my case. Although I don't know much about openser internal code and I'm still not able to find where the "best response selection" is made.
I would seriously recommend logging all decisions you take in the config file using x_log(), so you can follow a transaction in the logfile. By default the logfile is filled with mostly what OpenSER is doing, while the "why" is much, much more interesting.