Em suma: ~all , mas não por prioridade. Um include pode apenas Pass .
Isso é descrito na documentação do include mecanismo :
In hindsight, the name "include" was poorly chosen. Only the evaluated result of the referenced SPF record is used, rather than acting as if the referenced SPF record was literally included in the first. For example, evaluating a
-alldirective in the referenced record does not terminate the overall processing and does not necessarily result in an overallFail. (Better names for this mechanism would have been "if-pass", "on-pass", etc.)
Em outras palavras, não é uma questão de prioridade, mas sim a ordem de processamento: se o include não Pass (não por causa apenas do -all mas também de qualquer outra coisa dentro dele), não ser usado como Pass , como de outra forma poderia, mas também não causará Fail geral. Como resultado, ele retornará ao ~all no registro SPF original.