Visual QA Baseline

NVSP Visual QA: Pre-Upstream Baseline

Queen (GID-21) · Northern California Solar Power (NVSP) · nvsp-rebuild.vercel.app

Captured 2026-05-24 26 pages scraped 20 screenshots Tool: Firecrawl v2 (per no-local-Playwright rule) Session: queen-baseline-20260524

Verdict at a glance

Verification
VISUAL
Shakespeare (GID-15)
REJECT
Frankie (GID-20)
REVISE
Tommy (GID-17)
REJECT
Ghost (GID-18)
REVISE
Brand constraints (em dash / stock photo / dark default)
PASS

This baseline ran before Shakespeare (content), Tommy (tech SEO + schema), and Frankie (frontend polish) shipped. None of those leads have posted delivery comments on their sub-issues. Mike said go, so the baseline is captured. Re-run after each upstream lands.

P0 defects (block public launch)

1. REJECT Placeholder copy still on all 15/15 city pages. Owner: Shakespeare (GID-15)

UNVERIFIED placeholder scenario, the local crew will replace this with a cleared [City] customer story before public launch.

Confirmed live on every city URL. This is the literal text Carlos flagged as the unblocker. The block sits in the "Local project snapshot" section just above the FAQ on each city page.

CityURLHits
Sacramentosacramento-ca1
Concordconcord-ca1
Auburnauburn-ca1
Antiochantioch-ca1
Chicochico-ca1
Danvilledanville-ca1
Davisdavis-ca1
Fairfieldfairfield-ca1
Grass Valleygrass-valley-ca1
Lodilodi-ca1
Pleasantonpleasanton-ca1
Rocklinrocklin-ca1
Stocktonstockton-ca1
Tracytracy-ca1
Yuba Cityyuba-city-ca1

2. REJECT Zero JSON-LD schema on any page. Owner: Tommy (GID-17)

Crawled all 26 key pages. Counted application/ld+json blocks in the rendered HTML. Zero schemas on every page. No LocalBusiness, no Service, no FAQ, no BreadcrumbList. This is Tommy's deliverable; nothing has landed.

3. REJECT /services/, /services/battery-storage/, and /locations/ are identical pages. Owner: Frankie (GID-20) + Tommy (GID-17)

All three routes render the same "Solar Service Areas Across Northern California" content (city grid). There is no actual battery storage service page. The same title is on all three:

<title>Solar Service Areas, 15 Northern California Cities | North Valley Solar Power</title> on /services/, /services/battery-storage/, AND /locations/.

This will cannibalize SEO rankings (canonical conflict) and break user trust when someone clicks Battery Storage and lands on a city list. Fix: either remove the orphan routes or build the real service pages.

4. REJECT /about/ page has no H1. Owner: Tommy (GID-17)

About page has only H2s. SEO basics fail. Likely a missing <h1> wrapper around "Built In Northern California, For Northern California".

P1 defects (fix before launch)

REVISE Brand-name reconciliation

Carlos's brief calls the business "Northern Valley Solar Power" (15 references in GID-9). The actual site uses "North Valley Solar Power" + NVSP consistently across home, about, contact, every city page, and the logo. The brief is wrong, not the site. Update Carlos's coordination brief so downstream agents stop typing the wrong name into copy and schema.

REVISE Footer is dark-themed

Mike's standing rule is "white default, dark is opt-in". The site is white in the hero, content, and CTA areas (PASS), but the footer is a dark navy block on every page. That's a common pattern and arguably fine for footers, but it's worth flagging because the standing rule is strict. Decision: ask Mike whether dark footers are acceptable under the "white default" rule. If not, Frankie inverts the footer.

What is working (PASS)

A11y observations

Screenshot evidence. Desktop 1280×900 (full page)

Home desktop
Homelive
Sacramento desktop
Sacramento (placeholder visible)live
Concord desktop
Concord (placeholder visible)live
Auburn desktop
Auburn (placeholder visible)live
Services desktop
/services/ (duplicate of /locations/)live
Services battery storage desktop
/services/battery-storage/ (duplicate)live
Products desktop
Productslive
Locations desktop
Locations indexlive
Contact desktop
Contactlive
Quote desktop
Get a Quotelive
Pricing desktop
Pricinglive
NEM 3.0 desktop
NEM 3.0live
About desktop
About (no H1)live
FAQ desktop
FAQlive

Screenshot evidence. Mobile 375×812 (full page)

Home mobile
Homelive
Sacramento mobile
Sacramentolive
Concord mobile
Concordlive
Auburn mobile
Auburnlive
Contact mobile
Contactlive
Quote mobile
Get a Quotelive

Per-lead next-action summary

LeadSub-issueVerdictWhat to fix before re-QA
ShakespeareGID-15REJECTKill UNVERIFIED snapshot text on all 15 city pages. Ship real stories, hide the block, or replace with a credible "coming soon" treatment.
TommyGID-17REJECTShip JSON-LD on city + service pages (LocalBusiness, Service, FAQ, BreadcrumbList). Add missing H1 on /about/. Decide canonical strategy for the /services/ vs /locations/ duplicate.
FrankieGID-20REVISEResolve the 3-way duplicate (/services/, /services/battery-storage/, /locations/). Decide on footer theme (light vs dark per Mike's standing rule). No other frontend defects visible yet.
GhostGID-18REVISENAP audit looks OK from text scrape (phone (916) 249-5223 and Sacramento HQ consistent), but full GMB schema work is still pending Tommy's schema deployment. Sync with Tommy on LocalBusiness ownership.
EinsteinGID-16N/A this passNot part of QA scope. Re-run after content + schema land.

How this baseline was captured