The reason for that as far as I can tell is that the maximum internal flash is 4MB in any ESP32 device. The ones that have more flash have it external to the chip, but still under the metal can. It is memory mapped so it works just like internal flash except that it uses pins. Since development kits need to allow maximum flexibility, they leave those pins free. That means we can use development boards without external flash, but add a flash chip to the pins if/when we need it.