dev #15

Merged
elirtf merged 4 commits from dev into master 2026-06-29 17:25:15 +00:00
Owner
No description provided.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Adds a bottom strip of recent events (compact chips: person/vehicle/motion
icon + time-ago) to the single-camera page, polled every 30s. Clicking a chip
replays that event's clip in place (plain MP4 via the existing events API),
with a LIVE button to return. Clips that won't decode (e.g. H.265) offer a
'Try H.264' transcode fallback. Frontend-only; no backend changes.

Spec: docs/superpowers/specs/2026-06-24-camera-view-events-replay-design.md

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The static_files named volume shadows the UI baked into the image and
persists across rebuilds. The entrypoint only copied the new bundle when the
volume was empty, so every frontend rebuild after the first run was silently
ignored — nginx kept serving the original bundle. Sync unconditionally on
start; the assets are small and content-hashed so the copy is cheap.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The updateend handler appended pending data (setting updating=true) then fell
through to sb.remove() on the same SourceBuffer, throwing InvalidStateError
and spamming the console. Return after appending; the buffer trim runs on the
next updateend. Likely also reduces live-view choppiness from failed trims.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
elirtf merged commit 0ef05eceff into master 2026-06-29 17:25:15 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
elirtf/opus!15
No description provided.