Fix page canonicals, 404 unknown case studies, remove dead art-style API - #21
Merged
Merged
Conversation
…e API
Every route without its own canonical inherited the homepage URL from the
root layout, so /craft, /os, /dossier, /privacy, /basketcase and the essays
all told search engines they were duplicates of the home page. The root
canonical is now relative ("./"), which resolves to each page's own path.
Unknown case-study slugs rendered a 200 "coming soon" page; they now 404
like essays already did. The sitemap derives essay routes from data and
includes /os and /quiz. The manifest shortcut points at /#projects instead
of the /projects redirect.
Removed the /api/artstyle routes and their shader/recipe libraries (no
caller since the Aug 2025 refactors), the App Router-ignored resume
head.tsx, tracked fallow caches and QA screenshots, and stale
optimizePackageImports and fallow entries. zod went with the API; @types/node
now matches the Node 24 engine.
The canon freshness gate warns instead of failing unless CANON_FEED_STRICT=1,
so a stalled feed cron cannot block deploying unrelated code. A CI workflow
runs the privacy scan, lint, typecheck and tests on pull requests.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Every page without its own canonical inherited the homepage URL from the root layout, so
/craft,/os,/dossier,/privacy,/basketcaseand all three essays told search engines they were duplicates of the home page (verified on the live site). The root canonical is now relative, so each page canonicalises to itself. Unknown case-study slugs returned a 200 "coming soon" page; they now 404 like essays already did.Also in this change:
/osand/quiz; the manifest shortcut no longer points at a redirect./api/artstyleroutes and their shader/recipe libraries (no caller since the August 2025 refactors, about 1,100 lines) and the resumehead.tsx, which the App Router ignores.zodwas only used there.optimizePackageImportsand fallow config entries.CANON_FEED_STRICT=1, so a stalled feed cron on the mini cannot block deploying unrelated code.@types/nodematches the Node 24 engine.Validation:
tsc,eslint(two pre-existing tolerated warnings remain), 41 tests, privacy scan andnext buildall pass. Ran the production build locally and confirmed correct canonicals on every route, 404 on unknown case-study slugs, and the new sitemap entries.Not in this PR: the companion change to the feed cron on the mini that stops timestamp-only commits (about 48 production deploys a day).