Skip to content

feat(sdk): Wait for callback retries + jitter strategies#59

Merged
3 commits merged intomainfrom
wait-for-callback-retries
Oct 22, 2025
Merged

feat(sdk): Wait for callback retries + jitter strategies#59
3 commits merged intomainfrom
wait-for-callback-retries

Conversation

@rarepolz
Copy link
Contributor

@rarepolz rarepolz commented Oct 16, 2025

Issue #, if available:
fixes: #33
fixes: #47
Description of changes:

  • Implemented retry logic for waitForCallback operations in Python SDK. WaitForCallbackConfig gets passed to the underlying step wrapping the submitter function.
  • This enables retry behavior on transient failures, callback timeouts, and callback completion failures, inheriting the behavior of ctx.step.
  • BLOCKED: TypeScript SDK does not currently implement this retry functionality and needs to be aligned before launch.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@rarepolz rarepolz force-pushed the wait-for-callback-retries branch 3 times, most recently from 312be9f to 333b741 Compare October 20, 2025 16:18
@rarepolz rarepolz force-pushed the wait-for-callback-retries branch from 333b741 to 654891a Compare October 21, 2025 12:36
@rarepolz rarepolz marked this pull request as ready for review October 21, 2025 12:38
@rarepolz rarepolz requested a review from yaythomas October 21, 2025 12:38
@ghost ghost marked this pull request as draft October 22, 2025 21:22
@ghost ghost self-assigned this Oct 22, 2025
@ghost
Copy link

ghost commented Oct 22, 2025

Will merge this with updates based on:

aws/aws-durable-execution-sdk-js@a2073d1

Rares Polenciuc and others added 2 commits October 22, 2025 22:04
Adds jitter policies for retry:
 - none: no jitter. Total delay is exactly the computed delay.
 - full: random number between 0 and computed delay.
  Total delay is [delay, delay*2]
 - half: random number between [0.5 x delay, delay].
  Total delay is [delay*1.5, delay*2]
@ghost ghost force-pushed the wait-for-callback-retries branch from 654891a to a603da3 Compare October 22, 2025 22:05
@ghost ghost changed the title Wait for callback retries parity:Wait for callback retries + jitter strategies Oct 22, 2025
@ghost ghost force-pushed the wait-for-callback-retries branch 2 times, most recently from 42c7fe2 to bb0b051 Compare October 22, 2025 22:20
@ghost ghost changed the title parity:Wait for callback retries + jitter strategies feat:Wait for callback retries + jitter strategies Oct 22, 2025
@ghost ghost force-pushed the wait-for-callback-retries branch from bb0b051 to 6a4f308 Compare October 22, 2025 22:21
@ghost ghost changed the title feat:Wait for callback retries + jitter strategies feat(retry):Wait for callback retries + jitter strategies Oct 22, 2025
@ghost ghost force-pushed the wait-for-callback-retries branch from 6a4f308 to af01429 Compare October 22, 2025 22:24
@ghost ghost changed the title feat(retry):Wait for callback retries + jitter strategies feat(retry): Wait for callback retries + jitter strategies Oct 22, 2025
@ghost
Copy link

ghost commented Oct 22, 2025

I feel I am playing whackamole with CI 🤣

@ghost ghost force-pushed the wait-for-callback-retries branch from af01429 to 8e4e9e9 Compare October 22, 2025 22:25
@ghost ghost changed the title feat(retry): Wait for callback retries + jitter strategies feat(sdk): Wait for callback retries + jitter strategies Oct 22, 2025
@ghost ghost force-pushed the wait-for-callback-retries branch from 8e4e9e9 to deca82f Compare October 22, 2025 22:30
@ghost ghost marked this pull request as ready for review October 22, 2025 22:33
@ghost ghost dismissed yaythomas’s stale review October 22, 2025 23:02

Concerns addressed :D

@ghost ghost merged commit 04c5f0d into main Oct 22, 2025
8 checks passed
@wangyb-A wangyb-A deleted the wait-for-callback-retries branch December 9, 2025 22:29
This pull request was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Standardize Final List of Preset Retries with TypeScript SDK Retries on waitForCallback

4 participants