The remove operation in RFC 6902 allows you to delete an element from an array in a JSON object, but also changes the array index of all the other elements.
If you retrieve a record using GET, and then delete an element from an array using PATCH, isn't there a risk that someone else could have deleted a different element in that array, which could change the index of the item you want to delete? Couldn't this cause you to accidentally delete the wrong item from the array?
Am I using this incorrectly, or does using PATCH to remove elements from an array require some kind of optimistic locking to function reliably?