Abschluss: 13 Issues in den Nachbar-Repos angelegt, Alt-Kopien aufgeraeumt, offene Motive als Hinweis
- Issues: tibi-server #42-#48, tibi-admin-nova #2-#5, tibi-types #3/#4 (mit Beleg und KI-Signatur) - plans/offene-issues.md: Nummern eingetragen; plans/t-shots-arbeitsauftrag.md: offene Motive mit Code-Begruendung - P9: 5 Alt-Kopien geloescht (~6,1 GB, nur Yarn-Cache dirty, unpushed=0); 6 Kandidaten behalten (unpushed Commits bzw. Quell-/Doku-Arbeit) - dokumentiert in plans/doku-audit.md 12.1a - Build gruen, 0 tote Links/Anker/Bilder
This commit is contained in:
1 parent
4b6cd51af6
commit
761466dd63
5 files changed
+59
-19
No files matched your search
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"generatedAt": "2026-10-17T02:35:47.741Z",
|
||||
"generatedAt": "2026-10-17T11:51:09.612Z",
|
||||
"stats": {
|
||||
"files": 70,
|
||||
"byDir": {
|
||||
|
||||
+27
-3
@@ -421,6 +421,29 @@ Und **Repo-Hygiene-Fälle** (Alt-Kopien, kaputte Arbeitsstände) — siehe §12.
|
||||
| `cms/tibi-admin/`, `tibi-admin-dev/`, `tibi-admin-master/`, `tibi-admin-server/`, `tibi-starter/` | alte Starter-/Admin-Varianten, READMEs verweisen auf `tibi-svelte-starter` | klären, dann archivieren; `tibi-svelte-starter` als kanonisch erklären |
|
||||
| `tibi-server/docs/24-ephemeral-rest-tokens.md` | beschreibt eine Fähigkeit, die im Code nicht existiert (kein Treffer für „ephemeral" außer in dieser Datei) | 🔍 D3: implementieren **oder** Datei löschen — beides ist ein Fortschritt, Liegenlassen nicht |
|
||||
|
||||
### 12.1a Ergebnis der Freigabe-Aktion (2026-10-17)
|
||||
|
||||
Freigabe des Nutzers: „Löschung, wenn wirklich alles in tibi-docs." Vor jeder Löschung geprüft: (1) keine
|
||||
unpushed Commits, (2) uncommitted Änderungen sind Artefakte (Yarn-Cache) und keine Arbeit, (3) inhaltlich
|
||||
durch tibi-docs bzw. durch die Git-Remotes auf `gitbase.de` abgedeckt.
|
||||
|
||||
| Kandidat | Ergebnis | Beleg/Prüfung |
|
||||
|---|---|---|
|
||||
| `cms/tibi-admin-dev/` (470 MB) | 🗑️ gelöscht | dirty = nur `.yarn/cache/*` (235/235), `unpushed=0`, Remote `cms/tibi-admin.git` |
|
||||
| `cms/tibi-admin-master/` (405 MB) | 🗑️ gelöscht | dirty = nur `.yarn/cache/*` (231/231), `unpushed=0` |
|
||||
| `cms/tibi-admin.bak/` (1,8 GB) | 🗑️ gelöscht | dirty = nur `.yarn/cache/*` (64/64), `unpushed=0` |
|
||||
| `cms/tibi-admin.bak2/` (2,3 GB) | 🗑️ gelöscht | dirty = nur `.yarn/cache/*` (713/713), `unpushed=0` |
|
||||
| `cms/tibi-docs-kaputt/` (1,1 GB) | 🗑️ gelöscht | dirty = nur `.yarn/cache/*` (52/52), `unpushed=0`, Inhalt = alter Stand dieses Repos (Git-Historie + Remote) |
|
||||
| `cms/tibi-admin.kaputt/` | ⛔ **behalten** | HEAD `5379d167` („fix") liegt **nicht** auf dem Remote (Remote-Heads: `bf82589`, `de3f01f`, `8730661`, `cd5af95`, `a6dbc5b`) → 3 unpushed Commits + abgebrochener Merge (254 unmerged Dateien) |
|
||||
| `cms/tibi-server.bak/` | ⛔ **behalten** | uncommitted Quellarbeit: `internal/controller/setup.go`, `internal/models/{collection,project}.go` geändert, `internal/controller/collection_cache.go` untracked |
|
||||
| `cms/tibi-admin/` | ⛔ **behalten** | uncommitted Quelländerung: `api/hooks/tibiAiChatMessage/helper.js` |
|
||||
| `cms/tibi-starter/` | ⛔ **behalten** | 3 unpushed Commits (`1cafb87`, `3ba83ba`, `26f1e58`) + dirty `api/`, `frontend/` |
|
||||
| `cms/tibi-admin-server/` | ⛔ **behalten** | 1 unpushed Commit (`e6f00b2`) |
|
||||
| `cms/tibi-docs-legacy/` | ⛔ **behalten** | dirty: `docs/md/README.md`, `docs/md/projektkonfig/collections/meta.md` + untracked `docs/md/tibiAI/TibiAI.md`; Inhalte teils **nicht** in tibi-docs (u. a. `dashboard.md`, `ssr&htaccess.md`, `admin-javascript-kontext/*`) |
|
||||
|
||||
**Freigeworden:** ~6,1 GB. **Nicht gelöscht:** alles, wo unpushed Commits oder echte Quell-/Doku-Arbeit
|
||||
liegen — zuerst committen/pushen, dann kann die Löschung nachgezogen werden.
|
||||
|
||||
### 12.2 Datei-Ebene: Wegfall **erst** nach Erfüllung dieser Bedingungen
|
||||
|
||||
| Alt-Datei | Wegfall möglich, wenn … | Heutiger Abdeckungsgrad |
|
||||
@@ -750,8 +773,9 @@ Statuslegende: ✅ erledigt und reviewed · 🔄 läuft · ⬜ offen · 🔴 blo
|
||||
| AGENTS.md: Belegpflicht + UI-Namen-Regel | ✅ | Stempel-Norm und „UI-Namen wörtlich aus `de.json`" als Pflichtregeln ergänzt |
|
||||
| AGENTS.md: Screenshot-Regel | ✅ | `src/assets/admin/` + `src/assets/anwender/`, WebP 1440×900 ≤ 200 KB, Corporate only |
|
||||
| AGENTS.md: Werkzeug-Abschnitt | ✅ | `audit-docs.mjs`, `coverage`, `gen:schemas`, `sync:openapi` als Pflichtschritte |
|
||||
| Issues für die Nachbar-Repos | ✅ | `plans/offene-issues.md`: 7× tibi-server, 4× tibi-admin-nova, 2× tibi-types (mit Beleg) |
|
||||
| P9 Repo-Hygiene (Löschungen) | ⬜ | **bewusst nicht ausgeführt** — Löschen in fremden Repos braucht Freigabe; Kandidatenliste steht in §12.1 |
|
||||
| Issues für die Nachbar-Repos | ✅ | **13 Issues in Gitea angelegt** — tibi-server #42–#48, tibi-admin-nova #2–#5, tibi-types #3/#4; Vorlage mit Belegen in `plans/offene-issues.md` |
|
||||
| PRUEFEN-Punkte abgearbeitet | ✅ | P1 #16, P2 #4, P2 #8 auf erledigt; `reference/openapi.md` ohne „Platzhalter"-Wortlaut |
|
||||
| P9 Repo-Hygiene (Löschungen) | ✅ teilweise | Freigabe erteilt und umgesetzt: 5 Alt-Kopien gelöscht (~6,1 GB), 6 Kandidaten mit unpushed Commits/Doku-Arbeit **bewusst behalten** — Details in §12.1a |
|
||||
|
||||
### Welle G — Screenshot-Nachtrag (restliche UI-Bereiche) · Stand 2026-10-17 ✅
|
||||
|
||||
@@ -760,7 +784,7 @@ Statuslegende: ✅ erledigt und reviewed · 🔄 läuft · ⬜ offen · 🔴 blo
|
||||
| Anwender-Motive (G1) | ✅ | 8 neue Bilder: FK-Drawer, Sprachleiste/Übersetzen, Feldsuche, JSON-Overlay, Medien-Lightbox, Upload-Warteschlange, Fremddatei, Stellvertretungs-Banner; 3 neue Kurzabschnitte, 3 Abschnitte erweitert |
|
||||
| Admin-Motive (G2) | ✅ | 9 neue Bilder: Token-Liste, Token-Anlage (Profil), Projekt-Admin-Drawer, Team- und Org-Drawer, Theme-Umschalter, Chat-Verlauf, Voice im Filter |
|
||||
| Befehlspalette im Admin | ✅ | neuer Abschnitt + Bild in `admin/konzept.md`; `keep`-Hinweis entfernt, Mock-Aussage `t1` → Demo-Projekte korrigiert |
|
||||
| Nicht darstellbare Motive | ⚠️ | Session-Timeout (Mock schaltet den Inaktivitäts-Tracker ab), Suchindex-Banner (Mock-Queue immer 0), KI-Werkzeugstatus/Vision (kein KI-Backend), Drill-Down/Sprungziele, Inline-Anlage/Rückverweise → als `<!-- Screenshot (T-SHOTS) … -->` markiert, Grund dokumentiert |
|
||||
| Nicht darstellbare Motive | ⚠️ **bleiben als Hinweis** (Nutzer-Entscheid) | Session-Timeout (`inactivityTracker.ts:47`) und Suchindex-Banner (`interceptor.ts:3073-3080`) bleiben als `<!-- Screenshot (T-SHOTS) … -->` in der Seite; zusätzlich in `plans/t-shots-arbeitsauftrag.md` „Bewusst offene Motive" festgehalten, damit keine spätere Runde sie aus `t1` nachholt. KI-Werkzeugstatus/Vision, Drill-Down, Inline-Anlage ebenso begründet offen |
|
||||
| Textkorrekturen aus dem UI-Abgleich | ✅ | „Token anlegen nur im Profil" (Token-Admin ist name-only/edit), `allowReload/-Backup/-Snapshots` sind reine `config.yml`-Flags (0 Treffer im Frontend), „**Serververwaltete Felder**", „**Ausgewählte Medien**" |
|
||||
| Welle-G-Review | ✅ | 17 Bilder geprüft: keine verwaisten Dateien, keine toten Pfade, alle Alt-Texte spezifisch, alle ≤ 200 KB; 3 Muss-Fixes umgesetzt; Urteil „abnehmbar" |
|
||||
| Build/Audit | ✅ | 71 Seiten grün, 0 tote Links/Anker/Bildpfade, 0 kaputte Tabellen |
|
||||
|
||||
@@ -180,7 +180,8 @@ Vollständige Prüfung von Code und Doku, dann Abarbeitung in Wellen. Übersicht
|
||||
| E | P6b Screenshots: 9 Admin- + 10 Anwender-Bilder aus `corporate` | ✅ |
|
||||
| G | Screenshot-Nachtrag: restliche UI-Bereiche (8 Anwender + 9 Admin + Befehlspalette) | ✅ (65 Bilder gesamt) |
|
||||
| F | P8 Meta (AGENTS.md, Werkzeuge, Issues) | ✅ |
|
||||
| — | P9 Repo-Hygiene (Löschungen in Nachbar-Repos) | ⬜ Freigabe nötig |
|
||||
| — | P9 Repo-Hygiene: 5 Alt-Kopien gelöscht (~6,1 GB), 6 mit unpushed Commits behalten | ✅ |
|
||||
| — | Issues in den Nachbar-Repos (13) | ✅ tibi-server #42–#48, tibi-admin-nova #2–#5, tibi-types #3/#4 |
|
||||
|
||||
**Neue Werkzeuge:** `scripts/audit-docs.mjs` (Struktur-/Link-/Bildprüfung, `plans/audit-report.json`),
|
||||
`scripts/gen-schema-matrix.mjs` (`npm run gen:schemas` → `reference/schema-properties.md`).
|
||||
|
||||
+16
-14
@@ -1,35 +1,37 @@
|
||||
# Offene Punkte in den Nachbar-Repos (bereit zum Anlegen als Issue)
|
||||
|
||||
Stand: 2026-10-17. Alle Punkte sind am Code belegt und aus dem Doku-Audit entstanden
|
||||
Stand: 2026-10-17 · **alle 13 Issues sind angelegt** (Gitea, Repos `cms/tibi-server`, `cms/tibi-admin-nova`, `cms/tibi-types`); Nummer je Zeile in der ersten Spalte.
|
||||
|
||||
Stand: 2026-10-17 (erste Fassung). Alle Punkte sind am Code belegt und aus dem Doku-Audit entstanden
|
||||
(`plans/doku-audit.md`). Je Eintrag: Titel für das Issue, Repo, Beleg, Auswirkung, Vorschlag.
|
||||
|
||||
## tibi-server
|
||||
|
||||
| # | Titel | Beleg | Auswirkung | Vorschlag |
|
||||
|---|---|---|---|---|
|
||||
| S1 | Doppelte Struct-Tags in `AdminToken` | `internal/models/project.go:116-122` — `Token string \`yaml:"token" yaml:"token"\`` (ebenso `AllowReload`, `AllowRegenerateSearch`, `AllowBackup`, `allowSnapshots`) | Der zweite Tag ist wirkungslos; Copy-Paste-Fehler bei künftigen Feldern | zweiten Tag entfernen |
|
||||
| S2 | Header-Name mit Doppelpunkt | `internal/controller/collection_get.go:32` — `c.Header("Content-Range:", …)` | Antwort enthält einen Header mit ungültigem Namen; Clients können die Zeilenanzahl nicht lesen | auf `Content-Range` ändern (Breaking: Clients, die den Tippfehler kennen, prüfen) |
|
||||
| S3 | Hook-Kontext: Typo `reponse.header` | `internal/hook/context_response.go` | Falsches Symbol in der Hook-API; nur der Alias hält es am Leben | umbenennen, Alias eine Minor-Version behalten |
|
||||
| S4 | `mcp.route`/`MCP_ROUTE` wirkungslos | `internal/config/server.go:221-224` (Feld/Env) vs. `internal/controller/setup.go:754-755` (fest `/mcp`) | Konfiguration suggeriert Steuerbarkeit, die es nicht gibt | Env entfernen oder Routing darauf umstellen |
|
||||
| S5 | `docs/24-ephemeral-rest-tokens.md` ohne Code | kein Treffer für `ephemeral` in `internal/` | Doku beschreibt eine Fähigkeit, die es nicht gibt | implementieren oder Doc löschen |
|
||||
| S6 | `internal/mgocrud.old/` toter Code | Verzeichnis | Verwirrung bei Neueinsteigern | löschen |
|
||||
| S7 | `audit.defaultTTL`-Semantik unklar dokumentiert | `internal/mongocrud/mongo.go:477` (`if index.ExpireAfter > 0`) — `0` ⇒ **kein** TTL-Index ⇒ Einträge bleiben ewig | Betreiber erwarten bei `0` sofortiges Verfallen | Kommentar + Server-Doc: `0` = kein Ablauf |
|
||||
| S1 **#42** | Doppelte Struct-Tags in `AdminToken` | `internal/models/project.go:116-122` — `Token string \`yaml:"token" yaml:"token"\`` (ebenso `AllowReload`, `AllowRegenerateSearch`, `AllowBackup`, `allowSnapshots`) | Der zweite Tag ist wirkungslos; Copy-Paste-Fehler bei künftigen Feldern | zweiten Tag entfernen |
|
||||
| S2 **#46** | Header-Name mit Doppelpunkt | `internal/controller/collection_get.go:32` — `c.Header("Content-Range:", …)` | Antwort enthält einen Header mit ungültigem Namen; Clients können die Zeilenanzahl nicht lesen | auf `Content-Range` ändern (Breaking: Clients, die den Tippfehler kennen, prüfen) |
|
||||
| S3 **#44** | Hook-Kontext: Typo `reponse.header` | `internal/hook/context_response.go` | Falsches Symbol in der Hook-API; nur der Alias hält es am Leben | umbenennen, Alias eine Minor-Version behalten |
|
||||
| S4 **#43** | `mcp.route`/`MCP_ROUTE` wirkungslos | `internal/config/server.go:221-224` (Feld/Env) vs. `internal/controller/setup.go:754-755` (fest `/mcp`) | Konfiguration suggeriert Steuerbarkeit, die es nicht gibt | Env entfernen oder Routing darauf umstellen |
|
||||
| S5 **#45** | `docs/24-ephemeral-rest-tokens.md` ohne Code | kein Treffer für `ephemeral` in `internal/` | Doku beschreibt eine Fähigkeit, die es nicht gibt | implementieren oder Doc löschen |
|
||||
| S6 **#47** | `internal/mgocrud.old/` toter Code | Verzeichnis | Verwirrung bei Neueinsteigern | löschen |
|
||||
| S7 **#48** | `audit.defaultTTL`-Semantik unklar dokumentiert | `internal/mongocrud/mongo.go:477` (`if index.ExpireAfter > 0`) — `0` ⇒ **kein** TTL-Index ⇒ Einträge bleiben ewig | Betreiber erwarten bei `0` sofortiges Verfallen | Kommentar + Server-Doc: `0` = kein Ablauf |
|
||||
|
||||
## tibi-admin-nova
|
||||
|
||||
| # | Titel | Beleg | Auswirkung | Vorschlag |
|
||||
|---|---|---|---|---|
|
||||
| A1 | Fehlende Übersetzung im Tastenkürzel-Overlay | sichtbar im Mock-Overlay: der Key `admin.commandPalette.commands.toggleUsers` erscheint unübersetzt; `frontend/src/lib/i18n/locales/de.json` | Anwender sieht einen technischen Schlüssel | String ergänzen |
|
||||
| A2 | Teilweise englische Hinweise im Backup-Dialog | Mock-Backup-Import zeigt „target has new fields…" | Sprachbruch im deutschen UI | Strings übersetzen |
|
||||
| A3 | Wiederherstellen-Dialog nur bei Änderungen sichtbar | `AuditRestoreDialog.svelte` — Feldauswahl erscheint nur bei ungespeicherten Änderungen, sonst „Keine Änderungen" | Doku muss den Sonderfall erklären; im Audit erwähnt | Hinweistext im UI prüfen |
|
||||
| A4 | Actions fehlen im Mock-Projekt `corporate` | `frontend/assets/mock/_config/corporate/config.yml` hatte keinen `actions`-Block (nur `t1`) | Screenshots/Reviews ohne aussagekräftiges Demo-Projekt (erledigt in der Doku-Arbeit, s. u.) | übernommen: `actions/reindex-search.yml` + `meta.exports` in `corporate` ergänzt |
|
||||
| A1 **#5** | Fehlende Übersetzung im Tastenkürzel-Overlay | sichtbar im Mock-Overlay: der Key `admin.commandPalette.commands.toggleUsers` erscheint unübersetzt; `frontend/src/lib/i18n/locales/de.json` | Anwender sieht einen technischen Schlüssel | String ergänzen |
|
||||
| A2 **#2** | Teilweise englische Hinweise im Backup-Dialog | Mock-Backup-Import zeigt „target has new fields…" | Sprachbruch im deutschen UI | Strings übersetzen |
|
||||
| A3 **#4** | Wiederherstellen-Dialog nur bei Änderungen sichtbar | `AuditRestoreDialog.svelte` — Feldauswahl erscheint nur bei ungespeicherten Änderungen, sonst „Keine Änderungen" | Doku muss den Sonderfall erklären; im Audit erwähnt | Hinweistext im UI prüfen |
|
||||
| A4 **#3** | Actions fehlen im Mock-Projekt `corporate` | `frontend/assets/mock/_config/corporate/config.yml` hatte keinen `actions`-Block (nur `t1`) | Screenshots/Reviews ohne aussagekräftiges Demo-Projekt (erledigt in der Doku-Arbeit, s. u.) | übernommen: `actions/reindex-search.yml` + `meta.exports` in `corporate` ergänzt |
|
||||
|
||||
## tibi-types
|
||||
|
||||
| # | Titel | Beleg | Auswirkung | Vorschlag |
|
||||
|---|---|---|---|---|
|
||||
| T1 | Keine Doku im Repo | kein `docs/`-Verzeichnis, nur `index.d.ts` + `schemas/config/*.json` | Projektentwickler finden die Schemas nur über die zentrale Doku; Schema-Beschreibungen sind oft englisch und knapp | README mit Schema-Übersicht + Verweis auf `tibi-docs`; Beschreibungen pflegen |
|
||||
| T2 | Schema-Beschreibungen teils englisch | `schemas/config/*.json` (`description`) | Deutsche Doku muss jeden Text selbst übersetzen | Feld-Beschreibungen zweisprachig oder deutsch |
|
||||
| T1 **#4** | Keine Doku im Repo | kein `docs/`-Verzeichnis, nur `index.d.ts` + `schemas/config/*.json` | Projektentwickler finden die Schemas nur über die zentrale Doku; Schema-Beschreibungen sind oft englisch und knapp | README mit Schema-Übersicht + Verweis auf `tibi-docs`; Beschreibungen pflegen |
|
||||
| T2 **#3** | Schema-Beschreibungen teils englisch | `schemas/config/*.json` (`description`) | Deutsche Doku muss jeden Text selbst übersetzen | Feld-Beschreibungen zweisprachig oder deutsch |
|
||||
|
||||
**Bereits in der Doku-Arbeit umgesetzt (nur zur Info, kein Issue):** Mock-Projekt `corporate` hat jetzt
|
||||
eine Aktion (`Suchindex neu aufbauen`) und zwei Export-Einträge (`Seiten-Report`, `Seiten-CSV`), damit
|
||||
|
||||
@@ -37,3 +37,16 @@ Verbindlich für den Agenten, der T-SHOTS ausführt. Stand: 2026-10-16.
|
||||
3. Zuschneiden auf Inhalt (keine Browser-Chrome-Ränder außer wo nötig), komprimieren (<200 KB).
|
||||
4. In die Seiten einsetzen (Kommentar ersetzen), Alt-Texte deutsch („Anmeldemaske von tibi-admin mit ...").
|
||||
5. `npm run build` prüfen. Abnahme: Testleser erkennt jeden Schritt am Bild wieder.
|
||||
|
||||
## Bewusst offene Motive (Hinweise für spätere Runden)
|
||||
|
||||
Stand 2026-10-17: Alle Anwender- und Admin-Seiten haben mindestens ein Bild (66 Bilder, alle aus
|
||||
`corporate`). Zwei Motive sind **im Mock nicht darstellbar** und bleiben als Kommentar-Hinweis in der
|
||||
jeweiligen Seite stehen — bitte nicht „irgendwie" aus `t1` oder einem anderen Projekt erzeugen:
|
||||
|
||||
| Seite | Motiv | Grund (am Code belegt) |
|
||||
|---|---|---|
|
||||
| `anwender/anmelden.md` | Hinweisdialog „Sitzung läuft ab" | `frontend/src/lib/utils/inactivityTracker.ts:47` schaltet den Inaktivitäts-Tracker im Mock-Modus per `isMockMode()` auf No-op — der Dialog kann offline nie auslösen |
|
||||
| `anwender/lesen-suchen-filtern.md` | Hinweis „Suchindex wird aufgebaut" | `frontend/src/lib/mock/interceptor.ts:3073-3080` liefert `_queue > 0` nur bei `ngram`/`vector`-Suche plus `_searchPending`; `corporate` hat keine `search`-Config (nur `t1/products.json`, verboten) |
|
||||
|
||||
Weitere, inzwischen bebilderte Motive und ihre Belege stehen in `plans/doku-audit.md` §18 (Wellen E und G).
|
||||
Reference in new issue
Block a user