Thanks Sage, that makes sense. Instead of removing the assertion, I explicitly check / make sure only primary is inserted to the list (and when is there state change, make sure it can refresh properly). Please help to review the new patch.