Centralized utility for executing long-running GraphQL mutations using
the fire-and-forget pattern. This avoids Azure's ~230s HTTP proxy timeout
by returning immediately from the HTTP request and delivering results
via WebSocket PubSub subscriptions.
How it works:
Subscribes to PubSub updates for the current session
Sends the mutation with fireAndForget: true
Server validates, starts background work, returns ACK immediately
Client waits for a matching completion event via WebSocket, kept alive by
an idle timer that resets on every message (including the server's ~5min
liveness pulse)
On idle expiry or stream drop, an optional reconciliation hook checks the
authoritative run record to decide resolve / continue / reject
Execute a long-running mutation using fire-and-forget pattern.
Returns when the server publishes a matching completion event via PubSub,
or when the reconciliation hook resolves/rejects after an idle stall.
Centralized utility for executing long-running GraphQL mutations using the fire-and-forget pattern. This avoids Azure's ~230s HTTP proxy timeout by returning immediately from the HTTP request and delivering results via WebSocket PubSub subscriptions.
How it works:
fireAndForget: trueUsage: