Core now will send cancellations if an activity would have already timed out according to server but we haven't learned of that (typically, because it isn't heartbeating). There is a configurable buffer defaulting to 5s, to avoid races with server (we would prefer to learn from server).
Why?
Nice to have your activities get cancelled when they would have been even if they don't heartbeat
What was changed
Core now will send cancellations if an activity would have already timed out according to server but we haven't learned of that (typically, because it isn't heartbeating). There is a configurable buffer defaulting to 5s, to avoid races with server (we would prefer to learn from server).
Why?
Nice to have your activities get cancelled when they would have been even if they don't heartbeat
Checklist
Closes https://github.com/temporalio/features/issues/170
How was this tested: Unit & Integ
Any docs updates needed?