From what I understand, it means SmarterMail is actually treating SPF PermError as if it was a SPF Fail.
And therefore the whitelisting is not in effect because it doesn't bypass a SPF failure.
If it's the case PermError should be treated as SPF Pass.
But more important is: why SmarterMail is returing a PermError for this SPF entry as it is perfectly validated by other software and online spf checkers.
Is the SPF parsing library used by SM outdated and doesn't handle long and/or multi-level spf ?
It makes perfect sense to me to dig this a bit more than that!
I remember last year also seing quite some SPF PermError in our SM logs and had checked them. Quite some where valid when I checked them with online tools, some others were real errors (bad spf syntax).
We don't have this problem anymore here as we completely disabled all antispam/antivirus processing by SmarterMail itself and are using dedicated front end filter (some E.F.A and some rspamd based solutions).
We then only use custom header checks rules on SmarterMail to give a SpamWeight score for further SmarterMail processing depending on the score returned by our gateways.
I hope you'll find a resolution to your problem.