AalekhMetricsTask
Runs every custom com.aalekh.aalekh.analysis.spi.MetricProvider discovered on the plugin classpath and writes their values as local artefacts.
Providers are discovered automatically via the JDK ServiceLoader (a META-INF/services/com.aalekh.aalekh.analysis.spi.MetricProvider entry in a jar on the plugin's runtime classpath - the same classpath used for rules { custom(...) }). Two files are written next to the HTML report:
aalekh-custom-metrics.md- a reviewable summary of the system-wide and per-module metrics.aalekh-custom-metrics.json- the same data, machine-readable.
With no providers registered the task is a no-op that still writes an empty report. A provider that throws is skipped and noted in the report; it never fails the build.
Run: ./gradlew aalekhMetrics
Caching
Caching is disabled: the result depends on which provider jars sit on the build classpath, which is not a declared task input. The task is still configuration-cache safe; every input is a plain value.
Properties
Reviewable Markdown, written to aalekh-custom-metrics.md.