Just my two cents of semicmprehencible thoughts and probably a little rant
I think that the general public forgets that FreeCAD is not a monolith application to perform a single task but more of a collection of tools to operate on a solid geometric data. Which must be robust, suitable for a lot of different tasks but not unneccessary complex. OCC, BREP, Coin, Python were slected as most suitable at the time. And we are stuck with them unless a complete redesign from the ground up happens (as Blender 2.8). Everything else is on top of that. It would be nice to have a working and polished assembly workbench but it should not exist just to have it. It should fit a need -use cases, peoples understanding of what is actually possible and how it is achieved.
You have an idea for Asm3, you need a link object, you make that happen.
You introduce LCS, you have an idea for Assembly4, you make it.
You have an idea to use sketcher solver, you introduce it to the community, but that is as far as you want to go - thats it.
It is all about use cases and users. We all want assembly workbench but actually manage to do our projects without one. Some can actually create one but do they need it in the long run? Will they continue to support and manage it? Will it be understandable so someone can pick it up and continue the work if the original developer loses interest, incentive, goes to a deserted island to become a monk?
And the rant... Why dont all objects that have Placement have also Attachment? If their placement should be deriver from a parrent object (like a Part container) it can always Deactivate its children Attachment. In my experiment with sketcher as assembly solver I should not have to use Draft clones but the bodies directly. I also noticed that I can clone Part containers but that does not duplicate geometry so cant use that to circumvent Part's missing attachment.