feat: füge Wizard-Orchestrator mit Runtime, Scaffold und DraftStore (MVP) hinzu
Desktop CI — Headless Tests & Build / Compose Desktop — Tests (headless) & Build (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., backend/services/ping/Dockerfile, ping-service, ping-service) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., config/docker/caddy/web-app/Dockerfile, web-app, web-app) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., config/docker/keycloak/Dockerfile, keycloak, keycloak) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., backend/infrastructure/gateway/Dockerfile, api-gateway, api-gateway) (push) Has been cancelled

Signed-off-by: StefanMoCoAt <stefan.mo.co@gmail.com>
This commit is contained in:
2026-04-21 18:30:13 +02:00
parent d66bd63cc9
commit c54ad3830d
3 changed files with 128 additions and 0 deletions
+43
View File
@@ -0,0 +1,43 @@
# Wizard-Orchestrator (Core Module)
Dieses Modul enthält die Runtime, DSL und UI-Grundbausteine für die deklarative Wizard-Orchestrierung.
## Status (2026-04-21)
- Runtime & DSL (Minimal): `StepId`, `WizardContext`, `WizardState`, `Guard`, `Transition`, `StepEffects`, `WizardRuntime`.
- UI: `WizardScaffold` (MVP) + `WizardScaffoldWithHotkeys` (Enter/Shift+Enter/Alt+S auf JVM).
- Samples/Tests: Demo-Event-Flow + 6 grüne Tests (Next/Back/Guards).
- Drafts: InMemory DraftStore (Autosave/Resume Hooks) vorbereitet.
## Struktur
- `src/commonMain/kotlin/at/mocode/frontend/core/wizard/runtime` Kern-Interfaces & -State
- `src/commonMain/kotlin/at/mocode/frontend/core/wizard/dsl` Flow-DSL
- `src/commonMain/kotlin/at/mocode/frontend/core/wizard/ui` Scaffold/Composable Bausteine
- `src/commonMain/kotlin/at/mocode/frontend/core/wizard/samples` Demo-Flow/Step-IDs
- `src/{commonTest|jvmTest}/kotlin/...` Tests
## Quickstart
Build & Tests:
```bash
./gradlew :frontend:core:wizard:build
./gradlew :frontend:core:wizard:jvmTest
```
Feature-Flag aktivieren (Dev):
- Datei: `frontend/core/domain/src/commonMain/kotlin/at/mocode/frontend/core/domain/config/WizardFeatureFlags.kt`
- Eigenschaft: `WizardRuntimeEnabled = true` (Standard: false)
Startpunkt Desktop:
- `frontend/shells/meldestelle-desktop/src/jvmMain/kotlin/at/mocode/frontend/shell/desktop/main.kt`
- Screen: `AppScreen.EventNeu` (Koin-Parameter wird mit `parametersOf(null as Long?)` übergeben)
## Nächste Schritte (Kurz)
- Weitere Steps im Event-Flow migrieren (VM-Delegation, Mapping ↔ Acc erweitern)
- Fehler-Summary im Scaffold-Footer anbinden
- Persistenten DraftStore implementieren (`flowVersion`, Migrationen)
- Dev-Overlay (aktueller Step, Guard-Entscheide)
## Referenzen
- Roadmap: `docs/01_Architecture/MASTER_ROADMAP.md` (Initiative 3)
- ADR0025/0026/0027: Orchestrator, Validation-Policy, Draft-Domain
- WizardDSL README: `docs/01_Architecture/Reference/Wizard-DSL-README.md`