I'm having the same issue with the Pixel 8. My current workaround is booting into fastboot mode once it runs out of battery in order for the phone to charge, otherwise it gets stuck in a rebooting cycle.
At present it seems that the power controller has a target power state (on or off), and that if power is exhausted when the OS is running (target power state: on) then when the machine restarts the target power state is still on. ... I don't think it would be straightforward for the firmware to predict how much power the OS might need to get past the early stages of booting.
@de0u
Would it be easier to estimate the expected amount of energy needed to power down than to estimate energy needed to get passed early stages of booting? If so, maybe it would be easier to programatically power off the device once it reaches some threshold.