Credit to tech_head from post# 787 and the OP of this thread. For anyone that missed it or wanted to see if that method still works, it does.
This allows you to skip twrp and lets you keep all your magisk modules and keep all your data.
Not sure if it matters, but remove substratum themes before doing any of this, reapply after all steps are finished.
I have done it with security/fingerprints on and substratum themes applied and it still worked without data loss or other issues, but as a precaution might as well disable both.
1) download the stock boot image file for the whatever version of android you have currently have
here <- Credit to bmg1001
2) put it in you adb folder and open a cmd window from that folder (ctrl+shift and right click then select cmd window)
3) Connect device, type "adb devices" in the cmd window to make sure the device is there
4) type "adb reboot bootloader"
5) type "fastboot flash boot <path to the boot image you downloaded earlier>"
6) type "fastboot reboot", your phone should reboot and no longer have root
7) take the OTA update
8) download the boot image for the current version you updated to from same link above and transfer it to your phone if needed
9) on your phone open magisk manager or magisk installer , it should ask you install magisk then select patch boot image
10) transfer that patched boot image to your computer (you can put it the adb folder if you'd like)
11) with phone connect to pc, type in the cmd window from before "adb reboot bootload" then "fastboot flash boot <path to the patched boot image>"
12) this should flash the "rooted" boot image, type "fastboot reboot", your phone will reboot and should now be rooted.
Your magisk modules should still be there and all your data should be good.