Skip to content

feat: add changelog page to website#154

Merged
rdmueller merged 2 commits into
LLM-Coding:mainfrom
raifdmueller:add-changelog
Mar 9, 2026
Merged

feat: add changelog page to website#154
rdmueller merged 2 commits into
LLM-Coding:mainfrom
raifdmueller:add-changelog

Conversation

@raifdmueller

@raifdmueller raifdmueller commented Mar 9, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Adds a chronological changelog page (docs/changelog.adoc) listing all semantic anchors added to the catalog
  • Each entry includes date, anchor name, contributor credit with GitHub handles, and PR/issue links
  • Includes a community contributors summary table
  • Integrates into the website navigation (desktop + mobile) with EN/DE i18n support
  • New route /changelog loads and renders the AsciiDoc content

Closes #153

Test plan

  • All 83 unit tests pass
  • Verify changelog page renders correctly at #/changelog
  • Verify navigation link appears in both desktop and mobile menus
  • Verify language toggle works (EN: "Changelog", DE: "Änderungsprotokoll")
  • Verify active nav link highlighting works on changelog page

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Neue Funktionen

    • Changelog-Seite ist jetzt über die Hauptnavigation in Desktop- und Mobilansicht erreichbar.
    • Mehrsprachige Navigationsbeschriftung für Changelog (Deutsch/Englisch) hinzugefügt.
  • Dokumentation

    • Neue umfassende Changelog-Dokumentation mit datierten Einträgen, Community-Contributor-Abschnitt und Credits-Tabelle veröffentlicht.
  • Tests

    • End-to-End-Tests aktualisiert, um Header-basierte Selektoren und geänderte Überschriftenebenen widerzuspiegeln.

Adds a chronological changelog (docs/changelog.adoc) listing all semantic
anchors added to the catalog with dates and community contributor credits.
Integrates it into the website as a new nav item with EN/DE i18n support.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Mar 9, 2026

Copy link
Copy Markdown
Contributor

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yml

Review profile: CHILL

Plan: Pro

Run ID: f01c857a-9d81-4cbd-9c4c-a4fb9a5cc012

📥 Commits

Reviewing files that changed from the base of the PR and between d11b81a and e9621ea.

📒 Files selected for processing (1)
  • website/tests/e2e/website.spec.js

Walkthrough

Fügt eine neue Changelog-Seite zur Dokumentationswebsite hinzu: docs/changelog.adoc, ein Navigations-Element, eine /changelog-Route mit Render-Funktion und zugehörige Übersetzungs-Schlüssel für DE/EN. (Kurzfassung, faktisch.)

Änderungen

Cohort / File(s) Zusammenfassung
Changelog-Dokumentation
docs/changelog.adoc
Neue AsciiDoc-Datei mit chronologischer Änderungshistorie (Einträge 2026-03-09 bis 2025-11-10), Community-Contributor-Sektionen und Credits-Tabelle (+158 Zeilen).
Navigation
website/src/components/header.js
Neuer Navigations-Eintrag "Changelog" hinzugefügt (Desktop & Mobile).
Routing & Seiten-Rendering
website/src/main.js
Neue Route /changelog und Funktion renderChangelogPage; handleLanguageChange lädt Changelog bei aktivem Route; Integration mit bestehendem renderDocPage.
Lokalisierung
website/src/translations/en.json, website/src/translations/de.json
Neuer Übersetzungs-Schlüssel nav.changelog ergänzt ("Changelog" / "Änderungsprotokoll").
Tests (E2E)
website/tests/e2e/website.spec.js
Tests aktualisiert: Setup überspringt Onboarding, Selektoren auf Header-Elemente umgestellt, Anpassungen an Heading-Level (h2) und Robustheit/Timing der Assertions.

Sequenzdiagramm

sequenceDiagram
    participant User
    participant Nav as Header Navigation
    participant Router as Router
    participant PageRender as renderChangelogPage
    participant DocRender as renderDocPage
    participant DocLoader as docs/changelog.adoc

    User->>Nav: Klick auf "Changelog"
    Nav->>Router: Navigate to /changelog
    Router->>PageRender: Aufruf renderChangelogPage
    PageRender->>DocRender: initialisiere renderDocPage
    DocRender->>Nav: aktiviere Nav-Link
    DocRender->>DocLoader: lade docs/changelog.adoc
    DocLoader-->>PageRender: liefere Inhalt
    PageRender-->>User: zeige Changelog-Seite
Loading

Geschätzter Code-Review-Aufwand

🎯 3 (Moderate) | ⏱️ ~20 minutes

Möglicherweise verwandte PRs

  • PR #113: Fügt ebenfalls eine neue Dokumentationsroute und zugehöriges renderXPage-Verhalten hinzu — möglicher Schnittpunkt in Routing/Rendering-Pattern.
  • PR #114: Ändert renderDocPage/Doc-Rendering-Loading; direkt relevant für die neu hinzugefügte renderChangelogPage.
  • PR #144: Modifiziert dieselbe Header-Komponente (UI/Nav-Elemente); potenzielles Merge-/UI-Konfliktpotenzial.
🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed Der Titel beschreibt klar und prägnant die Hauptänderung: Das Hinzufügen einer Changelog-Seite zur Website.
Linked Issues check ✅ Passed Die Implementierung erfüllt alle Anforderungen aus Issue #153: chronologische Changelog mit Beiträgen, Contributor-Credits, AsciiDoc-Format und Website-Integration.
Out of Scope Changes check ✅ Passed Die E2E-Test-Änderungen sind notwendig für die neue Website-Header-Struktur und nicht aus dem Scope heraus, alle Änderungen beziehen sich auf die Changelog-Integration.

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

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

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.

@coderabbitai coderabbitai Bot 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.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@website/src/main.js`:
- Around line 182-189: The changelog HTML isn't generated because the build
script (render-docs.js) only calls renderFile for about.adoc, CONTRIBUTING.adoc
and all-anchors.adoc; add two renderFile calls to render the changelog sources
so loadDocContent('docs/changelog.adoc') used by renderChangelogPage can fetch
the generated file: add renderFile(path.join(ROOT, 'docs/changelog.adoc'),
path.join(WEB_DOCS, 'changelog.html')) and renderFile(path.join(ROOT,
'docs/changelog.de.adoc'), path.join(WEB_DOCS, 'changelog.de.html')) to the list
of renderFile invocations in render-docs.js (and ensure the build task that runs
render-docs.js includes these new outputs).

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yml

Review profile: CHILL

Plan: Pro

Run ID: cb89a07e-cdbe-46a2-99a8-d0f940ca1dad

📥 Commits

Reviewing files that changed from the base of the PR and between edbda4c and d11b81a.

📒 Files selected for processing (5)
  • docs/changelog.adoc
  • website/src/components/header.js
  • website/src/main.js
  • website/src/translations/de.json
  • website/src/translations/en.json

Comment thread website/src/main.js
Comment on lines +182 to +189
function renderChangelogPage() {
const pageContent = document.getElementById('page-content')
if (!pageContent) return

pageContent.innerHTML = renderDocPage()
updateActiveNavLink()
loadDocContent('docs/changelog.adoc')
}

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.

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Prüfen, ob changelog.adoc im render-docs.js enthalten ist
echo "=== Suche nach changelog in render-docs.js ==="
rg -n "changelog" scripts/render-docs.js || echo "changelog nicht gefunden in render-docs.js"

echo ""
echo "=== Aktuelle renderFile Aufrufe ==="
rg -n "renderFile\(" scripts/render-docs.js

Repository: LLM-Coding/Semantic-Anchors

Length of output: 712


🏁 Script executed:

#!/bin/bash
echo "=== Suche nach renderChangelogPage ==="
rg -n "renderChangelogPage" website/src/main.js | head -20

echo ""
echo "=== Suche nach loadDocContent Implementierung ==="
rg -n "function loadDocContent" website/src/ -A 5

echo ""
echo "=== Prüfen auf docs/changelog.adoc ==="
find . -name "*changelog*" -type f | grep -E "\.(adoc|html)$" || echo "Keine changelog-Dateien gefunden"

echo ""
echo "=== Prüfen auf addRoute('/changelog') ==="
rg -n "addRoute.*changelog" website/src/main.js

Repository: LLM-Coding/Semantic-Anchors

Length of output: 859


Kritisch: docs/changelog.html wird nicht im Build-Prozess generiert.

Die Funktion renderChangelogPage (Zeile 182) ruft loadDocContent('docs/changelog.adoc') auf, die dies in docs/changelog.html konvertiert und abruft. Die Route ist registriert (Zeile 105), und die Quelldatei docs/changelog.adoc existiert. Allerdings fehlt in scripts/render-docs.js der entsprechende renderFile-Aufruf – nur about.adoc, CONTRIBUTING.adoc und all-anchors.adoc werden gerendert. Dies führt zu einem 404-Fehler beim Aufrufen der /changelog-Route.

Fügen Sie in scripts/render-docs.js die fehlenden renderFile-Aufrufe hinzu:

renderFile(path.join(ROOT, 'docs/changelog.adoc'), path.join(WEB_DOCS, 'changelog.html'))
renderFile(path.join(ROOT, 'docs/changelog.de.adoc'), path.join(WEB_DOCS, 'changelog.de.html'))
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@website/src/main.js` around lines 182 - 189, The changelog HTML isn't
generated because the build script (render-docs.js) only calls renderFile for
about.adoc, CONTRIBUTING.adoc and all-anchors.adoc; add two renderFile calls to
render the changelog sources so loadDocContent('docs/changelog.adoc') used by
renderChangelogPage can fetch the generated file: add renderFile(path.join(ROOT,
'docs/changelog.adoc'), path.join(WEB_DOCS, 'changelog.html')) and
renderFile(path.join(ROOT, 'docs/changelog.de.adoc'), path.join(WEB_DOCS,
'changelog.de.html')) to the list of renderFile invocations in render-docs.js
(and ensure the build task that runs render-docs.js includes these new outputs).

- Dismiss onboarding modal via localStorage before tests
- Use #header-search-input and #header-role-filter (desktop) instead of
  mobile-only #search-input and #role-filter
- Update h1 expectations to h2 (heading level changed in layout redesign)
- Use .first() for nav link clicks to target desktop nav
- Fix heading hierarchy test for new structure

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@rdmueller rdmueller merged commit 765a195 into LLM-Coding:main Mar 9, 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.

Create changelog with chronological anchor history and contributor credits

2 participants