dragonflight/services
ZGaetano 7a6296585c fix(asset): show 'Generate proxy' CTA when an asset has a hi-res
master but no browser-playable proxy

Previously the player's "Retry processing" button only appeared for
assets in status='error'. Old recorder captures (e.g. the archived
'sRT Test_…' clips from May) live as status='archived' or 'ready' with
original_s3_key set but proxy_s3_key null. The /stream endpoint
correctly returned {url: null, reason: 'no_proxy'} for those, but the
player just showed "Preview not yet available" with no path forward —
which reads as "ingest worked, won't play, no idea why."

Two changes:

1) Capture {reason, has_source} from /stream so the UI can tell why
   playback isn't available.

2) Render a "Generate proxy" button (using the existing
   POST /assets/:id/retry endpoint, which the backend now accepts for
   any asset with original_s3_key but no proxy_s3_key) whenever the
   stream lookup returned no_proxy and the source exists. Original
   error-status retry path is preserved.

Closes the visible half of #1 — the user can now self-recover proxy-
less clips from the library without DB surgery.
2026-05-23 10:30:42 -04:00
..
capture fix(recorders,library): empty-capture handling + right-click context menu 2026-05-23 03:52:30 +00:00
editor fix: override user-select:none on draggable media items to fix drag initiation 2026-05-19 14:45:47 -04:00
mam-api feat(assets): cleanup-live-orphans + retry handles non-error states 2026-05-23 10:28:42 -04:00
node-agent fix(decklink): mount /dev/blackmagic in sidecar + remote node routing via node-agent 2026-05-21 18:51:09 -04:00
premiere-plugin feat: live HLS preview, proxy worker fixes, Settings tabs, growing-files + Premier panel 2026-05-22 19:12:53 -04:00
web-ui fix(asset): show 'Generate proxy' CTA when an asset has a hi-res 2026-05-23 10:30:42 -04:00
worker fix(worker): route SVG (and other image assets) through the image-poster 2026-05-23 10:26:59 -04:00