use super::ContextEvent;
use serde::{Deserialize, Serialize};
use std::collections::VecDeque;
pub(super) const MAX_EVENTS: usize = 1000;
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct ContextTrace {
pub(super) max_tokens: usize,
pub(super) events: VecDeque<ContextEvent>,
pub(super) total_tokens: usize,
pub(super) iteration: usize,
}
impl ContextTrace {
pub fn new(max_tokens: usize) -> Self {
Self {
max_tokens,
events: VecDeque::with_capacity(64),
total_tokens: 0,
iteration: 0,
}
}
}