Skip to content

Remove orphaned pages and fix accidental context-warehouse routes - #19504

Draft
ianmatson wants to merge 3 commits into
masterfrom
worktree-remove-dead-routes
Draft

Remove orphaned pages and fix accidental context-warehouse routes#19504
ianmatson wants to merge 3 commits into
masterfrom
worktree-remove-dead-routes

Conversation

@ianmatson

@ianmatson ianmatson commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

Removes dead routes identified by tracing the import graph and the internal link graph, then cross-checking against 90 days of pageviews. Every page removed here was at crawler-level traffic (8–29 views per quarter).

Deleted pages

Route Views (90d) Why
/questions/topic/max 8 Superseded by /questions/topic/ai
/event-comparison 9 No entry point anywhere
/community/latest 19 Not reachable from the community nav
/flurry-migration 13 Flurry shut down in 2025
/old-home 29 Previous homepage, kept after the rebuild

Redirects

From To Status
/questions/topic/max /questions/topic/ai 301
/community/latest /community 301
/old-home / 301

Added at the top of the redirects array, since vercel.json matches top-down and takes the first hit.

/event-comparison and /flurry-migration get no redirect and will 404 — that was the call on the audit, since neither has a successor page.

Accidental routes

CDPDiagram.tsx, FeatureTable.tsx and dw-installation-platforms.tsx were React components living in src/pages/context-warehouse/, so Gatsby's file-system routing published each one as a public route.

  • CDPDiagram had no importers → deleted.
  • FeatureTable (used by business-intelligence and posthog-ai) and DWInstallationPlatforms (used by sources) → moved to src/components/ContextWarehouse/. Same components, no accidental pages.

Orphaned components

Deleting the pages above left two components with no importers, both now removed:

  • components/ContactSales/Contact.tsx (391 lines) — a legacy formik + HubSpot contact form. ContactSales/index.tsx, which every live caller uses, renders SalesforceForm and never imported this file.
  • components/Home/Index.tsx (23 lines) — a stub whose own copy read test. @todo i think this is old?.

The import graph was re-run afterwards; no further files were orphaned.

Also

Drops old-home and data-stack/dw-installation-platforms from the Algolia exclusion patterns in gatsby/algoliaConfig.js, since neither route exists now.

Notes for review

  • /questions/topic/ai is worth a spot-check on preview. It resolves via the {SqueakTopic.slug} collection route and topicIcons carries a 'posthog ai' entry, so the topic node should exist — but the link is moderator-gated in useTopicsNav, so it only drew 2 views in 90 days and I could not confirm it renders without a build. /questions is the safe fallback if it 404s.
  • /code/open was on the delete list but is left in place. It is not a content page: it reads ?to= and hands off to posthog-code:// to launch PostHog Desktop, which a redirect cannot replicate.
  • components/CustomerLogos/LovableLogo.tsx is dead but was orphaned by Remove lovable from customer surfaces :( #19494, not by this PR, so it is left alone.
  • No build was run.

🤖 Generated with Claude Code

Deletes five unreferenced pages found by tracing the import and internal
link graphs, then cross-checking 90 days of pageviews (all were at
crawler-level traffic, 8-29 views per quarter):

- /questions/topic/max      superseded by /questions/topic/ai
- /event-comparison         no entry point anywhere
- /community/latest         not reachable from the community nav
- /flurry-migration         Flurry shut down in 2025
- /old-home                 previous homepage, kept after the rebuild

CDPDiagram, FeatureTable and dw-installation-platforms were React
components living in src/pages/context-warehouse/, so Gatsby's
file-system routing published each one as a public route. CDPDiagram had
no importers and is deleted. The other two are used, so they move to
src/components/ContextWarehouse/ instead - same components, no
accidental pages.

Also drops old-home and data-stack/dw-installation-platforms from the
Algolia exclusion patterns, since neither route exists now.

Redirects for the deleted paths follow in a separate PR.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@github-actions github-actions Bot added the website About the website (beyond just landing pages) label Aug 14, 2026
@github-actions

github-actions Bot commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

Deploy preview

Status Details Updated (UTC)
🟢 Ready View preview Aug 14, 2026 09:47PM

Redirects for the pages removed in the previous commit:

- /questions/topic/max -> /questions/topic/ai
- /community/latest    -> /community
- /old-home            -> /

Added at the top of the redirects array, since vercel.json matches
top-down and takes the first hit.

Deleting flurry-migration and old-home left two components with no
importers:

- components/ContactSales/Contact.tsx (391 lines) — a legacy formik and
  HubSpot contact form. ContactSales/index.tsx, which every live caller
  uses, renders SalesforceForm instead and never imported this file.
- components/Home/Index.tsx (23 lines) — a stub whose own copy read
  "test. @todo i think this is old?".

Re-ran the import graph after removing them; no further files were
orphaned.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@github-actions github-actions Bot removed the website About the website (beyond just landing pages) label Aug 14, 2026
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown
Contributor

Bundle report

Total JS (gzip)

7.51 MiB (-42.6 KiB / -0.6%)

Largest changed named chunks
Chunk Gzip Δ vs master
57fa42b3072d4eb32df151d8010c87177ea20877.js 6.3 KiB new

Eager graph (modules shipped in each entrypoint's initial chunks)

Entrypoint Eager size Budget Modules
app 16.90 MiB (-3.4 KiB / -0.0%) report-only 2017
Largest modules in the app closure
Module Size
./src/data/mcp-tools.json 991.3 KiB
css ./node_modules/.pnpm/css-loader@5.2.7_webpack@5.101.3/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[1]!./node_modules/.pnpm/postcss-loader@4.3.0_postcss@8.5.6_webpack@5.101.3/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[2]!./src/styles/global.css 751.0 KiB
./src/components/Stickers/Stickers.tsx 696.4 KiB
./node_modules/.pnpm/@radix-ui+react-icons@1.3.2_react@18.3.1/node_modules/@radix-ui/react-icons/dist/react-icons.esm.js 481.4 KiB
./node_modules/.pnpm/rehype-raw@7.0.0/node_modules/rehype-raw/lib/index.js + 29 modules 395.1 KiB
./node_modules/.pnpm/@posthog+icons@0.36.6_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@posthog/icons/dist/posthog-icons.cjs.js 364.8 KiB
./node_modules/.pnpm/@posthog+icons@0.36.6_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@posthog/icons/dist/posthog-icons.es.js 354.8 KiB
./src/hooks/useCustomers.tsx + 54 modules 353.8 KiB
./node_modules/.pnpm/react-markdown@8.0.7_@types+react@16.14.66_react@18.3.1/node_modules/react-markdown/lib/react-markdown.js + 88 modules 351.4 KiB
./src/components/ProductComparisonTable/index.tsx + 126 modules 301.4 KiB
./node_modules/.pnpm/cloudinary-core@2.14.0_lodash@4.17.21/node_modules/cloudinary-core/cloudinary-core.js 281.9 KiB
./src/components/SearchUI/index.tsx + 87 modules 273.0 KiB
./node_modules/.pnpm/@posthog+brand@0.8.0_react@18.3.1/node_modules/@posthog/brand/dist/generated/hoggies/svg/magnifying-glass.mjs 254.7 KiB
./node_modules/.pnpm/framer-motion@10.18.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/framer-motion/dist/es/render/dom/motion.mjs + 109 modules 253.9 KiB
./node_modules/.pnpm/d3@7.9.0/node_modules/d3/src/index.js + 208 modules 247.4 KiB

Eager-graph budgets are report-only until a baseline is established. Sizes are gzip of public/**/*.js; eager size is webpack module source bytes for the modules actually shipped in the entrypoint's initial chunks (post-tree-shake).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant