flip_api.model_services.utils.audit_helper

Functions

audit_model_action(...)

Insert a single audit log into the ModelsAudit table.

audit_model_actions(...)

Bulk insert multiple audit logs into the ModelsAudit table.

Module Contents

flip_api.model_services.utils.audit_helper.audit_model_action(model_id: uuid.UUID, action: flip_api.domain.schemas.actions.ModelAuditAction, user_id: uuid.UUID | None, session: sqlmodel.Session) flip_api.db.models.main_models.ModelsAudit

Insert a single audit log into the ModelsAudit table.

Parameters:
  • model_id (UUID) – The ID of the model being audited.

  • action (ModelAuditAction) – The action performed on the model.

  • user_id (UUID | None) – The ID of the user performing the action, or None for unattended background transitions (fl_scheduler).

  • session (Session) – SQLModel session.

Returns:

The created ModelsAudit entry.

Return type:

ModelsAudit

flip_api.model_services.utils.audit_helper.audit_model_actions(actions: list[flip_api.domain.interfaces.model.IModelAuditAction], session: sqlmodel.Session) list[flip_api.db.models.main_models.ModelsAudit]

Bulk insert multiple audit logs into the ModelsAudit table.

Parameters:
  • actions (list[IModelAuditAction]) – List of actions to audit.

  • session (Session) – SQLModel session.

Returns:

List of created ModelsAudit entries.

Return type:

list[ModelsAudit]

Raises:

RuntimeError – If actions is non-empty but no audit rows ended up being created.