Add timezone to event timestamps (#3231)
Some checks failed
Notify Downstream / notify-downstream (push) Has been cancelled
Mark stale issues and pull requests / stale (push) Has been cancelled

Events were lacking timezone information, making them naive datetimes,
which can be ambiguous.
This commit is contained in:
Vini Brasil
2025-07-28 17:09:06 -03:00
committed by GitHub
parent fab86d197a
commit 017acc74f5

View File

@@ -1,6 +1,5 @@
from datetime import datetime from datetime import datetime, timezone
from typing import Any, Dict, Optional from typing import Any, Dict, Optional
from pydantic import BaseModel, Field from pydantic import BaseModel, Field
from crewai.utilities.serialization import to_serializable from crewai.utilities.serialization import to_serializable
@@ -9,7 +8,7 @@ from crewai.utilities.serialization import to_serializable
class BaseEvent(BaseModel): class BaseEvent(BaseModel):
"""Base class for all events""" """Base class for all events"""
timestamp: datetime = Field(default_factory=datetime.now) timestamp: datetime = Field(default_factory=lambda: datetime.now(timezone.utc))
type: str type: str
source_fingerprint: Optional[str] = None # UUID string of the source entity source_fingerprint: Optional[str] = None # UUID string of the source entity
source_type: Optional[str] = None # "agent", "task", "crew", "memory", "entity_memory", "short_term_memory", "long_term_memory", "external_memory" source_type: Optional[str] = None # "agent", "task", "crew", "memory", "entity_memory", "short_term_memory", "long_term_memory", "external_memory"