feat(tui): add runtime filter popup#321
Conversation
Add a runtime/backend filter popup to the TUI, accessible via the B key. Follows the exact pattern of the existing filter popups (Quant, RunMode, Params, License). Reuses InferenceRuntime::label() for option names rather than duplicating runtime strings. Fixes AlexsJones#197 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
three-foxes-in-a-trenchcoat
left a comment
There was a problem hiding this comment.
Overall: Clean addition of the runtime/backend filter popup. Follows the existing pattern perfectly. Using BTreeSet for sorted deduplicated values and reusing InferenceRuntime::label() avoids string duplication. LGTM.
|
Thanks @three-foxes-in-a-trenchcoat — glad the BTreeSet + |
|
Clean implementation. Follows the existing popup patterns perfectly — the B key for backend filtering is intuitive. The BTreeSet for unique runtime labels is a nice touch. LGTM. |
three-foxes-in-a-trenchcoat
left a comment
There was a problem hiding this comment.
Clean implementation — follows existing popup patterns perfectly. However, this PR has merge conflicts (DIRTY). Please rebase on latest main. Once rebased, this is good to merge.
|
Ready on my end, but this is showing DIRTY (merge conflicts). Can you rebase on latest main and the CI will re-run? Then we can merge. |
Summary
Adds a runtime/backend filter popup to the TUI, accessible via the B key. Follows the exact pattern of the existing filter popups (Quant, RunMode, Params, License).
RuntimePopupInputMode variantInferenceRuntime::label()(reuses core enum, no duplicate strings)apply_filtersmatching the existing popup patterndraw_runtime_popupdraw function in tui_ui.rsThe API already has
RuntimeFilter(serve_api.rs:718) but the TUI lacked a corresponding popup.Testing
cargo clippy --all-targets --all-featurespasses (all warnings are pre-existing).Fixes #197
This contribution was developed with AI assistance (Claude Code).