What problem does it solve? Intercepting requests at the platform level before the cache is confusing because Vercel has three overlapping "middleware" concepts, and choosing the wrong one leads to runtime errors, deprecated patterns, or security gaps like the CVE-2025-29927 auth bypass. ## Core Features & Use Cases - Middleware Disambiguation: Clarifies the differences between Vercel Routing Middleware (middleware.ts), Next.js 16 Proxy (proxy.ts), and Edge Functions so you pick the right interception layer. - Request Interception Patterns: Provides working examples for geo-personalization, A/B testing with Edge Config, header injection, IP detection, and background processing with waitUntil. - Runtime & Routing Configuration: Covers Edge, Node.js, and Bun runtimes, matcher scoping, project-level routes without redeploys, and programmatic config via vercel.ts and @vercel/config. - Use Case: You want to serve a different homepage variant to US visitors without redeploying. Use this Skill to write a middleware.ts that reads geolocation and rewrites the URL before the cache. ## Quick Start Write a Vercel routing middleware that redirects users based on their country using geolocation.