Careful adherence to best practices (often discovered the hard way), banning certain code pitfalls with a linter, and many workarounds :(
It took me months to make something semi-usable out of (a subset of) UNET, and I can clearly see why nobody at Unity wanted to maintain it. Still, something half-decent and mostly backwards-compatible could have been made of it with enough work, but again they chose to chase the new shiny :/