BlogOperations

Staff Attendance Audit Trail & Compliance for Societies

Updated 2026-06-07

Staff attendance audit trail and compliance

Every attendance change on Plinth goes through mark_staff_attendance — not a direct table edit from the client. The RPC checks that the caller is a society admin, validates the attendance state, upserts one row per staff member per calendar day, and appends an audit_log entry (staff.attendance) with the state and date.

What the audit record captures

  • Which staff member was marked
  • Attendance state — present, absent, in, or out
  • Date of the mark
  • Who marked it (admin user) and timestamp

Same-day corrections overwrite the attendance row but generate a fresh audit entry, so the committee can see that a mark was updated — not silently changed.

Why committees care

  • AGM questions — "Were we fully staffed during the monsoon leak week?"
  • Security agency billing — reconcile billed guard count against marked present days
  • Helpdesk accountability — tickets assigned to staff marked absent that day stand out
  • Bye-law hygiene — workforce records sit alongside other governance data on one platform

Attendance is admin-only (RLS: is_admin). Residents cannot view or alter staff marks, keeping internal workforce data off the resident-facing surface.

What is staff attendance · FAQ.