This answer is valid on the day of posting and it is very unlikely I would be updating it. Please feel free to edit this or add a separate answer
Firstly,edxposed was the way in recent years.However,developers never provided adequate documentation and the Telegram channels are mostly in Chinese making it difficult to understand. Anecdotally, there have been differences in the team members (core Riru module and Yahfa/Sandhook drivers are developed separately), vouched for by developers on XDA. To make things worse,differences have reached a stage wherein the latest Riru module is incompatible with drivers and users are advised not to update. Driver developers termed this irresponsible change of Riru.
Secondly, the drivers have also not been updated to support Android 12.
Given these, the alternative was lsposed, which again anecdotally is developed by break-away members of the Edxposed team. There is an XDA thread maintained by a user.
I had tried Lsposed earlier but didn't like it
because of their design wherein you need to deliberately select each and every app that you want an xposed module to hook into.Same logic applies for system components. Repeat this for every app/module you install(there is an automation workaround though)
Another difficulty is that unless the module developer specifies what system components are to enabled, it is a guessing game with unpredictable results.The developers however, consider this their core philosophy. Conversely, because of this , system lag is reduced.
After rooting device with magisk, install latest/compatible Riru Core module from github or magisk repo (v26.1.3, in this case).
Install the latest.compatible lsposed module from github (v1.6.2, in this case).
Once you install lsposed , it creates a shortcut on your launcher to manage module installation. It has a module repo too (beta). This manager for some reason is called parasitic manager. If you choose to install from the built-in repo, you are saved the bother of figuring out what system components need to be hooked.
Setting it up was a breeze and the easiest xposed framework installation for me over last 7 years.
XPrivacy Lua works, so does XPosed Edge Pro. Though these modules haven't been updated yet for Android 12, they work to the extent I need.
As explained in Magisk will fail Safety-Net hereafter. Why?, safety net bypass is increasingly tough or impossible with recent devices. I wasn't keen to have the safety net status green since I don't use apps that demand this. However, one banking app refused to work as it detected root,despite enabling it in magisk hide. Since I wanted to have that app running , this is how I could pass safety net. YMMV may vary.
Installed this Magisk module [XPosed]DevOptsHide (Hide developer options)[ROOT] which claims to hide root and also hide developer option status. It didn't help me with this banking app.
Universal SafetyNet Fix Magisk module did the trick and I was able to pass safety net check and get the banking app running. It is interesting to learn how it works (for details see the linked page)
It prevents hardware based safety net detection and forces basic attestation which is easier to fool.
Google knows which devices support hardware detection so it presents device as a different device by appending a space character to the device model name
With magisk set to drop magisk hide feature with future upgrades, fooling safety net detection is going to be tougher if not impossible.