SOLVED: If anyone interested in cause and solution, let me know.
Running asterisk 1.4.
I have a queue running “least recent” ring strategy. Queue members are added dynamically using AddQueueMember(). Everything functions except for the following annoyances:
 if i look at the queue [queue show XXX] i see all the dynamic extensions but they always show “Not In Use” regardless of their actual status. As a result, the queue rings all member extensions [in the correct least recent strategy] but includes busy phones. This shows up as “second line ringing” on both softphones [Zoiper] and hardphones [Cisco] if a manager elects to log in to help out. Any idea why an extension shows up a “Not In Use” when it clearly is? Call Waiting is disabled. RingInUse flag is set to No. Any ideas or fixes available?
 When there is a queue, calls are not being distributed to members in any obvious way. I was expecting calls to be released on a first come-first serve basis to agents as they free up but this is not the case. It seems somewhat random. This results in some unfortunate callers getting overlooked and running up long wait times while some other caller joins the queue and is almost immediately released to an agent. Any ideas?