Conversation
MiMoHo
force-pushed
the
use-physical-v-for-paste
branch
from
September 9, 2026 15:22
8207513 to
8ece84c
Compare
Updates haad#19. AI assistance: Hermes Agent, gpt-6-astra. Reasoning effort: not exposed by this session.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Resolve Paste using the current layout's Command-modified key map instead of assuming the physical ANSI-V key always means Command-V.
The previous revision avoided an unresolved-key fallback to Command-A, but introduced a different regression: under standard Dvorak, ANSI-V produces Command-K. Dvorak–QWERTY Command intentionally has different shortcut behavior.
vorVthrough nativeUCKeyTranslatewith the Command modifier and current hardware keyboard type; do not cache layout state.Related: #7 handles paste-target transactions and #15 handles permission requests. This scoped revision does not replace either flow.
Verification
Eight native regression tests pass. They execute the production resolver and extracted key-posting methods against installed US, Dvorak, Dvorak–QWERTY Command and Russian layout data, with additional fallback, translation-error, no-op and allocation-failure cases. RED/GREEN evidence is retained locally.
Consent, current-layout selection and event-posting boundaries are intercepted. A symbol check verifies that the fixture cannot call the actual input or permission functions. No real key events, layout changes, clipboard access or TCC changes are used.
Limits
Native layout translation and intercepted event traces are not a live paste into a target application. No new signed installation, full Xcode project build, minimum-OS verification or CI success is claimed.
AI assistance
Implemented and independently reviewed with Hermes Agent using gpt-6-astra. The session does not expose its reasoning-effort setting; no value is inferred.