Can tell you already: The timerAlarm() code is for Arduino-ESP32 3.x.
PlatformIO is still on the Arduino-ESP32 2.x core. That had a different API. Compare
vs
if you want to build the latest Arduino-ESP32 3.x WITH ESP-IDF as a base build, you’re gonna need Tasmota’s fork for that. (https://github.com/Jason2866/platform-espressif32). The current standard espressif32 platform is not up to date on that yet.
So a change to
platform = https://github.com/Jason2866/platform-espressif32.git#Arduino/IDF5