Skip to content

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

Closed
saikatsarkar056 wants to merge 1 commit intoelastic:9.0from
saikatsarkar056:backport/9.0/pr-251095
Closed

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

Conversation

@saikatsarkar056
Copy link
Copy Markdown
Contributor

Backport

This will backport the following commits from main to 9.0:

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)
@saikatsarkar056 saikatsarkar056 added the backport This PR is a backport of another PR label Feb 2, 2026
@saikatsarkar056 saikatsarkar056 enabled auto-merge (squash) February 2, 2026 17:11
@elasticmachine
Copy link
Copy Markdown
Contributor

CI was triggered for this PR, but this PR targets 9.0 which should not receive a future release. CI is not supported for these branches. Please consult the release schedule, or contact #kibana-operations if you believe this is an error.

The following branches are currently considered to be open:

  • main
  • 9.3
  • 9.2
  • 9.1
  • 8.19

1 similar comment
@elasticmachine
Copy link
Copy Markdown
Contributor

CI was triggered for this PR, but this PR targets 9.0 which should not receive a future release. CI is not supported for these branches. Please consult the release schedule, or contact #kibana-operations if you believe this is an error.

The following branches are currently considered to be open:

  • main
  • 9.3
  • 9.2
  • 9.1
  • 8.19

@saikatsarkar056
Copy link
Copy Markdown
Contributor Author

We do not need to backport to 9.0 since we are not maintaining 9.0

auto-merge was automatically disabled February 4, 2026 17:00

Pull request was closed

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.

2 participants