Users can have dashboards with metrics that sometimes emit data but sometimes don't cuz there is nothing to report (for example some vendor's SDK may emit failure metrics only when there is a failure). This can be especially true for delta metrics.
For such metrics, if there is a dashboard, we should not fail the query API if there is no data in the time range, only give a warning (like we do when the step interval is too low).
However, we should continue throwing an error if the metric name is something that we have never seen.