[Google Pixel 2 XL ROMs, Kernels, Recoveries, & Oth] simplepinoi177:
I hope you can forgive the long and convoluted post...

Okay, maybe some clarification might be in order to help you out and understand and hopefully appease & relieve any hesitation or concerns you're having...

Mod Edit: added hide tags :good:

For whatever reason, Google had changed "certain things" (you can read more about it

HERE

; credit to [MENTION=3730810]Badger50[/MENTION] for referencing this), and made it particularly difficult to gain r/w access (read/write access) to the regular Android OS (version 10/Q; apparently they had not implemented it in the Q betas or we would've brought it up already and/or been already attending to the issue...); for the most part, this means its system and data partition. Because of this, you can’t modify files that reside within the system partition via TWRP and other “root” methods; so you can’t modify certain files that can help customize your experience – for example, many like to modify the “build.prop” file for certain reasons, I personally like to modify the “touchscreen.idc” file to get a bit better response for the touchscreen on the sides of the device. The (only, if I’m not incorrect) stipulation to this is running Magisk modules as one of its advantages is to be able to run certain code or processes “systemless”.

Now that that’s been established, the reason why you’re still able to run or “flash” things via TWRP (like installing Magisk, custom kernels, its own installer to flash and overwrite the rescue portion in the boot partition, I even am able to change the system font in this manner) is because all of those things are actually modified/”flashed” outside of the system; located in other partitions like the boot partition (where the recovery resides and actually where Magisk obtains its root) or wherever the custom kernel (all I know is that it doesn’t necessarily reside in the /system or /data partition) is installed/flashed.

*I’m unsure why flashing the “change font” modification is successful, as I imagine that is something that resides in the /system partition…but then again, I’m not familiar with how it makes said modifications in the first place….

As installing custom ROMs and such is actually replacing the /system and /data partitions with its own “custom” data (pun intended), it is actually working outside of the initial Google Android OS (10) and therefore its own confines and restrictions. So, in essence, you don’t really have to be concerned about whether if TWRP can flash and be able to accomplish those kinds of things. It’s more-so modifying files and data using TWRP as a medium more than anything -- via the File Manager in Advanced for example. In essence, it’s the same way/reason why “fastboot” is able to make modifications, it is something outside the Google Android OS – which is done on purpose as, when something goes wrong in the OS and unable to boot into it and make corrections, this is to assure that there is still access to correct things and/or recover via a full factory image and/or resetting things to factory in that manner.

Now, to add onto this, if you (or anyone) does end up flashing and installing a custom ROM, then one doesn’t have to worry about these restrictions because, in essence, you are replacing the stock Android OS with a custom OS (Operating System) and thus said “write” restrictions are (most likely) not there; and, as such, don’t really have to worry about such things as TWRP not being able to access or modify within it. As an analogy; it’s essentially having a computer that pre-installed with Microsoft Windows, and you formatting the hard drive and install Linux; you don’t have to worry about the files that Microsoft Windows won’t let you touch or modify as Linux can give you that access.

All in all, for most things, you don’t have to worry about TWRP not being able to accomplish what (normally) is expected of it; it still can flash Magisk and custom kernels and custom fonts and many other things – in many instances where it is outside of that "normally expected", there are workarounds that can be found off of Magisk and implementing such things via its modules while having “systemless” implementations. Pretty much the main irritation and issue is, when going through such installation processes and “flashing”, that TWRP puts up a scary red error speaking about it not having r/w access or something like that; which, again, as I’ve explained now, many times isn’t an issue as you are (under most normal circumstances) modifying things outside of the /system partition.

Now, to address some of your specific concerns…

When flashing an OTA, it ends up overwriting & restoring the /boot partition where root access (Magisk) and recovery reside. That is why, whenever flashing the OTA or update done via the Full Factory image (which, btw, is how most/all experts here update monthly anyways…) you must re-flash Magisk and custom recovery and kernel afterwards. As you stated – that you vaguely remember – I'll go ahead and cover as to refresh your memory. The only important idea in terms of installing in a specific “order” is that, in some cases, installing custom anythings override what had been previously flashed in some ways, and can cause either bootloops and/or loss of said customizations; i.e. if you install Magisk – which modifies the /boot partition – and then install the custom recovery TWRP after – which also modifies the /boot partition; because, as previously stated, also resides in the /boot partition when, before, used to be its own partition (/recovery) – you would find that it either cause a bootloop or completely removes root. This is my own personal experience, but I’ve found that, although TWRP states that it can “detect” a modified boot and makes the appropriate adjustments, I think it doesn’t do it perfectly and it causes issues whereas Magisk doesn’t seem to get in TWRP’s way, so it ends up merely being better to install/flash Magisk at the very end making it the very last thing to “touch”/modify the /boot partition. So, TL;DR, you don’t necessarily have to be forced to run the stock kernel or recovery if you do not wish, you’ll just have to install/flash it after an OTA but before Magisk… Worst comes to worst, you can always temporarily boot the TWRP custom recovery if you still feel hesitant…

Additional note, I’m unsure if there are any custom ROMs you flash/install outside of a custom recovery and/or that you do from the bootloader in “Bootloader Mode”, but if there are, I’m sure you actually use “fastboot” commands rather than “adb” ones. If anything, you can run adb commands from within the TWRP environment.

I know I input a whole lot here, so I appreciate you and any other person who went through the trouble and patience of reading this. As such, though, if there is anything else/more that you need me to clarify, please post up and let me know so I can address and expand on it. In any case, I hope this helps….