what the current algorithm does is it the following:
Let F and R be a pair of reads.
The algorithm first applies the LCA to the alignments of F to get taxon t(F)
It then applies the LCA to the alignments of R to get taxon t(R)
It then assigns F and R to the LCA of t(F) and t(R)
This is a very conservative approach that explains your observation.
I will look into implementing an optional, less conservative approach (which will be based on
adding the bits scores of alignments to the same reference in the appropriate way...)