-
Notifications
You must be signed in to change notification settings - Fork 2.6k
fix: prevent empty mode names from being saved (#5766) #5794
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Conversation
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
- Add local state management for mode name input field to allow visual emptying - Implement onBlur validation to only save non-empty names - Add backend validation using modeConfigSchema.safeParse() - Ensure empty names are never written to YAML files This allows users to clear the name field visually while preventing invalid empty names from being persisted to configuration files.
|
✅ No security or compliance issues detected. Reviewed everything up to fc2c886. Security Overview
Detected Code Changes
Reply to this PR with |
mrubens
approved these changes
Jul 16, 2025
fxcl
added a commit
to tameslabs/Roo-Cline
that referenced
this pull request
Jul 16, 2025
* main: fix: Resolve confusing auto-approve checkbox states (RooCodeInc#5602) fix: prevent empty mode names from being saved (RooCodeInc#5766) (RooCodeInc#5794) Format time in ISO 8601 (RooCodeInc#5793) fix: resolve DirectoryScanner memory leak and improve file limit handling (RooCodeInc#5785) Fix settings dirty check (RooCodeInc#5779) feat: increase Ollama API timeout values and extract as constants (RooCodeInc#5778) fix: Exclude Terraform and Terragrunt cache directories from checkpoints (RooCodeInc#4601) (RooCodeInc#5750) Move less commonly used provider settings into an advanced dropdown (RooCodeInc#5762) feat: Add configurable error & repetition limit with unified control (RooCodeInc#5654) (RooCodeInc#5752) list-files must include at least the first-level directory contents (RooCodeInc#5303) Update evals repo link (RooCodeInc#5758) Feature/vertex ai model name conversion (RooCodeInc#5728) fix(litellm): handle baseurl with paths correctly (RooCodeInc#5697) Add telemetry for todos (RooCodeInc#5746) feat: add undo functionality for enhance prompt feature (fixes RooCodeInc#5741) (RooCodeInc#5742) Fix max_tokens limit for moonshotai/kimi-k2-instruct on Groq (RooCodeInc#5740) Changeset version bump (RooCodeInc#5735) Add changeset for v3.23.12 patch release (RooCodeInc#5734) Update the max-token calculation in model-params to use the shared logic (RooCodeInc#5720) Changeset version bump (RooCodeInc#5719) chore: add changeset for v3.23.11 patch release (RooCodeInc#5718) Add Kimi K2 model and better support (RooCodeInc#5717) Fix: Remove invalid skip-checkout parameter from GitHub Actions workflows (RooCodeInc#5676) feat: add Cmd+Shift+. keyboard shortcut for previous mode switching (RooCodeInc#5695) Changeset version bump (RooCodeInc#5708) chore: add changeset for v3.23.10 patch release (RooCodeInc#5707) Add padding to the index model options (RooCodeInc#5706) fix: prioritize built-in model dimensions over custom dimensions (RooCodeInc#5705) Update CHANGELOG.md Changeset version bump (RooCodeInc#5702) chore: add changeset for v3.23.9 patch release (RooCodeInc#5701) Tweaks to command timeout error (RooCodeInc#5700) Update contributors list (RooCodeInc#5639) feat: enable Claude Code provider to run natively on Windows (RooCodeInc#5615) feat: Add configurable timeout for command execution (RooCodeInc#5668) feat: add gemini-embedding-001 model to code-index service (RooCodeInc#5698) fix: resolve vector dimension mismatch error when switching embedding models (RooCodeInc#5616) (RooCodeInc#5617) fix: [5424] return the cwd in the exec tool's response so that the model is not lost after subsequent calls (RooCodeInc#5667) Changeset version bump (RooCodeInc#5670) chore: add changeset for v3.23.8 patch release (RooCodeInc#5669)
roomote bot
pushed a commit
that referenced
this pull request
Jul 18, 2025
- Enhanced CustomModesManager.ts with comprehensive validation for all fields - Added validation for required fields (name, roleDefinition, slug) and optional fields (description, whenToUse, customInstructions) - Implemented checks to prevent empty strings from being saved (should be undefined instead) - Extended local state management pattern from PR #5794 to ALL editable fields in ModesView.tsx - Added local state variables for all fields: localModeName, localModeDescription, localModeRoleDefinition, localModeWhenToUse, localModeCustomInstructions - Implemented onFocus/onChange/onBlur pattern for all editable fields to prevent empty field saves - Users can now visually clear fields during editing but empty values are prevented from being saved - This prevents custom modes from disappearing due to empty field validation issues Fixes custom modes disappearing and creation issues by extending validation pattern from PR #5794
roomote bot
pushed a commit
that referenced
this pull request
Jul 18, 2025
…ted - PR #5794 already handled this properly
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
bug
Something isn't working
lgtm
This PR has been approved by a maintainer
PR - Needs Review
size:M
This PR changes 30-99 lines, ignoring generated files.
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.
Fixes #5766
Problem
If the user cleared the custom mode name field, the change was saved immediately. This made the custom modes YAML file invalid, and all custom modes disappeared.
Solution
Keep a local state while the field is being edited. Only save the change on blur, and only if the name is not empty.
Important
Fixes issue with empty mode names by adding local state management and backend validation in
ModesView.tsxandCustomModesManager.ts.ModesView.tsx.ModesView.tsx.CustomModesManager.tsto reject empty mode names.localModeNameandcurrentEditingModeSlugstate inModesView.tsxto manage input field state.ModesView.tsx.modeConfigSchemainCustomModesManager.ts.This description was created by
for fc2c886. You can customize this summary. It will automatically update as commits are pushed.