---
title: Deleted the eight legacy top-level routes; 308s now guarded by a spec
description: Deleted the eight pre-Fardin-Docs top-level routes — about, work, blog, contact, uses, failures, for-ai, interview — 2,298 lines gone. The 308 redirects in next.config.ts cover every legacy URL, and a Playwright spec asserts they still land on the right /docs/* target.
section: meta
tags: [meta, changelog, routing, cleanup, redirects, next-config, adr-021, playwright]
genre: index
lastUpdated: 2026-04-23
url: https://fardiniqbal.com/docs/changelog/2026-04-23-deleted-legacy-route-folders
---


The site used to have eight top-level HTML routes — `/about`, `/work`, `/work/[slug]`, `/blog`, `/blog/[slug]`, `/contact`, `/uses`, `/failures`, `/for-ai`, `/interview` — each a hand-built page with its own layout, TOC, and data wiring. Fardin Docs superseded all of them months ago; the URLs have been 308-ing to `/docs/*` since ADR-021 landed. The folders were dead weight sitting in `src/app/`, still building, still in my editor's fuzzy-finder, still tempting me to "just tweak the about page real quick" instead of editing the MDX that actually renders.

Deleted all seventeen files — 2,298 lines gone. The `permanent: true` redirects in `next.config.ts` keep every legacy URL alive indefinitely (Next issues a 308, which search engines and agents both honor). `tests/e2e/legacy-redirects.spec.ts` now walks every old URL and asserts it lands on the right `/docs/*` target, so the redirects can't silently rot. The `.md` AI surfaces (`about.md`, `work.md`, `blog.md`, `contact.md`) stay — only the HTML routes were superseded. The app router tree is finally honest about where content lives.
