What is the difference between source.catalog and destination.catalog

Hi Team,

When I run sync with normalization enabled, observed that the sync process creates source and destination catalog files. Which happens to be the same.
Would like to understand the purpose of having same files with different names ?

source_catalog.json is used during the read step from the source.
destination_catalog.json is used during the write and normalization step for the destination.
They are very similar but there is a small difference the destination have the final stream name and stores the namespace of the destination.
Probably in the future it’s possible to refactor the code to have a unify catalog between source and destination.