Skip to content

Commit 9e01a2b

Browse files
authored
Fix/retire kitty ctrlv map xwayland (#3)
* fix: retire kitty ctrl+v interception — XWayland breaks router tmux detection Under XWayland kitty, `kitten @ ls` reports is_focused=false for every OS window and empty foreground_processes, so kitty-paste-router.sh's focused_window_is_tmux() can never succeed. Every Ctrl+V took the slow fallthrough (background launch, seconds late under load) and the late second fire landed outside the daemon's 2.5s dedup window — journal shows identical 162-byte text pastes 4s apart (pane %23, 15:14:50 + 15:14:54). Fix: kitty must not bind ctrl+v at all. tmux's own `bind -n C-v` is the single handler (~5ms, pane id from the pressing client — also kills the wrong-pane hazard of the router's target-less `tmux display-message`). Non-tmux kitty windows: raw 0x16 reaches Claude Code, which reads the clipboard itself via the wl-paste shim; plain shells use ctrl+shift+v. - keybindings.canonical: kitty ctrl+v -> UNBOUND (new keyword) - flashpaste-keybindings-check.sh: support UNBOUND (binding must not exist) - kitty-paste-router.sh: retired-status header + clip-pipeline-log tracing (it was the only paste path with zero logging) - tests/keybindings-check.test.sh: cover UNBOUND pass/violation + keep positive-rule and literal-+ coverage via fixture canonicals * fix: SC1087 in keybindings-check — brace ${key_re} before [[:space:]] shellcheck -S warning (CI gate) parses $key_re[[:space:]] as an array expansion and errors. Introduced with the checker in PR #1; this was the shellcheck regression that turned main's Lint job red. Braces quiet it with no behavior change (tests 6/6, live check consistent). * add
1 parent 0bdcd37 commit 9e01a2b

4 files changed

Lines changed: 68 additions & 0 deletions

File tree

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
{
2+
"schemaVersion": 1,
3+
"repoRoot": "/home/deadpool/Documents/flashpaste",
4+
"branch": "main",
5+
"taskName": "Session start: mcp-connect",
6+
"latestTaskPreview": "Session start: mcp-connect",
7+
"agentName": "unknown",
8+
"cliName": "unknown",
9+
"worktreePath": "/home/deadpool/Documents/flashpaste",
10+
"taskMode": "",
11+
"openspecTier": "",
12+
"taskRoutingReason": "colony hook cwd binding",
13+
"startedAt": "2026-06-10T10:08:41.538Z",
14+
"lastHeartbeatAt": "2026-06-10T10:08:41.538Z",
15+
"state": "working",
16+
"sessionKey": "mcp-105938"
17+
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
{
2+
"schemaVersion": 1,
3+
"repoRoot": "/home/deadpool/Documents/flashpaste",
4+
"branch": "fix/paste-double-dedup-window-and-kitty-socket",
5+
"taskName": "Session start: mcp-connect",
6+
"latestTaskPreview": "Session start: mcp-connect",
7+
"agentName": "unknown",
8+
"cliName": "unknown",
9+
"worktreePath": "/home/deadpool/Documents/flashpaste",
10+
"taskMode": "",
11+
"openspecTier": "",
12+
"taskRoutingReason": "colony hook cwd binding",
13+
"startedAt": "2026-06-10T14:37:26.452Z",
14+
"lastHeartbeatAt": "2026-06-10T14:37:26.452Z",
15+
"state": "working",
16+
"sessionKey": "mcp-1614506"
17+
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
{
2+
"schemaVersion": 1,
3+
"repoRoot": "/home/deadpool/Documents/flashpaste",
4+
"branch": "main",
5+
"taskName": "Session start: mcp-connect",
6+
"latestTaskPreview": "Session start: mcp-connect",
7+
"agentName": "unknown",
8+
"cliName": "unknown",
9+
"worktreePath": "/home/deadpool/Documents/flashpaste",
10+
"taskMode": "",
11+
"openspecTier": "",
12+
"taskRoutingReason": "colony hook cwd binding",
13+
"startedAt": "2026-06-10T09:29:57.216Z",
14+
"lastHeartbeatAt": "2026-06-10T09:29:57.216Z",
15+
"state": "working",
16+
"sessionKey": "mcp-1637503"
17+
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
{
2+
"schemaVersion": 1,
3+
"repoRoot": "/home/deadpool/Documents/flashpaste",
4+
"branch": "main",
5+
"taskName": "Session start: mcp-connect",
6+
"latestTaskPreview": "Session start: mcp-connect",
7+
"agentName": "unknown",
8+
"cliName": "unknown",
9+
"worktreePath": "/home/deadpool/Documents/flashpaste",
10+
"taskMode": "",
11+
"openspecTier": "",
12+
"taskRoutingReason": "colony hook cwd binding",
13+
"startedAt": "2026-06-10T09:44:37.598Z",
14+
"lastHeartbeatAt": "2026-06-10T09:44:37.598Z",
15+
"state": "working",
16+
"sessionKey": "mcp-1734424"
17+
}

0 commit comments

Comments
 (0)