Repository navigation
Use saved Codex defaults when Chat has a separate runtime - #8512
Merged
huangruiteng merged 1 commit intoNov 10, 2026
Merged
Conversation
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
huangruiteng
deleted the
codex/chat-default-configuration-owner-20261110
branch
November 10, 2026 17:36
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.
Goal And Delivered Outcome
When Chat history and Goal coordination use separate runtime roots, Settings can successfully save Codex defaults while the model catalog and a new ordinary Goal conversation still use the inherited profile. Both consumers now read the machine configuration owned by the Settings transaction.
The packaged comparison saves the same profile, model, reasoning and speed in both builds. The installed baseline opens a new conversation with
inherited-fixture. The candidate opens it withfixture-machine-selected · high · Fast. The earlier conversation remains on its original profile.Intended base is
main.Author Declaration
Written by model_agent using OpenAI Codex (GPT-6 family).
The implementation follows the Codex model and settings behavior in Session Runtime Control Plane Adapter.
loopx/capabilities/native_chat/model_settings.py,loopx/chat_runtime.pytests/test_chat_codex_defaults.pyThe existing machine transaction, catalog validation and native adapter still own their respective operations. The two reads use the same Chat runtime root as Settings.
Scope And Continuation
This completes the settings routing fix. The broader App installation and observed provider tier remain separate adoption checks.
Validation
Tested revision
ba6fb3da07119cf8232566f8da5da5cd298f362b. Local run statefinished. Input classsynthetic.regression_paritypassedunitpassedstaticpassedreal_entrypointpassedmanualpassedThe test backend uses disposable SQLite Goal state and a stub native catalog and adapter. The screenshots show only synthetic messages and settings.
Frontend / Visual Evidence
UI impact
changed. The existing composer reflects the saved values on first read. The compact narrow label can shorten a long model name. The runtime disclosure shows the full name.Before, desktop · installed build
233c7be2a0514e5c930b7799d14e7cd32faf362dAfter, desktop · packaged candidate
ba6fb3da07119cf8232566f8da5da5cd298f362bBefore and after, 390px
The conversation stays the main reading area. The composer carries the current model, and the optional panel holds the full runtime settings.
Type of Change
LoopX Area
Shared-authority RFC fixture impact
N/A. The machine settings reader changes within the existing Chat provider.
Boundary Checklist