"""Журнал аудита: запись действий, изменяющих состояние.""" from __future__ import annotations from typing import Any from sqlmodel import Session from app.models import AuditLog def record( session: Session, *, actor_id: int | None, action: str, entity_type: str, entity_id: int | None = None, payload: dict[str, Any] | None = None, ip: str | None = None, user_agent: str | None = None, ) -> None: """Добавляет запись аудита в сессию (commit — на стороне вызывающего).""" session.add( AuditLog( actor_id=actor_id, action=action, entity_type=entity_type, entity_id=entity_id, payload=payload, ip=ip, user_agent=user_agent, ) )