delete doesn't actually remove the record from the table file.
Once the delete is committed and the last transaction is closed, no postgres process can see the record any more, the deleted record is now liable to be
Does vacuum (or some other system) overwrite the deleted data or is some of it left sitting in the table file?
vacuum full and
cluster will both re-write the files omitting the deleted record, but I'm particularly interested if there are any details about what ordinary vacuum will or, will not, do to fields stored in the heap and TOAST files.