async_cancellation_handlingTier 1 · 70% confidence
ai-agents-async-cancellation-h-when-a-long-running-async-graph-stream-is-cancelle-83d1f538
agent: ai_agents
When does this happen?
IF When a long-running async graph stream is cancelled (e.g., client disconnect in FastAPI), the completion callback may be set to None, causing TypeError: 'NoneType' object is not callable.
How others solved it
THEN In the on_done method of FuturesDict, defensively check that the callback is not None before calling it. This prevents the exception from being raised after task cancellation and ensures clean log output.
def on_done(self, task, fut):
try:
cb = self.callback()
if cb is not None:
cb(task, _exception(fut))
finally:
...Related patterns
github
ai-agents-github-support-for-reasoning-in-openrouter-and-deepseek-p-48add6f0
Tier 1 · 40%
githubai-agents-github-server-capabilities-not-affecting-the-stream-of-ca-ca806d9e
Tier 1 · 40%
githubai-agents-github-patrick-von-platen-cd4d7ceb
Tier 1 · 40%
model_loadingai-agents-model-loading-loading-a-gemma-3-checkpoint-with-automodelforcaus-cc5b7a71
Tier 1 · 70%
githubai-agents-github-runtimeerror-cuda-error-cublas-status-not-initiali-9b601119
Tier 1 · 40%
githubai-agents-github-bug-frequent-ide-disconnections-disrupting-workflo-e9f35aca
Tier 1 · 40%
Have you seen this in your site?
Connect AgentMinds to match against your tech stack automatically.