-
Notifications
You must be signed in to change notification settings - Fork 15
feat: add conditional step execution with skip infrastructure #572
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
🦋 Changeset detectedLatest commit: 736e5b4 The changes in this PR will be included in the next version bump. This PR includes changesets to release 5 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
This stack of pull requests is managed by Graphite. Learn more about stacking. |
|
View your CI Pipeline Execution ↗ for commit 736e5b4
☁️ Nx Cloud last updated this comment at |
pkgs/core/supabase/migrations/20260105074725_pgflow_temp_skip_infrastructure.sql
Outdated
Show resolved
Hide resolved
2c84deb to
ac6da93
Compare
ac6da93 to
74202cd
Compare
74202cd to
f0a6c8d
Compare
f0a6c8d to
9188cf6
Compare
9188cf6 to
b38ff13
Compare
b38ff13 to
963cad9
Compare
- Add skip_type column and cascade_skip_steps() function - Add condition evaluation in start_ready_steps - Add whenFailed option for error handling after retries - Add ifNot negative condition pattern - Add ContainmentPattern<T> and StepMeta types for type-safe DSL - Add condition fields to FlowShape for auto-compilation
963cad9 to
736e5b4
Compare

Add conditional execution infrastructure to pgflow
This PR adds support for conditional step execution in pgflow with a new "skip" infrastructure. The implementation includes:
New step configuration options:
condition_pattern: JSONB pattern for @> containment checkwhen_unmet: What to do when condition is not met (options: 'fail', 'skip', 'skip-cascade')when_failed: What to do when handler fails after retries (options: 'fail', 'skip', 'skip-cascade')New step status and tracking:
skip_reason,skipped_atto track why and when a step was skippedCascade functionality:
cascade_skip_stepsfunction to skip a step and all its downstream dependentsComprehensive test coverage:
This feature enables more flexible workflows where steps can be conditionally executed based on runtime data.