### 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_count = 3
        aws_sqs_client.send_message_batch(
            Url=sqs_queue,
            Entries=[
                {"Id": "1", "MessageBody": "message-0"},
                {"Id": "2", "MessageBody": "message-1"},
            ],
        )
        aws_sqs_client.send_message(Url=sqs_queue, MessageBody="message-2")
        i = 0
        result_recv = {"Messages": []}
        while len(result_recv["Messages"]) < message_count and i < message_count:
            result_recv["Messages"] = result_recv["Messages"] + (
                aws_sqs_client.receive_message(
                    Url=sqs_queue, MaxNumberOfMessages=message_count
                ).get("Messages")
            )
            i += 1
        assert len(result_recv["Messages"]) == message_count
        assert set(result_recv["Messages"][b]["Body"] for b in range(message_count)) == set(
            f"message-{b}" for b in range(message_count)
        )
    @markers.aws.validated
    def test_send_message_batch_with_empty_list(self, sqs_create_queue, aws_sqs_client):