[P1][osd] Remplacer le parsing stdin par un framing JSONL borné et résynchronisable #29
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Constat
Le helper lit 16 Kio puis termine immédiatement sur HUP, même si davantage est disponible (
helpers/osd-gtk/murmur-osd.py:169-202). Le dépassement 64 Kio efface tout le buffer et certaines exceptions JSON (ValueError,RecursionError) sortent du callback. Les booléens passent aussi pour des entiers.Tâche
Implémenter un petit automate de framing: drainer avec budget jusqu'à EAGAIN, traiter les lignes avant HUP, jeter une frame trop longue jusqu'au LF, attraper les erreurs de ressources et valider strictement types/ranges.
Critères d'acceptation
Validation
python3 -m unittest helpers/osd-gtk/test_murmur_osd.pyCorrectif proposé dans la PR #42 (#42). Les validations ciblées sous race sont détaillées dans la PR.
Correctif proposé et validé dans la PR #42 : #42.