Documents what a Next.js catch-all route cannot serve: <base>.json is a sibling of the base path rather than a child, so the catch-all never sees it and the documented index path silently falls through to whatever else matches. Use <base>/index.json, or give the JSON path its own route. Also notes that calling the exported GET directly in a test bypasses the router that makes this decision. Docs only.