//! Metrics helpers for exec runners.
//!
//! ## Overview
//!
//! Provides runner-type identifiers and a mapping from [`TaskError`] to [`TaskOutcome`]
//! used by all runner implementations in this crate.
use TaskOutcome;
use TaskError;
/// Classify a [`TaskError`] into a [`TaskOutcome`] metric label.
///
/// Strips operational details (reason strings, durations) and returns only the category for dashboards:
/// - `Fail` / `Fatal` → [`TaskOutcome::Failure`]
/// - `Canceled` → [`TaskOutcome::Canceled`]
/// - `Timeout` → [`TaskOutcome::Timeout`]
pub