pub fn trim_messages(
messages: Vec<Message>,
max_tokens: usize,
token_counter: impl Fn(&Message) -> usize,
strategy: TrimStrategy,
include_system: bool,
) -> Vec<Message>Expand description
Trim messages to fit within a token budget.
token_counter receives a single message and returns its token count.
When include_system is true and strategy is Last, the leading system
message is always preserved.