Skip to content

fix/links: Fix broken links (50 moved pages) - #1866

Open
marcleblanc2 wants to merge 1 commit into
mainfrom
fix-moved-page-links
Open

fix/links: Fix broken links (50 moved pages)#1866
marcleblanc2 wants to merge 1 commit into
mainfrom
fix-moved-page-links

Conversation

@marcleblanc2

@marcleblanc2 marcleblanc2 commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

Linear FE-499: Fix doc site issues

Smaller, more easily reviewed subset of fixes from #1861

Links whose content moved to another page, now pointing at the page that has it. Common cases:

  • /admin/auth/#builtin-password-authentication, #saml, /admin/config/site-config#openid-connect-… → the auth provider now has its own page under /admin/auth/
  • /self-hosted/deploy/docker-compose/#<section> → the docker-compose docs were split into configuration and operations pages
  • /admin/faq#… → the FAQ moved to /self-hosted/faq
  • /self-hosted/deploy/kubernetes/kustomize/#base, #template → those directories are documented in the deploy-sourcegraph-k8s repo, link there
  • /#quick-install, /#getting-started → the home page lost those sections; /self-hosted/deploy and /getting-started
  • #google-protobuf-Struct, #google-protobuf-Timestamp in the GraphQL API docs → protobuf.dev reference

Review: each row's new page is the one that holds the linked content; the heading text on both sides of should read as the same topic.

Two hunks also carry one non-moved link each (a dropped dead anchor in docs/self-hosted/deploy/docker-compose/operations.mdx, a reworded anchor in docs/self-hosted/deployment-best-practices.mdx) because they sit on adjacent lines and splitting them across PRs would conflict.

Held back: /#quick-install on line 26 of docs/self-hosted/http-https-configuration.mdx shares a line with a fix in #1864; it goes there instead.

Checker findings (npm run check-links -- --check-anchors, from #1858, with its heading-slug fix): 278 on main → 228 on this branch.

Verification

The docs site serves its not-found page with HTTP 200 (fix in progress), so status codes prove nothing. Instead, every changed link was fetched on this PR's Vercel preview and the rendered HTML checked for two ids: the target page's own first heading (taken from its MDX source — the 404 page never has it) and the link's #fragment. Script: node dev/verify-links-live.mjs --site <preview-url>, coming in #1858.

Old links point at the current production site so you can see the breakage; new links point at the preview and land on the heading.

The 5 links that now point off-site (protobuf.dev, github.com) are not in the table; open them from the diff.

Checked 45 changed links against https://sourcegraph-docs-git-fix-moved-page-links-sourcegraph-f8c71130.vercel.app: 45 resolve, 0 fail.
Page rendered = the target page's first heading id is present (the 404 page never has it); Anchor = the #fragment is an id on the page. Old links point at the current site.

All 45 links
File containing the link Old link (broken today) New link (preview) Page rendered Anchor found
docs/admin/auth/builtin.mdx /admin/config/site-config#builtin-password-authentication /admin/auth/builtin
docs/admin/auth/index.mdx #builtin-password-authentication /admin/auth/builtin
docs/admin/auth/index.mdx /admin/config/site-config#openid-connect-including-google-workspace /admin/auth#openid-connect
docs/admin/auth/index.mdx /admin/config/site-config#openid-connect-including-google-workspace /admin/auth#openid-connect
docs/admin/auth/index.mdx /admin/config/site-config#openid-connect-including-google-workspace /admin/auth#openid-connect
docs/admin/auth/index.mdx /admin/config/site-config#openid-connect-including-google-workspace /admin/auth#openid-connect
docs/admin/auth/login-form.mdx /admin/auth/#builtin-password-authentication /admin/auth/builtin
docs/admin/auth/saml/azure-ad.mdx /admin/auth/#add-a-saml-provider /admin/auth/saml#add-a-saml-provider
docs/admin/auth/saml/index.mdx /admin/config/site-config#saml /admin/auth/saml
docs/admin/code-hosts/aws-codecommit.mdx /self-hosted/deploy/docker-compose/#git-ssh-configuration /self-hosted/deploy/docker-compose/configuration#git-ssh-configuration
docs/admin/code-hosts/gitlab.mdx /admin/auth/#saml /admin/auth/saml
docs/admin/config/authorization-and-authentication.mdx /admin/auth/#builtin-password-authentication /admin/auth/builtin
docs/admin/faq.mdx /admin/code-hosts/other#experimental-src-expose /admin/code-hosts/non-git#installing-src-expose
docs/admin/how-to/monorepo-issues.mdx /self-hosted/deploy/docker-compose/#operations /self-hosted/deploy/docker-compose/configuration#adjust-resources
docs/admin/index.mdx /admin/auth/#builtin-password-authentication /admin/auth/builtin
docs/admin/migration/opengrok.mdx /#getting-started /getting-started
docs/admin/migration/opengrok.mdx /admin/auth/#saml /admin/auth/saml
docs/admin/migration/opengrok.mdx /admin/auth/#builtin-authentication /admin/auth/builtin
docs/admin/permissions/syncing.mdx /admin/#supported-code-hosts /admin/code-hosts
docs/admin/repo/auth.mdx /self-hosted/deploy/docker-compose/#git-configuration /self-hosted/deploy/docker-compose/configuration#git-configuration
docs/admin/repo/git-config.mdx /self-hosted/deploy/docker-compose/#git-configuration /self-hosted/deploy/docker-compose/configuration#git-configuration
docs/admin/repo/update-frequency.mdx /admin/faq#i-am-getting-error-cluster-information-not-available-in-the-instrumentation-page-what-should-i-do /self-hosted/faq#i-am-getting-error-cluster-information-not-available-in-the-instrumentation-page-what-should-i-do
docs/batch-changes/rebasing-changesets.mdx /#quick-install /self-hosted/deploy
docs/batch-changes/tracking-existing-changesets.mdx /#quick-install /self-hosted/deploy
docs/cloud/index.mdx /admin/auth/#builtin-password-authentication /admin/auth/builtin
docs/code-insights/language-insight-quickstart.mdx quickstart#1-enable-the-experimental-feature-flag /code-insights/quickstart#1-if-need-be-enable-the-experimental-feature-flag
docs/code-insights/quickstart.mdx /#quick-install /self-hosted/deploy
docs/getting-started/github-vs-sourcegraph.mdx /code-navigation/features#symbol-search /code-search/features#symbol-search
docs/self-hosted/deploy/docker-compose/operations.mdx /self-hosted/deploy/docker-compose/aws#storage-and-backups /self-hosted/deploy/docker-compose/aws
docs/self-hosted/deploy/docker-compose/operations.mdx /self-hosted/deploy/docker-compose/aws#storage-and-backups /self-hosted/deploy/docker-compose/azure#storage-and-backups
docs/self-hosted/deploy/kubernetes/kustomize/migrate.mdx /self-hosted/deploy/kubernetes/kustomize/#between-an-overlay-and-a-running-cluster /self-hosted/deploy/kubernetes/operations#between-an-overlay-and-a-running-cluster
docs/self-hosted/deployment-best-practices.mdx /self-hosted/deploy/docker-compose/#requirements /self-hosted/deploy/docker-compose#prerequisites
docs/self-hosted/deployment-best-practices.mdx /self-hosted/deploy/docker-compose/#configuration /self-hosted/deploy/docker-compose/configuration
docs/self-hosted/email.mdx /admin/auth/#builtin-password-authentication /admin/auth/builtin
docs/self-hosted/email.mdx /admin/auth/#builtin-password-authentication /admin/auth/builtin
docs/self-hosted/email.mdx /admin/auth/#creating-builtin-authentication-users /admin/auth/builtin#creating-builtin-authentication-users
docs/self-hosted/how-to/dirty-database.mdx /self-hosted/deploy/docker-compose/#access-the-database /self-hosted/deploy/docker-compose/operations#access-the-database
docs/self-hosted/how-to/monitoring-guide.mdx /admin/faq#monitoring /self-hosted/faq#monitoring
docs/self-hosted/how-to/postgres14-index-corruption.mdx /self-hosted/deploy/docker-compose/#access-the-database /self-hosted/deploy/docker-compose/operations#access-the-database
docs/self-hosted/how-to/rebuild-corrupt-postgres-indexes.mdx /self-hosted/deploy/docker-compose/#access-the-database /self-hosted/deploy/docker-compose/operations#access-the-database
docs/self-hosted/http-https-configuration.mdx /#quick-install /self-hosted/deploy
docs/self-hosted/observability/logs.mdx /self-hosted/deploy/docker-compose/#set-environment-variables /self-hosted/deploy/docker-compose/configuration#set-environment-variables
docs/self-hosted/observability/metrics.mdx /admin/faq#can-i-consume-sourcegraph-s-metrics-in-my-own-monitoring-system-datadog-new-relic-etc /self-hosted/faq#can-i-consume-sourcegraphs-metrics-in-my-own-monitoring-system-datadog-new-relic-etc
docs/self-hosted/observability/troubleshooting.mdx /self-hosted/observability/#Logs /self-hosted/observability/logs
docs/self-hosted/pprof.mdx /self-hosted/deploy/docker-compose/#operations /self-hosted/deploy/docker-compose/configuration#expose-debug-port

Amp threads

@vercel

vercel Bot commented Sep 7, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
sourcegraph-docs Ready Ready Preview Sep 7, 2026 11:26pm UTC

Request Review

@marcleblanc2 marcleblanc2 changed the title Fix broken links (50 moved pages) fix/links: Fix broken links (50 moved pages) Sep 9, 2026
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