|
Fix graceful MCP disconnect during server shutdown
- McpClient.disconnect(): catch CancelledError / RuntimeError from anyio SSE transport teardown - McpManager.disconnect_all(): shield gather from CancelledError - main.py _on_shutdown(): catch CancelledError and RuntimeError explicitly (BaseException, not Exception) Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> |
|---|
|
|
| navi/main.py |
|---|
| navi/mcp/client.py |
|---|
| navi/mcp/manager.py |
|---|