Audit¶
Every officer command writes a row to the audit_log collection. Use this command when something looks weird later ("did I really mark that payment undone?") â there's a timestamped record of every action with the actor, target, and details.
/audit¶
Full action history for one brother.
Usage: /audit <member> [limit]
| Argument | Required | Description |
|---|---|---|
member |
yes | The brother to look up |
limit |
no | Max entries (default 25, max 100) |
Output: ephemeral. Each entry shows action label, timestamp, actor, summary of details, and the ID of the affected record.
Action labels you'll see:
| Glyph | Action | When |
|---|---|---|
| đĩ | Payment logged | /log_payment |
| âŠī¸ | Payment undone | /undo_payment |
| âī¸ | Payment memo edited | /edit_memo |
| đ | Receipt attached to payment | /attach_receipt kind:Payment |
| đ | Deduction logged | /deduct_dues |
| âŠī¸ | Deduction undone | /undo_deduction |
| đ | Donation logged | /log_donation |
| đ¤ | Promise made | /promise |
| â | Promise cancelled | /cancel_promise |
| â | Promise fulfilled | /mark_paid |
| đ | Promise broken | (auto, daily) |
| đ | Onboarded | /onboard |
| đĢ | Deactivated | /deactivate_member |
| đ | Assigned to room | /assign_room |
| đĒ | Unassigned from room | /unassign_room |
| đ | Other | catch-all |
What's recorded¶
For each entry: actor_id (who ran the command), action (dotted lowercase string like payment.log), target_member_id (the brother affected), target_id (the affected record's ID), details (a dict of key facts â amount, method, dates), and at (UTC timestamp).
The audit log is append-only â there's no /undo_audit_entry command. Even undone payments leave their audit trail visible.
The XLSX export (/export_dues) includes a "Audit" sheet with the most recent 500 actions.