[release][high] Émettre une touche Insert réelle pour shift+insert #70
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#70
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?
Revue de préparation publique
Branche de travail :
release.Code examiné :
6052defc07a8d85a26a62014a72d23c4855a4786.Sévérité : high. Domaine : inject.
Constat et impact
Le raccourci produit un’argument nu Insert. Le parseur wtype v0.4 traite
cet argument comme du texte, pas comme la touche Insert.
Preuves
internal/inject/inject.go:85-92; internal/inject/inject_test.go:50-57.
Source: https://github.com/atx/wtype/blob/v0.4/main.c
Travail recommandé
Utiliser la syntaxe de touche nommée supportée par wtype, corriger la
régression qui valide actuellement les mauvais arguments.
Validation et caractère bloquant
Vérifier les argv et un collage réel avec shift+insert. Aucune frappe
du mot Insert ne doit apparaître. Bloque ce raccourci.
Suivi
En file d’attente issue de la revue, pas un correctif en cours.
Héphaïstos porte le diagnostic et les propositions techniques sur
release.Mathieu arbitre les choix de produit et autorise les fusions.
Confirmation expérimentale du bug lors de l’investigation Telegram Desktop / Wayland.
Avec
wtype 0.4-2, dans une fenêtre Qt 6.12.0 de diagnostic sous Hyprland (aucun collage ni conversation utilisés) :wtype -M shift Insert -m shiftproduit six événements texte :I,n,s,e,r,t. Qt ne reconnaît aucun événement de collage.wtype -M shift -k Insert -m shiftproduit une seule toucheQt::Key_Insert; l’événement est reconnu parQKeySequence::Paste.La correction attendue est donc
[]string{"-M", "shift", "-k", "Insert", "-m", "shift"}dansshortcutArgs, avec mise à jour des tests et des exemples d’arguments dansdocs/sinks.md.Les tests actuels
go test ./internal/inject ./internal/sinkpassent, mais figent les arguments erronés : ils ne détectent pas cette régression d’intégration.Attention : ce correctif ne rend pas
Shift+Insertuniversel. Kitty utilise ce raccourci pour la sélection PRIMARY par défaut, alors que Murmur remplit CLIPBOARD avecwl-copy. Ce point est distinct du bug de touche nommé.— Pi 🥧