The site editor writes templates to the database

A template edited in the site editor becomes a wp_template post, and from that moment the file on disk is ignored for that template.

SELECT post_name, post_status FROM wp_posts
WHERE post_type IN ('wp_template', 'wp_template_part');

-- | single    | publish |   ← customised, overrides the file
-- | header    | publish |

-- so a theme update changing templates/single.html has no
-- effect on this site, silently, forever.

This is the single largest operational difference between a block theme and a classic one: deploying a template change does not change the site if anybody has opened that template in the editor. Auditing for customised templates before a theme deploy is a query, and it belongs in the deploy checklist rather than in somebody’s memory.