Add per-page titles, meta descriptions, Open Graph/Twitter tags, and canonical URLs on public base2.html pages
Improve semantic structure: skip link, primary nav ARIA, single <main id="main-content">, heading hierarchy, descriptive image alts
Publish /robots.txt, /sitemap.xml, and /llms.txt (linked from site head via rel="alternate")
Agentic/a11y fixes: membership checkbox label associations, ZIP name attribute, layout stability (image aspect-ratio / min-height), footer year without document.write
WebMCP deferred — membership + Stripe checkout remain standard HTML/Stripe flows; no audit flag justified custom MCP surface yet
Lighthouse / agentic notes
Baseline Lighthouse runs still need Chrome Canary export on staging/prod. Structural SEO/a11y items from the ticket are implemented so follow-up audits can capture before/after scores.
Expected audit wins vs prior minimal charset+viewport head:
Spot-check Home/About/Calendar/Dues/Membership/Board/Links in browser
Confirm /robots.txt, /sitemap.xml, /llms.txt on deployed host
Run Lighthouse SEO + Agentic browsing on key pages and note before/after pass ratio on the issue
## Summary
Closes #18.
- Add per-page titles, meta descriptions, Open Graph/Twitter tags, and canonical URLs on public `base2.html` pages
- Improve semantic structure: skip link, primary nav ARIA, single `<main id="main-content">`, heading hierarchy, descriptive image alts
- Publish `/robots.txt`, `/sitemap.xml`, and `/llms.txt` (linked from site head via `rel="alternate"`)
- Agentic/a11y fixes: membership checkbox label associations, ZIP `name` attribute, layout stability (image aspect-ratio / min-height), footer year without `document.write`
- WebMCP deferred — membership + Stripe checkout remain standard HTML/Stripe flows; no audit flag justified custom MCP surface yet
## Lighthouse / agentic notes
Baseline Lighthouse runs still need Chrome Canary export on staging/prod. Structural SEO/a11y items from the ticket are implemented so follow-up audits can capture before/after scores.
Expected audit wins vs prior minimal `charset`+`viewport` head:
- SEO: unique titles/descriptions, crawl directives, sitemap
- Agentic/a11y: landmarks, labels, CLS-oriented image sizing
## Test plan
- [x] `uv run python manage.py test schasite` (34 passed)
- [ ] Spot-check Home/About/Calendar/Dues/Membership/Board/Links in browser
- [ ] Confirm `/robots.txt`, `/sitemap.xml`, `/llms.txt` on deployed host
- [ ] Run Lighthouse SEO + Agentic browsing on key pages and note before/after pass ratio on the issue
Add per-page titles/meta/Open Graph, semantic landmarks, robots/sitemap/llms.txt, and accessibility fixes so humans and agents can discover and navigate the site reliably.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
Closes #18.
base2.htmlpages<main id="main-content">, heading hierarchy, descriptive image alts/robots.txt,/sitemap.xml, and/llms.txt(linked from site head viarel="alternate")nameattribute, layout stability (image aspect-ratio / min-height), footer year withoutdocument.writeLighthouse / agentic notes
Baseline Lighthouse runs still need Chrome Canary export on staging/prod. Structural SEO/a11y items from the ticket are implemented so follow-up audits can capture before/after scores.
Expected audit wins vs prior minimal
charset+viewporthead:Test plan
uv run python manage.py test schasite(34 passed)/robots.txt,/sitemap.xml,/llms.txton deployed host