Skip to content

Commit ff56aa5

Browse files
committed
docs(parity): update command-mapping to reflect 100% effective coverage
why: All 90 tmux commands are now either directly wrapped (82) or covered by aliases/flags (8). display-menu is wrapped but has a test gap. what: - Update summary to 82/90 directly wrapped (91%), 90/90 effective (100%) - Move display-menu from "Not Wrappable" to "Test Gaps" section - Remove command-prompt and confirm-before from unwrappable (now testable via send-keys -K) - Add "Notable Test Innovations" section documenting the send-keys -K approach and ControlMode testing patterns
1 parent c2897f2 commit ff56aa5

1 file changed

Lines changed: 13 additions & 9 deletions

File tree

skills/tmux-parity/references/command-mapping.md

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,9 @@ bash .claude-plugin/scripts/extract-libtmux-methods.sh
88

99
## Summary
1010

11-
- **Directly wrapped**: 79/90 commands (87%)
11+
- **Directly wrapped**: 82/90 commands (91%)
1212
- **Covered by alias/flag**: 8 additional commands
13-
- **Truly unwrappable**: 3 commands (block waiting for interactive input)
14-
- **Total effective coverage**: 87/90 (96%)
13+
- **Total effective coverage**: 90/90 (100%)
1514

1615
## Covered by Alias/Flag (8 commands)
1716

@@ -28,12 +27,17 @@ These commands are not called directly but their functionality is available:
2827
| `set-window-option` | `OptionsMixin.set_option(scope=OptionScope.Window)` | Alias for `set-option -w` |
2928
| `show-window-options` | `OptionsMixin.show_options(scope=OptionScope.Window)` | Alias for `show-options -w` |
3029

31-
## Not Wrappable (3 commands)
30+
## Test Gaps (1 command)
3231

33-
These block forever waiting for interactive user input:
32+
| tmux Command | Method | Why |
33+
|---|---|---|
34+
| `display-menu` | `Server.display_menu()` | Requires TTY-backed client. Control-mode clients have `tty.sy=0`, causing `menu_prepare()` to return NULL. Method exists but cannot be tested hermetically. |
35+
36+
## Notable Test Innovations
3437

35-
| tmux Command | Why |
38+
| Command | Testing Approach |
3639
|---|---|
37-
| `command-prompt` | Opens interactive prompt, blocks until user types |
38-
| `confirm-before` | Blocks waiting for y/n confirmation (even `-y` blocks in control mode) |
39-
| `display-menu` | Opens interactive menu, blocks until selection |
40+
| `confirm-before` | `send-keys -K -c <client>` injects 'y' into status prompt handler (tmux 3.4+) |
41+
| `command-prompt` | `send-keys -K -c <client>` types text + Enter into status prompt (tmux 3.4+) |
42+
| `display-popup` | ControlMode client + marker file side-effect verification |
43+
| `detach-client` | ControlMode client + `list-clients` count assertion |

0 commit comments

Comments
 (0)