JvmPerformanceReports

Shared processing of fixed CPU and native phase reports from immutable raw evidence. Consumers register conditions, metrics and untimed work assertions, never their own aggregation engine.

Functions

Link copied to clipboard
fun compare(baseline: List<Path>, candidate: List<Path>, collector: Path, contract: PerformanceReportContract, metrics: List<PerformanceReportMetric>, validate: (JsonObject) -> Unit = {}): JsonObject

Revalidates both raw sides and rejects copied invocations, different matrices or controlled inputs.

Link copied to clipboard
fun compareImages(baseline: Path, candidate: Path, expectedCount: Int): JsonArray

Compares complete named image inventories from actual bytes outside timed intervals.

Link copied to clipboard
fun summarize(paths: List<Path>, collector: Path, contract: PerformanceReportContract, metrics: List<PerformanceReportMetric>, validate: (JsonObject) -> Unit = {}): JsonObject

Validates independent invocations and aggregates each run's metrics separately. Missing optional measurements remain JSON null and absolute times never determine success.