Solenoid driver does not work reliably
D6 is supposed to dump the kickback from the solenoid to the VSOL line.
VSOL then has to dump that current somewhere.  If it doesn't, then VSOL will rise.
You are using 48V to power the MIC2050 and the solenoid.  It wouldn't take much for the kickback from the solenoid to raise VSOL above the rated 50V (or even the absolute maximum of 55V.)
If the MIC2050 fails, then the kickback from the solenoid could get to your microprocessor GPIO pin.  That would destroy it.
Many powersupplies can't absorb the kickback.  They can regulate their own output, but don't have any way to handle current coming in on the output.
The capacitor specified in the MIC2050 datasheet would absorb some (or all) of the kickback.  The datasheet also shows the MIC2050 being powered from a separate supply than the solenoid.  That would keep all spikes away from the MIC2050.

Add decoupling capacitors as directed in the datasheet.
Consider a regulator between VSOL and VDD on the MIC2050.