Taproot is all but done in coding. The work is all their ready. It just need to be combined with the right BIP to add it. And here comes the problem. How can you add it to Bitcoin in the best way possible? Taproot does not need a hardfork but a softfork. The problem is that soft fork do need only miner to switch to be active but giving miner to ability to decide can give them to much power. Many do agree that due to the hardforks of BCH, miner do not need to take sides and as such taproot won't have any fighting but alot of people still have PTSD from the block size wars.
There are two proposals that are coming on deciding how to add Taproot.
What is Taproot?
It is basically Schnorr+Mast in one softfork. Read about it here: https://bitcoinmagazine.com/articles/taproot-coming-what-it-and-how-it-will-benefit-bitcoin