From 2b475234321fcc0fb0ce699c887d28a3991c67ea Mon Sep 17 00:00:00 2001 From: Scott Severance Date: Wed, 12 Aug 2026 11:18:24 +0000 Subject: [PATCH] feat: add context validation before sending to LLM --- agent/core/conversation.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/agent/core/conversation.py b/agent/core/conversation.py index d04a6b2..182a6a2 100644 --- a/agent/core/conversation.py +++ b/agent/core/conversation.py @@ -78,6 +78,18 @@ def _trim_context(self): self.messages.pop(i) break + def _validate_context(self) -> bool: + """Validate that context fits within hard limits before sending to LLM. + + Returns True if context is within bounds, False otherwise. + """ + if len(self.messages) > self.max_messages: + return False + total_chars = sum(len(m.content) for m in self.messages) + if total_chars > self.max_chars: + return False + return True + def clear(self): """Clear all messages except system.""" system = [m for m in self.messages if m.role == "system"]