First off thank you.
I don't really get what you mean by import initial file incorrectly. I just checked again by converting my plink files I use as eagle input to VCF format by using:
plink \
--bfile {eagle_input_plink} \
--keep-allele-order \
--recode vcf-iid \
--out {eagle_input_vcf}
I checked REF/ALT for every position in the resulting {eagle_input_vcf} compared to my very first VCF in my workflow (before ever going into plink). These REF/ALT all are 100% the order they should be, so I don't think I forgot --keep-allele-order, although point taken.
I used the {eagle_input_plink} files to phase with Eagle, which outputs Oxford format. I convert Oxford format to VCF using:
shapeit -convert \
--input-haps {eagle_oxford_output} \
--output-vcf {eagle_phased.vcf}
From sanity checks I can tell that 100% of the REF/ALF alleles are flipped between {eagle_phased.vcf} and the test file {eagle_input_vcf} I made above. Since the flip was perfectly systematic, I wasn't too worried about using bcftools norm --check-ref -s to flip everything back, but now I wonder if there is something deeper that I am missing. Do you have any recommendations?
The only other thing I can think of is that either eagle or shapeit are making assumptions about the order of ref/alt in the input, which is sort of out of my control.