← back to Homesonspec
docs(homesonspec): record completed 13-brand CPG roster + corrected authoritative list (TK-10487)
c3626f010aa97ebfa8ce42b83c6cb4e2bc72736c · 2026-08-30 23:14:54 -0700 · Steve
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Files touched
Diff
commit c3626f010aa97ebfa8ce42b83c6cb4e2bc72736c
Author: Steve <steve@designerwallcoverings.com>
Date: Sun Aug 30 23:14:54 2026 -0700
docs(homesonspec): record completed 13-brand CPG roster + corrected authoritative list (TK-10487)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
---
collectors/BUILDERS.md | 33 +++++++++++++++++++++++++++++++++
1 file changed, 33 insertions(+)
diff --git a/collectors/BUILDERS.md b/collectors/BUILDERS.md
index b376cc21..b95b1acd 100644
--- a/collectors/BUILDERS.md
+++ b/collectors/BUILDERS.md
@@ -217,6 +217,39 @@ Chafin's 8 community-page fixtures yield 40+ distinct inventory homes with hones
absent sqft/geo. All are facts-only (`mediaRights=NONE`). Seed execution, activation, ingest, deploy,
and DNS remain explicitly gated and were not performed.
+# 2026-08-30 (TK-10487) — CPG per-brand builders COMPLETE (13/13) + AUTHORITATIVE ROSTER
+
+The speculative brand list above ("elite-built, berkeley, your-arbor…") was CORRECTED against the
+authoritative source (claytonhomebuildinggroup.com/clayton-properties-group). The real CPG site-built
+roster is **13 brands**, and ALL now have worker-registered collectors (whole-workspace typecheck exit 0):
+
+| brand | slug/key | source / status source | committed self-test |
+|---|---|---|---|
+| Goodall Homes | goodall-homes-site | React SSR JSON-LD + HomeDetails DOM | ✅ vitest (14 fixtures) |
+| Brohn Homes | brohn-homes-site | WordPress SSR DOM | live-verified (no committed fixtures) |
+| Oakwood Homes | oakwood-homes-site | Nuxt3 devalue → KOVA ERP | live-verified (no committed fixtures) |
+| Summit Homes (KC) | summit-homes-kc-site | React SSR JSON-LD + HomeOverview | live-verified (no committed fixtures) |
+| Mungo Homes | mungo-homes-site | sitemap → JSON-LD SingleFamilyResidence | ✅ vitest (8 fixtures) |
+| Chafin Communities | chafin-communities-site | community pages → per-home cards | ✅ vitest (8 fixtures → 75 homes) |
+| Harris Doyle Homes | harris-doyle-site | JSON-LD Org + DOM + **dataLayer** (community/city/state) | ✅ vitest (14 fixtures) |
+| Legacy Homes | legacy-al-site | (concurrent session build) | ✅ vitest (4) |
+| Arbor Homes | arbor-site | **yourarborhome.com** (NOT arborhomes.com=Oregon namesake) JSON-LD | ✅ vitest (12 fixtures) |
+| Silverthorne Homes | silverthorne-site | Arbor's luxury sister; JSON-LD; `--compressed` | ✅ vitest (1 real home, snapshot-pinned) |
+| Elite Homes | elite-homes-site | JSON-LD + **Carousel_h2Lead status banner** | ✅ vitest (10 fixtures) |
+| Berkeley Building Co. | berkeley-building-site | Boise ID; JSON-LD + **self-card exact-path status** | ✅ vitest (12 fixtures) |
+| Highland Homes (FL) | highland-homes-fl-site | highlandhomes.**org** (concurrent; distinct from TX `highland-homes`=highlandhomes.**com**) | ✅ vitest (4) |
+
+Key lesson (every real bug traced to it): **read the source's own machine-readable truth (JSON-LD /
+dataLayer / status banner / the home's own grid card), not its rendering.** Real defects caught +
+fixed by the DTD→Cody→verify loop: mungo (0 homes, wrong site model), chafin (0 homes regex +
+fabricated 32.5-bath + `??`/`?:` dedupe-key bug), harris-doyle (dead entity-encoded regex →
+mis-cased community), elite (8/10 wrong-null status), arbor (wrong-company Oregon build discarded).
+
+REMAINING (all GATED, drafted to pending-approval): CPG seed run, per-adapter ingest, activation,
+images, deploy. NON-GATED polish outstanding: committed fixture-backed selftests for the 3 batch-1
+collectors (brohn/oakwood/summit) that are typecheck-clean + live-verified but lack them (backfill
+attempted 2026-08-30 but blocked by a transient Anthropic API rate-limit; retry in a fresh session).
+
Harris Doyle is now fixture-backed and locally registered. Fourteen AL/FL detail fixtures produce
distinct addresses and builder inventory IDs with complete core facts; status comes only from the
explicit first-party `dataLayer.pageType` signal, while absent geo/stories remain honest nulls.
← bab4fd97 ops(homesonspec): read-only offload PREFLIGHT GO/NO-GO — des
·
back to Homesonspec
·
docs(homesonspec): wire offload-preflight as mandatory step- 7fd3d9fe →