Commit cf7e2a7
fix(mcp): stable mutateAsync dep + preserve OAuth connection on no-op upsert
- useMcpOauthPopup: depend on the stable mutateAsync reference instead of the
whole mutation object (which changes identity every render and defeats the
useCallback memoization).
- POST /api/mcp/servers upsert path: only force connectionStatus to
'disconnected' / clear lastConnected for OAuth servers when we actually
cleared the OAuth row (URL/credential change or revival). When the upsert
is a no-op for OAuth state, the existing tokens stay valid and the server
should remain connected — we now leave both columns alone in that case.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>1 parent b8364ac commit cf7e2a7
2 files changed
Lines changed: 12 additions & 5 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
197 | 197 | | |
198 | 198 | | |
199 | 199 | | |
200 | | - | |
201 | | - | |
202 | 200 | | |
203 | 201 | | |
204 | 202 | | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
205 | 212 | | |
206 | 213 | | |
207 | 214 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
18 | | - | |
| 18 | + | |
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
| |||
76 | 76 | | |
77 | 77 | | |
78 | 78 | | |
79 | | - | |
| 79 | + | |
80 | 80 | | |
81 | 81 | | |
82 | 82 | | |
| |||
92 | 92 | | |
93 | 93 | | |
94 | 94 | | |
95 | | - | |
| 95 | + | |
96 | 96 | | |
97 | 97 | | |
98 | 98 | | |
| |||
0 commit comments