[P2][audio] Centraliser la finalisation et rendre les échecs de nettoyage observables #8

Open
opened 2026-07-31 21:05:11 +00:00 by mathieu · 1 comment
Owner

Constat

Plusieurs chemins ignorent RemoveAll, Abort ou Release: internal/audio/pwrecord/pwrecord.go:325-331, internal/audio/retention.go:82-105, internal/session/orchestrator.go:185-390, internal/core/transcribe.go:37-69. De l'audio sensible peut rester alors que le résultat ne signale rien.

Tâche

Centraliser les chemins de finalisation audio en quelques helpers directs. Joindre les erreurs de nettoyage aux échecs actifs; sur succès fonctionnel, émettre l'avertissement contrôlé audio_failed/audio sans exposer de chemin local.

Critères d'acceptation

  • Toute capture démarrée atteint exactement un Stop, Abort ou Release vérifié.
  • Une suppression forcée en erreur est observable sur succès et échec.
  • La classe primaire reste stable lors d'un errors.Join.
  • Aucune transcription ou livraison n'a lieu après annulation.

Validation

go test -race ./internal/audio ./internal/audio/pwrecord ./internal/core ./internal/session

## Constat Plusieurs chemins ignorent `RemoveAll`, `Abort` ou `Release`: `internal/audio/pwrecord/pwrecord.go:325-331`, `internal/audio/retention.go:82-105`, `internal/session/orchestrator.go:185-390`, `internal/core/transcribe.go:37-69`. De l'audio sensible peut rester alors que le résultat ne signale rien. ## Tâche Centraliser les chemins de finalisation audio en quelques helpers directs. Joindre les erreurs de nettoyage aux échecs actifs; sur succès fonctionnel, émettre l'avertissement contrôlé `audio_failed/audio` sans exposer de chemin local. ## Critères d'acceptation - Toute capture démarrée atteint exactement un Stop, Abort ou Release vérifié. - Une suppression forcée en erreur est observable sur succès et échec. - La classe primaire reste stable lors d'un `errors.Join`. - Aucune transcription ou livraison n'a lieu après annulation. ## Validation `go test -race ./internal/audio ./internal/audio/pwrecord ./internal/core ./internal/session`

Correctif proposé et validé dans la PR #43 : #43.

Correctif proposé et validé dans la PR #43 : https://git.2027a.net/mathieu/murmur/pulls/43.
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
mathieu/murmur#8
No description provided.