Extraction Runtime Identity
data class ExtractionRuntimeIdentity constructor(val extractor: String? = null, val extractorVersion: String? = null, val hostApplication: String? = null, val runtime: String? = null, val runtimeVersion: String? = null)
What code ran the run, and where.
The version fields are what separate "the extractor changed" from "the model changed" when output quality moves. OpenLineage's processing-engine facet carries the same pair of a name and a version for the same reason.
hostApplication names the application embedding DICE, not a machine. A hostname would be a direct identifier of infrastructure and belongs in the host's own telemetry.
EXPERIMENTAL. The shape may still change while extraction runs (DICE #67) land.