Construct Auto Gen sets Required = Yes(Hard) for fields configured as Required in Target Design. This should be configurable at a Wave and Target level.
The Hard Required setting prevents manual entry or Excel Integration import of records. We prefer to set fields as Soft Required so the data can be stored until fully completed. In addition, Excel Integration import failures are complicated to handle. We use the boaConstructComplete flag to indicate that the record is complete/valid.
Our workaround uses a Stored Procedure to change Hard Required fields to Soft Required. The workaround must be executed each time SyncToMap is executed since SyncToMap is destructive (it changes the field back to Hard Required)
Autoconstruct was meant to be a jumpstart to building DCS pages and is not expected to create perfect pages as you specifically want them on build. It is expected that the user would build when necessary, then manually modify the page as they see fit. In order to prevent those changes from being overwritten, there is a setting called 'Construct Auto Gen Level' on the vertical view of the Full Construction Target Source. I have pasted the DSP Help related to the field below. You should not need to run any stored procedure to bring back your changes if you use the below setting.
Construct Auto Gen Level
This option controls whether the Construct page is updated or overwritten. Values are:
NOTE: This field defaults to Rebuild.
I have attached a screenshot for you to review.
In addition, Construct Auto-gen does not set Hard required for all required fields in Target. It only sets primary key fields as Hard Required and this cannot be changed. In addition, it builds validations for all other fields that have been marked as Business or Technically Required to ensure they have been populated. Since both of these settings are configurable via Target Design Primary Key and Required Settings, this feature already exists.