Files
geograsim/App/docs/crash-recovery.md
T
Adminator 9a61f55cb1 Atlas: Infrastruktur + Team-Konventionen + Sprachregel Lernarbeit
- 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>
2026-04-19 11:51:14 +02:00

4.9 KiB
Raw Blame History

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):

  1. Eigener Server (geograsim.at hat SSH): Meister-Instanz kann ein Bare-Repo in /root/git/geograsim.git einrichten. Dann git push als Backup.
  2. Externe Platte: robocopy nach USB-HDD, täglich.
  3. Keine Cloud-Dienste (Thomas hat GitHub abgelehnt).

Atlas schlägt vor, irgendwann Option 1 einzurichten. Nicht akut, aber planbar.