The help text for Orphaned Item Strategy states:
Jobs for removed SCM heads (i.e. deleted branches) can be removed immediately or kept based on a desired retention strategy. By default, jobs will be removed as soon as Jenkins determines their associated SCM head no longer exists.
I've tested with bitbucket-branch-source-plugin and github-branch-source-plugin and this is not true. The strategy doesn't check if the SCM head exists or not, but removes any branch marked as orphaned regardless of if the associated SCM head exists or not.
Preferably, it should keep the job for any branch that still exists. The current behavior cause behavior described in JENKINS-52406.
If this is not possible, the text should be changed to reflect the actual behavior. Not sure what that text would be though as the current behavior is not obvious.