Repository navigation
feat(studio): edit startup configuration and support ROOT restart - #5730
Merged
ZaynJarvis merged 25 commits intoOct 10, 2026
Merged
Conversation
yufeng201
marked this pull request as ready for review
October 10, 2026 12:02
ZaynJarvis
approved these changes
Oct 10, 2026
ZaynJarvis
left a comment
Collaborator
There was a problem hiding this comment.
LGTM. Approving per maintainer request; merging once integration tests are green.
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.
Description
Studio's Settings → Server configuration lets ROOT edit the actual startup
ov.confthrough a VLM/Embedding form or a JSON editor. Both modes share a draft and file revision; validation/save failures preserve edits. Save configuration writes the file and marks it pending restart. Save and restart saves first, then gracefully restarts a supported CLI process and waits for a new server instance before reporting success.Configurations containing environment references are read-only in the form and editable in file mode. File validation expands the original text using the startup semantics; saves write the submitted text without parsing and serializing it. Quoted/unquoted references, string escapes, BOM and formatting remain intact. Dollar literals also use file mode to avoid introducing new environment references during form serialization.
Human Involvement
Related Issue
None linked.
Type of Change
Changes Made
form_readonlyfor files containing dollars or escaped dollars, omit expanded model form data, and reject form patches for these files. Remove environment placeholder serialization, recursive reference restoration, credential reference tracking and resolved-provider mappings.thinkingpolicy for literal configurations and Preferred/Backup badges based on credential array order. Existing legacy configuration objects remain supported.POST /api/v1/admin/restartaccepts the saved revision, rejects stale/invalid files, serializes acceptance with Studio saves, and blocks saves after restart acceptance.Testing
Validation for
604ffb864:git diff --checkpassed./studio/base passed; the existing large-chunk advisory remains.Existing dependency/deprecation and React test-environment warnings remain. Whole-project TypeScript validation and live browser/deployment validation were not rerun for this simplification.
Checklist
Additional Notes
Keep Draft. Full-file validation reuses existing schemas; external dependencies or plugin startup checks can still prevent recovery. Studio reports failure if it cannot confirm restart before its timeout. Address/port/ROOT-key changes require updating connection settings. The advisory lock coordinates Studio writers; unmanaged external editors can still race after the final check. Remote restart currently requires the single-worker CLI; other launch modes require the deployment platform.