[P1][audio] Ne jamais conserver la capture d'une session annulee #47
Labels
No labels
Agent/Autonomous OK
Agent/Demeter
Agent/Hermes
Agent/Human
Agent/Needs Review
Area/API
Area/Auth
Area/CLI
Area/Data
Area/Docs
Area/Infra
Area/UI
CI/Failing
CI/Flaky
CI/Green
CI/Needs Runner
CI/Needs Workflow
Compat/Backward Compatible
Compat/Breaking
Compat/Migration
Deploy/Ansible
Deploy/Blocked
Deploy/Homelab
Deploy/Needs Config
Deploy/Needs Secret
Deploy/Ready
Deploy/Rollback
Kind/Bug
Kind/Chore
Kind/Design
Kind/Documentation
Kind/Enhancement
Kind/Feature
Kind/Refactor
Kind/Security
Kind/Spike
Kind/Testing
Ops/Backup
Ops/Incident
Ops/Maintenance
Ops/Monitoring
Ops/Upgrade
Priority
Critical
Priority
High
Priority
Low
Priority
Medium
Priority
Someday
Reviewed
Confirmed
Reviewed
Duplicate
Reviewed
Invalid
Reviewed
Won't Fix
Risk
Critical
Risk
High
Risk
Low
Risk
Medium
Security/Auth
Security/Disclosure
Security/Hardening
Security/Secret
Size
L
Size
M
Size
S
Size
XL
Size
XS
Stack/Ansible
Stack/Docker
Stack/Forgejo
Stack/Hermes
Stack/Node
Stack/Postgres
Stack/Python
Stack/Systemd
Status
Abandoned
Status
Blocked
Status
In Progress
Status
In Review
Status
Need More Info
Status
Ready
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
2027a/murmur#47
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?
Provenance
Suivi de la revue du 4 septembre 2026.
Chemin local :
/home/mathieu/Projets/murmur/docs/code-review-2026-09-04.md.Revue initiale sur
69a2e643, actualisee surfcd52c78a765322ae60a8ab74bb30daa6f8f90c6.Les liens ci-dessous sont figes sur
f48f1bd4a6db1c488b8ccc0a87fefb547101db2b, HEAD local et distant verifie le 8 septembre 2026.Les reproductions sont celles consignees dans la revue ; le comparatif Voxtype du 8 septembre a relu les chemins, sans relancer ces tests ni le desktop.
Tous les chemins relatifs Murmur partent de
/home/mathieu/Projets/murmur/.Constat et chemins revus
Avec
audio.keep_recordings=trueoupolicy.retain_diagnostics=true, une annulation apres l'arret de la capture peut laisser un WAV conserve.Release()applique la retention sans tenir compte du resultat terminal ; pendant processing, la copie diagnostique peut deja exister.Release.Reproduction documentee
Matrice batch/live x annulation pendant transcription/processing, retention active : resultat
cancelled, zero appel sink, mais un WAV de 64 044 octets conserve (capture synthetique de deux secondes). Les controles avec retention desactivee passent. La revue indique des repetitions sous-race.Les anciennes reproductions par overlay etaient sous
/tmp/opencode/murmur-p1-overlay_test.goet/tmp/opencode/murmur-p1-overlay.json. Elles ne sont pas versionnees et leur presence actuelle n'est pas garantie. Leurs commandes sont dans la section "Reproductions temporaires" de la revue ; convertir les scenarios en tests du depot.Correction attendue
Lier la decision de retention a la fermeture atomique de la fenetre d'annulation ou au resultat terminal. Un test ponctuel de
ctx.Err()autour de l'appel actuel ne suffit pas : il laisserait une course et manquerait l'annulation pendant processing. Clarifier la propriete et la finalisation de l'audio sans ajouter un framework.Criteres d'acceptation
-race, y compris controles retention desactivee.Validation cible :
go test -race ./internal/audio ./internal/audio/pwrecord ./internal/session, puis suite complete.Connexes : #8 (finalisation et erreurs de nettoyage), #9 (retenir le snapshot valide). Ces tickets ne couvrent pas a eux seuls la decision de retention apres annulation.
Corrigé : PR #54, merge
e6dda84intégré à main via PR #53 (1ee7178) : rétention décidée après le résultat terminal, Discard en cas d’annulation. Les deux correctifs sont présents sur origin/main ; fermeture du ticket. Tests de validation et déploiement du commit fusionné en cours.