[object Object]

← back to Homesonspec

build-loop: add Dream Finders to the throttled sweep rotation + reactivation roster (recovered adapter)

0fbdefeb17ae3274e479c91a1b6c6a7661d17655 · 2026-07-29 07:21:56 -0700 · Steve Abrams

Files touched

Diff

commit 0fbdefeb17ae3274e479c91a1b6c6a7661d17655
Author: Steve Abrams <steve@designerwallcoverings.com>
Date:   Wed Jul 29 07:21:56 2026 -0700

    build-loop: add Dream Finders to the throttled sweep rotation + reactivation roster (recovered adapter)
---
 scripts/build-loop.sh | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/scripts/build-loop.sh b/scripts/build-loop.sh
index c5b80980..36c0a7b8 100644
--- a/scripts/build-loop.sh
+++ b/scripts/build-loop.sh
@@ -129,6 +129,10 @@ sweep_fulton()  { FULTON_PAGE_LIMIT=5    CLI fulton-homes-site      | sed "s/^/
 sweep_gl()      { GL_PAGE_LIMIT=60       CLI gl-homes-site          | sed "s/^/  gl  REGIONAL: /"; }
 # Fischer = region API + one detail-page GET PER HOME (OH/KY/IN/GA/MO, many requests) — throttle w/ heavy crawlers.
 sweep_fischer() { FISCHER_PAGE_LIMIT=20  CLI fischer-homes-site     | sed "s/^/  fis REGIONAL: /"; }
+# Dream Finders = national sitemap-specs feed, one spec-page GET per home (many GETs) — throttle.
+# Extracts own-home price/beds/sqft + geo from each page's ld+json (fixed 2026-07-29). Honest-null
+# where a page lacks its own home in ld+json.
+sweep_dreamfinders() { DREAMFINDERS_PAGE_LIMIT=600 CLI dream-finders-site | sed "s/^/  df  NATIONAL: /"; }
 
 # metro-iterating adapters (footprint = METROS, not states) — scoped to served metros only
 # (Cody WAF-lesson from the start). Ashton Woods publishes per-metro quick-move-in homes.
@@ -148,7 +152,7 @@ while pgrep -f "cli.ts --adapter" 2>/dev/null | grep -qv "^$$\$"; do sleep 20; d
 # a transient failure shouldn't permanently sideline a chosen builder, and genuine breakage is
 # surfaced by the dashboard's per-source failed_runs + the freshness canary (not silent). To
 # retire a builder, remove it from THIS list (don't rely on auto-pause surviving a restart).
-for k in dr-horton-site kb-home-site pultegroup-site tri-pointe-site lennar-site toll-brothers-site david-weekley-site taylor-morrison-site ashton-woods-site discovery-homes-site meritage-homes-site ryan-homes-site highland-homes-site landsea-homes-site shea-homes-site lgi-homes-site century-communities-site beazer-site drees-homes-site perry-homes-site brookfield-site holt-homes-site fulton-homes-site gl-homes-site fischer-homes-site; do
+for k in dr-horton-site kb-home-site pultegroup-site tri-pointe-site lennar-site toll-brothers-site david-weekley-site taylor-morrison-site ashton-woods-site discovery-homes-site meritage-homes-site ryan-homes-site highland-homes-site landsea-homes-site shea-homes-site lgi-homes-site century-communities-site beazer-site drees-homes-site perry-homes-site brookfield-site holt-homes-site fulton-homes-site gl-homes-site fischer-homes-site dream-finders-site; do
   PSQL "update \"SourceRegistry\" set active=true, health='HEALTHY', \"consecutiveFailures\"=0 where key='$k';" >/dev/null
 done
 
@@ -171,7 +175,7 @@ while [ ! -f "$STOP" ] && [ "$sweep" -lt "$MAX_SWEEPS" ]; do
   sweep_fulton      &
   sweep_gl          &
   # heavy crawlers: throttled to every 4th sweep (hundreds of GETs each, slow-changing data)
-  if [ $((sweep % 4)) -eq 1 ]; then sweep_lgi & sweep_century & sweep_beazer & sweep_drees & sweep_holt & sweep_fischer & fi
+  if [ $((sweep % 4)) -eq 1 ]; then sweep_lgi & sweep_century & sweep_beazer & sweep_drees & sweep_holt & sweep_fischer & sweep_dreamfinders & fi
   sweep_adapter drh &
   sweep_adapter plt &
   sweep_adapter tri &

← 6a68cd77 lennar: Mac-side fetch->Kamatera image apply (routes around  ·  back to Homesonspec  ·  lennar: durable Mac-side refresh runner (keepalive tunnel + e70a69b5 →