Enforcing valid values of configuration parameters

Dear all,

I would like to ask you guys opinions about how to enforce configuration parameters within the valid ranges based on documentation.
As far as I understand, PX4 does not want to limit users’ freedom to assign any values to the parameters.
If I want to constraint the parameters, there are two design options: 1) when PX4 parses a MAVLink message which changes the parameter value, PX4 can enforce the parameter to have a valid value. 2) Users can freely assign any value to the parameters. However, PX4 uses a default parameter value if the parameter assigned by the users has a value outside the valid range. I believe that current PX4 version already follow the second option for a small set of the parameters.
Could I ask which option is more feasible and practical? Thank you!

@HyungsubKim Have you looked at the parameters metadata? Parameters & Configs · PX4 Developer Guide

Thanks for your feedback! I have looked at the documentation.
If you don’t mind, please let me ask a question.
Do you recommend me to enforce valid ranges of parameters through the parameter metadata on GCS side?