docs(history): migrate this repo to docs/history + log session
Some checks failed
CI / Lint & self-test (push) Has been cancelled

Dogfood des neuen Standards: git mv history/ -> docs/history/ (7 Dateien, Rename-Detection erhalten). Session-Log um Prompt 7 (History-Umzug) ergaenzt und PROJECT_CONTEXT am neuen Ort aktualisiert (Pfade, neue Eintraege, Architekturentscheidungen).
This commit is contained in:
Conrad Schulz 2026-06-10 12:14:52 +02:00
parent 2b20a985a5
commit 5dc89f01a7
7 changed files with 42 additions and 7 deletions

View file

@ -114,10 +114,42 @@ Anschließend alle freigegebenen WPs in 4 Phasen umgesetzt und je Phase committe
`init-copilot`, `--with-self-update-hook`, neue Editionen). Tote IP `init-copilot`, `--with-self-update-hook`, neue Editionen). Tote IP
`192.168.178.6` aus der Doku entfernt. MAINTAINER: CI/selftest + neue Fallstricke. `192.168.178.6` aus der Doku entfernt. MAINTAINER: CI/selftest + neue Fallstricke.
### Prompt 7
Können wir die history in die docs verschieben und einen migrationspfad für bestehende repos anlegen um alles etwas aufgeräumter zu haben.
### Antwort 7
Konvention `history/``docs/history/` umgesetzt (prompts + summary/PROJECT_CONTEXT.md).
Nutzer-Entscheidungen (Rückfrage): Migration **automatisch in `copilot-update`**, Hook **harter Cutover** auf `docs/history/`.
Umgesetzt:
- `git-templates/hooks/pre-commit`: Check 4 (`docs/history/summary/PROJECT_CONTEXT.md`), Check 6 (`docs/history/prompts/*_session.md`), `history/` aus CODE_CHANGED-Exclusion entfernt (durch `docs/` abgedeckt).
- Alle 6 Skripte: `deploy.{sh,fish}` + `copilot-bootstrap.{sh,fish}` (Template-Pfade `docs/history`), `copilot-update.{sh,fish}` (Template-Pfade + **Auto-Migrations-Block**: `history/``docs/history/` via `git mv`, Fallback `mv`; bei beiden vorhanden Warnung statt Abbruch). `selftest.sh` Pfade angepasst.
- `git mv git-templates/history → git-templates/docs/history`; „gitignored"-Tippfehler im Template-MAINTAINER korrigiert.
- `user-settings/settings.json` (Agent Session Protocol), `prompts/history.prompt.md`, beide `copilot-instructions.md`, `README.md`, `docs/USER/ADMIN/MAINTAINER.md` (+ ADMIN-Migrationsabschnitt).
- Dogfood: `git mv history → docs/history` in diesem Repo (alle 7 Dateien mit Rename-Detection).
Verifikation:
```sh
/tmp/shellcheck scripts/*.sh git-templates/hooks/* # clean
for f in scripts/*.fish; fish -n $f; end # clean
python3 /tmp/check_jsonc.py # settings.json (JSONC) OK
sh scripts/selftest.sh # PASS sh + fish
sh /tmp/migration_test.sh $PWD # PASS sh + fish + both-present
```
Migrationstest-Ergebnis:
```
PASS: sh history/ -> docs/history/ migriert
PASS: fish history/ -> docs/history/ migriert
PASS: both-present Warnung, history/ unangetastet
```
Commits: `2b20a98` (Konvention+Tooling), Dogfood-Move + dieser Log-Eintrag im Folgecommit.
## Ergebnis ## Ergebnis
- 5 Commits (`80b6248`, `5890bff`, `9e14a5f`, `deca872`, `afd5b38`) + dieser History-Commit. - Portabilität: 5 Commits (`80b6248`, `5890bff`, `9e14a5f`, `deca872`, `afd5b38`) + History-Commit.
- Alle Skripte shellcheck-sauber und `fish -n`-sauber; selftest grün (sh+fish). - History-Umzug: `history/``docs/history/` (Commit `2b20a98` + Dogfood-Folgecommit), inkl. Auto-Migration für bestehende Repos.
- Alle Skripte shellcheck-sauber und `fish -n`-sauber; selftest + Migrationstest grün (sh+fish).
- Keine hartkodierte Infrastruktur mehr in Skripten; Standard-`git init`/`clone` unberührt. - Keine hartkodierte Infrastruktur mehr in Skripten; Standard-`git init`/`clone` unberührt.
## Entscheidungen ## Entscheidungen

View file

@ -8,7 +8,7 @@
## Aktueller Projektstatus ## Aktueller Projektstatus
**Letzte Aktualisierung:** 2026-06-10 Portabilität & Universalität (WP17, 11, 12): konfigurierbares/offline Remote, Opt-in `git init-copilot`, CI + selftest, Doku **Letzte Aktualisierung:** 2026-06-10 Agent-History nach `docs/history/` verschoben (+ Auto-Migration für bestehende Repos); zuvor Portabilität (WP17,11,12)
**Phase:** Produktion / stabil wird bei Bedarf erweitert **Phase:** Produktion / stabil wird bei Bedarf erweitert
--- ---
@ -29,6 +29,7 @@ Quality Gate aus.
| Datum | Aufgabe | Ergebnis | Entscheidungen | | Datum | Aufgabe | Ergebnis | Entscheidungen |
|---|---|---|---| |---|---|---|---|
| 2026-06-10 | Agent-History → `docs/history/` + Auto-Migration | pre-commit Cutover, alle Skripte, settings/prompt/instructions/docs; `git mv` dieses Repos | `2b20a98` + Dogfood |
| 2026-06-10 | WP12 Doku-Portabilität | README/USER/ADMIN/MAINTAINER: env/config, init-copilot, offline; tote IP raus | `afd5b38` | | 2026-06-10 | WP12 Doku-Portabilität | README/USER/ADMIN/MAINTAINER: env/config, init-copilot, offline; tote IP raus | `afd5b38` |
| 2026-06-10 | WP11 CI + selftest | `.github/workflows/ci.yml` (shellcheck+fish -n+selftest), `scripts/selftest.sh` | `deca872` | | 2026-06-10 | WP11 CI + selftest | `.github/workflows/ci.yml` (shellcheck+fish -n+selftest), `scripts/selftest.sh` | `deca872` |
| 2026-06-10 | WP6/7/4 deploy nicht-invasiv | kein globales init.templateDir/init-Alias; Opt-in init-copilot; post-merge nur mit Flag | `9e14a5f` | | 2026-06-10 | WP6/7/4 deploy nicht-invasiv | kein globales init.templateDir/init-Alias; Opt-in init-copilot; post-merge nur mit Flag | `9e14a5f` |
@ -65,7 +66,7 @@ Quality Gate aus.
| `copilot-instructions.md` nur bei TODO überschreiben | User-Content bleibt erhalten; Backup `.bak` wird erstellt | `scripts/copilot-update.sh` | | `copilot-instructions.md` nur bei TODO überschreiben | User-Content bleibt erhalten; Backup `.bak` wird erstellt | `scripts/copilot-update.sh` |
| post-merge Hook in bootstrapped Repos: opt-in | Kein Overhead bei jedem `git pull` in anderen Repos | `scripts/copilot-bootstrap.sh --with-update-hook` | | post-merge Hook in bootstrapped Repos: opt-in | Kein Overhead bei jedem `git pull` in anderen Repos | `scripts/copilot-bootstrap.sh --with-update-hook` |
| Setup-Repo selbst: post-merge Hook auto-installed | `deploy.sh` nach jedem `git pull` auf Setup-Repo | `scripts/deploy.sh` Block 7 | | Setup-Repo selbst: post-merge Hook auto-installed | `deploy.sh` nach jedem `git pull` auf Setup-Repo | `scripts/deploy.sh` Block 7 |
| `history/prompts/` committed | Lückenlose Projekt-History im Repo | `docs/MAINTAINER.md` | | `docs/history/prompts/` committed | Lückenlose Projekt-History im Repo | `docs/MAINTAINER.md` |
| `data/` gitignored | Persistente Daten: Größe + Sicherheit | `docs/ADMIN.md` | | `data/` gitignored | Persistente Daten: Größe + Sicherheit | `docs/ADMIN.md` |
| POSIX sh für Bootstrap | Läuft überall ohne Abhängigkeiten | `docs/MAINTAINER.md` | | POSIX sh für Bootstrap | Läuft überall ohne Abhängigkeiten | `docs/MAINTAINER.md` |
| Git-Alias statt Fish-Wrapper | Portabel: bash, sh, CI, GUI-Clients | `docs/MAINTAINER.md` | | Git-Alias statt Fish-Wrapper | Portabel: bash, sh, CI, GUI-Clients | `docs/MAINTAINER.md` |
@ -75,6 +76,8 @@ Quality Gate aus.
| Remote konfigurierbar (env/Config) + Offline-Modus | Keine hartkodierte Infrastruktur; läuft ohne Netz, graceful skip (exit 0) | `scripts/copilot-update.{sh,fish}` | | Remote konfigurierbar (env/Config) + Offline-Modus | Keine hartkodierte Infrastruktur; läuft ohne Netz, graceful skip (exit 0) | `scripts/copilot-update.{sh,fish}` |
| `detect_vscode_user_dir` dupliziert statt geteilt | Skripte laufen standalone aus `~/.local/bin` → keine sourcebare Lib | alle 4 Skripte | | `detect_vscode_user_dir` dupliziert statt geteilt | Skripte laufen standalone aus `~/.local/bin` → keine sourcebare Lib | alle 4 Skripte |
| CI: shellcheck + fish -n + selftest | Verhindert Regressionen in den Shell-Skripten | `.github/workflows/ci.yml`, `scripts/selftest.sh` | | CI: shellcheck + fish -n + selftest | Verhindert Regressionen in den Shell-Skripten | `.github/workflows/ci.yml`, `scripts/selftest.sh` |
| Agent-History unter `docs/history/` | Aufgeräumte Struktur (alles Doku-Artefakte unter docs/); Cutover statt Dual-Pfad | pre-commit, alle Skripte |
| Auto-Migration `history/``docs/history/` in copilot-update | Bestehende Repos ziehen ohne manuellen Eingriff nach (git mv, Fallback mv) | `scripts/copilot-update.{sh,fish}` |
--- ---
@ -82,8 +85,8 @@ Quality Gate aus.
- **Requirements:** `docs/requirements/REQUIREMENTS.md` (committed, immer aktuell halten!) - **Requirements:** `docs/requirements/REQUIREMENTS.md` (committed, immer aktuell halten!)
- **Persistente Daten:** `/data/` (gitignored, nie committen!) - **Persistente Daten:** `/data/` (gitignored, nie committen!)
- **Agent-Logs (voll):** `/history/prompts/` (committed vollständige History bleibt erhalten) - **Agent-Logs (voll):** `/docs/history/prompts/` (committed vollständige History bleibt erhalten)
- **Dieser Kontext:** `/history/summary/PROJECT_CONTEXT.md` (committed) - **Dieser Kontext:** `/docs/history/summary/PROJECT_CONTEXT.md` (committed)
- **Deploy:** `bash scripts/deploy.sh` oder `fish scripts/deploy.fish` - **Deploy:** `bash scripts/deploy.sh` oder `fish scripts/deploy.fish`
- **Bootstrap einzelnes Repo:** `sh ~/.local/bin/copilot-bootstrap.sh [/pfad/zum/repo]` - **Bootstrap einzelnes Repo:** `sh ~/.local/bin/copilot-bootstrap.sh [/pfad/zum/repo]`
- **Bootstrap mit Auto-Update-Hook:** `sh ~/.local/bin/copilot-bootstrap.sh --with-update-hook [/pfad]` - **Bootstrap mit Auto-Update-Hook:** `sh ~/.local/bin/copilot-bootstrap.sh --with-update-hook [/pfad]`
@ -98,7 +101,7 @@ Quality Gate aus.
1. Diese Datei gelesen? Gut du kennst den Stand. 1. Diese Datei gelesen? Gut du kennst den Stand.
2. Neues Feature → `git-templates/` anpassen → `deploy.sh` ausführen → committen 2. Neues Feature → `git-templates/` anpassen → `deploy.sh` ausführen → committen
3. Nach jeder Session: `history/prompts/YYYY-MM-DD_beschreibung.md` anlegen + diese Datei aktualisieren 3. Nach jeder Session: `docs/history/prompts/YYYY-MM-DD_beschreibung_session.md` anlegen + diese Datei aktualisieren
--- ---