Metrics dashboard YAML definition validation
## Background
Defining dashboard in YAML files is hard.
We currently have no validation on dashboard yaml files, which can help guide users onto how to fix existing errors that prevents them from utilizing different features offered by Metrics Dashboards
## Proposal
We should add exhaustive validation mechanism which will offer information which helps on preparing well formed dashboards definition. Dashboard definition validation should be applied in at least two context:
1. When user is visiting **Operations > Metrics** and wants to view metrics dashboard, at that moment if there are any errors in dashboard definition, user should be informed, that some features may be not available until listed issues are not addressed
1. When user is visiting file with dashboard definition at **Repository > Files** at that moment, user should get feedback which attributes are missing or has wrong data. That enables user to take immediate action to fix existing problems.
Offenses to dashboard definition DSL can be categorized into two groups:
* **Warnings**: The dashboard can be rendered, but there are recommended properties missing or deprecated ones.
* **Errors**: The dashboard can not be displayed as there are major errors in yml that prevent this.
epic