Is your feature request related to a problem? Please describe.
A common request is idempotency keys during enqueue time, potentially supporting some kind of expiration or debouncing mechanism.
While durable tasks spawning child workflows are implicitly and explicitly idempotency (via the childKey), it's desirable to allow this behavior to be configurable for regular enqueueing. It's possible that we would also extend this to event enqueueing. As a result, idempotency keys should be as generic as possible (given that we already use idempotency keys internally to de-duplicate fired schedules, this is a requirement anyway).
Describe the solution you'd like
There is some existing work in #2950 which we will take a close look at and likely build on top of.
Is your feature request related to a problem? Please describe.
A common request is idempotency keys during enqueue time, potentially supporting some kind of expiration or debouncing mechanism.
While durable tasks spawning child workflows are implicitly and explicitly idempotency (via the
childKey), it's desirable to allow this behavior to be configurable for regular enqueueing. It's possible that we would also extend this to event enqueueing. As a result, idempotency keys should be as generic as possible (given that we already use idempotency keys internally to de-duplicate fired schedules, this is a requirement anyway).Describe the solution you'd like
There is some existing work in #2950 which we will take a close look at and likely build on top of.