Bad end of transmission on serial USB

Good morning,
I want to communicate with an ESP32 from a Python script on my PC.
I send a chain and in return, the ESP32 sends me the data received to confirm. Everything is going well but at each end of the data return, a fault is added
(assert failed: xQueueSemaphoreTake queue.c:1549)
with several lines of hex code, certainly RAM addresses. This flaw exists both in my script and with the serial monitor of the Arduino IDE (latest version).
Below is the ESP32 code:

 int i = 0;
  while(Serial.available()) {
    recep[i] = Serial.read();
    delay(5); 
    if (recep[i] > 0 && recep[i] < 256) {
      if (recep[0] == 36 && recep[1] == 99 && recep[2] == 115 && recep[3] == 118 && i > 3) { // Get csv data ( $csv=.............;)
        if (recep[5] == 45 && recep[6] == 110 && recep[i] != 95 && recep[i] != 10 && i > 6 && i < 24) {
          csvName += char(recep[i]);
        }
        if (i > 23) {
          csvFile += char(recep[i]);
        }
      }
    }
    // $csv=-nfirstfile________csvfilecontent
    i += 1;
  }
  if (csvName != "") {
    Serial.println("filename: " + csvName + ".csv");
    csvName = "";
  }
  if (csvFile != "") {
    Serial.println("file content: " + csvFile);
    csvFile = "";
  }

Does anyone know the meaning of this error message on a USB port please?

That looks like a FREERTOS error but it can't be because your code does not contain any RTOS tasks

This is very strange, I keep looking for a solution and I got another error:
Guru's Meditation Error
And after redoing and redoing, everything is fine. My serial communication is correct and I no longer have an error message.
To be sure of myself, I copy the code published above, I download it. And I confirm that the error is gone.
I regret not having understood what happened. I wonder if ESP32 are really reliable at USB serial communication?????