Problem
Hosted race CI on #1123 failed TestCallbackManagerRecoveryHonorsRetryWaitAndReusesIdentity: retry dispatched before next_attempt_at (started run_callback_retry-recover). This is outside #1123 native UI diff and is a new callback baseline failure after #1107 merge.
Acceptance criteria
- Determine whether recovery can actually dispatch before durable
next_attempt_at, or whether the test uses a load-sensitive timing boundary.
- Preserve durable retry scheduling, run identity reuse, token fencing, no-overlap, recovery authority, and API/task visibility.
- Add deterministic normal/race proof for no admission before retry deadline and correct identity after due time.
- Sol medium diagnosis, issue-linked repair, cheap re-review, full regression and hosted checks before downstream promotion.
Scope
Callback retry-wait recovery implementation/test/docs only. Blocks #1123/#1118 because baseline is red.
Problem
Hosted race CI on #1123 failed
TestCallbackManagerRecoveryHonorsRetryWaitAndReusesIdentity: retry dispatched beforenext_attempt_at(startedrun_callback_retry-recover). This is outside #1123 native UI diff and is a new callback baseline failure after #1107 merge.Acceptance criteria
next_attempt_at, or whether the test uses a load-sensitive timing boundary.Scope
Callback retry-wait recovery implementation/test/docs only. Blocks #1123/#1118 because baseline is red.