diff --git a/PROJEKTSTAND.md b/PROJEKTSTAND.md new file mode 100644 index 0000000..aa8de9e --- /dev/null +++ b/PROJEKTSTAND.md @@ -0,0 +1,116 @@ +# Projektstand — SLC-Workshop Tabletop (Übergabe / Wiedereinstieg) + +**Zweck dieses Dokuments:** Schneller, nahtloser Wiedereinstieg (auch in einem neuen +Chat). Hier steht, **wo wir stehen, was entschieden wurde, was offen ist** und wie man +App lokal startet/deployt. + +**Stand:** 2026-06-06 · **Branch:** `feat/redesign-und-companion-app` · **HEAD:** `a922300` +**Remote:** `https://git.1789.cloud/patrick/SLC_Game.git` + +--- + +## 1. Worum geht's +Haptisches Workshop-Format für Stadt Freiburg / DIGIT, das den **Service-Lifecycle** +(Design → Transition → Operation ⇄ Support → Review) erlebbar macht. Zielgruppe: +Operations/Service-Owner/Support. Mix aus **Vermittlung** (Lifecycle + Stationen) und +**Simulation** echter Change-Fälle. Spielelemente: **3D-Teile, Figuren, Companion-App**. + +## 2. Repo-Überblick +| Ordner | Inhalt | +|--------|--------| +| `00_Konzept/` | Gesamtkonzept (`README_konzept.md`, v0.5) + Arbeitsstand-Notizen | +| `01_3D-Druck/` | Materialliste, OpenSCAD-Modelle, Board-Layout-Generator, Visual-Prompts | +| `02_Spielfiguren/` | Rollen-Figuren (38), Farbcodierung, Gate-Besetzung | +| `03_Karten/` | Action/Störungs/Artefaktkarten, Service-Akte, Entscheidungs-Chips | +| `04_Tablet-Quiz/` | **Companion-App** (`app/` = deploybare PWA) + Konzept | +| `05_Workshop-Dokumentation/` | Logbuch, Reflexion, Debrief | + +## 3. Aktueller Stand pro Bereich + +### 3D / Hardware (`01_3D-Druck/`) +- **Bahn = runde Pucks Ø100 × 6 mm**, lose ausgelegt (keine Magnete, keine + Steckverbindung, keine Verankerung). **Ein Modell** `openscad/puck.scad` für + Station (Phasenfarbe) **und** Gate (rot) — Unterschied nur Farbe + Etikett. + Je Puck: **7 Figurenmulden Ø22** + **Mittenmulde Ø37,5** für ein **Rundetikett Ø37**. +- **Phasen-Ring:** 5 Segmente (Ø180/Ø84 × 6 mm), Bibliothek `phasen-ring.scad` + + 5 druckfertige Einzeldateien `phasen-ring-.scad`. + Graviert: Icon (oben) + Phasenname. Zusammengesteckt = Übersicht, einzeln = Bahn-Köpfe. +- **Aktiv-Feld (RACI):** quadratisch **2×2 (R|A / C|I), 130×130 mm**, Standfelder Ø22. +- **Entfernt** (Git-Historie): Action-Stein, Gate-Tor, Gate-Tile, eckige Tiles, + Ø60-Scheiben, Gate-Karte. +- **Etikett-Hinweis:** Ø37 ist **kein Avery-Standard** → Bezugsquelle vor Druck prüfen. + +### Karten (`03_Karten/`) +- **Action Cards:** 24 finale Grafiken (Freiburg-digital-Layout) liegen in + `04_Tablet-Quiz/app/cards/s-c.png` (6 Services × 4 Change-Arten). +- **Artefaktkarten A1–A15 + Service-Akte** (Tableau, liegt **neben der aktuellen Station**). +- **Entscheidungs-Chips** (Go / Auflagen / Zurück / Ablehnung). **Keine Gate-Karte mehr**. + +### Companion-App (`04_Tablet-Quiz/app/`) — statische PWA +**Flow:** Karten-Raster (Action Card ziehen) → **Change-Art klassifizieren** (Legende, +„nochmal" bis richtig) → **Phasen-Einstieg** (Lebenszyklus-Phase anklicken, retry) → +**Stationen** → **Debrief** (Markdown/JSON-Export). +- **Aktivitäts-Station, 2 Takte:** „Handeln am Brett" (Figuren ins RACI-Feld, + Artefaktkarte in die Akte; „Zeig mir"-Hilfe) → „Auflösung & Abgleich". +- **Gate-Station interaktiv:** Kriterien prüfen → Entscheidung → Konsequenz + + **Verzweigung** (z. B. Gate 1 „Konfiguration" → springt zu `tr_05`; SOR→DPM→Mission Board). +- **4 Change-Arten** (Major/Normal/Standard/Emergency), 24 Karten. Multiple-Choice + ist aus dem Hauptfluss raus (Daten liegen noch in `index.html`, ungenutzt). +- **Inhalte sind in `index.html` eingebettet** (noch keine YAML-Pipeline). +- **Deploy:** statisch, siehe `04_Tablet-Quiz/app/DEPLOY.md`. + +### Figuren (`02_Spielfiguren/`) +38 Figuren (16 Rollen × 2 + 3 Teams × 2). **DPM** ist in der App-Rollenliste ergänzt. + +## 4. Wichtige Entscheidungen & Arbeitsstände + +**Kanonisch / stabil:** +- Puck-System statt Tiles; ein STL für die Bahn; Beschriftung via Etikett. +- Aktiv-Feld 2×2; Phasen-Ring; keine Magnete; kein Action-Stein. + +**Workshop-Arbeitsstand — bewusst NICHT im Blueprint-YAML und NICHT im kanonischen +Konzept (`00_Konzept/README_konzept.md`), bis Rückkopplung mit Michael:** +- **Review-Phase = Franks 5 Aktivitäten** (Change-Enablement) statt bisher 6. Umgesetzt + in App + `materialliste.md` + `board-layout` (→ 39 statt 40 Positionen, 36 Station-Pucks + +1 Reserve). Konzept-README zeigt noch 6/40. +- **Change-Arten auf 4 zusammengeführt** (Top/Low Major → ein „Major"); Begründung + ITIL 4 (Major = Normal mit höherer Authority) + YASM (lean). +- **MB = Mission Board.** SOR-Routing am Change: **RUN / DPM / MB**. Eskalations- + Kriterium: Reicht die **Ressourcen-/Entscheidungshoheit der SOR** nicht → **Demand** + über DPM ans **Mission Board** (= DPM-Rücklauf). +- Details/Quelle: `00_Konzept/review-phase_arbeitsstand-frank.md`. + +## 5. Offene Punkte / nächste Schritte +- [ ] **Figuren-Regel festzurren:** Aktiv-Feld = RACI-Antwort, Puck-Mulden = nur Gate-Versammlung? +- [ ] **Echte Gate-Rückschleifen** (Zurück/Ablehnung) statt vereinfachtem Weiterspringen. +- [ ] **Debrief** auf tatsächliche **Pfadlänge** statt „X/39" umstellen (Verzweigung). +- [ ] **MC-Quiz** optional als „Wissens-Check" reaktivieren? (Daten sind noch da.) +- [ ] **YAML→Inhalts-Pipeline** (Stationsdaten aus `service-lifecycle_*.yaml`) — **braucht Zugriff aufs Blueprint-Repo**. +- [ ] Nach **Michael-Freigabe:** kanonisches Konzept (`README_konzept.md`), YAML und ggf. `bauteile-masse.svg`/`visual-prompts` final nachziehen. +- [ ] Mit Frank/Michael klären: **Retirement/Außerbetriebnahme** (alt rv_06) in Franks Review, Vokabular-Abgleich, **RACI/Quiz der Review-Phase fachlich prüfen** (in App abgeleitet). + +## 6. Workflow & Betrieb + +### Git / Deploy +- Arbeit auf Branch **`feat/redesign-und-companion-app`** (direktes Pushen auf `main` + ist per Policy gesperrt → Feature-Branch + Merge). +- **Push** braucht deine Credentials (Git Credential Manager, interaktiv) — der Agent + kann nicht selbst pushen. Ablauf: *Agent committet → du `git push` → mergen → Server-Claude deployt.* +- **Deploy** macht die Claude-Instanz auf dem Server anhand `04_Tablet-Quiz/app/DEPLOY.md` + (statisches Hosting des Ordners `04_Tablet-Quiz/app/` über HTTPS). + +### App lokal testen +``` +python -m http.server 8099 --directory 04_Tablet-Quiz/app +# dann http://127.0.0.1:8099 (oder Preview-Config .claude/launch.json) +``` +- **Bei Updates:** Service-Worker-Cache leeren bzw. in `app/sw.js` `CACHE`-Version + hochzählen, sonst lädt der Browser die alte Version. + +### Hinweise für den (nächsten) Agenten +- **OpenSCAD** ist installiert → Modelle via CLI rendern/prüfen (`Simple: yes`). +- **Preview-Renderer (MCP)** kann in dieser Umgebung hängen → App-Änderungen sonst + per `node --check` (Syntax) + kleinen Node-Datenchecks verifizieren. +- Große Daten-/Funktionsänderungen in `app/index.html` wurden per **kleinen + Python-Splice-Skripten** gemacht (wegen vieler Sonderzeichen) — Muster im Chatverlauf. +- **Commit-Stil:** prägnante deutsche Messages; Footer `Co-Authored-By: Claude …`.