Problem with fixed_interval set to 1d for Run downsampling with ILM

My time zone here is GMT+8, and I encountered a problem running downsampling with ILM: the value in the timestamp @ timestamp field after downsampling has been using the index start_time (with hours, minutes, and seconds) instead of 00:00:00 UTC time, which makes it impossible for me to use "fixed_interval": "1d" in the production environment.

However, when I manually called the downsampling interface to test downsampling according to the official documentation (without using IML), the @ timestamp in the downsampled data was 08:00:00.

My question is: If I use ILM, which data will be downsampled and the timestamp field value will use the value on the start_time index, and when will UTC 00:00:00 be used?

My guess: Due to the GMT+8 time zone I am using here, after sampling, the @ timestamp field value of data before 8 o'clock will use the start_tme value on the index, while the @ timestamp field value of data after 8 o'clock is 08:00:00. I am not sure if this guess is correct. Does anyone know?