Skip to content

Configuration Deep-Merge Failure Causes Loss of Default Model Aliases #28264

Description

@aniruddhaadak80

Description

The core settings hydration logic currently fails to recursively deep-merge user overrides with the application's default configurations. If a user defines any custom generation setting (e.g., just overrides) in their settings.json, it entirely obliterates the default model aliases. A brittle, manual hack was introduced to forcibly re-inject DEFAULT_MODEL_CONFIGS as a fallback.

Location: packages/core/src/config/config.ts#L1141-L1155

Why it's important

While the hack patches the current symptom, it leaves the configuration system vulnerable to future regressions as more nested configuration options are added. The initialization logic should be refactored to use a robust deep-merge utility (like lodash/merge or a custom recursive implementation) rather than relying on shallow destruction and manual re-stitching.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/coreIssues related to User Interface, OS Support, Core Functionalityeffort/small1 day or less: trivial logic, UI adjustments, docskind/bugpriority/p2Important but can be addressed in a future release.status/bot-triagedstatus/need-information

    Type

    Fields

    No fields configured for Bug.

    Projects

    Status
    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions