Improve Lighthouse Agentic Browsing readiness for aimloperations.com #5

Closed
opened 2026-07-02 03:59:27 -07:00 by westfarn · 0 comments
Owner

Context

Mobile Lighthouse audit run on 2026-07-02:
https://pagespeed.web.dev/analysis/https-aimloperations-com/sxrfnpnr3u?form_factor=mobile

Google added an Agentic Browsing category in Lighthouse 13.3.0 (May 2026) to measure whether AI agents can read, navigate, and act on a site. It is experimental (pass/fail checks, no 0–100 score) and is not yet shown in PageSpeed Insights — run locally with:

npx lighthouse@latest https://aimloperations.com \
  --only-categories=agentic-browsing \
  --chrome-flags="--enable-experimental-web-platform-features" \
  --output=html --output-path=agentic-browsing-report.html

References:

Related: #3 (sitemap + robots.txt — still open, no implementation yet)


Current gaps (codebase review)

1. Accessibility tree (highest priority)

Agents read the same accessibility tree as screen readers. A high Accessibility score does not guarantee a pass here.

  • Contact form (public/templates/public/contact.html): all fields use placeholder only — no <label> or aria-label. Agents cannot reliably identify name, email, subject, or message fields.
  • Legacy contact form (public/templates/public/index.html): same placeholder-only pattern if still served anywhere.
  • Services dropdown (public/templates/base.html): parent link uses href="#" — ambiguous target for agents/crawlers.
  • Cookie consent banner: verify dialog focus trap and button names are exposed in the accessibility tree after consent JS loads.
  • Run Lighthouse agentic-browsing on homepage and contact page; fix any additional ARIA/name/role failures flagged.

2. Machine-readable site discovery

  • Add robots.txt with sitemap reference and explicit allowance for AI crawlers where appropriate (overlaps #3).
  • Add dynamic sitemap.xml for all public marketing pages (overlaps #3).
  • Add llms.txt at site root: company summary, key service pages, contact URL, and preferred content for agents (per llmstxt.org spec: H1 title, brief description, markdown links).

3. Layout stability (CLS)

Agents that act on screenshots are sensitive to layout shifts after load.

  • Reserve space for Google Fonts (base.html preconnect is present; add font-display: swap and explicit fallback metrics or self-host Inter).
  • Hero canvas (new_index.html): ensure hero content does not shift when canvas initializes.
  • Trusted-by marquee: confirm logo track does not cause CLS on mobile.
  • Cookie consent banner: animate in without pushing main content unexpectedly.
  • Review field CLS in Search Console Core Web Vitals for post-load shifts Lighthouse lab tests may miss.

4. Semantic HTML & server-rendered content (mostly good)

  • Django server-rendered templates — core content in HTML, not JS-only.
  • Semantic landmarks: <nav>, <main>, <footer>, heading hierarchy on key pages.
  • Audit remaining public templates for unnamed interactive elements and missing alt text on content images.

5. WebMCP (defer — optional / experimental)

  • Not required now. Revisit when Chrome WebMCP support is stable and agents invoke site tools in production.
  • If pursued later, register high-value actions first: contact form submission, service page navigation/search.

Suggested implementation order

  1. Fix contact form labels + rerun agentic-browsing audit on /contact/.
  2. Ship robots.txt, sitemap.xml, and llms.txt (can close or fold into #3).
  3. Address CLS issues on homepage.
  4. Full pass across all public templates for accessibility-tree failures.
  5. Document baseline agentic-browsing report in repo or wiki for regression checks.

Acceptance criteria

  • npx lighthouse@latest --only-categories=agentic-browsing passes accessibility tree check on homepage and contact page.
  • https://aimloperations.com/llms.txt returns valid llms.txt per Lighthouse audit rules.
  • https://aimloperations.com/robots.txt and https://aimloperations.com/sitemap.xml are live and correct.
  • No new CLS regressions on mobile homepage (lab + field data reviewed).
  • Contact form fields have visible or screen-reader-accessible labels tied to each input.
## Context Mobile Lighthouse audit run on 2026-07-02: https://pagespeed.web.dev/analysis/https-aimloperations-com/sxrfnpnr3u?form_factor=mobile Google added an **Agentic Browsing** category in Lighthouse 13.3.0 (May 2026) to measure whether AI agents can read, navigate, and act on a site. It is experimental (pass/fail checks, no 0–100 score) and is **not yet shown in PageSpeed Insights** — run locally with: ```bash npx lighthouse@latest https://aimloperations.com \ --only-categories=agentic-browsing \ --chrome-flags="--enable-experimental-web-platform-features" \ --output=html --output-path=agentic-browsing-report.html ``` References: - https://locomotive.agency/blog/lighthouse-agentic-browsing-audit/ - https://www.tryvizup.com/blog/lighthouse-agentic-browsing - https://llmstxt.org/ Related: #3 (sitemap + robots.txt — still open, no implementation yet) --- ## Current gaps (codebase review) ### 1. Accessibility tree (highest priority) Agents read the same accessibility tree as screen readers. A high Accessibility score does not guarantee a pass here. - [ ] **Contact form** (`public/templates/public/contact.html`): all fields use `placeholder` only — no `<label>` or `aria-label`. Agents cannot reliably identify name, email, subject, or message fields. - [ ] **Legacy contact form** (`public/templates/public/index.html`): same placeholder-only pattern if still served anywhere. - [ ] **Services dropdown** (`public/templates/base.html`): parent link uses `href="#"` — ambiguous target for agents/crawlers. - [ ] **Cookie consent banner**: verify dialog focus trap and button names are exposed in the accessibility tree after consent JS loads. - [ ] Run Lighthouse agentic-browsing on **homepage** and **contact page**; fix any additional ARIA/name/role failures flagged. ### 2. Machine-readable site discovery - [ ] Add `robots.txt` with sitemap reference and explicit allowance for AI crawlers where appropriate (overlaps #3). - [ ] Add dynamic `sitemap.xml` for all public marketing pages (overlaps #3). - [ ] Add `llms.txt` at site root: company summary, key service pages, contact URL, and preferred content for agents (per llmstxt.org spec: H1 title, brief description, markdown links). ### 3. Layout stability (CLS) Agents that act on screenshots are sensitive to layout shifts after load. - [ ] Reserve space for **Google Fonts** (`base.html` preconnect is present; add `font-display: swap` and explicit fallback metrics or self-host Inter). - [ ] **Hero canvas** (`new_index.html`): ensure hero content does not shift when canvas initializes. - [ ] **Trusted-by marquee**: confirm logo track does not cause CLS on mobile. - [ ] **Cookie consent banner**: animate in without pushing main content unexpectedly. - [ ] Review field CLS in Search Console Core Web Vitals for post-load shifts Lighthouse lab tests may miss. ### 4. Semantic HTML & server-rendered content (mostly good) - [x] Django server-rendered templates — core content in HTML, not JS-only. - [x] Semantic landmarks: `<nav>`, `<main>`, `<footer>`, heading hierarchy on key pages. - [ ] Audit remaining public templates for unnamed interactive elements and missing `alt` text on content images. ### 5. WebMCP (defer — optional / experimental) - [ ] **Not required now.** Revisit when Chrome WebMCP support is stable and agents invoke site tools in production. - [ ] If pursued later, register high-value actions first: contact form submission, service page navigation/search. --- ## Suggested implementation order 1. Fix contact form labels + rerun agentic-browsing audit on `/contact/`. 2. Ship `robots.txt`, `sitemap.xml`, and `llms.txt` (can close or fold into #3). 3. Address CLS issues on homepage. 4. Full pass across all public templates for accessibility-tree failures. 5. Document baseline agentic-browsing report in repo or wiki for regression checks. --- ## Acceptance criteria - [ ] `npx lighthouse@latest --only-categories=agentic-browsing` passes **accessibility tree** check on homepage and contact page. - [ ] `https://aimloperations.com/llms.txt` returns valid llms.txt per Lighthouse audit rules. - [ ] `https://aimloperations.com/robots.txt` and `https://aimloperations.com/sitemap.xml` are live and correct. - [ ] No new CLS regressions on mobile homepage (lab + field data reviewed). - [ ] Contact form fields have visible or screen-reader-accessible labels tied to each input.
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: ai_ml_operations/company_site#5