The order of Applicative effects in filterAMissing
was incorrect, causing the order of effects to
differ from key order and be influenced by how
the binary tree was balanced.
The fix is to arrange that effects arising from
the key and value at an internal node come after
those in its left branch instead of before.
(Regardless of this fix such effects come before
those effects arising from the right branch.)
This change also expands test coverage
to detect a regression of this fix.
The order of Applicative effects in filterAMissing was incorrect, causing the order of effects to differ from key order and be influenced by how the binary tree was balanced.
The fix is to arrange that effects arising from the key and value at an internal node come after those in its left branch instead of before. (Regardless of this fix such effects come before those effects arising from the right branch.)
This change also expands test coverage to detect a regression of this fix.