You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
## What changed and Why?
Paired with [api
change](https://github.com/temporalio/api/pull/770/changes)
Define the default time-skipping propagation behavior for current
features: continue-as-new (CAN), child workflows, retry, and reset.
**Group 1 — Inherit both from the current execution:**
- Continue-as-new (CAN): inherits the current config and accumulated
skipped duration; the configured bound is shared across both the
inherited skipped duration and any duration skipped by the new run.
- Child workflows: same behavior as CAN
This design is because CAN is a technical reason to start a new run of
current run, so logically they can be viewed as a same "run". For Child
WFs they can be viewed as an extension of previous workflows or separate
workflows, and in either case, they shall inherit the skipped duration
so that the virtual time doesn't rewind back, and the default behavior
is designed to treat them as an extension of the parent and share the
config. We only consider adding new config to provide flexibility on
demand.
**Group 2 — Inherit from a specific point in history:**
- Retry: inherits the config and skipped duration recorded in the
StartWorkflowExecutionEvent of the current workflow, since retry is
defined as restarting execution from that event
- Cron: same with Retry
**Group3 -- Both inherit from a specific point and catch up of config
change to current**
- Reset: retains the current time-skipping config, since reset is
designed to replay all events up to the reset point and apply any
UpdateWorkflowExecutionOptions changes made after that point — with no
option to exclude them (covered by tests only)
## How did you test it?
- [x] built
- [x] run locally and tested manually
- [x] covered by existing tests
- [x] added new unit test(s)
- [x] added new functional test(s)
0 commit comments