Skip to content

docs: fix broken section anchors across versioned docs - #745

Merged
myasnikovdaniil merged 2 commits into
cozystack:mainfrom
SatvikMishra08:fix-broken-doc-anchors
Oct 29, 2026
Merged

myasnikovdaniil merged 2 commits into
cozystack:mainfrom
SatvikMishra08:fix-broken-doc-anchors

Conversation

@SatvikMishra08

Copy link
Copy Markdown
Contributor

I ran a link check over cozystack.io/docs and found section anchors that don't exist on the pages they link to. This PR fixes them in every version directory where they show up (next/, v0–v1.6):

  • guides/concepts#tenant-system → #tenant. The heading is "Tenant". The development.md link also pointed at the unversioned /docs/guides/concepts/, which is an alias that redirects to v0 and drops the fragment. It now uses a versioned ref.
  • install/kubernetes/talm#1-initialize-cluster-configuration → #2-initialize-cluster-configuration (Hetzner guide).
  • install/kubernetes/talm#3-apply-node-configuration → #41-apply-configuration-files (single-disk how-to, "talm apply").
  • FAQ "Public IP Setup": install/cozystack#4b-public-ip-setup → install/cozystack/platform#4b-node-public-ip-setup (v1.x). In v0 the page didn't move, so only the anchor changes: #4b-node-public-ip-setup.
  • guides/platform-stack#drbd → #drbd-and-linstor (v0–v1.2).
  • v1.3+ (and next/): the platform-stack page is now organized by area, so the per-component anchors in operations/configuration/variants.md (#victoria-metrics, #drbd, #kube-ovn, #cilium, #kubevirt, #talos-linux, #kubernetes) now point at the matching sections (#observability, #storage-and-backup, #networking, #cluster-provisioning-and-virtualization, #operating-system-and-kubernetes-runtime).

I checked every new target against the live page ids on cozystack.io. Only links changed, no prose.

@netlify

netlify Bot commented Oct 10, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for cozystack ready!

Name Link
🔨 Latest commit 7a0e89e
🔍 Latest deploy log https://app.netlify.com/projects/cozystack/deploys/6ae3244541f1acade2300fe3
😎 Deploy Preview https://deploy-preview-745--cozystack.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@coderabbitai

coderabbitai Bot commented Oct 10, 2026 •

Copy link
Copy Markdown
Contributor

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 2045253e-c588-4532-a6fd-b96069c8b598
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@myasnikovdaniil myasnikovdaniil left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

APPROVE. I checked the 97 changed links against the built pages, all 60 targets and their section IDs exist. Preview build passes with Hugo extended 0.164.0.

@myasnikovdaniil
myasnikovdaniil merged commit 27ade0f into cozystack:main Oct 29, 2026
6 of 7 checks passed
Aleksei Sviridkin (lexfrei) added a commit that referenced this pull request Nov 2, 2026
This restores six legacy URLs as static HTML pages.

Follow-up to [PR 772](#772),
part of [the website
epic](#773).

| Old URL | Content |
| --- | --- |
| `/docs/reference/applications/` | `/docs/applications/` |
| `/docs/reference/applications/mysql/` | `/docs/applications/mariadb/`
|
| `/docs/install/talos/kexec/` | `/docs/install/talos/boot-to-talos/` |
| `/roadmap/` | `/docs/roadmap/` |
| `/docs/bundles/distro-hosted/` |
`/docs/v0/operations/configuration/bundles/` |
| `/docs/operations/storage/linstor/` | `/docs/storage/` |

The current-doc mappings also serve their four `/docs/v1/` forms. All
copies return HTTP 200 without JavaScript, query strings and existing
fragments stay on the requested URL. Current content uses the target
canonical. `distro-hosted` stays on archived, noindex content. LINSTOR
uses the storage overview because its exact historical page could not be
confirmed.

Mappings are checked before output is replaced, including missing
targets, symlinks and collisions with real pages. Compatibility copies
use the existing ownership manifest and are cleaned on rollover.

Checked with Hugo extended 0.164.0: production and preview builds,
full-site canonical/robots/sitemap checks, 24 routing fixtures, 129
translation tests, version-pin tests and i18n lint. Anchor corrections
remain in [PR 745](#745).
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.

2 participants