Skip to content

[9.2] Fix AI Connector form fields resetting to default value when cleared by user (#251095)#251288

Merged
saikatsarkar056 merged 1 commit intoelastic:9.2from
saikatsarkar056:backport/9.2/pr-251095
Feb 3, 2026
Merged

[9.2] Fix AI Connector form fields resetting to default value when cleared by user (#251095)#251288
saikatsarkar056 merged 1 commit intoelastic:9.2from
saikatsarkar056:backport/9.2/pr-251095

Conversation

@saikatsarkar056
Copy link
Copy Markdown
Contributor

Backport

This will backport the following commits from main to 9.2:

Questions ?

Please refer to the Backport tool documentation

…by user (elastic#251095)

## Summary

Fixes elastic#250953

This PR fixes a bug in the AI Connector creation flyout where fields
with default values (like URL, Model ID) would reset to their default
value when the user tried to clear them completely using backspace.

**Root cause:** The `useEffect` in `ConfigInputField` and
`ConfigNumberField` was checking if the value was empty/null and
resetting to `defaultValue`. When a user cleared a field, the form
converted the empty string to `null`, which triggered the effect to
reset the field back to the default.

**Fix:** Modified the `useEffect` to only sync when there's actual
external content, preventing the reset when users intentionally clear
the field. The initial default is still applied via `useState`.

### Changes
- `ConfigInputField`: Updated `useEffect` to not reset to default when
value is cleared
- `ConfigNumberField`: Same fix applied
- Added comprehensive unit tests for both components

## Test plan

1. Go to **Alerts and Insights > Connectors**
2. Click **Create connector** → Select **AI Connector**
3. Select **DeepSeek** as the provider
4. Open **More Options** section
5. Try to backspace/delete the URL field completely
6. **Expected:** Field should clear and stay empty
7. **Before fix:** Field would reset to default URL when last character
was deleted

### Before

https://github.com/user-attachments/assets/cc8832f5-ca91-4270-825f-023dcbc34615

### After

https://github.com/user-attachments/assets/49a31906-6362-4f5d-aee1-bff10008aabd

### Checklist

Check the PR satisfies following conditions.

Reviewers should verify this PR satisfies this list as well.

- [ ] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-i18n/README.md)
- [ ]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials
- [x] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
- [ ] If a plugin configuration key changed, check if it needs to be
allowlisted in the cloud and added to the [docker
list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)
- [ ] This was checked for breaking HTTP API changes, and any breaking
changes have been approved by the breaking-change committee. The
`release_note:breaking` label should be applied in these situations.
- [ ] [Flaky Test
Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
used on any tests changed
- [ ] The PR description includes the appropriate Release Notes section,
and the correct `release_note:*` label is applied per the
[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
- [ ] Review the [backport
guidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing)
and apply applicable `backport:*` labels.

### Identify risks

Does this PR introduce any risks? For example, consider risks like hard
to test bugs, performance regression, potential of data loss.

Describe the risk, its severity, and mitigation for each identified
risk. Invite stakeholders and evaluate how to proceed before merging.

- [ ] [See some risk
examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx)
- [ ] ...

### Release note
Fixes AI Connector form fields incorrectly resetting to default values
when users clear them using backspace.

(cherry picked from commit 6c002da)
@elasticmachine
Copy link
Copy Markdown
Contributor

💚 Build Succeeded

Metrics [docs]

Async chunks

Total size of all lazy-loaded chunks that will be downloaded as the user navigates the app

id before after diff
indexManagement 694.2KB 694.2KB -4.0B
searchInferenceEndpoints 115.5KB 115.5KB -4.0B
stackConnectors 727.7KB 727.7KB -4.0B
total -12.0B

Copy link
Copy Markdown
Contributor

@alvarezmelissa87 alvarezmelissa87 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code LGTM

@saikatsarkar056 saikatsarkar056 merged commit 465eddd into elastic:9.2 Feb 3, 2026
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport This PR is a backport of another PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants