diff --git a/crates/supermaven/src/supermaven.rs b/crates/supermaven/src/supermaven.rs index 68a55504028f70d14a1d3a1c9d905a51ec02480e..152a41c3be250860a6c8aa2df28484392cada796 100644 --- a/crates/supermaven/src/supermaven.rs +++ b/crates/supermaven/src/supermaven.rs @@ -147,6 +147,14 @@ impl Supermaven { updates_tx, }, ); + // ensure the states map is max 1000 elements + if agent.states.len() > 1000 { + // state id is monotonic so it's sufficient to remove the first element + agent + .states + .remove(&agent.states.keys().next().unwrap().clone()); + } + let _ = agent .outgoing_tx .unbounded_send(OutboundMessage::StateUpdate(StateUpdateMessage {