[object Object]

← back to Beverlyhillsvideos

films: fix CUT + Mastro's integration (had undefined slug -> proper cut/mastros files + all social formats); harden driver slug guard

80e43a0dd388a83f415931e614b74b5b834e7447 · 2026-08-05 19:17:59 -0700 · Steve Abrams

Files touched

Diff

commit 80e43a0dd388a83f415931e614b74b5b834e7447
Author: Steve Abrams <steve@designerwallcoverings.com>
Date:   Wed Aug 5 19:17:59 2026 -0700

    films: fix CUT + Mastro's integration (had undefined slug -> proper cut/mastros files + all social formats); harden driver slug guard
---
 data/films.json                             |  12 +++++++-----
 data/heygen-batch.jsonl                     |   4 ++--
 filmgen/heygen_batch.mjs                    |   1 +
 public/video/cut.jpg                        | Bin 0 -> 45109 bytes
 public/video/{undefined.jpg => mastros.jpg} | Bin
 public/videos.html                          |   8 ++++----
 6 files changed, 14 insertions(+), 11 deletions(-)

diff --git a/data/films.json b/data/films.json
index 8faa7c6..6ab4501 100644
--- a/data/films.json
+++ b/data/films.json
@@ -121,14 +121,16 @@
  {
   "name": "CUT by Wolfgang Puck",
   "blurb": "Inside the Beverly Wilshire, CUT is Wolfgang Puck's Michelin-starred modern steakhouse — the room…",
-  "src": "/video/undefined.mp4",
-  "poster": "/video/undefined.jpg"
+  "src": "/video/cut.mp4",
+  "poster": "/video/cut.jpg",
+  "slug": "cut"
  },
  {
   "name": "Mastro's Steakhouse Beverly Hills",
   "blurb": "On North Canon Drive, Mastro's is the steakhouse where Beverly Hills celebrates — live music, the…",
-  "src": "/video/undefined.mp4",
-  "poster": "/video/undefined.jpg"
+  "src": "/video/mastros.mp4",
+  "poster": "/video/mastros.jpg",
+  "slug": "mastros"
  },
  {
   "name": "Nozawa Bar",
@@ -347,4 +349,4 @@
   "src": "/video/xi-an.mp4",
   "poster": "/video/xi-an.jpg"
  }
-]
\ No newline at end of file
+]
diff --git a/data/heygen-batch.jsonl b/data/heygen-batch.jsonl
index d67334d..9fda081 100644
--- a/data/heygen-batch.jsonl
+++ b/data/heygen-batch.jsonl
@@ -1,6 +1,6 @@
 {"name":"Spago Beverly Hills","session_id":"27ab0fe429764112a47decaf1e42f22e","video_id":"eb53be3269ed4579865a0a38b5f2335c","status":"completed","integrated":true}
-{"name":"CUT by Wolfgang Puck","session_id":"df26bc4723474c11a2b3ec08d74909d2","video_id":"7b5ca4de01d44f9ea156c46c8deb1d13","status":"completed","duration":51.2,"downloaded":true,"est_cost":1.73}
-{"name":"Mastro's Steakhouse Beverly Hills","session_id":"fa9ff2f7f5444adb98e765d18d1056f5","video_id":"e923ad16427345e7ad84f0826c3544b6","status":"completed","duration":45.7,"downloaded":true,"est_cost":1.54}
+{"name":"CUT by Wolfgang Puck","session_id":"df26bc4723474c11a2b3ec08d74909d2","video_id":"7b5ca4de01d44f9ea156c46c8deb1d13","status":"completed","duration":51.2,"downloaded":true,"est_cost":1.73,"slug":"cut"}
+{"name":"Mastro's Steakhouse Beverly Hills","session_id":"fa9ff2f7f5444adb98e765d18d1056f5","video_id":"e923ad16427345e7ad84f0826c3544b6","status":"completed","duration":45.7,"downloaded":true,"est_cost":1.54,"slug":"mastros"}
 {"name":"Funke","slug":"funke","session_id":"05de31a9968241ef904cf38a9a082ce7","video_id":"32d03f1f16eb462aab10acdc3e96c4e4","status":"completed","downloaded":true,"duration":19.6,"est_cost":0.66}
 {"name":"Mr. Chow","slug":"mr-chow","session_id":"551d71d5c8564bcdb63ed9e4e407db7e","video_id":"fa5ab6c7766c4517ae5b9b690dbdf421","status":"completed","downloaded":true,"duration":20.6,"est_cost":0.69}
 {"name":"Il Pastaio","slug":"il-pastaio","session_id":"098a086e1584412fab98adb3934d641e","video_id":"91a3d292d7a14d5ba564ac09198d5a9b","status":"completed","downloaded":true,"duration":15.5,"est_cost":0.52}
diff --git a/filmgen/heygen_batch.mjs b/filmgen/heygen_batch.mjs
index 338515d..19a0c1c 100644
--- a/filmgen/heygen_batch.mjs
+++ b/filmgen/heygen_batch.mjs
@@ -81,6 +81,7 @@ function leadStart(raw) {
   return 0;
 }
 function download(r) {
+  if (!r.slug) r.slug = slug(r.name);          // ledger rows predating the driver lack a slug
   const raw = `${VIDEO_DIR}/${r.slug}-raw.mp4`;
   const mp4 = `${VIDEO_DIR}/${r.slug}.mp4`;
   sh(`heygen video download ${r.video_id} --output-path ${raw} --force`);
diff --git a/public/video/cut.jpg b/public/video/cut.jpg
new file mode 100644
index 0000000..1ad5d27
Binary files /dev/null and b/public/video/cut.jpg differ
diff --git a/public/video/undefined.jpg b/public/video/mastros.jpg
similarity index 100%
rename from public/video/undefined.jpg
rename to public/video/mastros.jpg
diff --git a/public/videos.html b/public/videos.html
index 91c5f21..e5729c4 100644
--- a/public/videos.html
+++ b/public/videos.html
@@ -164,14 +164,14 @@
         <figcaption><strong>Cipriani</strong><span>The Venetian legend arrives in Beverly Hills. Cipriani brings its Bellinis, its carpaccio, and its…</span></figcaption>
       </figure>
       <figure class="film">
-        <video controls preload="metadata" playsinline poster="/video/undefined.jpg">
-          <source src="/video/undefined.mp4" type="video/mp4">
+        <video controls preload="metadata" playsinline poster="/video/cut.jpg">
+          <source src="/video/cut.mp4" type="video/mp4">
         </video>
         <figcaption><strong>CUT by Wolfgang Puck</strong><span>Inside the Beverly Wilshire, CUT is Wolfgang Puck's Michelin-starred modern steakhouse — the room…</span></figcaption>
       </figure>
       <figure class="film">
-        <video controls preload="metadata" playsinline poster="/video/undefined.jpg">
-          <source src="/video/undefined.mp4" type="video/mp4">
+        <video controls preload="metadata" playsinline poster="/video/mastros.jpg">
+          <source src="/video/mastros.mp4" type="video/mp4">
         </video>
         <figcaption><strong>Mastro's Steakhouse Beverly Hills</strong><span>On North Canon Drive, Mastro's is the steakhouse where Beverly Hills celebrates — live music, the…</span></figcaption>
       </figure>

← 01ca9de films: integrate completed restaurant film(s) [auto]  ·  back to Beverlyhillsvideos  ·  auto-save: 2026-08-06T05:48:58 (1 files) — build.mjs 519176b →