from __future__ import annotations from review_agent.models import FileSummaryBatch, WorkflowEvent def record_event(batch: FileSummaryBatch, event_type: str, payload: dict | None = None) -> WorkflowEvent: return WorkflowEvent.objects.create(batch=batch, event_type=event_type, payload=payload or {}) def serialize_event(event: WorkflowEvent) -> dict[str, object]: return { "id": event.pk, "event_type": event.event_type, "payload": event.payload, "created_at": event.created_at.isoformat(), }