Right now if a user makes a low feerate payment then later makes a higher feerate payment that spends the unconfirmed output from the prior payment the wallet is just completely blind to the prior low feerate.
This can contribute to long unconfirmed chains forming when the necessary feerates go up because later payments, though paying a higher rate, don’t pay enough to pull their ancestors up to their target rate.
Instead, we should probably reduce the effective value of unconfirmed outputs by the amount needed to bring them up to the target feerate, and increase fees by that much, so that when a feerate of x s/b is set, the actual effect rate delivered is actually x s/b.