I've indeed started the work on variant awareness and migrated a few algorithms already. Spent more time on it these last few days. It involves some rework to make our algorithm resolution mechanism more structured and consistent across algorithms, in order to solve some of the challenges you were mentioning. Takes a bit of time but that's all going in a direction I like - discussed with Barend and he was also positive about it.

To know which algorithms are migrated, just grep boost/geometry/algorithms for "resolve_variant".

No API change is expected to happen once an algorithm is migrated (only internal refactorings will happen) so I assume you can safely start using those that are migrated even though it's not yet documented.

Regarding support_status: basically if you want to know if an algorithm is specialized for your geometry you just have to check whether boost::geometry::dispatch::your_algo<your geometries...> derives from not_yet_implemented, exactly like support_status.cpp does. BUT that doesn't work yet with variants. This is interesting BTW, as I hadn't realized that until I read this thread. I'll work on making this possible when all algorithms will be migrated.