Implement runtime agent loop and container hygiene

This commit is contained in:
2026-05-12 07:56:37 -05:00
parent 412d7caec3
commit a09197e85a
13 changed files with 524 additions and 70 deletions

View File

@@ -19,9 +19,13 @@ class ChatActivityPolicy:
self.inactivity_threshold = timedelta(minutes=inactivity_threshold_minutes)
self.last_message_time: dict[str, datetime] = {}
def record_activity(self, session_id: str) -> None:
def record_activity(self, session_id: str, occurred_at: datetime | None = None) -> None:
"""Record that chat activity occurred."""
self.last_message_time[session_id] = datetime.utcnow()
self.last_message_time[session_id] = occurred_at or datetime.utcnow()
def last_activity_at(self, session_id: str) -> datetime | None:
"""Get the most recent chat activity time for a session."""
return self.last_message_time.get(session_id)
def minutes_since_activity(self, session_id: str) -> int:
"""Get minutes since last chat message."""