Commit 9015efa
committed
api changes for time-skipping propagation (#770)
**What changed and why?**
Propagation refers to how time-skipping config is carried over to all
workflows started by the current workflow: retry, continue-as-new, child
workflows, reset, etc.
1. Remove **disable_propagation** and **max_target_time**, because
neither of them can be soundly defined when time-skipping propagates
transitively across related workflows. One of the many examples:
- max_target_time: as an absolute time point, it may already have passed
by the time a retry or downstream workflow starts, making it ambiguous
whether to disable or preserve time-skipping — neither is a clearly
correct default
- disable_propagation: it is unclear which type of transitively
triggered workflow this should apply to, and treating all cases
uniformly is unreasonable; we defer exposing this flexibility until user
demand and use cases are better understood
2. Add **comments of the propagation behavior** for each feature (retry,
continue-as-new, child workflow, reset, cron)
3. Add **comments to the bound field**
4. Add **propagatedSkippedDuration** to time skipping config so that new
workflows can inherit the virtual time
** Breaking changes to API **
1. deleted fields and reused the numbers since the TimeSkippingConfig is
not yet released1 parent a466cbf commit 9015efa
5 files changed
Lines changed: 306 additions & 296 deletions
File tree
- history/v1
- proto
- temporalproto/openapi
- workflow/v1
0 commit comments