17 lines
542 B
Python
17 lines
542 B
Python
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(),
|
|
}
|