Skip to content

[upstream #16433] 16433: judge override completeness after composing all priority layers #170

Description

@berry-13

Raised in the local cross-family review of LibreChat-AI#16433 (head f780dcd, finding local:f780dcd:L-002).

mergeConfigOverrides (packages/data-schemas/src/app/resolution.ts) validates each principal override layer, in priority order, on top of the librechat.yaml base plus the lower layers, and drops the nodes that leave that accumulated config invalid, including a required field that is still missing.

What happens: a low-priority layer that is incomplete on its own is dropped even when a higher-priority layer supplies the missing fields. For example, a role override endpoints.azureOpenAI.assistants: true over a base with no Azure endpoint is dropped, although a user override with higher priority supplies endpoints.azureOpenAI.groups. The result is safe (nothing invalid reaches consumers; the value beneath survives), but the lower layer's valid intent is lost.

Expected: completeness (required and related fields) is judged once all layers are composed, and only the nodes that leave the final composition invalid are dropped, while per-layer checks keep rejecting values that are wrong on their own.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: packagesreviewctl followups stateenhancementNew feature or requestreadyreviewctl followups state

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions