A list row has an identity beyond its current position. React uses a key to connect that identity to component state across renders. An array index changes meaning when rows reverse, and a display name may not be unique at all. Use the stable record id when edits must stay with their record. You'll reverse editable rows, remove by id, filter by normalized text, and sort numeric values with a tie rule. Keep the original fixture intact when creating a sorted view. The edge cases include zero prices and duplicate names, both of which should remain ordinary records in the resulting interface.