dragonflight/services/mam-api/src/routes
Zac Gaetano 9a6ae3b786 fix(jobs): backfill asset_name from DB so non-YouTube jobs show their asset
The Jobs screen only displayed an asset name when the enqueueing code
stuffed assetName into the BullMQ job data. YouTube imports did that;
upload-triggered proxy/thumbnail jobs didn't — so everything except
YouTube showed em dashes in the Asset column.

Fix it centrally: after we collect jobs from BullMQ, look up names
in one bulk SELECT against the assets table for any job that has an
assetId but no asset_name. Applies to /jobs, /jobs/:id, and the SSE
events stream. Lookup failures fall through silently rather than
500-ing the whole list.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-23 16:23:29 -04:00
..
ampp.js feat: AMPP folder sync integration — pre-create folder hierarchy on upload, expose lookup endpoint for Script Task: ampp.js 2026-04-18 13:42:08 -04:00
assets.js feat(assets): cleanup-live-orphans + retry handles non-error states 2026-05-23 10:28:42 -04:00
auth.js feat(ui): polish round 2 — live refresh, schedule calendar, jobs times, real sidebar user 2026-05-23 14:52:04 -04:00
bins.js polish(projects,jobs,bins): row menus, real status bars, bulk retry 2026-05-23 04:09:13 +00:00
capture.js fix(capture): handle non-JSON responses from capture service gracefully 2026-05-20 13:55:06 -04:00
cluster.js feat: add /cluster/containers endpoint via Docker socket 2026-05-22 16:57:33 -04:00
comments.js feat(comments): persistent frame-anchored comments on asset detail 2026-05-23 04:21:11 +00:00
groups.js feat(mam-api): add groups admin CRUD routes with member management 2026-05-18 12:50:49 -04:00
imports.js feat(ingest): YouTube importer — paste link, asset travels normal pipeline 2026-05-23 16:05:41 -04:00
jobs.js fix(jobs): backfill asset_name from DB so non-YouTube jobs show their asset 2026-05-23 16:23:29 -04:00
metrics.js fix(metrics): use real job_status enum values (queued/processing/complete) 2026-05-23 03:31:14 +00:00
projects.js add services/mam-api/src/routes/projects.js 2026-04-07 21:58:28 -04:00
recorders.js polish: schedule past-time confirm, recorder name sanitization, asset detail player controls 2026-05-23 04:12:42 +00:00
schedules.js feat(scheduler): recorder scheduling — UI, CRUD, tick loop, recurrence 2026-05-23 03:19:24 +00:00
sdk.js feat: SDK deployment UI, proxy encoding global settings, S3 env fallback 2026-05-23 02:58:32 +00:00
sequences.js fix(sequences): coerce NUMERIC frame_rate to float in all API responses 2026-05-19 23:24:16 -04:00
settings.js feat: SDK deployment UI, proxy encoding global settings, S3 env fallback 2026-05-23 02:58:32 +00:00
system.js feat(system): Docker container management via Unix socket 2026-05-19 23:46:03 -04:00
tokens.js fix(tokens): add requireAuth middleware to token routes 2026-05-19 00:07:41 -04:00
upload.js fix(upload): replace static S3_BUCKET with getS3Bucket() for dynamic config 2026-05-20 15:48:48 -04:00
users.js feat(mam-api): add users admin CRUD routes 2026-05-18 12:50:33 -04:00