Keep made-up article paths out of the index

Fixkamo-marketing
Shipped
September 2, 2026 at 2:54 AM UTC
Author
Kamo
Commit
f7e2540

The canonical check already stops a wrong path rendering the article -- it serves the not-found page instead. What it cannot do is change the status code: this route streams, the (pages) loading boundary flushes the shell before the component runs, and by the time notFound() is reached the 200 has gone out. So a crawler sees 200 for every invented path under /help-center and would index each one: the same duplicate content the check exists to prevent, arriving through the status line instead of the body. noindex in generateMetadata says the same thing to a crawler that a 404 would, and says it in the head, which is emitted before the boundary flushes. The streaming boundary itself is left alone -- it is a deliberate performance choice, and this is the smaller correction.

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing