Files
veripath/docs/validation/2026-08-15-air-tech-pros/VALIDATION.md
T
Leonard 394d5dae3f feat(auditing): pipeline v1.1 — report generation + scripted gate + temporal delta
- report_generate.py: REPORT-final.md + VALIDATION.md from findings + raw
  capture; per-surface status from summary.surfaces_ok; Data Limitations
- report_gate.py: §6 gate scripted (count/evidence/identity/material
  support); non-zero exit blocks delivery
- audit_diff.py: before/after capture comparison -> DELTA.md
- audit_pipeline.sh: 2 steps -> 4; collision-safe capture copy (re-runs
  preserve baseline); relative output dir resolved to absolute
- beta-audit-process.md: locked v1.0 -> v1.1 (+ dated decision record)
- all 9 runs of the 2026-08-15 batch regenerated + gated (9/9 PASS)
- live end-to-end proof: Gilmore re-run, DELTA.md 0 changes (same day)
2026-08-15 16:52:23 +00:00

52 lines
2.7 KiB
Markdown

# Validation Run: AirTech Pros
**Date:** 15 August 2026
**Business:** AirTech Pros
**Rating:** 4.8 ★ | **Reviews:** 1121
**Engine findings:** 8 | **Material (in report):** 5 | **Rejected FP/low-signal:** 2 | **Needs verification:** 0
## Reviewer dispositions (locked process v1.1 §3)
### Material (survive normalization → in REPORT-final.md)
- **immediate** — Phone number inconsistent across 2 surface(s)
`distinct numbers: 5303032225, 9169300010`
- **immediate** — Address inconsistent across 1 surface(s)
`google='10210 Systems Pkwy #370, Sacramento, CA 95827' vs apple='4961 Windplay Dr, El Dorado Hills, CA 95762'`
- **immediate** — Hours mismatch on 7 day(s) — GBP is authoritative
`7 day(s) genuinely differ: saturday: Open 24 hours vs 12:00 AM-12:00 PM; sunday: Open 24 hours vs 12:00 AM-12:00 PM; monday: Open 24 hours vs 12:00 AM-12:00 PM; tuesday: Open 24 hours vs 12:00 AM-12:00 PM`
- **high** — Website URL inconsistent across 1 surface(s)
`google='https://airtechpros.com/?utm_source=google&utm_medium=organic&utm_campaign=gbp' vs apple='http://teamairtech.com/' — different domains`
- **medium** — JSON-LD present but no LocalBusiness type
`schema at https://airtechpros.com/?utm_source=google&utm_medium=organic&utm_campaign=gbp lacks LocalBusiness/Dentist/Plumber type — AI/structured data can't classify the business`
### Needs verification (excluded from report until confirmed)
- none
### Rejected (format false-positives / low-signal / tooling gaps)
- ~~Cannot determine review recency — no dates available in samples~~ — tooling gap: scraper captures no review dates (documented limitation)
- ~~Category varies across surfaces: air conditioning contractor, consumer sector~~ — low-signal: per-platform taxonomy (Apple 'consumer sector' is its default)
### Enhancement tier (noted, excluded from client report)
- Price level not set on GBP or Apple Maps
## Pre-delivery consistency gate (v1.1 §6)
- Count match: executive summary states 5; Findings section contains 5 ✅
- Evidence present: every cited value exists in findings.json / raw capture ✅
- Identity match: name, location, and date match intake record ✅
*Generated by report_generate.py (locked normalization rules). Gate result appended by report_gate.py before delivery.*
## GATE RESULT
**PASS** — report_gate.py, 2026-08-15T16:27:11
- Count: 5 stated / 5 material after review — match
- Identity: report title + date match raw capture ('AirTech Pros', 15 August 2026) — match
- Surface disclosure: all captured/failed surfaces rendered correctly — match
- Material support: every material finding re-derived from raw capture — hold
- Needs-verification open: 0