Commit cb5c0453 by QuentinHsu

fix(channels): avoid expanding advanced settings for model mapping

- remove model mapping from advanced settings error detection so visible model configuration errors do not expand the advanced panel.
- update the edit-time advanced settings auto-expand check to only depend on fields actually rendered in the advanced section.
- add regression coverage to verify model_mapping errors are not classified as advanced settings errors.
parent 4d20e053
......@@ -205,7 +205,6 @@ function readAdvancedSettingsPreference(): boolean {
function hasAdvancedSettingsValues(values: ChannelFormValues): boolean {
return Boolean(
values.model_mapping?.trim() ||
values.param_override?.trim() ||
values.header_override?.trim() ||
values.status_code_mapping?.trim() ||
......
......@@ -49,6 +49,17 @@ describe('channel form errors', () => {
assert.equal(hasAdvancedSettingsErrors(errors), false)
})
test('does not treat model mapping errors as advanced settings errors', () => {
const errors = {
model_mapping: {
type: 'custom',
message: 'Invalid model mapping',
},
} satisfies FieldErrors<ChannelFormValues>
assert.equal(hasAdvancedSettingsErrors(errors), false)
})
test('classifies schema errors from invalid advanced JSON fields', () => {
const result = channelFormSchema.safeParse({
...CHANNEL_FORM_DEFAULT_VALUES,
......
......@@ -30,7 +30,6 @@ const ADVANCED_SETTINGS_FIELDS = new Set<FieldPath<ChannelFormValues>>([
'auto_ban',
'tag',
'remark',
'model_mapping',
'param_override',
'header_override',
'status_code_mapping',
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment