co-mono/packages/coding-agent/src/modes
Sviatoslav Abakumov 4ca7bbe450
Fix tree selector focus behavior (#1142)
* fix(coding-agent): tree selector focuses nearest visible ancestor

When the selected entry is not visible (filtered out by mode change or a
metadata entry like model_change), walk up the parent chain to find the
nearest visible ancestor instead of jumping to the last item.

Fixes selection behavior for:

- Initial selection when currentLeafId is a metadata entry
- Filter switching, e.g. Ctrl+U for user-only mode

* fix(coding-agent): tree selector preserves selection through empty filters

When switching to a filter with no results, e.g. labeled-only with no
labels and back, the cursor would reset to the first message instead of
the original selection.

Track lastSelectedId as a class member and only update it when
filteredNodes is non-empty, preserving the selection across empty filter
results.

* test(coding-agent): add tree selector filter and selection tests

- Test metadata entry handling (model_change, thinking_level_change)
- Test filter switching with parent traversal (default ↔ user-only)
- Test empty filter preservation (labeled-only with no labels)
2026-02-01 13:23:52 +01:00
..
interactive Fix tree selector focus behavior (#1142) 2026-02-01 13:23:52 +01:00
rpc feat(coding-agent): add set_session_name RPC command (#1075) 2026-01-30 01:41:58 +01:00
index.ts feat(coding-agent): export run mode utilities with options interfaces 2026-01-08 01:53:24 +01:00
print-mode.ts fix(coding-agent): bind extension UI context on startup 2026-01-26 23:00:48 +01:00