fix: invalidate cached token on disconnect so reconnect can rekey
When a garden is disconnected (e.g. server rejected auth because the
OAuth client was deleted), the cached access token is invalidated.
This forces the next reconnect to go through reauthenticate → rekey
instead of reusing a token the server will reject again.
sow-157
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>