OK, several questions there. I have used both Wifi LoRa 32 V3 and WSL V3 boards and for the most part they work the same way insofar as relevant pins are actually broken out on the respective boards and available for use.
I don’t know how/why the Meshtastic people chose those pins, because my experience would suggest that they could never have worked. An I2C bus can, however, be configured on any two I/O pins that are not constrained by some other function (like a pin that must be held HIGH or LOW during boot etc.). The fact that the pin out diagram lists several functions for some pins and only one for others is not necessarily any indication of the capabilities of that pin with regard to I/O or its availability for use as an I2C bus. Strictly speaking, an output-only pin should be labelled GPO, not GPIO, but the only way I know to divine what can truely be done with any particular pin is to look at the [ESP32-S3] processor datasheet.
By default, all pins on the ESP32 are digital pins, which just send or receive a HIGH (3.3V) or LOW (0V) signal. ESP32 pins can, however, also all be coupled with an internal ADC to manage analog signals, although ‘conditions apply’.
Now, having said that, if a particular pin is used for a particular function on a particular board (in the above pin map, the pins with ‘purple box’ functions are an example), it may not be available for any other use without negative consequences.
Searching through the Meshtastic GitHub repository, I find the following:
which identifies the pins used for the I2C bus on the WSL V3 board. This file needs to be amended to identify the GPIOs that you want to use, or you could just try redefining the relevant parameters in your sketch, something like:
#define I2C_SCL 19
#define I2C_SDA 20
replacing the numbers by whatever GPIOs you ultimately choose to use.