-
Notifications
You must be signed in to change notification settings - Fork 5k
Open
Labels
Description
Search before asking
- I had searched in the DSIP and found no similar DSIP.
Motivation
Current dependency mode configuration in frontend cannot connect the complement data dependency enabling action with downstream workflows. We want to improve the Complement Data process so that, it correctly triggers the downstream workflows according to the selected dependency mode. This enhancement will support two dependency modes.
The current DSIP replaces and close #17741
Design Detail
- Add implementation for frontend dependency mode switching
- Supports a toggle to trigger either all downstream dependencies or only direct downstream. Default is off, triggering only the next layer; when on, recursively triggers all downstream workflow levels.
- Implement traversal logic for recursive triggering, with protection against cycles and duplicate triggering.
- Update UI to reflect mode and ensure users can select preferred behavior.
- Add tests for both triggering modes.
Compatibility, Deprecation, and Migration Plan
This improvement does not introduce breaking changes to existing workflows, but recursive triggering should be idempotent to prevent duplicate executions. Cycle detection will be implemented to protect against circular dependencies.
Test Plan
- Verify direct and recursive triggering work correctly for various workflow dependency graphs.
- Add automated tests on workflow DAGs for both dependency modes.
- Manual test for large-scale workflow with complex dependencies to ensure reliability and performance.
- Test cycle detection and duplicate triggering prevention.
Code of Conduct
- I agree to follow this project's Code of Conduct