Sample report · 6 Sep 2026

Scout run on scoutassurance.com

Same job we sell: Chromium + sitemap HTTP + human pass. This is our own small site, not a customer’s. Client sites are usually larger and produce more findings. Paid packs stay private. No invented score.

  • high Blocks a customer action
  • medium Breaks a flow or hides content
  • low Polish, accessibility or SEO
scoutassurance.comHuman-reviewed · $199-shaped pack

Executive verdict

The origin is small and shippable. Two medium product issues from the 6 Sep crawl (JavaScript-only homepage, empty 404) are closed in this pass. Colour contrast on the ice /report/ already passed axe 7/7. Remaining: no Content-Security-Policy, left as hardening because the admin UI cannot wear a global CSP.

4Chromium templates
5Sitemap URLs (4 probed OK)
~1.5hHuman vs a DIY afternoon
2Tickets closed this pass
fixed

Homepage first HTML was a JavaScript shell

Bots and no-JS clients never saw the offer or FAQ. Inner routes were already prerendered. Impact: crawlers indexed a title-only home; a buyer with JS off got a blank pitch.

Expected First HTML contains the H1 and offer.
Actual (6 Sep) ~3.5KB SPA shell.
Fix verification Prerender / the same way as inner routes. Confirm “Find what breaks” in the first response body without executing JS.
fixed

Unknown paths returned an empty 404

Caddy answered missing URLs with HTTP 404 and no body. Impact: a mistyped path was a blank tab — no nav, no way home, no ice page.

Expected 404 with the same nav/footer and a link home.
Actual (6 Sep) Empty body.
Fix verification Ice 404.html + Caddy handle_errors. Confirm the H1 “That page is not here.”
verified

Colour contrast on the old dark /report/

Axe had 4.31:1 on the previous dark kicker. The page was restyled to ice. Not billed as an open ticket.

Expected Text meets the contrast gate we run.
Actual Axe 7/7 on the ice report. Marked false positive for the current origin.
low

No Content-Security-Policy (hardening)

Present. Not billed as an owner bug: the admin UI cannot wear a global CSP, so the public site stays without one on purpose.

Homepage, desktop Chromium capture
/
Homepage, mobile Chromium capture
/ · 390×844
Previous /report/ capture before this sample layout
/report/ (prior template)

Coverage vs doing this yourself

Machine cover on this origin is four Chromium templates and five sitemap URLs (HTTP probe 4/4 on the locs the crawl queued). A DIY pass that opens those pages, greps the first HTML, and hits a junk path is maybe an hour. The billed work is the recorder: drop false positives, keep two product tickets, leave CSP as hardening. We do not invent a dollar amount “saved.”

Human pass — what we dropped

  • Stale recorder note “header phone is a placeholder” on the old scout-api.win host — not this homepage. Marked false positive.
  • Visual diffs vs an old Chamber baseline — redesign, not a product bug. Not a ticket.
  • Engine skipped /privacy/ and /login/ (legal/auth paths). Human opened both: ice pages, login noindex, form labelled. Not tickets.

Scope

Chromium opened home, /report/, /website-qa-audit/, /cases/scout/. Cap is 2,500 sitemap URLs and up to 30 Chromium templates — this origin is smaller. Thin cover in the machine pack is honest; the human pass still stands as the public sample.

Not a WCAG certificate, not a VPAT, not a monthly crawler. How we wrote the case · What a paid audit includes