Skip to content

feat(activity): expand logging with more events, filterable feed, ex…#5

Merged
YoyoJesus merged 1 commit into
devfrom
feat/activity-logging-expansion
Jun 2, 2026
Merged

feat(activity): expand logging with more events, filterable feed, ex…#5
YoyoJesus merged 1 commit into
devfrom
feat/activity-logging-expansion

Conversation

@YoyoJesus
Copy link
Copy Markdown
Member

…port & purge

Capture new event types (tile_uncomplete, bingo_win, card_reshuffle, and admin
verify/unverify/reset + tile create/update/delete/bulk_add). Admin-action targets
are recorded in the detail field, so no schema migration is needed.

Admin feed:

  • filter by type (grouped) and by user, via URL query params
  • "Load more" pagination using a growing limit
  • live updates through depends('app:activity') + livePoll
  • badges/labels for every event type

Export & retention:

  • admin-only GET /admin/activity/export (CSV/JSON, honors active filters)
  • slide-to-confirm purge action (clear all, or older than a chosen date)

bingo_win is detected on the false->true transition (after-state re-query minus
the toggled tile), so it logs exactly once per win. New logActivity call sites
keep the best-effort contract: a logging failure never breaks the action.

Adds vitest with unit coverage for the pure logic (event metadata, win
transition, filter/purge parsing, CSV/JSON serialization).

Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com

…port & purge

Capture new event types (tile_uncomplete, bingo_win, card_reshuffle, and admin
  verify/unverify/reset + tile create/update/delete/bulk_add). Admin-action targets
  are recorded in the detail field, so no schema migration is needed.

  Admin feed:
  - filter by type (grouped) and by user, via URL query params
  - "Load more" pagination using a growing limit
  - live updates through depends('app:activity') + livePoll
  - badges/labels for every event type

  Export & retention:
  - admin-only GET /admin/activity/export (CSV/JSON, honors active filters)
  - slide-to-confirm purge action (clear all, or older than a chosen date)

  bingo_win is detected on the false->true transition (after-state re-query minus
  the toggled tile), so it logs exactly once per win. New logActivity call sites
  keep the best-effort contract: a logging failure never breaks the action.

  Adds vitest with unit coverage for the pure logic (event metadata, win
  transition, filter/purge parsing, CSV/JSON serialization).

  Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@YoyoJesus YoyoJesus merged commit b7de604 into dev Jun 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant