Project
cortex
Description
The slash-command palette initially lays commands out under named buckets (Session, Model, View, …) via render_section_header, which gives each entry a family label at a glance.
The moment the search field holds any characters, rendering takes a different code path that iterates all commands in index order and prints only rows that substring-match. No per-bucket headings, no separators, and no inline badge showing which bucket a hit came from.
From the operator’s perspective, the UI silently restructures: identical-looking rows now appear, but the taxonomic cue that explained why a command lives next to its neighbors is gone. That makes disambiguation harder when several unrelated actions share similar wording, and it feels like information was stripped rather than intentionally simplified.
Error Message
Debug Logs
System Information
Cortex: v0.0.7
OS: Windows / Linux / macOS
Screenshots
https://github.com/kstefanovic/platform-screenshots/blob/main/Screenshot%202026-04-09%20231742.png
https://github.com/kstefanovic/platform-screenshots/blob/main/Screenshot%202026-04-09%20231808.png
Steps to Reproduce
- Launch TUI, invoke the command palette (whatever binding opens
CommandsModal).
- With no filter text, observe section headers and grouping.
- Enter any non-empty filter string.
- Observe results are a flat enumeration with no section labels or dividers.
Expected Behavior
At least one of:
- Preserve bucket labels (or repeat a compact category tag per row) while filtering, or
- Add explicit copy (footer, subtitle, or one-time hint) that search mode intentionally hides taxonomy, or
- Offer a toggle between “grouped filter” and “flat filter” if flat mode is kept for density.
Actual Behavior
Filtering always switches to the flat renderer; category membership is not surfaced, and nothing explains the layout change.
Additional Context
No response
Project
cortex
Description
The slash-command palette initially lays commands out under named buckets (Session, Model, View, …) via
render_section_header, which gives each entry a family label at a glance.The moment the search field holds any characters, rendering takes a different code path that iterates all commands in index order and prints only rows that substring-match. No per-bucket headings, no separators, and no inline badge showing which bucket a hit came from.
From the operator’s perspective, the UI silently restructures: identical-looking rows now appear, but the taxonomic cue that explained why a command lives next to its neighbors is gone. That makes disambiguation harder when several unrelated actions share similar wording, and it feels like information was stripped rather than intentionally simplified.
Error Message
Debug Logs
System Information
Screenshots
https://github.com/kstefanovic/platform-screenshots/blob/main/Screenshot%202026-04-09%20231742.png
https://github.com/kstefanovic/platform-screenshots/blob/main/Screenshot%202026-04-09%20231808.png
Steps to Reproduce
CommandsModal).Expected Behavior
At least one of:
Actual Behavior
Filtering always switches to the flat renderer; category membership is not surfaced, and nothing explains the layout change.
Additional Context
No response