← back to Wallco Ai
deploy durability: rooms survive deploys (DTD verdict C). deploy-kamatera.sh ships backfill-rooms.py+pil-room-composite.py (2d) + non-fatal post-health re-link step (5c) so every deploy re-links rooms from on-disk PNGs (heals the designs.json clobber instantly, $0); raise nightly cron default 150->5000 as daily backstop (re-link is instant now)
42b94d7d9ee34b3d3dd1dc06afead0da1baac340 · 2026-06-03 15:51:35 -0700 · Steve Abrams
Files touched
M deploy-kamatera.shM scripts/cron-backfill-rooms.sh
Diff
commit 42b94d7d9ee34b3d3dd1dc06afead0da1baac340
Author: Steve Abrams <steve@designerwallcoverings.com>
Date: Wed Jun 3 15:51:35 2026 -0700
deploy durability: rooms survive deploys (DTD verdict C). deploy-kamatera.sh ships backfill-rooms.py+pil-room-composite.py (2d) + non-fatal post-health re-link step (5c) so every deploy re-links rooms from on-disk PNGs (heals the designs.json clobber instantly, $0); raise nightly cron default 150->5000 as daily backstop (re-link is instant now)
---
deploy-kamatera.sh | 11 ++++++++++-
scripts/cron-backfill-rooms.sh | 4 +++-
2 files changed, 13 insertions(+), 2 deletions(-)
diff --git a/deploy-kamatera.sh b/deploy-kamatera.sh
index ed63cf6..ab731d7 100755
--- a/deploy-kamatera.sh
+++ b/deploy-kamatera.sh
@@ -107,7 +107,7 @@ rsync -az "$LOCAL_DIR/scripts/refresh_designs_snapshot.py" \
# for those features to work. List grows narrowly as endpoints add deps;
# don't unbox scripts/ wholesale.
echo "[2d/6] ship runtime-endpoint scripts..."
-for script in scripts/seam-defect-boxes.py scripts/mint-shopify-download-token.js scripts/generate_designs.js scripts/generator_tick.js scripts/seam-heal-feather.py scripts/quantize-no-ghost.py scripts/recolor-tif.py scripts/tif-to-web.py scripts/pilot-build-tifs.py scripts/cron-build-tifs.sh; do
+for script in scripts/seam-defect-boxes.py scripts/mint-shopify-download-token.js scripts/generate_designs.js scripts/generator_tick.js scripts/seam-heal-feather.py scripts/quantize-no-ghost.py scripts/recolor-tif.py scripts/tif-to-web.py scripts/pilot-build-tifs.py scripts/cron-build-tifs.sh scripts/backfill-rooms.py scripts/pil-room-composite.py scripts/cron-backfill-rooms.sh; do
if [ -f "$LOCAL_DIR/$script" ]; then
rsync -az "$LOCAL_DIR/$script" "$REMOTE:$REMOTE_DIR/$script" && echo " $script shipped"
fi
@@ -171,6 +171,15 @@ if [ "$STATUS" != "200" ]; then
exit 1
fi
+# 5c. Re-link room mockups. The main rsync above ships Mac2's designs.json over
+# prod's, which DROPS the prod-side room_mockups fields (data/rooms PNGs are
+# rsync-excluded so they survive — only the JSON pointer is lost). Without this,
+# every deploy blanks the "See it in a room" on thousands of live PDPs until a
+# nightly cron slowly heals it. Re-link is $0/instant (skip-if-exists reads the
+# on-disk PNGs, no re-render). Non-fatal (|| true) so it can NEVER break a deploy.
+echo "[5c/6] re-link room mockups from on-disk PNGs (heals the designs.json clobber)..."
+ssh "$REMOTE" "cd $REMOTE_DIR && python3 scripts/backfill-rooms.py --limit 5000 2>&1 | tail -3 || true"
+
# 6b. PDP theme smoke test — themes must be FULLY WIRED (Steve standing rule).
# Loads every theme variant + the v11 Wallpaper/Wall Mural toggle against the
# just-deployed site and asserts each control re-renders its dependent DOM.
diff --git a/scripts/cron-backfill-rooms.sh b/scripts/cron-backfill-rooms.sh
index 0ea76fd..abbdfae 100755
--- a/scripts/cron-backfill-rooms.sh
+++ b/scripts/cron-backfill-rooms.sh
@@ -12,5 +12,7 @@ exec 9>"$LOCK"
if ! flock -n 9; then echo "$(date '+%F %T') already running — skip" >>"$LOG"; exit 0; fi
echo "=== $(date '+%F %T') backfill-rooms start ===" >>"$LOG"
# Cap each run so a fresh batch can't peg the box; idempotent so it catches up over nights.
-python3 scripts/backfill-rooms.py --limit "${ROOM_BACKFILL_LIMIT:-150}" >>"$LOG" 2>&1
+# Re-link is now $0/instant (skip-if-exists), so a high default safely heals a
+# FULL deploy-clobber in one nightly run instead of ~19 nights at 150.
+python3 scripts/backfill-rooms.py --limit "${ROOM_BACKFILL_LIMIT:-5000}" >>"$LOG" 2>&1
echo "=== $(date '+%F %T') backfill-rooms done ===" >>"$LOG"
← a0a627a yolo ledger: T3 CNCP tree warmer [local-only]
·
back to Wallco Ai
·
YOLO ledger: T3 deploy-durability (rooms survive deploys, DT a340a82 →