In executeWorkflowSteps() an unresolved gotoId logs goto_error and then breaks out of the loop, after which the function marks the execution completed. A mis-typed route target therefore produces a green ✓ in the UI, and the completion webhook fires, even though later steps never ran.
Suggested fix
Treat an unresolved goto as a failure (updateExecutionStatus(id,'failed') and return), and reject such definitions at save time (see the validation issue).
## Overview
In `executeWorkflowSteps()` an unresolved `gotoId` logs `goto_error` and then `break`s out of the loop, after which the function marks the execution **completed**. A mis-typed route target therefore produces a green ✓ in the UI, and the completion webhook fires, even though later steps never ran.
## Suggested fix
Treat an unresolved goto as a failure (`updateExecutionStatus(id,'failed')` and return), and reject such definitions at save time (see the validation issue).
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Overview
In
executeWorkflowSteps()an unresolvedgotoIdlogsgoto_errorand thenbreaks out of the loop, after which the function marks the execution completed. A mis-typed route target therefore produces a green ✓ in the UI, and the completion webhook fires, even though later steps never ran.Suggested fix
Treat an unresolved goto as a failure (
updateExecutionStatus(id,'failed')and return), and reject such definitions at save time (see the validation issue).