Figured it out! Wanted to post my answer in case it help someone else one day...
I may not be 100% accurate in my representation, but basically the configuration is written to both the controller and to the drives.
So here's what I did:
- I flipped all the drives from "Foreign, Unconfigured Bad" to "Foreign, Unconfigured Good".
- Scanned the Foreign configuration, verified that it was correct
- Accepted the configuration
- Ran consistency check
And that's all it took. Data is back, array is Optimal, and im breathing easy.