de0u That could be done. 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. This may not be ideal, but it appears to be how the hardware or maybe firmware behaves.
I wouldn't want to imply there is any issue with GrapheneOS here, especially since I don't know how the stock OS behaves in this situation on the Pixel 8 Pro (bought it to use with GrapheneOS, which I installed immediately). It's very possible this is by design, or an upstream issue (which GrapheneOS isn't necessarily supposed to address as it has no apparent security implications).
That being said, from my experience with other devices, when the battery was fully discharged and upon subsequent connection to charger, they'd technically power on but proceed to a special bootloader mode that would show a message saying "charge too low to power on," or something to that effect, and would then either remain in this state without further booting (with only the message disappearing) or proceed to boot automatically only once charged a bit more.
I think the empty battery icon that briefly pops up on screen might be intended for the above scenario.