fix(cli install): resolve tuple unpacking bug and UX issues (#291)#292
Merged
Conversation
Fixes #291 - CLI install command bugs: 1. Fix "Index already exists" false positive: - Properly unpack tuple from index_dir_has_existing_artifacts() - Function returns tuple[bool, list[str]], not bool - Prevents always-true condition causing incorrect messages 2. Fix UI visibility on white/light terminal themes: - Add custom questionary styles with bold/blue colors - Selected items now visible on both light and dark backgrounds - Added underline for highlighted items 3. Fix UX confusion with agent host selection: - Changed from pre-selecting ALL hosts to only claude-code - Added help message explaining multi-select behavior - Added confirmation showing what will be deployed 4. Improve scope selection clarity: - Added explanatory notes about project vs user scope - Added confirmation message showing selected scope All 53 installer tests pass. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
4 tasks
HumanBean17
added a commit
that referenced
this pull request
Jun 8, 2026
…tyle 1. Pass required `verbose=not quiet` and `quiet=quiet` to run_build_ast_graph() — the function gained a mandatory `verbose` parameter, which the installer call was missing, causing CI failure. 2. Revert the custom questionary Style from #292. The hardcoded fg:cyan/fg:blue colors were added to improve visibility on light terminal themes but broke dark themes. Questionary's defaults already use ●/○ indicator characters that are theme-independent, so a custom style is unnecessary and just creates a light-vs-dark conflict. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
HumanBean17
added a commit
that referenced
this pull request
Jun 8, 2026
…tyle 1. Pass required `verbose=not quiet` and `quiet=quiet` to run_build_ast_graph() — the function gained a mandatory `verbose` parameter, which the installer call was missing, causing CI failure. 2. Revert the custom questionary Style from #292. The hardcoded fg:cyan/fg:blue colors were added to improve visibility on light terminal themes but broke dark themes. Questionary's defaults already use ●/○ indicator characters that are theme-independent, so a custom style is unnecessary and just creates a light-vs-dark conflict. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
HumanBean17
added a commit
that referenced
this pull request
Jun 8, 2026
…tyle 1. Pass required `verbose=not quiet` and `quiet=quiet` to run_build_ast_graph() — the function gained a mandatory `verbose` parameter, which the installer call was missing, causing CI failure. 2. Revert the custom questionary Style from #292. The hardcoded fg:cyan/fg:blue colors were added to improve visibility on light terminal themes but broke dark themes. Questionary's defaults already use ●/○ indicator characters that are theme-independent, so a custom style is unnecessary and just creates a light-vs-dark conflict. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
HumanBean17
added a commit
that referenced
this pull request
Jun 8, 2026
…tyle 1. Pass required `verbose=not quiet` and `quiet=quiet` to run_build_ast_graph() — the function gained a mandatory `verbose` parameter, which the installer call was missing, causing CI failure. 2. Revert the custom questionary Style from #292. The hardcoded fg:cyan/fg:blue colors were added to improve visibility on light terminal themes but broke dark themes. Questionary's defaults already use ●/○ indicator characters that are theme-independent, so a custom style is unnecessary and just creates a light-vs-dark conflict. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
3 tasks
HumanBean17
added a commit
that referenced
this pull request
Jun 8, 2026
* fix(installer): add missing verbose/quiet args to run_build_ast_graph call Fixes CI failure after commit 39b5e0a. The run_build_ast_graph() function signature requires: - source_root (required) - kuzu_path (required) - verbose (required) ← was missing - quiet (optional) - env (optional) The call in installer.py was missing verbose and quiet args, causing: "internal error: run_build_ast_graph() missing 1 required keyword-only argument: 'verbose'" Added verbose=not quiet and quiet=quiet to match the pattern used in cli.py. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * fix(cli install): pass missing verbose arg and revert broken custom style 1. Pass required `verbose=not quiet` and `quiet=quiet` to run_build_ast_graph() — the function gained a mandatory `verbose` parameter, which the installer call was missing, causing CI failure. 2. Revert the custom questionary Style from #292. The hardcoded fg:cyan/fg:blue colors were added to improve visibility on light terminal themes but broke dark themes. Questionary's defaults already use ●/○ indicator characters that are theme-independent, so a custom style is unnecessary and just creates a light-vs-dark conflict. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * chore: bump version to 0.5.1 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes #291 - CLI install command bugs reported during testing.
Bug Fixes
1. "Index already exists" False Positive ✅
Problem: The installer always showed "Index already exists" even on fresh installations.
Root Cause: The code was using
if index_dir_has_existing_artifacts(index_dir):but this function returnstuple[bool, list[str]], not a boolean. Since non-empty tuples are always truthy in Python, the condition was alwaysTrue.Fix: Properly unpack the tuple:
2. UI Visibility on White/Light Terminal Themes ✅
Problem: Selected items were not clearly visible on white/light terminal backgrounds.
Root Cause: Default questionary styles used colors that blended with light backgrounds.
Fix: Added custom prompt_toolkit Style with:
3. UX Confusion with Agent Host Selection ✅
Problem: Users were confused when selecting agent hosts. All hosts were pre-selected by default, leading users to think they selected one host when actually all were selected.
Root Cause: Checkbox with
checked: Truefor all items. Users unfamiliar with multi-select checkboxes didn't realize they needed to uncheck unwanted items.Fix:
4. Scope Selection Clarity ✅
Problem: Users were unclear about the difference between project and user scope.
Fix: Added explanatory notes and confirmation:
Test Plan
Technical Details
Files Changed:
java_codebase_rag/installer.pyLines Changed: +33, -7
Breaking Changes: None - these are pure bugfixes and UX improvements
🤖 Generated with Claude Code