The binary value of t_infomask for both the tuples are identical, but they produce different column values for xmin_commited, xmin_aborted …. in the SQL !!!.
Am I not seeing something that is obvious?
You didn't re-check the infomask data after running the select query, instead assuming the bits didn't change. They did. SELECT is not a read-only operation, it participates in optimizations. Called "writing hint bits". Manually evaluating the various tests against the data you did show would have proven that the pre-select-data had zeros where the second query claims there are ones.