[Fix #1148] Add then flow directive to catch clause#1173
Open
ricardozanini wants to merge 5 commits into
Open
Conversation
…ch clause Add support for the then flow directive in the catch clause of try tasks, enabling control flow transitions after catching errors. This allows multiple try tasks to route to shared error-handling tasks without duplicating inline do blocks. Signed-off-by: Ricardo Zanini <[email protected]>
Contributor
There was a problem hiding this comment.
Pull request overview
Adds support for a then flow directive in the catch clause of try tasks in the Serverless Workflow DSL, enabling workflows to transition to a shared error-handling task after an error is caught.
Changes:
- Extended the workflow schema to allow
catch.then(as aflowDirective) ontrytasks. - Updated the DSL reference to document the new
thenproperty forcatch. - Added a new example workflow demonstrating
catch.then.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| schema/workflow.yaml | Adds then to TryTaskCatch, referencing the shared flowDirective definition. |
| dsl-reference.md | Documents the new catch.then property in the Catch properties table. |
| examples/try-catch-then-directive.yaml | Adds an example showing then used in a catch clause. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot Autofix powered by AI <[email protected]>
cdavernas
requested changes
Jul 23, 2026
Co-authored-by: Copilot Autofix powered by AI <[email protected]>
Address review feedback: the `do` block handles the error, this task just records the outcome after catch processing. Signed-off-by: Ricardo Zanini <[email protected]>
ricardozanini
force-pushed
the
feat/1148-catch-then-directive
branch
from
July 23, 2026 19:53
1535fbc to
045037c
Compare
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.
Summary
thenproperty (typeflowDirective) to thecatchclause oftrytasksthen: handleErrorto jump to a shared error-handling task)doblocks when multipletrytasks need the same error-handling sequenceChanges
schema/workflow.yaml: Addedthenproperty referencingflowDirectivetoTryTaskCatchdsl-reference.md: Addedthenrow to the Catch properties tableexamples/try-catch-then-directive.yaml: New example demonstrating thethendirective in a catch clauseTest plan
Fixes #1148