# Validation Run: Crystal Blue Plumbing Heating & Air **Date:** 2026-08-14 **Business:** Crystal Blue Plumbing Heating & Air **Location:** Placerville, CA (search) — resolved to Loomis, CA (same metro) **Vertical:** Plumbing / HVAC (GTM-aligned) **Run context:** Post-fix A validation — GBP entity-match gate + phone glyph strip. ## Purpose Prove the GBP scraper no longer ingests a wrong entity and that phone/address PUA glyphs (`\ue0b0` map-pin) are stripped before the contract is built. ## Surface Results | Surface | Status | Notes | |---------|--------|-------| | Google Business Profile | ⚠️ Rejected | This run the gate rejected GBP's matched entity (`name="Hours"`) and fell back to Apple. No glyph pollution. | | Apple Maps | ✅ Good | Primary source: full NAP, 4.2★/65, hours, website, phone `(916) 571-6448` — glyph-stripped. | | Bing Places | ❌ Failed | No data returned (known gap). | | Website | ❌ Failed | HTTP 403 (crystalblueplumbing.com) — distinct from "no website". | ## Fix Verification (Step #2) - **Phone glyph:** raw GBP/Apple phone fields contained a leading `\ue0b0` (BMP Private-Use-Area map-pin). Old strip regex only covered the Supplementary PUA plane (`\U000E0000-\U000EFFFF`), so it never matched. New regex `[\ue000-\uf8ff\U000E0000-\U000EFFFF]` strips both planes. Confirmed clean: phone `'(916) 571-6448'` — `glyph? False`. - **Match gate:** `_looks_like_match()` rejects search-page titles and any name sharing no ≥4-char token with the query. Crystal Blue's `name="Hours"` was rejected; `RK Mechanical Air Services Inc.` (Aire Serv probe) was also rejected. No false positives. ## Key Findings Engine produced findings from the merged contract (Apple primary). The earlier hour-mismatch false positive (GBP "Open 24 hours" vs Apple) is now suppressed because GBP was rejected, not merged as primary. ## Reliability - Scraper ran to completion, no crash, valid JSON. ✅ - Engine produced findings.json + findings.md. ✅ - GBP entity gate engaged correctly. ✅ - Apple fallback path produces glyph-clean phone. ✅ ## Artifacts - `crystal_blue_plumbing_heating__air_multi_surface_2026-08-14.json` — raw scrape - `findings.json` — engine output - `findings.md` — markdown report - `VALIDATION.md` — this file ## Verdict Pipeline is production-usable for the next real audits. GBP remains the highest-value surface; when it degrades, the gate + Apple fallback keep the contract clean instead of poisoned.