CoS: open JOB-20260927-thornhill-closeout (Anthony gave job to Regis 11:31 PT)
This commit is contained in:
+51
@@ -0,0 +1,51 @@
|
||||
---
|
||||
id: JOB-20260927-thornhill-closeout
|
||||
project: thornhill-website
|
||||
surface: thornhillconstruction.net homepage + GBP/listings
|
||||
state: open
|
||||
owner: Regis (drafts/verifies); Anthony (Gatekeeper)
|
||||
gate: Anthony approves anything published/sent; Larry approves copy
|
||||
live_url: https://www.thornhillconstruction.net/
|
||||
live_read_at: 2026-09-27T11:33:44-07:00
|
||||
current_hash: sha256:bc227830a9c81432789056fd9c0d82f3bb8262f4543bc78f3fed500b9a661d8c
|
||||
proposed_hash: null
|
||||
evidence:
|
||||
- "CoS live read 2026-09-27 11:33:44 PT (curl, read-only, from Anthony's desktop DESKTOP-AEI8KMV; cloud-box HTTPS gets a TLS reset from the Hostinger/LiteSpeed host, plain HTTP answers). Hash = sha256 of homepage HTML after redirects (83,600 bytes); re-read 11:36:44 PT gave the same hash. Raw HTML not committed."
|
||||
- "Redirects: all four variants end 200 on https://thornhillconstruction.net/ (bare host is canonical; rel=canonical = bare). https://www -> 301 -> bare (1 hop); http://bare -> 301 -> https bare (1 hop); http://www -> 301 https://www -> 301 bare (2 hops); https://bare 200 (0 hops). Not broken. FLAG: live_url (www) is not the canonical host; GBP/listings should point at whichever host Anthony picks."
|
||||
- "Homepage head: title 'Thornhill Construction' (brand only, no service/place words); meta description present ('...dependable deck construction and repair, backed by attentive service, satisfied customer reviews, and direct contact with owner Larry.'). FLAG: zero og: tags on any page (home, /work/, /about/, /contact/). /work/, /about/, /contact/ have no meta description. Generator WordPress 7.1.2."
|
||||
- "Schema: 1 JSON-LD block on every page, @type GeneralContractor (a LocalBusiness subtype): name, url (bare), telephone +1-530-306-4629, email larry@thornhillconstruction.net, PostalAddress Placerville CA 95667 US (no street), areaServed 'El Dorado County', identifier 'CSLB #336956'. No openingHours, no image/logo, no sameAs."
|
||||
- "robots.txt 200 (via bare host): Disallow /wp-admin/, Allow admin-ajax, Sitemap https://thornhillconstruction.net/wp-sitemap.xml, plus a stray 'Allow: /llms.txt' after the Sitemap line. /sitemap.xml -> 301 -> /wp-sitemap.xml 200 (index -> wp-sitemap-posts-page-1.xml: /, /work/, /about/, /contact/). /sitemap_index.xml 404 (fine)."
|
||||
- "Lead path on site: phone 530-306-4629 (3 tel:+15303064629 links on home), mailto:larry@thornhillconstruction.net (1 on home). FLAG: NO <form> on the homepage (the 12 'wpcf7' hits there are CSS only). The Contact Form 7 form lives on /contact/ (form wpcf7-f33-p132-o1, 'Request a callback': name, phone, email required; message optional). Home links to /contact/ and #contact. Form DELIVERY NOT TESTED (read-only); still unverified. FLAG: /contact/ also prints 'Landline (530) 303-3950', but the interview says the landline should not be on site/ads."
|
||||
- "Trust/copy as found: hero 'Custom decks built to last in El Dorado County.' / 'Licensed 1976. One crew. No subcontractors.' / stat '57 years · CSLB #336956'. CSLB #336956 shows on every page (footer + JSON-LD). /about/: 'At 26, in 1976, I got my license', 'Licensed since 1976', 'These days I stick to decks: new work, repairs, stairs, railings.' FLAG: CSLB record says issued 1977-07-01 (status.md 2026-09-11)."
|
||||
- "Services on home: New decks; Repairs; Stairs & railings. FLAG vs interview 'decks only' (Larry to confirm)."
|
||||
- "Address/area: 'Placerville, CA 95667 · El Dorado County' in the footer; /contact/ 'Placerville, CA'; no street address anywhere. Hours: NONE on site or in schema (status.md says GBP shows Mon-Fri 9-5)."
|
||||
- "Portfolio: homepage has 6 <img>, all with alt text (hero, 'New deck', 'Stairs and metal railings', 'Deck before', 'Deck after', 'Larry Thornhill'). Only 1 before/after pair on home. /work/ has 3 projects (Deck, Stairs A, Stairs B), 6 before/after <img>, all with alt text ('Deck before' ... 'Stairs B after'). So 6 photos and 3 projects are there by count; not yet checked by eye on desktop or mobile. (status.md 2026-09-10 counted 11 images on the page; home now has 6.)"
|
||||
- "Copy note: homepage meta description says 'satisfied customer reviews', but status.md 2026-09-11 records GBP at zero reviews (Yelp had 2 five-star reviews per the interview). For Larry/Anthony."
|
||||
- "Background (not re-verified today): GBP exists (found by searching the phone number on Maps; do not create a duplicate), primary category Deck builder, Mon-Fri 9-5, no address, zero reviews. The Yelp wrong-number claim (530-344-1504) was WRONG: Yelp shows (530) 306-4629, Tony confirmed 2026-09-11. Source: thornhill-website/status.md."
|
||||
blocker: none
|
||||
---
|
||||
|
||||
# JOB-20260927-thornhill-closeout
|
||||
|
||||
what: Close out the Thornhill lane: prove the live site and listings are good enough to close. Regis verifies each item in group A against the live surface and reports in event files. Group B is for Larry to confirm; it does not block the close. One surface: thornhillconstruction.net homepage, plus GBP/listings that point at it.
|
||||
who: Regis drafts and verifies (reads the live site; drives and stops at login; never sends, submits, or saves). Anthony is Gatekeeper: runs the real lead-path tests, logs in, and approves anything published or sent. Larry approves public copy. CoS owns state and fact-checks against status.md, the interview, and this live read.
|
||||
done-when: every group A item is PASS with an evidence path, or WONT-DO by Anthony; the final desktop/mobile QA pass is saved; Tony approves the close in a gatekeeper event. CoS then writes the outcome and sets state to saved. Group B items still open at that point become WONT-DO/stand_down per the Phoenix lesson; they do not hold the close.
|
||||
|
||||
## A. Close blockers (Regis/Anthony can verify)
|
||||
|
||||
1. **Lead path, end to end.** Anthony (not Regis) places one call to 530-306-4629 and sends one email to larry@thornhillconstruction.net; confirm both reach Larry. Form: judge presence from the live read, not the old CF7 note. Live 11:33 PT: no form on the homepage; a CF7 form ('Request a callback') on /contact/. Anthony decides whether the homepage needs one. Anthony runs one test submission (Regis never submits) and confirms it arrives in Larry's inbox. Evidence: an event file with times and who confirmed.
|
||||
2. **Search/sharing basics.** Title and meta description on each page: home has both (title is brand only); /work/, /about/, /contact/ have no meta description. OG tags: none; add og:title/description/image/url. LocalBusiness schema: GeneralContractor present; consider openingHours/image once B is settled. robots.txt and sitemap: OK. HTTPS redirects for www and bare: all land 200 on the bare host. Pick the canonical host and make sure listings use it.
|
||||
3. **Portfolio.** At least 6 usable before/after photos, ideally 3 projects, all with alt text, checked on desktop and mobile. By count, /work/ meets this (3 projects, 6 images, all with alt). Still needed: a visual check of photo quality and layout on desktop and mobile, with screenshots saved.
|
||||
4. **Listings consistency.** GBP is the existing profile; do not create a new one. Check phone, website (canonical host), hours, service area, and services against the site. Then Yelp, Angi, and White Pages. Do not reopen the Yelp wrong-number claim; it was later found incorrect (Yelp shows 530-306-4629). Any listing edit is Anthony's login and Anthony's Save.
|
||||
5. **Final desktop/mobile QA pass saved.** Screenshots of home, /work/, /about/, /contact/ at desktop and mobile widths, plus a fresh current_hash. Evidence paths go in an event file.
|
||||
6. **Tony approval to close.** A gatekeeper event quoting Anthony.
|
||||
|
||||
## B. Larry-only (owner confirms; do NOT block close)
|
||||
|
||||
If Larry doesn't answer, Anthony may mark these WONT-DO or stand_down (Phoenix lesson 2026-09-27).
|
||||
|
||||
1. **Services scope.** The interview says 'decks only', but the site lists new decks, repairs, and stairs & railings (/about/ says 'stairs, railings'). Larry confirms.
|
||||
2. **License year wording.** The site says 'Licensed 1976' (hero, /about/ 'At 26, in 1976'), but the CSLB issue date is 1977-07-01. Also check the '57 years' stat, which counts from 1969. Larry picks the wording.
|
||||
3. **Service-area/address wording.** Currently 'Placerville, CA 95667 · El Dorado County', with no street address. Keep it that way unless Larry wants a street address. Also: is the landline (530) 303-3950 meant to appear on /contact/?
|
||||
4. **'One crew. No subcontractors.' and hours accuracy.** The line is on the homepage hero. The site shows no hours; GBP says Mon-Fri 9-5. Larry confirms both.
|
||||
5. **Larry approves the public copy.** This includes the meta description's 'satisfied customer reviews'.
|
||||
Reference in New Issue
Block a user