Leere Diarisierung führt zu IndexError, Job bleibt auf transcribing hängen

Als Nutzer:in der Transkriptions-Pipeline möchte ich, dass ein Transkriptionsjob auch dann sauber beendet oder als Fehler markiert wird, wenn die Diarisierung keine Sprechersegmente liefert, damit Jobs nicht dauerhaft im Status transcribing hängen bleiben und Fehler im Backend nachvollziehbar sichtbar sind.

Akzeptanzkriterien

  • Wenn die Diarisierung ein leeres Ergebnis liefert, entsteht kein ungefangener IndexError in assign_word_speakers.
  • Wenn die Sprecherzuordnung oder der nachgelagerte Chunking-Schritt fehlschlägt, wird der Fehler über die bestehende Error-Handling-Logik verarbeitet.
  • Der RabbitMQ-Consumer hinterlässt in diesem Fall keine unhandled task exception mehr.
  • Der Job verbleibt nicht dauerhaft im Status transcribing.
  • Der Job wird bei fatalem Fehler auf error gesetzt oder gemäß Retry-Policy sauber erneut eingeplant.
  • Die Message wird in RabbitMQ korrekt ack/nack behandelt und bleibt nicht unbeabsichtigt offen.
  • Review einer zweiten Person ist durchgeführt
Edited by Benedikt Reiz