Fix Version/s: None
Sprint:AP F19-3 (Skipped)
As originally proposed in DMTN-098, MetricTasks are responsible for aggregating metrics to any desired level of granularity. This capability has never been used and is unlikely to be needed in the future (SQuaSH's Chronograph UI already supports aggregation implicitly). On the other hand, it makes MetricTasks much harder to write (in particular, they can have much more complicated failure modes) and requires flexibility in inputs that the Gen 3 framework considers undesirable.
Give each MetricTask a well-defined granularity. This will require breaking, and therefore simultaneous, changes to:
- The MetricTask API documentation
- The MetricControllerTask code (should still support MetricTasks that do a many-to-one transformation, though none exist at present)
- The MetricControllerTask API documentation
- discussion of inputs and philosophy in DMTN-098
- MetadataMetricTask and PpdbMetricTask
- all concrete MetricTasks
No changes to ap_verify should be necessary.