if you look at the policyinstance there is a "desired configuration" section, that contains a "software" link - this defines the software (including revision) that the client actually tries to install. Does this have the correct revision ?
If not there is also an "Assigned Configuration" here the linked Software is the one from the policy (this should have the correct revision)
if these two configurations are different you can use the "update policy instance" task to update the desired configuration to the value of the assigned configuration so the client will update the software.
if there are multiple policies (and policyinstances) for a software on a single client the client will only install the desired configuration of the policyinstance of the policy with the highest priority
I think the desired configuration was Rev. 7 (latest working one), but it continued to try and install Rev. 5...
The files in the RepositoryCache say the same thing, r5 is the latest. I did update the Policy instance.
I gave up on that machine, and moved on with my life though , deleted all policites and recreated them and now it's ok.
However, reading your message, I think that it could have been because that that machine is a member of 2 different groups, and the one with a higher priority had r5 on it, and the one I was checking (r7) had a lower priority...