feat: implement lookup step handling in orchestrated operations#90
Open
feat: implement lookup step handling in orchestrated operations#90
Conversation
Add support for cross-referencing data across steps in orchestrated API operations through lookup steps. This enables complex multi-step workflows where later steps can reference and extract specific fields from earlier step outputs. Changes: - Add StepExecutionContext to maintain step outputs during orchestrated execution - Enhance call step processing to capture and store JSON responses for later reference - Implement OperationStepLookupSpec handling in ApiResourceRestlet - Retrieve index data from previous call steps - Resolve lookup values using template expressions - Execute lookup operations to find and extract matching entries - Store results for subsequent steps This implementation enables: - Cross-referencing between orchestrated steps - Field-level extraction from step outputs - Greater flexibility in complex API orchestration scenarios
be981e5 to
dfe2698
Compare
eskenazit
requested changes
Mar 4, 2026
Contributor
eskenazit
left a comment
There was a problem hiding this comment.
I feel an integration test with a simple complete yml chaining fetch then lookup is missing.
| ObjectMapper mapper = new ObjectMapper(); | ||
|
|
||
| for (OperationStepSpec step : serverOp.getSteps()) { | ||
| if (step instanceof OperationStepCallSpec) { |
Contributor
There was a problem hiding this comment.
Given we might end with other steps, shouldn't we use a switch (step) case with pattern matching here for having a more readable code ?
| stepParams.putAll(step.getCall().getWith()); | ||
| } | ||
| for (OperationStepSpec step : toolSpec.getSteps()) { | ||
| if (step instanceof OperationStepCallSpec) { |
Contributor
There was a problem hiding this comment.
Given we might end with other steps, shouldn't we use a switch (step) case with pattern matching here for having a more readable code ?
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add support for cross-referencing data across steps in orchestrated API operations through lookup steps. This enables complex multi-step workflows where later steps can reference and extract specific fields from earlier step outputs.
Changes:
This implementation enables: