use deepstrike_core::runtime::session::SessionEvent;
use deepstrike_core::types::message::Message;
use super::session_log::SessionEntry;
pub fn extract_recorded_messages_from_entries(entries: &[SessionEntry]) -> Vec<Message> {
entries
.iter()
.filter_map(|e| message_from_event(&e.event))
.collect()
}
pub fn extract_recorded_messages(events: &[SessionEvent]) -> Vec<Message> {
events.iter().filter_map(message_from_event).collect()
}
fn message_from_event(event: &SessionEvent) -> Option<Message> {
if let SessionEvent::LlmCompleted { message, .. } = event {
Some(message.clone())
} else {
None
}
}