[P1][clipboard] Tenter le clear transient même si CopyFinal échoue #24

Open
opened 2026-07-31 21:05:13 +00:00 by mathieu · 2 comments
Owner

Constat

clipboardSink.Deliver retourne immédiatement sur erreur de copie (internal/sink/sink.go:165-179). Un wl-copy timeout/non-zéro peut pourtant avoir acquis la sélection; la valeur transient reste alors en place.

Tâche

Dès qu'une copie transient a été tentée, exécuter exactement un clear borné et joindre les erreurs. Les modes persistants ne changent pas.

Critères d'acceptation

  • Toute tentative transient est suivie d'un clear.
  • Copy+clear en erreur reste classé sink_failed.
  • Aucune injection ne suit une copie échouée.
  • Le budget frais après expiration reste borné.

Validation

go test -race ./internal/clipboard ./internal/sink ./internal/session

## Constat `clipboardSink.Deliver` retourne immédiatement sur erreur de copie (`internal/sink/sink.go:165-179`). Un `wl-copy` timeout/non-zéro peut pourtant avoir acquis la sélection; la valeur transient reste alors en place. ## Tâche Dès qu'une copie transient a été tentée, exécuter exactement un clear borné et joindre les erreurs. Les modes persistants ne changent pas. ## Critères d'acceptation - Toute tentative transient est suivie d'un clear. - Copy+clear en erreur reste classé `sink_failed`. - Aucune injection ne suit une copie échouée. - Le budget frais après expiration reste borné. ## Validation `go test -race ./internal/clipboard ./internal/sink ./internal/session`

Correctif proposé dans la PR #40 (#40). Les packages sysexec/clipboard/inject/sink/session passent sous race.

Correctif proposé dans la PR #40 (https://git.2027a.net/mathieu/murmur/pulls/40). Les packages sysexec/clipboard/inject/sink/session passent sous race.

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

Correctif proposé et validé dans la PR #40 : https://git.2027a.net/mathieu/murmur/pulls/40.
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#24
No description provided.