Almost. It was static group in the respect that it was dynamically grabbed on load, but the resolver just wasn't triggering at all after that.
We did not have an explicit group defined, "php" literally referred to the DNS name of the load balancer it was contacting. The rest of the domain was being taken care of by the local resolver (search domain). It looks like the code changed in nginx to completely rely on it's own DNS checking at some point rather than what the local system was reporting, which would explain why it suddenly stopped working after a version change when nothing else had been modified.
We changed the line from "php:9000" to the FQDN like "php.internal.ourdomain.com:9000", and the nginx resolver started triggering. To anyone who isn't using an FQDN and stumbles upon this, try that first.