Clean Up Still Connecting
The GATT is still connecting (never reached STATE_CONNECTED). Clean up and close directly — do NOT call disconnectGatt(), because gatt.disconnect() on a never-connected GATT won't produce a STATE_DISCONNECTED callback, leaving the disconnect watchdog timer stuck and eventually triggering an unnecessary platform reset.