From 5d4561ab88cefc53aaa63b83af3b97b2070b3cd1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Lohrer?= Date: Wed, 8 Apr 2026 16:07:27 +0200 Subject: [PATCH] Restrukturierung: Wissensgrundlagen in tool-neutrales Verzeichnis MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Verschiebt die gemeinsamen Wissensgrundlagen der oer.community- Content-Pipeline aus dem irreführenden Pfad Orga/oer-community-webseite-orga/comenius-yaml-mcp/data/ in eine tool-neutrale Heimat: Orga/oer-community-webseite-orga/wissensgrundlagen/ Verschoben: - comenius-yaml-mcp/data/felder.yaml → wissensgrundlagen/felder.yaml - comenius-yaml-mcp/data/personen.yaml → wissensgrundlagen/personen.yaml - comenius-yaml-mcp/data/schlagworte.yaml → wissensgrundlagen/schlagworte.yaml - schlagwort-glossar-oer-community.md → wissensgrundlagen/schlagwort-glossar.md Neu: - wissensgrundlagen/README.md erklärt Inhalt, Konsumenten und das Mensch-Maschine-Wissensbasis-Prinzip. Hintergrund: Die YAMLs werden nicht nur von comenius-yaml-mcp gelesen, sondern künftig auch von content-lint, mdparser/sync und LLM-Helferlein. Der alte Pfad suggerierte Tool-Eigentum, das es nicht gibt. Folgeanpassungen (eigene Commits in den jeweiligen Repos): - comenius-yaml-mcp src/forgejo.ts: BASE_URL auf neuen Pfad anpassen, gleichzeitig Wechsel von Forgejo-Direktzugriff (Anubis-anfällig) auf GitHub-Mirror raw.githubusercontent.com/rpi-virtuell/... - content-lint und mdparser/sync sollen ebenfalls aus diesem Pfad lesen. Vollständiges ADR mit Begründung und Migrationsphasen: oercommunity/docs/decisions/2026-04-08-restructure-wissensgrundlagen.md Co-Authored-By: Claude Opus 4.6 (1M context) --- .../wissensgrundlagen/README.md | 45 +++++++++++++++++++ .../data => wissensgrundlagen}/felder.yaml | 0 .../data => wissensgrundlagen}/personen.yaml | 0 .../schlagwort-glossar.md} | 0 .../schlagworte.yaml | 0 5 files changed, 45 insertions(+) create mode 100644 Orga/oer-community-webseite-orga/wissensgrundlagen/README.md rename Orga/oer-community-webseite-orga/{comenius-yaml-mcp/data => wissensgrundlagen}/felder.yaml (100%) rename Orga/oer-community-webseite-orga/{comenius-yaml-mcp/data => wissensgrundlagen}/personen.yaml (100%) rename Orga/oer-community-webseite-orga/{schlagwort-glossar-oer-community.md => wissensgrundlagen/schlagwort-glossar.md} (100%) rename Orga/oer-community-webseite-orga/{comenius-yaml-mcp/data => wissensgrundlagen}/schlagworte.yaml (100%) diff --git a/Orga/oer-community-webseite-orga/wissensgrundlagen/README.md b/Orga/oer-community-webseite-orga/wissensgrundlagen/README.md new file mode 100644 index 0000000..5f60b69 --- /dev/null +++ b/Orga/oer-community-webseite-orga/wissensgrundlagen/README.md @@ -0,0 +1,45 @@ +# Wissensgrundlagen für oer.community + +Dieses Verzeichnis enthält die **gemeinsamen Wissensgrundlagen** für die oer.community-Content-Pipeline. Sie sind die kanonische Quelle für alle Inhalts- und Metadaten-Entscheidungen und werden von mehreren unabhängigen Tools gelesen. + +## Was hier liegt + +| Datei | Zweck | Konsumenten | +|---|---|---| +| `felder.yaml` | Schema und Regeln für YAML-Frontmatter (Pflicht-/Optionalfelder, erlaubte Werte, Standardwerte, Ableitungslogik) | `comenius-yaml-mcp`, `content-lint`, `mdparser`, der `YAML-FRONTMATTER-ASSISTENT-PROMPT.md` | +| `personen.yaml` | Verzeichnis bekannter Autor:innen und ihrer Affiliations (mit ORCID, ROR, Standardangaben für `creator`-Feld) | `comenius-yaml-mcp`, LLM-Helferlein, manuelle Redaktion | +| `schlagworte.yaml` | Kanonische Schreibweisen aller Schlagworte (verhindert Synonyme und Tippfehler) | `comenius-yaml-mcp`, `content-lint` (Validierung), LLM-Helferlein | +| `schlagwort-glossar.md` | Menschenlesbare Beschreibung der Schlagworte mit Definitionen und Verwendungshinweisen | Mensch, LLM-Prompts | + +## Prinzip + +Jede Wissensgrundlage existiert in zwei deckungsgleichen Formen: + +1. **Maschinenlesbar** (`*.yaml`) — Single Source of Truth, von Tools direkt geparst. +2. **Menschenlesbar** (`*.md`) — für Autor:innen, Reviewer und LLM-Prompts ohne MCP-Setup. + +Mittelfristig sollen die menschenlesbaren Pendants aus den YAMLs **generiert** werden, sodass kein Drift entsteht. Aktuell werden sie von Hand gepflegt; ein Konsistenz-Test (im oercommunity-Hub) ist geplant. + +## Wer liest die Wissensgrundlagen, wie? + +- **`comenius-yaml-mcp`** liest die YAMLs über HTTP von einem stabilen Endpunkt (siehe dort `src/forgejo.ts`). Aktuell wird der Pfad auf den GitHub-Mirror `rpi-virtuell/FOERBICO_und_rpi-virtuell` umgestellt, um Anubis zu umgehen. +- **`content-lint`** soll perspektivisch seine Validierungsregeln aus `felder.yaml` ziehen statt sie hardcoded zu pflegen. +- **`mdparser/sync`** soll für sein YAML→Event-Mapping ebenfalls auf `felder.yaml` zurückgreifen. +- **LLM-Helferlein** (Claude, ChatGPT, lokale Modelle) konsumieren den menschenlesbaren `YAML-FRONTMATTER-ASSISTENT-PROMPT.md` (eine Etage höher) und die `*.md`-Dateien hier. + +## Erweiterung + +Neue Wissensgrundlagen (z.B. Lizenzen, Zielgruppen, Affiliations) finden hier ihre Heimat ohne Umordnung. Konvention: + +- Maschinenlesbar als `.yaml` +- Menschenlesbar als `.md` +- Beide gleich benannt, damit klar ist welches Pendant zu welchem gehört +- Konsumenten und Pflichtfelder im Header der YAML-Datei dokumentieren + +## Restrukturierung 2026-04-08 + +Bis zum 8. April 2026 lagen `felder.yaml`, `personen.yaml` und `schlagworte.yaml` unter `comenius-yaml-mcp/data/` — ein irreführender Pfad, der sie als Eigentum eines einzelnen Tools darstellte. Sie sind in dieses tool-neutrale Verzeichnis umgezogen. Der `schlagwort-glossar-oer-community.md` ist mitumgezogen und in `schlagwort-glossar.md` umbenannt. + +Begründung und Migrationsschritte: siehe ADR +`oercommunity/docs/decisions/2026-04-08-restructure-wissensgrundlagen.md` +im Orchestrierungs-Hub. diff --git a/Orga/oer-community-webseite-orga/comenius-yaml-mcp/data/felder.yaml b/Orga/oer-community-webseite-orga/wissensgrundlagen/felder.yaml similarity index 100% rename from Orga/oer-community-webseite-orga/comenius-yaml-mcp/data/felder.yaml rename to Orga/oer-community-webseite-orga/wissensgrundlagen/felder.yaml diff --git a/Orga/oer-community-webseite-orga/comenius-yaml-mcp/data/personen.yaml b/Orga/oer-community-webseite-orga/wissensgrundlagen/personen.yaml similarity index 100% rename from Orga/oer-community-webseite-orga/comenius-yaml-mcp/data/personen.yaml rename to Orga/oer-community-webseite-orga/wissensgrundlagen/personen.yaml diff --git a/Orga/oer-community-webseite-orga/schlagwort-glossar-oer-community.md b/Orga/oer-community-webseite-orga/wissensgrundlagen/schlagwort-glossar.md similarity index 100% rename from Orga/oer-community-webseite-orga/schlagwort-glossar-oer-community.md rename to Orga/oer-community-webseite-orga/wissensgrundlagen/schlagwort-glossar.md diff --git a/Orga/oer-community-webseite-orga/comenius-yaml-mcp/data/schlagworte.yaml b/Orga/oer-community-webseite-orga/wissensgrundlagen/schlagworte.yaml similarity index 100% rename from Orga/oer-community-webseite-orga/comenius-yaml-mcp/data/schlagworte.yaml rename to Orga/oer-community-webseite-orga/wissensgrundlagen/schlagworte.yaml