{ "task_id": "DOCS-RESTRUCTURE-001", "summary": "Kompletter Umbau der Dokumentation im Verzeichnis docs nach einem strikt angewendeten Diátaxis-Modell mit genau vier Quadranten (Tutorials, How-to, Explanation, Reference), konsequenter Umbenennung der Markdown-Dateien, Migration der Agent-Dokumente aus dem Unterordner in Top-Level-Slugs und vollständiger Aktualisierung aller internen Doku-Links ohne fachliche Inhaltsänderung.", "assumptions": [ "Alte /admin/docs/-Links dürfen brechen; es werden keine Kompatibilitäts-Stubs für alte Slugs vorgesehen.", "Die technische Scope-Grenze bleibt bei doc/*; es werden keine Änderungen in lib/, pages/, templates/ oder web/ vorgenommen.", "Weil der aktuelle Docs-Parser nur /docs/.md indexiert, müssen alle Markdown-Zieldateien im Top-Level docs/ liegen (kein docs/agents/*.md im Zielzustand).", "docs/openapi.yaml bleibt unter exakt diesem Pfad bestehen, da der API-Docs-Endpunkt diese Datei fest referenziert.", "Die Aufgabe ist rein strukturell/redaktionell (Verständlichkeit, IA, Navigierbarkeit) und prüft keine fachliche Korrektheit der Inhalte." ], "scope": { "in": [ "docs/index.md", "alle Markdown-Dateien in docs/*.md", "Migration von docs/agents/*.md zu neuen Top-Level-Dateien in docs/", "Aktualisierung interner Links und Verweise innerhalb docs/*.md", "Beibehaltung und Verlinkung von docs/openapi.yaml innerhalb der neuen Reference-Struktur" ], "out": [ "neue fachliche Themen", "UI-Redesign oder Änderungen am Docs-Renderer", "Änderungen an Routing/Parser/Service-Code außerhalb docs/", "inhaltliche Fachvalidierung bestehender technischer Aussagen" ] }, "guardrails": { "required_guard_ids": [ "GR-UI-009", "GR-SEC-004" ], "required_quality_gate_ids": [ "QG-001", "QG-002", "QG-003", "QG-004" ] }, "success_criteria": [ { "id": "SC-001", "criterion": "docs/index.md enthält exakt vier Diátaxis-Hauptgruppen in dieser Reihenfolge: Tutorials, How-to Guides, Explanation, Reference." }, { "id": "SC-002", "criterion": "Alle bisherigen 42 Markdown-Dokumente (39 in docs/*.md plus 3 aus docs/agents/*.md) sind auf neue Diátaxis-konforme Slugs migriert und liegen danach vollständig im Top-Level docs/." }, { "id": "SC-003", "criterion": "Jede Markdown-Datei (außer docs/index.md) ist genau einmal in docs/index.md referenziert; es gibt keine Orphans und keine Duplikat-Referenzen." }, { "id": "SC-004", "criterion": "Alle internen /docs/*.md-Verweise in der Doku zeigen auf existierende neue Slugs; es bleiben keine Verweise auf alte Slugs oder /docs/agents/*.md übrig." }, { "id": "SC-005", "criterion": "Alle migrierten Seiten behalten genau ein H1 und eine Zeile 'Letzte Aktualisierung: YYYY-MM-DD' und sind sprachlich auf Klarheit/Lesbarkeit in ihrem Diátaxis-Typ harmonisiert." }, { "id": "SC-006", "criterion": "docs/openapi.yaml bleibt unverändert am Pfad docs/openapi.yaml und wird in der neuen Reference-Struktur konsistent verlinkt." }, { "id": "SC-007", "criterion": "Admin-Dokumentation unter /admin/docs funktioniert mit der neuen Struktur: Navigation zeigt alle Gruppen/Seiten, Seiteninhalte und TOC-Anker laden korrekt, Suche liefert Treffer auf umbenannte Seiten." }, { "id": "SC-008", "criterion": "Alle festgelegten Quality Gates (QG-001, QG-002, QG-003, QG-004) sind erfolgreich ausgeführt und Guard-Evidence für GR-UI-009 und GR-SEC-004 ist dokumentiert." } ], "implementation_steps": [ { "id": "S1", "title": "Verbindliche Ziel-IA und Rename-Konvention festlegen", "description": "Definiere als harte Regel: Dateinamenformat -.md, wobei Prefix nur tutorial-, howto-, explanation-, reference- ist. Lege die vollständige Zuordnung fest: Tutorials = erste-schritte, 00-systemueberblick, 01-setup-und-erster-login, 03-architektur-request-flow, 04-erste-aenderung-ui, 05-erste-aenderung-backend, 06-security-tenant-scope, 07-api-erweitern, 08-advanced-scheduler-sso; How-to = erste-aenderung, globale-suche, importe, benutzerdefinierte-felder, geplante-aufgaben, auth-sso-smoke-test, anfragelimits, rbac-permissions-playbook, request-input-validation, docker-lokal, docker-produktiv, betriebscheck-doctor, fehlerbehebung, lokale-entwicklung, dokumentation-erweitern; Explanation = architektur, di-container, sicherheitsmodell, einstellungen-speicherung, docker-betrieb; Reference = 02-domain-glossar, api, konfiguration, konventionen, lib-standards, benutzer-lifecycle-policy, frontend-css, frontend-javascript, entwickler-checkliste, codex-prompts sowie agents/overview, agents/roles, agents/flow.", "guard_refs": [ "GR-UI-009", "GR-SEC-004" ] }, { "id": "S2", "title": "Dateien konsequent umbenennen und Agents ins Top-Level migrieren", "description": "Benenne alle Markdown-Dateien gemäß Mapping um. Tutorials nummeriert als tutorial-01-erste-schritte bis tutorial-09-advanced-scheduler-sso; How-to als howto-; Explanation als explanation-; Reference als reference-. Migriere docs/agents/overview.md, docs/agents/roles.md, docs/agents/flow.md zu docs/reference-agents-overview.md, docs/reference-agents-roles.md, docs/reference-agents-flow.md und entferne anschließend den Unterordner docs/agents aus der aktiven Struktur.", "guard_refs": [ "GR-UI-009" ] }, { "id": "S3", "title": "docs/index.md strikt auf vier Diátaxis-Gruppen umbauen", "description": "Ersetze die bestehende gemischte Struktur in docs/index.md vollständig durch genau vier Gruppen: Tutorials, How-to Guides, Explanation, Reference. Trage jede Ziel-Datei genau einmal ein, behalte das bestehende Linkformat /docs/.md bei (wegen Parser), und aktualisiere 'Letzte Aktualisierung' auf den Migrationstag.", "guard_refs": [ "GR-UI-009" ] }, { "id": "S4", "title": "Alle internen Links und Querverweise auf neue Slugs migrieren", "description": "Führe eine vollständige Link-Migration in allen docs/*.md durch: alte Slugs, alte nummerierte Lernpfad-Dateinamen und /docs/agents/*-Verweise durch neue Diátaxis-Slugs ersetzen; Referenzen auf docs/openapi.yaml bestehen lassen. Stelle sicher, dass keine tote Verlinkung und kein Alt-Slug-Backlink verbleibt.", "guard_refs": [ "GR-UI-009", "GR-SEC-004" ] }, { "id": "S5", "title": "Lesbarkeits- und Diátaxis-Format normalisieren", "description": "Harmonisiere die Seitenstruktur ohne fachliche Neuinhalte: pro Seite genau ein H1, 'Letzte Aktualisierung', klarer Zielabschnitt und Diátaxis-typische Abschnittsreihenfolge (Tutorial: Lernschritte/Ergebnis; How-to: Voraussetzungen/Schritte/Validierung; Explanation: Kontext/Warum/Abgrenzung; Reference: Fakten, Kontrakte, Tabellen). Passe auch die Contributor-Regeln in der umbenannten How-to-Dokumentationsseite an die neue IA an.", "guard_refs": [ "GR-UI-009" ] }, { "id": "S6", "title": "Guard-Checks, Quality-Gates und Docs-Smoke ausführen", "description": "Führe die strukturellen Doku-Checks und alle geforderten Gates aus, dokumentiere Ergebnisse nach SC-ID: Link-Konsistenz, Index-Abdeckung, keine Remote-Asset-Einbindung in Markdown, anschließend QG-001, QG-002, QG-003, QG-004. Abschließend manueller Smoke in /admin/docs für Navigation, TOC-Anker und Suche.", "guard_refs": [ "GR-UI-009", "GR-SEC-004" ] } ], "tests": [ "Index-Strukturcheck: docs/index.md enthält exakt 4 H2-Gruppen (Tutorials, How-to Guides, Explanation, Reference) in dieser Reihenfolge.", "Abdeckungscheck ohne Orphans/Duplikate: Vergleich docs/*.md (ohne index.md) gegen alle in docs/index.md referenzierten /docs/.md muss leer sein.", "Subfolder-Check: find docs -mindepth 2 -name '*.md' liefert 0 Treffer (keine verbleibenden docs/agents/*.md).", "Alt-Link-Check: rg auf alte Slugs und /docs/agents/ in docs/*.md liefert 0 Treffer.", "Link-Existenzcheck: jeder /docs/.md-Verweis in docs/*.md zeigt auf eine vorhandene Datei docs/.md.", "GR-SEC-004 Check: rg nach externen Asset-Einbindungen in Markdown (z. B. ![](...https://...),