Skip to content

fix(seo): list brownfield reports and contracts in sitemap and llms.txt#483

Merged
rdmueller merged 2 commits into
LLM-Coding:mainfrom
raifdmueller:fix/discoverability-brownfield-reports
May 14, 2026
Merged

fix(seo): list brownfield reports and contracts in sitemap and llms.txt#483
rdmueller merged 2 commits into
LLM-Coding:mainfrom
raifdmueller:fix/discoverability-brownfield-reports

Conversation

@raifdmueller
Copy link
Copy Markdown
Contributor

@raifdmueller raifdmueller commented May 14, 2026

Summary

  • Brownfield reports, the Socratic Recovery Skill page, and the contracts page are pre-rendered but were missing from sitemap.xml and llms.txt — so claude.ai and other fetchers had no way to discover them.
  • Adds /brownfield-experiment-report, /brownfield-fair-comparison, /socratic-recovery-skill, /contracts to scripts/generate-sitemap.js (sitemap now lists 14 pages + 136 anchors).
  • Adds a new "Documentation" section at the top of llms.txt listing every top-level doc page with a one-sentence summary, following the llms.txt convention.

Test plan

  • Verify generated website/public/sitemap.xml contains the four new URLs
  • Verify generated website/public/llms.txt starts with a "Documentation" section listing all doc pages
  • After deploy, check https://llm-coding.github.io/Semantic-Anchors/sitemap.xml and …/llms.txt
  • Spot-check that claude.ai can now fetch …/brownfield-experiment-report

🤖 Generated with Claude Code

Summary by CodeRabbit

Neue Inhalte verfügbar

  • Dokumentation

    • Neue Dokumentationssektion mit kuratierten Navigationslinks eingeführt
    • Cockburn Use Cases Anker mit detaillierter Beschreibung und Anwendungsrichtlinien hinzugefügt
    • Socratic Code Theory Recovery Workflow mit zweiphasiger Methodik dokumentiert
    • Semantic Anchors Katalog erweitert (137 Begriffe)
    • Verbesserte Spezifikationen für Semantic Contracts
  • Chores

    • Website-Sitemap mit neuen Seiten aktualisiert

Review Change Stack

Brownfield reports, the Socratic Recovery Skill page, and the contracts
page were pre-rendered but missing from sitemap.xml and llms.txt — so
claude.ai and other fetchers could not discover them.

Also adds a "Documentation" section at the top of llms.txt listing every
top-level doc page with a one-sentence summary, following the llms.txt
convention.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 14, 2026

Warning

Rate limit exceeded

@raifdmueller has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 40 minutes and 28 seconds before requesting another review.

You’ve run out of usage credits. Purchase more in the billing tab.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yml

Review profile: CHILL

Plan: Pro

Run ID: 23de419f-4b9d-435f-92c9-fe998f248971

📥 Commits

Reviewing files that changed from the base of the PR and between 7d99dc3 and 53901a4.

📒 Files selected for processing (1)
  • scripts/generate-llms-txt.js

Walkthrough

Die PR erweitert das Semantic-Anchors-Katalog um Cockburn Use Cases und Socratic Code Theory Recovery-Methoden. Die neue Ankordefinition wird in AsciiDoc-Referenzen, generierte Dokumentations-Ausgaben (llms.txt) und Website-Sitemaps integriert. Zusätzlich werden neue statische Seiten-Routen für Brownfield-Reports und Contract-Dokumentation hinzugefügt.

Changes

Cockburn Use Cases & Semantic Contracts Katalog-Erweiterung mit Sitemap/Dokumentations-Integrationen

Layer / Datei(en) Zusammenfassung
Cockburn Use Cases Anchor-Integration
docs/all-anchors.adoc, website/public/llms.txt
docs/all-anchors.adoc integriert die neue Cockburn Use Cases Ankordatei; das katalogisierte Ankoreintrag in llms.txt dokumentiert das fully dressed Format, Goal Levels, Scope und „Wann nutzen"-Anleitung.
Semantic Contracts Spezifizierung & Socratic Recovery
website/public/llms.txt
Die „Specification"-Untersektion wird um ein umfassendes Rezept erweitert (Cockburn-Persona-Anwendungsfälle mit BR-IDs, System-Schnittstellen-Anwendungsfälle, Aktivitätsdiagramme, Gherkin-Akzeptanzkriterien, EARS-Anforderungssyntax); eine neue „Socratic Code Theory Recovery"-Untersektion führt einen zweiphasigen Frage-Baum-Workflow mit Q-ID-Nachverfolgung ein.
Dokumentations-Navigationssektion & Visual Elements
website/public/llms.txt
Eine neue „Documentation"-Sektion kuratiert Top-Level-Dokumentations-Anker; ein eingebettetes YouTube-Figure-Block mit Thumbnail wird zur „Über Semantic Anchors"-Sektion hinzugefügt.
Skript-Änderungen für Dokumentations-Rendering
scripts/generate-llms-txt.js
generateLlmsTxt() definiert ein DOC_PAGES-Array mit strukturierten Metadaten (Titel, URL, Summary) für mehrere Top-Level-Seiten und rendert diese als Markdown-Aufzählung in der neuen „Documentation"-Sektion von llms.txt.
Sitemap-Routen & Lastmod-Aktualisierung
scripts/generate-sitemap.js, website/public/sitemap.xml
scripts/generate-sitemap.js ergänzt statische Seiten-Routen für brownfield-experiment-report, brownfield-fair-comparison, socratic-recovery-skill und contracts; website/public/sitemap.xml aktualisiert alle <lastmod>-Werte auf 2026-05-14 und erweitert Top-Level-URL-Einträge entsprechend.

Geschätzte Code-Review-Aufwand

🎯 2 (Simple) | ⏱️ ~10 Minuten

Möglicherweise zugehörige PRs

  • LLM-Coding/Semantic-Anchors#464: Fügt die gleichen /brownfield-experiment-report und /brownfield-fair-comparison-Routen zur Website-Prerendering und zum Routing-Setup hinzu, die diese PR nun in der Sitemap registriert.
  • LLM-Coding/Semantic-Anchors#429: Modifiziert ebenfalls scripts/generate-sitemap.js und website/public/sitemap.xml durch Änderungen an Seiten-/Routen-Einträgen (insbesondere /contracts).
  • LLM-Coding/Semantic-Anchors#375: Ändert dieselbe scripts/generate-llms-txt.js-Logik, die website/public/llms.txt generiert, durch Anpassungen am „Semantic Contracts"-Abschnitt.
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed Der PR-Titel beschreibt präzise die Hauptänderung: Hinzufügen von Brownfield-Reports und Contracts zu Sitemap und llms.txt für bessere SEO-Auffindbarkeit.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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 and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🧹 Nitpick comments (1)
website/public/llms.txt (1)

12-43: ⚡ Quick win

HTML-Facade in llms.txt reduziert Maschinenlesbarkeit unnötig.

Für ein LLM-orientiertes Textartefakt ist der eingebettete <figure>/<button>/<svg>-Block sehr noisig. Bitte in llms.txt stattdessen auf eine kurze Textreferenz + Link reduzieren.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@website/public/llms.txt` around lines 12 - 43, Die HTML-figure/button/svg
block in llms.txt (find the block starting with <figure
class="youtube-facade-wrapper"> and containing <button>, <img>, <svg> and
<figcaption>) is too noisy for an LLM-oriented text artifact; remove that full
HTML facade and replace it with a concise plain-text reference containing the
video title, the YouTube URL (https://youtu.be/Q_DWMayAQEQ) and the session
summary link (https://rabauer.dev/en/blog/semantic-anchors/) on a single or two
short lines so the file stays machine-readable and minimal.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@scripts/generate-llms-txt.js`:
- Around line 218-297: Prettier check is failing for this file; run the
formatter against the file and commit the changes. Specifically, format the code
that defines DOC_PAGES and the subsequent lines.push sequence (the block that
builds the "Documentation" section) by running the repository's Prettier config
(e.g., prettier --write <this file>), then verify ESLint/Prettier rules pass
locally (or fix any minor lint/format conflicts) and commit the formatted file
so the Prettier --check gate succeeds.

In `@website/public/llms.txt`:
- Around line 3459-3460: Die fette Überschrift enthält verschachtelte Sternchen
(`**What Cockburn does **not** prescribe**`) und rendert inkonsistent; ersetze
diese Zeichenfolge durch eine konsistente Hervorhebung wie `**What Cockburn does
not prescribe**` (suche nach der genauen Zeichenkette "What Cockburn does
**not** prescribe" im Diff) und überprüfe angrenzende Markdowns in derselben
Zeile/Paragraph (z. B. "**prose-based and notation-agnostic**") auf ähnliche
verschachtelte Asterisk-Fehler, damit die gesamte Zeile korrekt bolded bzw.
formatiert wird.

---

Nitpick comments:
In `@website/public/llms.txt`:
- Around line 12-43: Die HTML-figure/button/svg block in llms.txt (find the
block starting with <figure class="youtube-facade-wrapper"> and containing
<button>, <img>, <svg> and <figcaption>) is too noisy for an LLM-oriented text
artifact; remove that full HTML facade and replace it with a concise plain-text
reference containing the video title, the YouTube URL
(https://youtu.be/Q_DWMayAQEQ) and the session summary link
(https://rabauer.dev/en/blog/semantic-anchors/) on a single or two short lines
so the file stays machine-readable and minimal.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yml

Review profile: CHILL

Plan: Pro

Run ID: e0b14c5b-e313-43e4-843c-dff4fe919f17

📥 Commits

Reviewing files that changed from the base of the PR and between 9c304ab and 7d99dc3.

📒 Files selected for processing (5)
  • docs/all-anchors.adoc
  • scripts/generate-llms-txt.js
  • scripts/generate-sitemap.js
  • website/public/llms.txt
  • website/public/sitemap.xml

Comment thread scripts/generate-llms-txt.js
Comment thread website/public/llms.txt
Comment on lines +3459 to +3460
**What Cockburn does **not** prescribe**
Cockburn's format is deliberately **prose-based and notation-agnostic**. It does not mandate Activity Diagrams, Gherkin, EARS, or any formal syntax. Those are complementary representations that can be layered on top — Activity Diagrams for visual flow, Gherkin for executable acceptance criteria, EARS for structured requirement statements.
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Markdown-Formatierung in Line 3459 ist kaputt.

**What Cockburn does **not** prescribe** ist verschachtelt/falsch betont und rendert inkonsistent. Bitte auf konsistente Hervorhebung umstellen (z. B. **What Cockburn does not prescribe**).

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@website/public/llms.txt` around lines 3459 - 3460, Die fette Überschrift
enthält verschachtelte Sternchen (`**What Cockburn does **not** prescribe**`)
und rendert inkonsistent; ersetze diese Zeichenfolge durch eine konsistente
Hervorhebung wie `**What Cockburn does not prescribe**` (suche nach der genauen
Zeichenkette "What Cockburn does **not** prescribe" im Diff) und überprüfe
angrenzende Markdowns in derselben Zeile/Paragraph (z. B. "**prose-based and
notation-agnostic**") auf ähnliche verschachtelte Asterisk-Fehler, damit die
gesamte Zeile korrekt bolded bzw. formatiert wird.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@rdmueller rdmueller merged commit 41d856d into LLM-Coding:main May 14, 2026
7 checks passed
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