Data Warehouse how normalized for tracking metadata changes?
The short answer is: define your end result ( requirement) and work backwards from there. 

Normalization goes out the window pretty quick with a DW schema. 

In my case we have 3 schemas for our ETL. 


Staging: Tables are extracted into our DW exactly as they appear in the source system plus a few columns for meta data as you describe. The key one being the extract time.
Transform: These tables have exactly the same schema as the end result dimensions and fact tables. At this point we are denormalising data from an OLTP schema into a DW star schema. Again it has fields for ETL meta data. The original extract datetime can travel with the records.
Store: This our end result, a DW star schema which is read by our OLAP cube. To Load our data we compare the transform with the final datastore tables. New rows get inserted. If a row has changed we retire the old and insert the new. To do this we have fields for is_current,  valid_from datetime and valid_to datetime.


Technically we dont need 3 schemas. It's just a convention, and it allows us to keep things tidy.

Read about Kimball methodology and Slowly Changing Dimensions. Type 1 or 2 etc. You will see examples of what fields you will need to store the meta data required. 

Talk to your business about what they want or need the DW to be capable of. Whether you need SCD's or not will have a significant impact on your schema, meta data required and ultimately what level of normalisation that is possible.