Delete was broken in 4 places at once. Coordinator didn't reset epoch lineage. Workers weren't told to unload the collection's chunks. Site cache wasn't invalidated. Schema endpoint still returned data for the dead collection. You could delete a collection and then query it and get results. Ghost data.

Had to implement two-phase deletion. Mark it deleting, fan out the cleanup, confirm everything's gone, then actually remove the record. "Deleted" means something different at every layer -- the coordinator thinks it's about metadata, the workers think it's about memory, the site thinks it's about cache entries, the artifact server thinks it's about files on disk. They ALL have to agree or you get ghosts.

Sigh.