- 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>
4.8 KiB
Spec v1.0-stable — 2026-05-17
Alle [REVIEW]-Punkte mit Thomas geklärt, Spec einbau-fertig für Modul-Instanzen.
Was sich seit gestern geändert hat
Spec-Files: alle [REVIEW]-Stellen durch konkrete Entscheidungen ersetzt
| File | Entscheidung |
|---|---|
| README.md | Status v1.0-stable, neue Sektion „Geklärt mit Thomas" mit allen 11 Kernentscheidungen |
| module-manifest.md | adminFieldsFile als Pflicht-Feld, Difficulty-Level frei pro Modul |
| input-api.md | Neue API /api/runtime-config, Profil liefert nachteilsausgleich + levelUnlocks, drei Modi mit Override |
| output-api.md | Lehrplan-Codes mit Land-Prefix, Klarnamen bestätigt, Level-Unlock-Auto-Update server-seitig |
| telemetry-api.md | Heartbeat-Frequenz aus runtime-config (10–30s default), Stuck zentral konfiguriert |
| delivery-format.md | Hybrid-Konformitäts-Check (PHP+Headless), Versionierungs-Update-Logik (Patch auto / Major Atlas-Review) |
| platform-standards.md | API-Keys nur lokal, UI-Tokens strikt, Sound-Library Phase 2, Stimmen-Pool Atlas-gepflegt |
| migration-from-v1.md | Wellen-Reihenfolge bestätigt, V1 bleibt parallel, kein Daten-Bridge (cleaner Schnitt) |
| NEU level-unlock-konzept.md | Anhang: Drei Modi (frei / Auftrag / Nachteilsausgleich-Override), Auto-Unlock-Logik |
Total: 9 Files, 2026 Zeilen Spec.
Plattform-Code (V2): neue Tabellen + APIs
DB-Schema in v2-platform/db/init.sql:
platform_config_v2— 8 Default-Konfig-Einträge (Heartbeat, Token-TTL, Rate-Limits etc.) für Admin-Board-Tuninghealth_metrics_v2— Antwortzeit-Statistiken pro Endpoint (Vorbereitung für Phase-2-Auto-Tuning)class_assignments_v2— V2-Aufträge mitdifficulty+custom_params(V3-Vorbereitung)student_level_unlock_v2— pro Schüler*in × Modul (highest_unlocked_level,highest_completed_level,best_score_per_level,attempts_per_level)students.nachteilsausgleich— neue Spalte additiv
APIs:
- NEU: v2-platform/php/api/runtime-config.php + Mock — liefert Plattform-Tuning-Werte
- erweitert:
/api/student/meliefert jetztnachteilsausgleich+levelUnlocks(Map pro Modul) - Mock: dritte Test-Schüler*in Sofia hat
nachteilsausgleich = truefür Tests
Globale Begriffsänderung: Lehrkraft → Lehrperson
Alle V2-Spec-Files, Plattform-Code, Mock-Code, Briefings und Hallo-Welt-Modul auf „Lehrperson" umgestellt (Sed-Lauf über bekannte Pfade). V1-Code unverändert — alte Begriffe bleiben dort.
Plus neue Memory-Datei feedback_lehrperson_nicht_lehrkraft.md — Konvention dauerhaft festgehalten.
Was als nächstes ansteht
Aus deinem Auftragsstapel, Reihenfolge nach Sinn:
- Konformitäts-Check-Skript bauen (PHP + Headless-Chrome) — damit Modul-Instanzen ihre Lieferungen selbst prüfen können bevor sie an Atlas schicken
- Telemetry-Client-JS-Lib (
v2-platform/lib/telemetry-client.js) — nimmt Modul-Instanzen Boilerplate ab (Heartbeat-Loop, Token-Refresh, Stuck-Detection) - V2-Cockpit + Login — Lehrer-Live-Dashboard, Schüler-Cockpit mit Lerngeschichte, Modul-Auswahl, Admin-Board mit Plattform-Config-Sektion
- Meister informieren — sobald V2-Cockpit substantiv steht, briefen für
/v2beta-Apache-Alias
Reihenfolge ist mein Vorschlag — du entscheidest. Mein Tipp: 1 + 2 sind klein und konkret (jeweils paar Stunden), 3 ist groß (Tage), 4 ist nur eine Inbox-Mail.
Offene Detail-Fragen für später
Drei Punkte, die jetzt entschieden sind, aber bei der Implementierung wahrscheinlich nochmal auftauchen:
- Admin-Board-Konfig-UI: ich integriere sie ins bestehende V1-Admin-Board oder baue V2-eigenes Admin? V1 hat schon das
admin-fields.json-Pattern, das wir wiederverwenden. - Konformitäts-Check Headless-Chrome: brauchen wir eine Node-Dependency oder können wir Playwright als Standalone-Binary nutzen? Ich tendiere zu Node-frei.
- Token-Auto-Refresh-Logik: in der Telemetry-Client-Lib einbauen — Modul muss nichts machen. Lib pollt 5min vor Ablauf einen Refresh-Endpoint und tauscht Token transparent.
Diese Punkte muss ich nicht heute klären — kommt bei der Implementierung.
Test der Live-Mock (immer noch wie gestern)
Lokal: http://localhost/geograsim/v2-modules/hallo-welt/tests/mock-platform.html — funktioniert weiter, plus Sofia (Student 44) ist jetzt mit nachteilsausgleich = true markiert.
— Atlas, 2026-05-17