Skip to content

Conversation

@Bhavd13
Copy link
Contributor

@Bhavd13 Bhavd13 commented Dec 15, 2025

Commit Type

  • feature - New functionality
  • fix - Bug fix
  • refactor - Code restructuring without behavior change
  • perf - Performance improvement
  • docs - Documentation update
  • test - Test-related changes
  • chore - Maintenance/tooling

Risk Level

  • Low - Minor changes, limited scope
  • Medium - Moderate changes, some user impact
  • High - Major changes, significant user/system impact

What & Why

This PR adds the Invoke Nested Agent operation for Consumption Logic Apps, enabling users to send tasks to nested agent workflows from within their Logic App workflows. Previously, the nested agent functionality was only available for Standard Logic Apps (fetched from backend). This change implements the same capability for Consumption Logic Apps by:

  • Creating a static manifest for the invokeNestedAgent operation
  • Adding the operation to the Azure Logic Apps connector group (same as invokeWorkflow)
  • Implementing Azure Resource Selection to filter and display Logic Apps with A2A Request (Agent) triggers
  • Adding the azureResourceSelection capability for workflow picker UI

This allows Consumption Logic App users to invoke agent workflows as nested operations, enabling more complex AI agent orchestration scenarios.

Impact of Change

  • Users: Consumption Logic App users can now add the "Invoke Nested Agent" action from the Azure Logic Apps connector to send tasks to other Logic Apps that have an A2A Request trigger. The workflow picker shows only Logic Apps with Agent triggers in the same region.
  • Developers: Added the new InvokeNestedAgentManifest extended azureResourceSelection for nested agent selection and added getAgentWorkflows() to SearchService for filtering agent-enabled workflows.
  • System: No significant performance impact. Client-side filtering is used to identify workflows with Agent triggers .

Test Plan

  • Unit tests added
  • E2E tests added/updated
  • Manual testing completed
  • Tested in:

Contributors

@Bhavd13

Screenshots/Videos

nestedagent.recording.mp4

Copilot AI review requested due to automatic review settings December 15, 2025 09:44
@github-actions
Copy link

github-actions bot commented Dec 15, 2025

🤖 AI PR Validation Report

PR Review Results

Thank you for your submission! Here's detailed feedback on your PR title and body compliance:

PR Title

  • Current: feat(consumption): Add Invoke Nested Agent operation for Consumption Logic Apps
  • Issue: None — title is clear, follows conventional commit style, and accurately describes the change.
  • Recommendation: No change required.

Commit Type

  • Properly selected (feature).
  • Only one commit type selected which is correct.

Risk Level

  • The PR selects Medium and the repo label risk:medium is present.
  • Assessment: The code diff adds a new built-in operation, manifests, search additions, and unit tests across multiple modules (536 additions, 18 files). Medium risk is appropriate.

What & Why

  • Current: This PR adds the Invoke Nested Agent operation for Consumption Logic Apps with a static manifest, connector registration, resource selection, and a SearchService method to filter agent-enabled workflows.
  • Issue: None — description is concise and explains motivation.
  • Recommendation: Consider adding a one-line note about backwards compatibility guarantees (if any) for existing workflows that use invokeWorkflow, but this is optional.

Impact of Change

  • The Impact of Change section is present and clear.
  • Recommendation: Minor suggestion to explicitly call out whether any public client-facing API/SDKs are affected (if applicable) so reviewers can judge downstream impact.
    • Users: Consumption Logic App users can add the new "Invoke Nested Agent" action.
    • Developers: New manifest, operation registration, and SearchService.getAgentWorkflows() were added.
    • System: No significant perf impact expected; client-side filtering used.

Test Plan

  • Unit tests added/updated: ✅ (new unit tests added: search.spec.ts and operationmanifest.spec.ts, and built-in operation mock updated).
  • E2E tests: not added — acceptable provided manual testing justification exists.
  • Manual testing completed: ✅ (author selected this).
  • Recommendation: If possible, add an E2E or integration test for the resource picker flow (azureResourceSelection) in a follow-up to validate real-world behavior end-to-end. If E2E is intentionally omitted, add a short justification in the Test Plan (e.g., requires infra or cannot run in CI).

Contributors

  • Contributors list contains @Bhavd13.
  • Recommendation: If designers/PMs/reviewers contributed, tag them here — otherwise current entry is acceptable.

Screenshots/Videos

  • A link to screenshots/videos is provided.
  • Recommendation: Ensure the linked media is accessible to reviewers (not behind private storage) and add a short caption describing what the screenshot shows.

Summary Table

Section Status Recommendation
Title Keep as-is.
Commit Type Keep as-is.
Risk Level Medium is appropriate.
What & Why Optionally mention backward compatibility.
Impact of Change Clarify public API impact if any.
Test Plan Consider E2E in follow-up or justify omission.
Contributors Add additional contributors if applicable.
Screenshots/Videos Ensure link is accessible and add caption.

Final message: This PR passes the PR body/title checklist. The advised risk level is risk:medium, which matches the PR label and aligns with the scope of changes in the diff. Suggested follow-ups (not required to merge): add or justify E2E/integration coverage for the resource picker path, confirm linked screenshots are accessible, and optionally mention backward compatibility or public API impacts.


Last updated: Tue, 06 Jan 2026 06:31:12 GMT

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR adds the "Invoke Nested Agent" operation for Consumption Logic Apps, enabling users to send tasks to nested agent workflows. Previously, this functionality was only available for Standard Logic Apps via backend manifests. The implementation creates a static manifest for the operation and integrates it with the Azure Logic Apps connector group, including workflow filtering to display only Logic Apps with A2A Request (Agent) triggers.

Key Changes:

  • Created static manifest for invokeNestedAgent operation with taskMessage input and standard workflow outputs
  • Added getAgentWorkflows() method to filter workflows by trigger.kind === 'agent'
  • Integrated Azure Resource Selection UI in both designer v1 and v2 for agent workflow picker

Reviewed changes

Copilot reviewed 15 out of 15 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
package.json Upgraded turbo from 2.3.0 to 2.6.3 and reformatted lint-staged config (unrelated changes)
pnpm-lock.yaml Lock file updates corresponding to turbo version upgrade
libs/logic-apps-shared/src/designer-client-services/lib/search.ts Added getAgentWorkflows() method signature to ISearchService interface
libs/logic-apps-shared/src/designer-client-services/lib/consumption/search.ts Registered invokeNestedAgentOperation in built-in operations list
libs/logic-apps-shared/src/designer-client-services/lib/consumption/operations/invokeWorkflow.ts Defined invokeNestedAgentOperation with NestedAgent type and azureResourceSelection capability
libs/logic-apps-shared/src/designer-client-services/lib/consumption/operationmanifest.ts Added nestedagent type mapping and manifest registration
libs/logic-apps-shared/src/designer-client-services/lib/consumption/manifests/invokeNestedAgent.ts Created manifest with taskMessage input, workflow host requirements, and standard outputs
libs/logic-apps-shared/src/designer-client-services/lib/base/search.ts Implemented getAgentWorkflows() with client-side filtering for agent-kind triggers
libs/logic-apps-shared/src/designer-client-services/lib/test/mocks/builtInOperationResponse.ts Added mock data for invokeNestedAgent operation in test fixtures
libs/designer/src/lib/ui/panel/recommendation/azureResourceSelection.tsx Added SELECT_NESTED_AGENT_WORKFLOW_ACTION case with agentWorkflow resource type
libs/designer/src/lib/common/constants.ts Added SELECT_NESTED_AGENT_WORKFLOW_ACTION constant
libs/designer-v2/src/lib/ui/panel/recommendation/azureResourceSelection.tsx Added SELECT_NESTED_AGENT_WORKFLOW_ACTION case (mirroring v1 implementation)
libs/designer-v2/src/lib/common/constants.ts Added SELECT_NESTED_AGENT_WORKFLOW_ACTION constant
apps/Standalone/src/templates/app/TemplatesConsumption.tsx Registered invokenestedagent in clientSupportedOperations
apps/Standalone/src/designer/app/AzureLogicAppsDesigner/laDesignerConsumptionV2.tsx Registered invokenestedagent in clientSupportedOperations
apps/Standalone/src/designer/app/AzureLogicAppsDesigner/laDesignerConsumption.tsx Registered invokenestedagent in clientSupportedOperations
Localize/lang/strings.json Added localization string "Select workflow with an Agent loop" (ID: QMuDPI)

@Eric-B-Wu Eric-B-Wu added the risk:medium Medium risk change with potential impact label Dec 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr-validated risk:medium Medium risk change with potential impact

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants