ras_agent/domain/step_metadata.rs
1use std::time::Duration;
2
3use ras_llm::Usage;
4use serde::{Deserialize, Serialize};
5
6#[derive(Debug, Clone, Default, Serialize, Deserialize)]
7pub struct StepMetadata {
8 pub duration_ms: u64,
9 pub step_interval_ms: Option<u64>,
10 pub usage: Usage,
11 pub model: Option<String>,
12 pub fallback_used: bool,
13}
14
15impl StepMetadata {
16 #[must_use]
17 pub fn duration(&self) -> Duration {
18 Duration::from_millis(self.duration_ms)
19 }
20}