Hi! My script uses bands 11 and 12 in a normalized difference index, as these bands are used for heat detection. Additionally, B08 is used to make the result even more reliable, as B08 has low values on these areas. Then, vegetation index is used to avoid vegetated areas and NDWI is used to mask water areas.
Based on differences in water color, the result of mapping water by NDWI varies. For example, here you can see it working pretty well on 2019-09-15, while on 2017-07-17 on you can see that the index has white artefacts where water should be:
I have increased the true color brightness for the NDWI>0 pixels, to highlight diffences in water color:
If you compare the result from 2017-07-17 and the true color image above, you can see, that NDWI failed to classify water areas where water is completely black. I believe this is also why the red areas of my script seep into the water sometimes. Burned areas are usually also very dark and the script gets confused. It is often difficult to create scripts that would highlight only the phenomenon you want and nothing else due to issues like that. Other indices for burned areas, like NBR and BAI, have the same problems.
To avoid that, you should probably map water with a multitemporal script, so that you can check for consistently high moisture during the months. The water bodies mapping script works pretty well.