When using VariantFilteration with genotype filters, the FORMAT line for the genotype filter is wrong:
##FORMAT=<ID=FT,Number=1,Type=String,Description="Genotype-level filter">
It should have "Number=." like so:
##FORMAT=<ID=FT,Number=.,Type=String,Description="Genotype-level filter">
Since any genotype can have 0 or more filters associated with it. From the VCFv4.2 doc: "If the number of possible values varies, is unknown, or is unbounded, then this value should be ‘.’"
Its a small issue, I noticed it when pyvcf didn't properly parse the genotype filters to a list. On the plus side, it should be a one character bugfix, which is always nice.
To replicate, I used this command to trigger two filters on one genotype. This occurs both in gatk3.6 and gatk3.5.
gatk -T VariantFiltration \
-R $ref \
--variant $vcf_file \
--filterExpression "QUAL<1000.0" \
--filterName "Q1000" \
--genotypeFilterExpression "DP<20" \
--genotypeFilterName "DP20" \
--genotypeFilterExpression "DP<20" \
--genotypeFilterName "DP20_v2" \
-o $output \
--setFilteredGtToNocall