from __future__ import annotations from review_agent.models import RegulatoryReviewBatch, WorkflowEvent def record_event( batch: RegulatoryReviewBatch, event_type: str, payload: dict | None = None, ) -> WorkflowEvent: return WorkflowEvent.objects.create( workflow_type="regulatory_review", workflow_batch_id=batch.pk, conversation=batch.conversation, 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(), }