Skip to content

Keep superseded versions out of llms.txt - #80

Merged
ahellegit merged 2 commits into
mainfrom
chore/noindex-archives-llms-txt
Oct 14, 2026
Merged

ahellegit merged 2 commits into
mainfrom
chore/noindex-archives-llms-txt

Conversation

@cyborgcharlcye

Copy link
Copy Markdown
Contributor

Coding agents and search engines currently see 437 superseded pages (v0.15.x–v0.17.x) in docs.cyborg.co/llms.txt alongside the 173 current ones, so agents learn old APIs; after this only the v0.18.x (versions/latest/) pages are listed.

What changed

  • scripts/docs.py: desired_tag now returns noindex: true for every non-latest version. noindex: true is what already keeps versions/next/ out of llms.txt; archives got a canonical: link back to latest/ instead, which does not exclude them because Mintlify builds llms.txt from indexed pages only. The module docstring and the CONTRIBUTING.md layout table now say archives are noindex; the SITE constant only fed the canonical URL and is removed.
  • python3 scripts/docs.py seo rewrote 445 archive frontmatters (142 in v0.15.x, 144 in v0.16.x, 159 in v0.17.x): canonical: removed, noindex: true added. The other 50 archive pages had no latest/ twin and were already noindex. versions/latest/ and versions/next/ are untouched.
  • .github/workflows/llms-txt.yml: a weekday 09:00 UTC check (also workflow_dispatch) that fetches the live llms.txt, prints the latest/archive entry counts, and fails if any versions/v0.* entry is present or the latest quickstart is missing.

Trade-off

Archive pages leave Google (intended, core#2020) and llms.txt. Whether Mintlify's site search still returns them is unverified — reviewers can check on the preview by searching a v0.17-only term. The version dropdown still reaches them.

Verification

  • python3 scripts/docs.py seo — updated 445 pages total (142 / 144 / 159)
  • python3 scripts/docs.py seo --check — all pages already correct
  • python3 scripts/docs.py check — nav parity, internal links and redirects all OK
  • python3 scripts/docs.py sync-next --check — next/ is in sync with latest/
  • grep -rL 'noindex: true' versions/v0.*/ --include='*.mdx' — empty (all 495 archive pages tagged); git diff --stat -- versions/latest — empty
  • Live readout today: latest entries: 173, archive entries: 437. After merge, run the llms.txt has no archive pages workflow via workflow_dispatch ~15 min after the deploy and expect latest entries: 173, archive entries: 0.

Closes cyborginc/cyborgdb-core#2711
Refs cyborginc/cyborgdb-core#2020, cyborginc/cyborgdb-core#2051

@mintlify

mintlify Bot commented Oct 12, 2026 •

Copy link
Copy Markdown

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated
cyborg 🟢 Ready View Preview Oct 12, 2026, 10:37 PM

@ahellegit
ahellegit merged commit a239840 into main Oct 14, 2026
6 checks passed
@ahellegit
ahellegit deleted the chore/noindex-archives-llms-txt branch October 14, 2026 18:55

This branch was successfully deployed

1 active deployment
staging — 5704c9e9 Deployed Oct 12, 2026 by mintlify[bot]
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