Admin

Activity Log

← Back to Admin

The Activity Log is the audit trail of every significant action the system or an operator took — task created, task fired, message sent, code generated, teammate edited.

Activity Log

What's logged

  • System actions — task seeded, cron-fired, auto-resolve evaluated, Nuki PIN generated, WA message sent.
  • Operator actions — login, teammate edit, manual task trigger, payout marked paid.
  • Skipped actions — when an action returned skipped: true with a reason (the post-#180 silent-skip surface).

Columns

  • Timestamp
  • Actor — system or operator name
  • Action — what happened (e.g. task.created, whatsapp.sent, nuki.codeGenerated)
  • Target — what entity was affected (task ID, reservation ID, teammate ID)
  • Resultok / failed / skipped
  • Details — JSON blob with context

Filters

  • Actor
  • Action type
  • Target entity
  • Date range
  • Result

Reading the log when investigating a task

If a guest says they didn't receive a message and you're trying to confirm it was sent:

  1. Find the task ID (from Operations Tasks or the reservation detail page).
  2. Filter Activity Log by Target = task:<id>.
  3. Walk through every row chronologically.
  4. The last row should be whatsapp.sent with result: ok. If it's result: skipped, the reason is in Details.

Silent skip is no longer silent

After #180, when an action internally bails (e.g. WhatsApp sendReply skipped because the guest opted out), the Activity Log captures:

  • result: skipped
  • reason: "guest_opted_out" (or whatever the action returned)

Before the fix, this was invisible — the operator saw the task as done with no signal anything had been skipped.


  • #180 — silent-skip → activity log captures reason.
  • #181 — admin chat now visible on /v28/wa-comm (separate but related thread-visibility story).
  • #174app_errors cleanup (related but distinct from activity log).
Source: the FlatsBratislava operator manual.