Fix: Negotiated responses carry Vary Accept, User-Agent
Web-audit fix skill for the
markdown-varycheck (Content for agents, SHOULD).
Goal
Emit Vary Accept, User-Agent so shared caches never serve one client the wrong variant.
Fix
When the same URL serves HTML or markdown depending on the request, emit Vary: Accept, User-Agent on every response. Without it a shared cache (a CDN or a corporate proxy) can store the markdown twin under the bare URL and then hand it to a browser, or vice versa. Listing both request headers you negotiate on tells every cache to key its stored copies by them, so each client class gets the variant it asked for. If the CDN ignores or strips Vary (Cloudflare's zone cache historically keeps only Accept-Encoding), do not give that cache a long s-maxage on negotiated responses — otherwise HIT replies reach clients with no Vary and the check still fails.
Resources
Copy-paste prompt
Paste this into your coding agent. Your audit adds what it observed for this check:
Verify
Re-run the audit at https://anc.dev/audit or call the audit_website MCP tool; the markdown-vary check should report pass.