Conversation
There was a problem hiding this comment.
Pull request overview
This PR enables multi-link support on input ports in the workflow editor, aligning input-port connection behavior with existing output-port multi-link behavior (closes #4329).
Changes:
- Allows multiple links to connect to the same input port in the workflow editor connection validator.
- Updates workflow validation so input ports no longer require exactly one incoming link.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
| frontend/src/app/workspace/service/validation/validation-workflow.service.ts | Adjusts operator connection validation logic for input ports to permit multi-link. |
| frontend/src/app/workspace/component/workflow-editor/workflow-editor.component.ts | Relaxes UI connection validation to allow additional links into already-connected input ports. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
frontend/src/app/workspace/service/validation/validation-workflow.service.ts
Outdated
Show resolved
Hide resolved
frontend/src/app/workspace/service/validation/validation-workflow.service.ts
Outdated
Show resolved
Hide resolved
frontend/src/app/workspace/service/validation/validation-workflow.service.ts
Show resolved
Hide resolved
frontend/src/app/workspace/component/workflow-editor/workflow-editor.component.ts
Show resolved
Hide resolved
…low.service.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Signed-off-by: Xinyuan Lin <xinyual3@uci.edu>
|
@Xiao-zhen-Liu Please review it. |
| const port = operator.inputPorts[i]; | ||
| const portNumInputs = numInputLinksByPort.get(port.portID) ?? 0; | ||
| if (port.allowMultiInputs) { | ||
| let allowMultiInput = port.allowMultiInputs; |
There was a problem hiding this comment.
I don't understand this change... If allowMultiInput is set to true, what is the point of the next if?
There was a problem hiding this comment.
Per our discussion on the issue, we want to keep the "flag", i.e., we want to keep the change minimal, such that we can revert this change easily. It's expected that there will be redundant and unused code blocks as a result of this decision.
What changes were proposed in this PR?
Enabling multi-link support for input ports.
Any related issues, documentation, discussions?
Closes #4329
How was this PR tested?
Tested manually.
Was this PR authored or co-authored using generative AI tooling?
No.