Skip to content

[Inference] Fix ActionsClientLlm failing with EIS connector IDs (#260268)#260345

Merged
pheyos merged 1 commit intoelastic:deploy-fix@1774851440from
e40pud:deploy-fix/1774851440-260268-failing-EIS
Mar 31, 2026
Merged

[Inference] Fix ActionsClientLlm failing with EIS connector IDs (#260268)#260345
pheyos merged 1 commit intoelastic:deploy-fix@1774851440from
e40pud:deploy-fix/1774851440-260268-failing-EIS

Conversation

@e40pud
Copy link
Copy Markdown
Contributor

@e40pud e40pud commented Mar 30, 2026

Summary

Cherry pick #260268 to deploy-fix@1774851440

After PR #258530 consolidated connector listing, EIS connectors are returned with inference endpoint IDs (e.g. anthropic-claude-3.7-sonnet- chat_completion) as their connectorId rather than Kibana saved object IDs. Attack Discovery and Defend Insights passed these IDs to ActionsClientLlm which used actionsClient.execute(), failing with "Saved object [action/...] not found".

This PR uses a new path when actionTypeId is .inference and an inference client is available. ActionsClientLlm uses its existing isInferenceEndpoint path which calls inferenceClient.chatComplete() instead of actionsClient.execute().

cc @sphilipse @pheyos

…tic#260268)

## Summary

After PR elastic#258530 consolidated connector listing, EIS connectors are
returned with inference endpoint IDs (e.g. anthropic-claude-3.7-sonnet-
chat_completion) as their connectorId rather than Kibana saved object
IDs. Attack Discovery and Defend Insights passed these IDs to
ActionsClientLlm which used actionsClient.execute(), failing with "Saved
object [action/...] not found".

This PR uses a new path when actionTypeId is .inference and an inference
client is available. ActionsClientLlm uses its existing
isInferenceEndpoint path which calls inferenceClient.chatComplete()
instead of actionsClient.execute().

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
@e40pud e40pud self-assigned this Mar 30, 2026
@e40pud e40pud requested review from a team as code owners March 30, 2026 20:14
@e40pud e40pud added release_note:skip Skip the PR/issue when compiling release notes backport:skip This PR does not require backporting labels Mar 30, 2026
@e40pud e40pud requested review from ashokaditya and joeypoon and removed request for a team March 30, 2026 20:14
@macroscopeapp
Copy link
Copy Markdown
Contributor

macroscopeapp bot commented Mar 30, 2026

Approvability

Verdict: Needs human review

This PR changes how inference connectors are resolved (server-side instead of client-side) and adds new public APIs for creating inference clients without HTTP requests. The author does not own any of the modified files, which span multiple team domains including search-kibana and security-generative-ai. The designated code owners should review these cross-cutting changes.

You can customize Macroscope's approvability policy. Learn more.

@elasticmachine
Copy link
Copy Markdown
Contributor

⏳ Build in-progress, with failures

Failed CI Steps

cc @e40pud

@pheyos pheyos merged commit 7c2e822 into elastic:deploy-fix@1774851440 Mar 31, 2026
26 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport:skip This PR does not require backporting release_note:skip Skip the PR/issue when compiling release notes Team:Search

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants