useMutation refetching stale data?

When a user triggers a mutation multiple times in succession, I can get stale data from the refetched queries.

I have something like this, using ‘active’ to refetch the data on the screen:

  const [removeItem] = useMutation(REMOVE_ITEM, {
    refetchQueries: "active",

But, refetching the items query can take a few seconds.

If removeItem is called a few times in quick succession, for example, the refetch will return an items list that only has the first of the items removed, rather than all of them.

Should this be the case?

I’ve been looking into trying to cancel previous refetch requests with AbortController, but it’s a bit wonky.