1e51ef7def
- 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>
212 lines
9.2 KiB
Markdown
212 lines
9.2 KiB
Markdown
# 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/](file:///c:/xampp/htdocs/geograsim/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**:
|
|
```bash
|
|
# 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](file:///c:/xampp/htdocs/geograsim/v2-modules/_spec/module-manifest.md):
|
|
- `glossarBegriffe` → `glossarSchwerpunkte` (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](file:///c:/xampp/htdocs/geograsim/v2-modules/_spec/input-api.md):
|
|
- `/api/student/me` liefert `locale` + `country` + erweiterte A11y-Settings
|
|
- Locale-Code-Format dokumentiert
|
|
|
|
In [README.md](file:///c:/xampp/htdocs/geograsim/v2-modules/_spec/README.md) + Verweis von [Lehrplan-Anker-Anleitung](file:///c:/xampp/htdocs/geograsim/v2-modules/_spec/input-api.md):
|
|
- 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
|