2 Commits

Author SHA1 Message Date
jeremy ff5d7b7841 fix: correct JavaScript field names to match API response schema
The web UI was referencing stale field names that didn't match the
actual API response fields returned by the backend:

  event.status         -> event.match_status
  event.identified_as  -> event.matched_object_name
  event.description    -> event.ai_description
  event.timestamp      -> event.created_at
  stats.known          -> stats.known_matches
  stats.unknown        -> stats.unknown_events
  stats.known_objects  -> stats.known_objects_count

This caused the review queue to display blank badges, timestamps,
descriptions, and identifications, and the dashboard stats to show
all zeros.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-08 20:19:42 -05:00
pluto 5908293671 feat: add web UI with dashboard, review queue, known objects, and settings
Vanilla HTML/CSS/JS SPA served at :5199 with dark theme:
- Dashboard: live event feed with snapshot thumbnails, filters, auto-refresh
- Review Queue: unreviewed events with tag/dismiss actions
- Known Objects: grid of tagged identities with delete
- Settings: vision backend toggle, recognition enable, retention days
- Tag modal: assign events to existing or new known objects

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-07 17:24:02 -06:00