Files
tibi-docs/plans/audit/05-review-anwender-adr.md
T
apairon 1928922e07 Audit + Umbau: Faktenfehler behoben, Server-/Admin-Lücken geschlossen, 49 Screenshots, Schema-Matrix generiert
- Audit: plans/doku-audit.md (Befunde, Phasen P1-P9, Ausführungsprotokoll) + plans/audit/ (8 Detailreports) + plans/offene-issues.md
- Werkzeuge: scripts/audit-docs.mjs (Links/Anker/Bilder/Tabellen), scripts/gen-schema-matrix.mjs (npm run gen:schemas)
- Neue Seiten: projekt/feld-rechte, reference/rest-system, reference/schema-properties, projekt/tests, 5 Anwender-Seiten
- Fehler behoben: EMBEDDING_BGE_M3_*-Env, allowSnapshots, MCP-Scopes (.read/.create/.update), meta.views, loadAll-Signatur, OpenAPI-Endpunkt, MongoDB 8, Befehlspalette
- Screenshots: 9 Admin + 10 Anwender aus Mock-Projekt corporate (t1 entfernt), 49 Bilder gesamt
- AGENTS.md: Sync-Behauptung richtiggestellt, Belegpflicht/UI-Namen/Screenshot-Regeln, Werkzeug-Abschnitt
- Build: 71 Seiten grün, 0 tote Links, 0 kaputte Tabellen
2026-10-17 01:49:35 +00:00

59 lines
10 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Review: Anwender-Doku, Index und ADRs
- Umfang: `src/content/docs/anwender/*.md` (11 Dateien), `src/content/docs/adr/*.md` (4 Dateien), `src/content/docs/index.mdx`.
- Datum: 2026-10-16. Gegenprüft mit `tibi-admin-nova` Commit `2b091d89` (existiert) und `frontend/src/lib/i18n/locales/de.json`.
- Positiv vorweg: alle 23 internen Links der Anwender-Seiten und alle 6 Karten-Links in `index.mdx` lösen auf existierende Seiten auf. Alle 30 Bilder sind je genau einmal referenziert, alle ≤ 200 KB, alle mit Alt-Text. Keine Babysprache („keine Angst" u. Ä.) gefunden; Du-Form durchgehend eingehalten (eine Ausnahme, siehe #14).
## Befund-Tabelle
| # | Datei:Zeile | Kategorie | Befund (kurz) | Vorschlag |
|---|-------------|-----------|---------------|-----------|
| 1 | orientierung.md:20 | MD-FEHLER | Alt-Text enthält Tippfehler „Brotkrumen"; UI-Begriff lautet „Navigationspfad" (`drawer.breadcrumb`, de.json:96). | Alt-Text: „Projektübersicht der Corporate Website mit Kopf, Navigationspfad und Sammlungen". |
| 2 | ki-nutzen.md:105 | MD-FEHLER | Redaktionelle Produktionsnotiz („KI-Antworten … simuliert … lief ohne sichtbares Banner durch") steht als Fließtext im Lesebereich. | Absatz entfernen oder in HTML-Kommentar wandern lassen; simulierte Stellen ersatzweise als Aside „Beispiel" kennzeichnen. |
| 3 | ki-nutzen.md:45-49 vs. :105 | FEHLER-INHALT | Schritte beschreiben Banner-Ablauf („Kontext wird zusammengefasst…" → „Kontext zusammengefasst"), Fußnote gibt zu, dass der Ablauf „ohne sichtbares Banner durchlief" und „Statusanzeigen simuliert" sind — das widerspricht dem „Geprüft an"-Vermerk. Strings selbst belegt (de.json:1028-1029). | Echte Screenshots aus Mock-Projekt aufnehmen; bis dahin Ablauf als „in der Regel" formulieren. |
| 4 | orientierung.md:58-71, hilfe.md:31 | UI-TEXT | Bereich heißt durchgehend „Schnellsuche"; UI-Name ist „Befehlspalette" (de.json:1207), Platzhalter „Befehl eingeben…" (de.json:1154). „Schnellsuche" kommt im Frontend-Code nirgends vor. | Überschrift und alle Erwähnungen in „Befehlspalette" umbenennen; „öffnet mit /" (CommandPalette.svelte:886) behalten. |
| 5 | medien.md:77 | UI-TEXT | „Bild auf Breite×Höhe verkleinert" setzt Wort-Platzhalter; Locale: „Bild auf {width}×{height} verkleinert" (de.json:79) bzw. „{count} Bilder auf {maxWidth}×{maxHeight} verkleinert" (de.json:534). | Konkretes Beispiel nennen, z. B. „Bild auf 1600×1200 verkleinert". |
| 6 | seiten-bauen.md:27 | UI-TEXT | „verfügst du über Lese-Recht" paraphrasiert; UI-Begriff ist „Nur-Lese-Modus" (de.json:1368) mit Hinweis „Du hast keine Berechtigung, diesen Eintrag zu bearbeiten." (de.json:1369). | „Nur-Lese-Modus" zitieren. |
| 7 | index.mdx:6 | TON | Tagline „wie man damit baut" nutzt man-Form (AGENTS §1 verlangt Du-Form). | „hier steht, wie du damit baust". |
| 8 | exportieren.md:24-34 | STARLIGHT | Formatwahl (CSV/XLSX/JSON) plus Array-Behandlung als Steps-Liste führt zu Fehlklicks ohne Vergleich. | `<Tabs>` mit je einem Tab pro Format (inkl. Aside-Hinweis aus :37-43 im JSON-Tab). |
| 9 | ki-nutzen.md:58-75 | STARLIGHT | Zwei aufeinanderfolgende `<Steps>`-Blöcke (Spracheingabe vs. Vorlesen) zum selben Thema. | `<Tabs>` „Eingabe" / „Ausgabe" statt zweier Steps-Blöcke. |
| 10 | seiten-bauen.md:89-109 | STARLIGHT | Zwei Viewport-Bilder plus Steps ohne Zuordnung Preset ↔ Bild. | `<Tabs>` Desktop (1280) / Tablet (768) / Mobil (375) mit je Bild; Werte belegt (PagebuilderViewportControl.svelte:22-29). |
| 11 | hilfe.md:10-73 | STRUKTUR | Doppelungen: Anmeldung (vgl. anmelden.md:27-41), Speichern blockiert (vgl. eintrag-bearbeiten.md:68-84), Bild fehlt (vgl. medien.md). | hilfe.md auf Verweisliste kürzen („Wenn X, siehe Y Schritt Z") statt Voll-Anleitungen zu wiederholen. |
| 12 | div. (anmelden:71, eintrag:86, lesen:101, orientierung:86, medien:93, ki:101 vs. benutzer-teams:66) | STRUKTUR | Sechs Seiten schließen mit identischem Satz und Linklabel [Mehr Details], benutzer-teams.md:66 nennt dasselbe Ziel [Admin-Konzept]. | Ein Label für `/admin/konzept/` festlegen (Vorschlag: „Admin-Konzept"). |
| 13 | hilfe.md (komplett), sichern.md:49-61, medien.md:77-79, eintrag-bearbeiten.md:40-43, lesen-suchen-filtern.md:75-84, ki-nutzen.md:27-39 | STRUKTUR | Beschriebene Schritte ohne Screenshot: hilfe.md (0 Bilder bei 5 Fällen), Wiederherstellungs-Dialog, Upload-Warteschlange/KI-Beschreibung, Durchsuchen/Auswählen-Fenster, Blättern-Fußzeile, Nova-Werkzeugliste. | Je Stelle einen Shot aus Mock-Projekt `corporate` aufnehmen (AGENTS §3). |
| 14 | (alle Anwender-Seiten) | LUECKE | Verlauf/Audit-Restore im Eintrag fehlt völlig. Beleg: EntryView.svelte:41-43,212-223 (AuditHistoryPanel, AuditRestoreDialog, AuditSidebarHistory); Locale `audit.history.button` „Verlauf" (de.json:1600), `audit.restore.*` (de.json:1615-1628). | Neue Seite „Verlauf ansehen und ältere Stände übernehmen". |
| 15 | (alle Anwender-Seiten) | LUECKE | Massenbearbeitung fehlt. Beleg: CollectionView.svelte:43,258-280 (BulkEditPanel); Locale `bulk.*` (de.json:1464-1540); Befehl „Massenbearbeitung" (de.json:1181). | Neue Seite „Mehrere Einträge gleichzeitig ändern oder löschen". |
| 16 | (alle Anwender-Seiten) | LUECKE | Aktionen fehlen. Beleg: ActionView.svelte; AdminLayout.svelte:114; Locale `actions.*` mit „Ausführen" (de.json:170-213). | Neue Seite „Aktionen starten und Ergebnisse prüfen". |
| 17 | orientierung.md:58-74 | LUECKE | Befehlspalette nur als Sprungziel beschrieben; Befehle (Filter zurücksetzen, Ansicht umschalten, Sprache, siehe de.json:1153-1224) und Tastenkürzel fehlen. | Neue Seite „Befehlspalette und Tastenkürzel" (öffnet mit `/`, CommandPalette.svelte:886). |
| 18 | anmelden.md:55-65 | LUECKE | Nur harter Auto-Logout beschrieben; vorgeschalteter Warn-Dialog „Sitzung läuft ab" mit „Angemeldet bleiben"/„Jetzt abmelden" fehlt. Beleg: SessionTimeoutWarning.svelte:100-151; de.json:1439-1443. | Schritt „Warnung → Angemeldet bleiben klicken" in „Automatisches Sitzungsende" ergänzen. |
| 19 | sichern.md:10-47 | LUECKE | Nur Ansehen beschrieben; Erstellen fehlt, Backup fehlt ganz. Beleg: SnapshotView.svelte:756 (`btnTrigger` „Snapshot erstellen"); App.svelte:96 (backup-view), BackupView.svelte; Locale `backup.*` (de.json:217-285). | Seite erweitern oder neue Seite „Snapshot erstellen und Backup herunterladen". |
| 20 | exportieren.md:24-43 | LUECKE | Eigene (vordefinierte) Exporte unerwähnt. Beleg: ExportDialog.svelte:103-106 (customExports aus `collection.meta.exports`); Locale `export.custom*` (de.json:1564-1569). | Abschnitt „Vordefinierte Exporte nutzen" ergänzen. |
| 21 | benutzer-teams.md:62-64 | LUECKE | Stellvertretung erwähnt Rückkehr nicht. Beleg: `impersonationBanner.stop` „Zurück zur Administration" (de.json:898). | Satz ergänzen: „Der Support kehrt über ‚Zurück zur Administration' zurück." |
| 22 | adr/0000-vorlage.md:6-11 | ADR | Vorlage kennt kein Status-Feld; ADR 0001-0003 haben entsprechend keinen Status („angenommen"/„umgesetzt"). | Vorlage um `- **Status:**` ergänzen, bestehende ADRs nachtragen. |
| 23 | anwender/*.md (11× Fußzeile) | ADR | „Geprüft an 2b091d89 (tibi-admin-nova)" weicht von ADR-Norm „Verifiziert am \<Commit> \<Datum>" (0002:8, 0003:8) und allen `server/*.md` (z. B. konfiguration.md:140) ab — Datum fehlt. | Fußzeile angleichen: „Verifiziert am 2b091d89 2026-10-16 (tibi-admin-nova)". |
| 24 | (keine Datei) | ADR | Fehlende ADRs: (a) Bereichsarchitektur der Doku (7 Bereiche aus AGENTS §2 nirgends begründet); (b) Sync-Regel (AGENTS §4: `npm run sync`, Artefakte committen — kein ADR). Screenshot-Regel steht in 0003:8. | Zwei kurze ADRs 0004 (Bereiche) und 0005 (Sync) anlegen. |
| 25 | adr/0003-selbstlaeufer.md:8 | ADR | „57 Seiten, Stand 2026-10-16" ist überholt: aktuell 61 md/mdx-Dateien unter `src/content/docs`. | Zahl aktualisieren oder Zählung streichen. |
## Bild-Abgleich
- Referenziert (je genau einmal, alle mit Alt-Text, alle ≤ 78 KB): anmelden-abmelden, anmelden-login, benutzer-profil, benutzer-teams, eintrag-formular, eintrag-gespeichert, eintrag-neu, export-dialog, export-fertig, ki-chat, ki-stimme, ki-zusammenfassen, lesen-filter, lesen-karten, lesen-liste, lesen-suche, medien-editor, medien-raster, medien-upload, orientierung-projektwechsel, orientierung-schnellsuche, orientierung-start, seiten-bloecke, seiten-overlay, seiten-pagebuilder, seiten-viewport-mobil, seiten-viewport-tablet, sichern-details, sichern-statistik, sichern-uebersicht (alle `.webp` unter `src/assets/anwender/`).
- Verwaist: keine.
- Doppelt referenziert: keine.
- Keine Referenz von außerhalb `anwender/` (geprüft per grep über alle docs).
## Fehlende Anwender-Seiten
1. „Verlauf ansehen und ältere Stände übernehmen" — Beleg: EntryView.svelte:41-43,212-223; de.json:1597-1628.
2. „Mehrere Einträge gleichzeitig ändern oder löschen" — Beleg: CollectionView.svelte:43,258-280 (BulkEditPanel); de.json:1464-1540.
3. „Aktionen starten und Ergebnisse prüfen" — Beleg: ActionView.svelte; AdminLayout.svelte:114; de.json:170-213.
4. „Befehlspalette und Tastenkürzel" — Beleg: CommandPalette.svelte:882-894; de.json:1153-1224,1250-1270.
5. „Snapshot erstellen und Backup herunterladen" (oder sichern.md erweitern) — Beleg: SnapshotView.svelte:756; App.svelte:96; BackupView.svelte; de.json:217-386.
## Unsichere Punkte
- eintrag-bearbeiten.md:77 „Pflichtfelder … mit Stern markiert": Stern-Markierung im Frontend-Code nicht gefunden (Validierungs-Strings „Pflichtfeld"/„Dieses Feld ist erforderlich" belegt, de.json:1323,1409). Bitte am UI verifizieren.
- anmelden.md:40 „höchstens drei Versuche": kein Limit in LoginPage.svelte gefunden; Backend nicht geprüft. Entweder Backend-Beleg nachliefern oder als unverbindliche Empfehlung umformulieren.
- sichern.md:51-64: Ob Anwender ohne Admin-Rolle den Button „Wiederherstellung starten" überhaupt sehen (Berechtigungs-Gate), ist ungeprüft. Falls nein, ist die Seite für Anwender irreführend.
- ki-nutzen.md:49 „Token-Status unter Kontext-Auslastung": beide Strings belegt (AiChat.svelte:2329,2352), Schachtelung am UI nicht verifiziert.
- Bindestrich in „Sitzung abgelaufen – bitte neu anmelden" (anmelden.md:57) nur visuell mit Locale (de.json:1438) verglichen, nicht byte-geprüft.