- Design-System (assets/css/design-system.css) mit 21 Komponenten, iPad-Responsive-Breakpoints, Touch-Ziele 36px, Music-Player, Glossar-Tooltips - Templates (sims/template.html + student/teacher-Dashboard) - Docs: module-interface.md (inkl. 4a Sprachregel, 4b Leichte Sprache, 4c iPad), content-architecture.md, crash-recovery.md, music-registry.md - Admin-Infrastruktur: admin-modules.html + api/admin-modules.php (Titel, Emoji, Bild, Status, Dauer, Alter pro Modul) - Inbox-System: _inbox/README.md + _status.md fuer Atlas + Briefings an Klima, Glossar, Lehrplan, Fluss - Zentrale SFX-Pipeline (scripts/generate-sounds.py) - DALL-E-Bilder: 8 Badges + 5 Glossar-Repraesentationsbilder (Querformat) - Logo + Inter-Font lokal - PHP-APIs: admin, glossar, levels, licenses, progress, waypoints, assignments, profile, tickets - Spielsprache entfernt (admin-modules, admin-levels, schueler) - Landing-Page-Bearbeitungen (Boote sichtbarer, Button-Hintergrund) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
4.9 KiB
Crash-Recovery-Protokoll
Was tun, wenn Windows, VS Code oder der Rechner abstürzen und alle Claude-Sessions weg sind? Hier die Schritt-für-Schritt-Anleitung.
Was überlebt einen Absturz immer
- Alle Code-Dateien auf der Platte
- Alle Inbox-Nachrichten (Markdown in
App/sims/_inbox/) - Alle Memory-Einträge von Atlas (
~/.claude/projects/.../memory/) - Alle DB-Inhalte (MySQL)
- Alle Git-Commits (lokal im
.git/-Ordner) - Die _status.md jeder Instanz (siehe unten)
Was verloren geht
- Der laufende Chat jeder Instanz
- Kontext, den eine Instanz im Kopf hatte (welche Dateien gerade gelesen, welche Gedanken gerade offen)
Wiederherstellung — Schritt für Schritt
1. Atlas (Plattform-Zentrale) reaktivieren
Starte eine neue Claude-Code-Session im Projektordner. Erster Prompt:
Du bist Atlas, die Plattform-Zentrale. Lies als erstes:
1. ~/.claude/projects/c--xampp-htdocs-geograsim/memory/MEMORY.md
2. App/sims/_inbox/zentrale/ (neuste 10 Nachrichten)
Dann melde dich bei mir mit einem Statusbericht: Welche Module aktiv,
welche Aufträge offen, welche Probleme drohen.
2. Aktive Modul-Instanzen reaktivieren
Für jede Instanz (Klima, Fluss, Glossar, Lehrplan) — neue Session, erster Prompt:
Du bist die {Name}-Instanz im GeoGraSim-Projekt. Lies als erstes:
1. App/sims/_inbox/{ordner}/_status.md (falls vorhanden — aktueller Stand)
2. App/sims/_inbox/{ordner}/ (neuste Nachrichten, chronologisch)
3. App/docs/module-interface.md (wenn du das Interface neu brauchst)
Melde dich dann bei Thomas mit: "Hier {Name}, habe Stand rekonstruiert,
arbeite an {Task}, als nächstes {Next-Step}."
Mapping Name → Ordner:
- Atlas →
_inbox/zentrale/ - Klima →
_inbox/klima/ - Glossar →
_inbox/glossar/ - Lehrplan →
_inbox/content/ - Fluss →
_inbox/fluss/
3. Git-Stand prüfen
cd c:/xampp/htdocs/geograsim
git status
git log --oneline -10
Falls uncommittete Änderungen da sind: die Instanz, die dran war, muss entscheiden, ob sie sie übernimmt oder verwirft. Im Zweifel erst committen, dann Instanz Stand lesen lassen.
4. Prüfe auf laufende Background-Tasks
Manchmal laufen Python-Scripts (Audio-Generierung, DB-Seeds) im Hintergrund. Nach Crash sind die tot — einfach neu starten.
Status-Datei _status.md
Jede Instanz führt eine _status.md in ihrer eigenen Inbox. Struktur:
---
instanz: klima
zuletzt_aktualisiert: 2026-04-18 22:45
session_id: informell (z.B. "engine-refactor-phase-1")
---
# Aktueller Stand
## Wo ich stehe
Schritt 2 fertig (Engine extrahiert, 2D umgestellt).
Schritte 3-5 (3D V2) offen.
## Zuletzt geänderte Dateien
- App/sims/klima/engine.js (neu)
- App/sims/klima/game-2d.html (refactored, −515 Zeilen)
## Als nächstes
Schritt 3: game-3d.html V2 aufbauen, Three.js per CDN, Three.js-Szene
aus V1 portieren.
## Offene Entscheidungen
- 2D/3D-Toggle auf modul-klima.php (mit Lehrplan abstimmen)
## Blocker
Keine.
Updates:
- Bei jedem grösseren Fortschritt überschreiben (nicht append)
- Am Session-Ende definitiv aktualisieren
- Bei Pause/Übergabe ebenfalls
Atlas pflegt seine Status-Datei in _inbox/zentrale/_status.md.
Commit-Konvention
Wer committet
- Atlas committet projektweite Änderungen (Design-System, APIs, Admin, gemeinsame Docs)
- Jede Modul-Instanz committet ihre eigenen Änderungen (App/sims//, App/pages/.php, modul-spezifische Assets)
Wann committen
Pflicht:
- Am Ende jeder Arbeits-Session (auch wenn unfertig)
- Nach jedem bedeutenden Meilenstein (neues Feature, Phase abgeschlossen)
- Vor jedem Kontext-Wechsel (neue Session übernimmt)
Empfohlen:
- Täglich mindestens einmal
- Nach grösseren Refactorings
- Bevor riskante Experimente starten
Commit-Message-Format
<Instanz>: <Kurzbeschreibung>
<Längere Erklärung falls nötig — was und warum>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Beispiele:
Klima: Engine extrahiert (Schritt 1-2)
Klima: WIP 3D V2, Three.js-Setup + Insel-Geometrie
Fluss: Phase 1 fertig - PHP-Wrapper + leeres Canvas
Atlas: Music-Registry erweitert um Drama-Slot
Glossar: 5 Repräsentationsbilder im Querformat
Commit-Befehl
cd c:/xampp/htdocs/geograsim
git add <dateien>
git commit -m "<Instanz>: <Kurzbeschreibung>"
# Kein push — lokal reicht (kein Remote eingerichtet)
Optional: Remote-Backup
Momentan kein Remote eingerichtet. Bei Festplatten-Defekt wäre alles verloren. Möglichkeiten (entscheidet Thomas):
- Eigener Server (geograsim.at hat SSH): Meister-Instanz kann ein
Bare-Repo in
/root/git/geograsim.giteinrichten. Danngit pushals Backup. - Externe Platte:
robocopynach USB-HDD, täglich. - Keine Cloud-Dienste (Thomas hat GitHub abgelehnt).
Atlas schlägt vor, irgendwann Option 1 einzurichten. Nicht akut, aber planbar.