A normalization check reports state instead of rewriting it
A string can already satisfy more than one form, and compatibility forms answer a different question from canonical forms. The report keeps all four booleans and results separate.
Checking does not mutate the source. Each candidate serialization is shown so a pipeline can choose its own policy.