Files
geograsim/STATUS-2026-05-16-NACHTSCHICHT.md
Adminator 1e51ef7def Nachtrag: alle bisher untracked Ordner + hängende Änderungen mit-committen
- Konzept/, didaktik_geografie/, didaktik_simulation/, v2-modules/, v2-platform/
- 12 code-workspace-Files
- STATUS-*.md
- viele M/D/R-Änderungen an bereits getrackten Files
- .gitignore verstärkt: **/.humaninput/, **/secret_keys.txt

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-07-08 02:27:02 +02:00

9.2 KiB

Atlas-Nachtschicht 2026-05-16

Auftrag: „Größerer Brocken" autonom, während Thomas schläft. Regel: V1 nicht anfassen, nichts deployen, nichts in DB ausführen. Ergebnis: V2-Plattform-Skelett + Mock + Beispiel-Modul + 12 Briefings + V2-A11y-Design-System. Alles lokal, alles in v2-platform/ und v2-modules/, nichts in App/ außer Inbox-Mails.


TL;DR — was du wissen musst

  1. V2-Spec ist um zwei Punkte ergänzt: Glossar-Schwerpunkte (max ~10) statt aller Begriffe, Multi-Locale-fähig (heute nur AT gefüllt). Deine Review-Punkte mit [REVIEW]: sind weiterhin offen.

  2. V2-Plattform-Skelett steht: PHP-Bootstrap, JWT-light-Auth, 8 API-Endpoints, DB-Schema mit allen V2-Tabellen (additiv, nicht ausgeführt). Liegt in v2-platform/.

  3. Mock-Plattform läuft: DB-frei, mit drei Test-Schüler*innen (Standard, Easy-Sprache, voll-A11y). Modul-Instanzen können sofort gegen die Mock entwickeln.

  4. Beispiel-Modul hallo-welt ist komplett: Manifest, i18n, Card-SVG, Game-HTML mit voller Telemetry/A11y/Easy-Sprache, Mock-Test-Harness. Lebende Referenz für alle Modul-Instanzen.

  5. 12 Briefing-Mails an alle aktiven Modul-Instanzen. Jede mit modul-spezifischen Hinweisen. Sie wissen jetzt: nicht in alten V2-Pfaden weiterbauen, Spec lesen, Mock ausprobieren.

  6. V2-Design-System (design-system-v2.css) mit allen Tokens inkl. High-Contrast-Mode, A11y-Pattern, iPad-Pflicht-Modal-Pattern.


Was lokal NEU ist (du kannst es alles lesen, nichts läuft)

V2-Plattform — v2-platform/ (32 Files)

v2-platform/
├── README.md, .env.example, .gitignore, .htaccess
├── db/init.sql                  ← 16 V2-Tabellen, additiv, IF NOT EXISTS
├── php/
│   ├── config.php, bootstrap.php
│   ├── lib/
│   │   ├── auth.php             ← JWT-light HMAC-SHA256
│   │   ├── db.php               ← PDO-Wrapper
│   │   ├── response.php         ← JSON-Helpers
│   │   └── validation.php
│   └── api/
│       ├── student/me.php             ← GET — Profil
│       ├── module/state.php           ← GET + PUT — Resume-State
│       ├── result.php                 ← POST — Endergebnis (Transaction!)
│       ├── telemetry.php              ← POST — Heartbeat/Milestone/Stuck/A11y
│       ├── artifact.php               ← POST — Multipart-Upload
│       ├── glossary.php               ← GET — liest aus V1-glossar-Tabelle
│       ├── lehrplan/anker.php         ← GET — Lehrplan-Anker
│       └── teacher/live-stream.php    ← Server-Sent-Events für Cockpit
├── assets/css/design-system-v2.css    ← V2-Tokens + A11y + High-Contrast
└── mock/                              ← DB-freie Sandbox (Phase B)
    ├── README.md, .htaccess, issue-token.php
    ├── api/{student,module,result,telemetry,glossary,lehrplan/anker}.php
    └── lib/{bootstrap, log, test-data}.php

Lokal ausprobieren:

# 1. .env.local anlegen (aus .env.example kopieren)
# 2. DB-Schema einspielen — NUR LOKAL!
mysql -u root geograsim < v2-platform/db/init.sql

# 3. XAMPP starten, dann:
http://localhost/geograsim/v2-platform/mock/issue-token.php?student=42
# → Token kopieren

http://localhost/geograsim/v2-modules/hallo-welt/tests/mock-platform.html
# → komplette Demo mit Live-Telemetry-Logs rechts

Beispiel-Modul — v2-modules/hallo-welt/

v2-modules/hallo-welt/
├── manifest.json                ← alle Pflichtfelder, Spec-Vertrag 1
├── README.md                    ← Doku für Modul-Instanzen zum Abschauen
├── public/
│   ├── game.html                ← komplette Mini-App (~400 Zeilen)
│   ├── assets/card.svg          ← Cockpit-Karten-Bild
│   └── i18n/
│       ├── de-AT-standard.json
│       └── de-AT-easy.json
├── db/migrations.sql            ← leer (keine eigenen Tabellen)
└── tests/mock-platform.html     ← Standalone-Test-Harness

Demonstriert alle 6 Spec-Verträge: Manifest, Input (Token + Profil), Output (Result-POST), Telemetry (Heartbeat 15s, 3 Milestones, Stuck 90s), Lieferformat, Plattform-Standards (A11y voll, Easy-Sprache, keine Spielsprache, iPad-Pattern, sticky Modal-Actions, Reduced-Motion, High-Contrast-Toggle, Keyboard-Navigation, ARIA).

12 Briefing-Mails — App/sims/_inbox/<modul>/2026-05-16-0330-v2-arbeitsmodell-briefing.md

An: heli, klima, glossar, logistik, busfahrt, farmer, energiemanager, sonnensystem, entscheidungstag, lehrplan, fluss, eu-werkstatt.

Jede Mail enthält:

  • Was sich ändert (V2-Modell, Standalone, Spec)
  • Was sie JETZT NICHT tun sollen (V1 anfassen, alte V2-Pfade)
  • Was sie JETZT TUN sollen (Spec lesen, Beispiel ansehen, Mock testen)
  • Modul-spezifische Hinweise

Sonderrollen:

  • Glossar — wird Plattform-Service via API, kein klassisches Modul
  • Lehrplan — gleich, plus Auftrag: Anker mit Land-Prefix migrieren
  • Sonnensystem — Forschungs-Pilot für Stufe-3-A11y (Audio-First)
  • Fluss & EU-Werkstatt — Status klären zuerst (unklare Aktivität)

Spec-Updates (zwei Punkte)

In module-manifest.md:

  • glossarBegriffeglossarSchwerpunkte (max 10, Validierung im Konformitäts-Check)
  • lehrplanAnker jetzt mit Land-Prefix (AT-GW-1.4.2)
  • Multi-Locale-Hinweis im supportedLanguages-Block
  • 16 [REVIEW]-Punkte aus den vorigen Iterationen sind weiterhin drin und warten auf dich

In input-api.md:

  • /api/student/me liefert locale + country + erweiterte A11y-Settings
  • Locale-Code-Format dokumentiert

In README.md + Verweis von Lehrplan-Anker-Anleitung:

  • Land-Prefix-Konvention dokumentiert

Was ich NICHT angefasst habe (bewusst)

  • Kein V1-Code in App/sims/, App/pages/, App/php/ etc.
  • Kein Deploy auf den Server
  • Keine DB-Migration ausgeführt — nur SQL-File geschrieben
  • Keine API-Keys committed (.env.local ist gitignored)
  • Kein Modul-Code von Schwester-Instanzen
  • Keine Spec-Änderung an strukturellen Dingen, die du noch nicht freigegeben hast

Bekannte Limitierungen / TODOs

  1. Cockpit-UIs (Lehrer + Schüler) sind noch nicht gebaut. Die API-Endpoints existieren, aber es gibt keine HTML-Seite, die das Lehrer-Live-Dashboard darstellt. Folgt nach deiner Spec-Freigabe.
  2. Login-Seite existiert nicht — derzeit nur Test-Tokens via Mock. Echte Token-Issuance braucht V2-Login-Page, die wir gemeinsam designen sollten (Reuse von V1-Login? eigenes Design?).
  3. Konformitäts-Check-Skript ist in der Spec dokumentiert, aber noch nicht implementiert. Sollte als nächstes Tool kommen, damit Modul-Lieferungen automatisch geprüft werden.
  4. Asset-Gen-Tool (DALL-E + ElevenLabs Wrapper) ist Verzeichnis- stub, nicht ausimplementiert.
  5. Telemetry-Client-JS-Library (v2-platform/lib/telemetry-client.js) ist noch nicht da — derzeit machen Module den Fetch direkt (siehe hallo-welt/public/game.html). Helfer-Lib spart Boilerplate.
  6. Live-Stream-Endpoint (SSE in php/api/teacher/live-stream.php) ist gebaut, aber Apache prefork kann lange Connections nicht gut. Für Produktion ggf. auf Long-Polling umstellen — Hinweis im Code.
  7. Hallo-Welt-Modul hat keine echte Card-PNG (nur SVG-Placeholder ohne DALL-E-Stil). Sollte später mit einem richtigen Flat-Scandinavian- PNG ersetzt werden, sobald wir den Asset-Gen-Tool haben.
  8. Easy-Sprache von „Schüler*innen": Memory feedback_keine_spielsprache nutzt Doppelpunkt-Form. In Easy-Sprache ist das schwer lesbar — siehe Spec-Standards § 10. Konkrete Empfehlung im Easy-File: „du" oder „die Kinder". Bitte einmal kommentieren.

Offene [REVIEW]-Punkte aus der ganzen Spec

Wenn du Zeit hast, geh die Spec-Files durch und beantworte die [REVIEW]:- Stellen. Sammle alle Antworten in einer Datei oder direkt in dieser Session, ich arbeite das beim nächsten Mal in einem Rutsch ein. Stand: ~22 offene Reviews, alle markiert.


Nächste sinnvolle Brocken (für unsere nächste Session)

  1. Spec-v1.0-stable festschreiben (alle [REVIEW]-Punkte beantwortet, kleine Iteration)
  2. Konformitäts-Check-Skript bauen (PHP, axe-core über headless Browser)
  3. Telemetry-Client-JS-Lib als ESM für Modul-Instanzen
  4. Asset-Gen-Tools (DALL-E + ElevenLabs CLI)
  5. V2-Login + V2-Cockpit (groß — eigene Session)
  6. Erste echte Modul-Migration mit einer Modul-Instanz, die schon Mail gelesen hat (z.B. Sonnensystem als Welle-2-Pilot)

Zahlen für die Nacht

Erstellte Files 56 (32 Plattform + 12 Mock + 8 Hallo-Welt + 12 Briefings + 1 Status-File + 1 Memory + bestehende Spec-Updates)
Geänderte V1-Files 0
Geänderte DB 0 (SQL-File geschrieben, nicht ausgeführt)
Server-Deploys 0
Spec-Zeilen total 1804 (8 Files in _spec/)

Atlas wünscht einen guten Morgen. — 2026-05-16, ~04:00 Uhr lokal