Skip to content

fix(3433): prevent workflow graph render crashes from edges referencing missing nodes#1568

Merged
minghay merged 2 commits intomasterfrom
missing-edges-graph
Mar 31, 2026
Merged

fix(3433): prevent workflow graph render crashes from edges referencing missing nodes#1568
minghay merged 2 commits intomasterfrom
missing-edges-graph

Conversation

@yk634
Copy link
Copy Markdown
Contributor

@yk634 yk634 commented Mar 30, 2026

Context

Some workflow graphs can include edges whose src or dest does not exist in nodes.
This can happen because of upstream workflowGraph generation issues, including the known case tracked in screwdriver-cd/screwdriver#3206.

When that data reaches the UI, graph decoration can leave those edges without usable coordinates, and the workflow graph rendering may fail at draw time.

Objective

This PR makes workflow graph rendering resilient to edges that reference missing nodes.

Intentional changes:

  • Mark edges as hidden when their src or dest node cannot be found during graph decoration
  • Prevent invalid edges from being passed to the renderer
  • Add a regression test for an external-trigger workflow case where an edge points to an existing destination node but its source node is missing from nodes

References

screwdriver-cd/screwdriver#3433

License

I confirm that this contribution is made under the terms of the license found in the root directory of this repository's source tree and that I have the authority necessary to make this contribution on behalf of its copyright owner.

@minghay minghay merged commit 45170d6 into master Mar 31, 2026
2 checks passed
@minghay minghay deleted the missing-edges-graph branch March 31, 2026 02:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants