cmux/tests
Lawrence Chen 51a67e31fd
Socket access control: process ancestry check (#58)
* Socket access control: process ancestry check + file permissions

Redesign socket control modes from (off, notifications, full) to
(off, cmuxOnly, allowAll):

- cmuxOnly (default): uses LOCAL_PEERPID + sysctl process tree walk to
  verify the connecting process is a descendant of cmux. External
  processes (SSH, other terminals) are rejected.
- allowAll: hidden mode accessible only via CMUX_SOCKET_MODE=allowAll
  env var, skips ancestry check. Legacy "full"/"notifications" env
  values map here for backward compat.
- off: disables socket entirely.

Security hardening:
- Server: chmod 0600 on socket after bind (owner-only access)
- CLI: stat() ownership check before connect (reject fake sockets)

Removes per-command allow-list (isCommandAllowed) — once a process
passes the ancestry check, all commands are available.

Includes migration for persisted UserDefaults values and env var
aliases (cmux_only, cmux-only, allow_all, allow-all).

* Add /sync-branch skill for submodule + main sync
2026-02-18 01:09:24 -08:00
..
cmux.py Add file drop support from Finder into terminal splits 2026-02-17 21:55:31 -08:00
test_app_keystrokes.sh Release v1.23.0 (#31) 2026-02-09 15:30:43 -08:00
test_blank_screen.py Bump version to 1.25.0 (#33) 2026-02-11 16:24:31 -08:00
test_browser_back_forward.py Cmd+[/] browser back/forward, cmd+click open in new tab, right-click open in new tab 2026-02-15 18:35:58 -08:00
test_browser_custom_keybinds.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_browser_goto_split.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_browser_panel_stability.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_claude_hook_session_mapping.py add Claude hook session mapping test 2026-02-15 21:50:06 -08:00
test_close_surface_selection.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_close_workspace_selection.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_cpu_notifications.py Release v1.23.0 (#31) 2026-02-09 15:30:43 -08:00
test_cpu_usage.py Release v1.23.0 (#31) 2026-02-09 15:30:43 -08:00
test_ctrl_enter_keybind.py Release v1.23.0 (#31) 2026-02-09 15:30:43 -08:00
test_ctrl_interactive.py Rename to cmux and add About panel 2026-01-26 03:05:03 -08:00
test_ctrl_signals.sh Rename to cmux and add About panel 2026-01-26 03:05:03 -08:00
test_ctrl_socket.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_file_drop_paths.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_file_drop_split_targeting.py Add file drop support from Finder into terminal splits 2026-02-17 21:55:31 -08:00
test_focus_notification_dismiss.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_initial_terminal_interactive_and_rendering.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_lint_swiftui_patterns.py Fix high CPU usage from notifications and add regression tests 2026-01-29 17:02:16 -08:00
test_multi_workspace_focus.py Release v1.36.0 (#47) 2026-02-17 04:04:29 -08:00
test_nested_split_does_not_disappear.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_nested_split_no_arranged_subview_underflow.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_nested_split_no_detach_during_update.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_nested_split_panel_routing.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_nested_split_preserves_existing_split.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_new_tab_interactive_after_splits.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_new_tab_render_after_splits.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_notifications.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_shell_histfile_ghostty_zdotdir_regression.py Release v1.23.0 (#31) 2026-02-09 15:30:43 -08:00
test_shell_zdotdir_user_override.py Release v1.23.0 (#31) 2026-02-09 15:30:43 -08:00
test_shell_zdotdir_wrapper.py Release v1.23.0 (#31) 2026-02-09 15:30:43 -08:00
test_sidebar_cwd_git.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_sidebar_ports.py Release v1.23.0 (#31) 2026-02-09 15:30:43 -08:00
test_signals_auto.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_socket_access.py Socket access control: process ancestry check (#58) 2026-02-18 01:09:24 -08:00
test_split_flash_and_layout.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_tab_dragging.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_terminal_focus_routing.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_terminal_input_render_report.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_terminfo_bright_colors.py Release v1.23.0 (#31) 2026-02-09 15:30:43 -08:00
test_update_timing.py Improve update UI error details 2026-01-28 01:49:02 -08:00
test_visual_screenshots.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00
test_visual_typing_char_by_char.py Fix frozen terminals after split churn (#12) 2026-02-13 16:45:31 -08:00