Follow-up from #15085.
A webhook delivery that the server has accepted (202) but not yet dispatched, because another run of the same task was still going, is held only in memory. If the server shuts down before its turn, the delivery never runs. Its log entry stays accepted, and startup recovery doesn't see it, because recovery only handles tasks marked running.
Today the sender has to redeliver, as it does when the environment is offline. A fix would persist pending deliveries and dispatch them at startup. That needs a decision on how old a delivery may be and still run, since replaying a webhook hours later may be wrong.
🤖 Generated with Claude Code
Follow-up from #15085.
A webhook delivery that the server has accepted (
202) but not yet dispatched, because another run of the same task was still going, is held only in memory. If the server shuts down before its turn, the delivery never runs. Its log entry staysaccepted, and startup recovery doesn't see it, because recovery only handles tasks markedrunning.Today the sender has to redeliver, as it does when the environment is offline. A fix would persist pending deliveries and dispatch them at startup. That needs a decision on how old a delivery may be and still run, since replaying a webhook hours later may be wrong.
🤖 Generated with Claude Code