### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

with python boto3 client

- send a message to fifo queue with MessageGroupId='1'
- receive the message
- delete the message
- send another message to the queue with MessageGroupId='1'
- try to receive the message, get none
- check message availability with get_queue_attributes, get `{'ApproximateNumberOfMessages': '1', 'ApproximateNumberOfMessagesNotVisible': '0', 'ApproximateNumberOfMessagesDelayed': '0', ...`

### Expected Behavior

expecting to receive message from the queue

### How are you starting LocalStack?

With a docker-compose file

### Steps To Reproduce

docker-compose up


### Environment

```markdown
- OS:MacOS Sonoma 14.2.1
- LocalStack: latest
```


### Anything else?

I tried to run with Rosetta, no result
message.first_received = message.last_received
                    LOG.debug("de-queued message %s from fifo queue %s", message, self.arn)
                    if max_receive_count and message.receive_count > max_receive_count:
                        # th
                        LOG.debug(
                            "message %s has been received %d times, marking it for DLQ",
                            message,
                            message.receive_count,
                        )
                        result.dead_letter_messages.append(message)
                    else:
                        result.successful.append(message)
                        # no
                        if len(result.successful) == num_messages:
                            break
                # bu
                if len(result.successful) == num_messages:
                    break
        # no
        # we 
        with self.mutex:
            for message in result.successful:
                # ma
                receipt_handle = self.create_receipt_handle(message)
                message.receipt_handles.add(receipt_handle)
                self.receipts[receipt_handle] = message
                result.receipt_handles.append(receipt_handle)
                # ma
                if message.visibility_timeout == 0:
                    self._put_message(message)