1.9 KiB
1.9 KiB
Journal: Welle 1 - WASM-Only Transition
Datum: 18. April 2026 Status: Welle 1 abgeschlossen Agent: 🏗️ [Lead Architect] & 🧹 [Curator]
🎯 Ziel
Vollständige Entfernung des js(IR)-Targets aus den Core-Modulen und Umstellung auf ein reines JVM (Desktop) + *
wasmJs (Web)* Modell.
🛠️ Durchgeführte Änderungen
1. Gradle-Bereinigung (Entfernung js(IR))
In folgenden Modulen wurde der js(IR) { ... } Block und die entsprechenden JS-Dependencies aus den sourceSets
entfernt:
core/core-domainfrontend/core/authfrontend/core/domainfrontend/core/local-dbfrontend/core/networkfrontend/core/design-systemfrontend/core/navigationfrontend/shells/meldestelle-web
2. Quellcode-Migration & Bereinigung
- Löschung: Alle
src/jsMain/undsrc/jsTest/Verzeichnisse in den oben genannten Modulen wurden gelöscht. - Migration:
- Logik aus
OidcCallback.js.ktwurde bereits zuvor weitgehend inOidcCallback.wasmJs.ktübernommen. - In
local-dbwurde dieDatabaseDriverFactory.wasmJs.ktauf einen stabilen Rumpf-Stand gebracht ( WebWorkerDriver-Migration ist aufgrund fehlender DOM-Libraries für WASM aktuell noch blockiert).
- Logik aus
- Konsolidierung: Dependencies wie
kotlinx-coroutines-core, die zuvor injsMainlagen, wurden nachcommonMainoderwasmJsMainverschoben.
🛡️ Verifizierung
./gradlew clean: Erfolgreich./gradlew :frontend:shells:meldestelle-desktop:jvmJar: Erfolgreich (Desktop-Shell baut stabil).- Build-Check für WASM (
meldestelle-web) zeigt noch Fehler in den Feature-Modulen (Welle 2), was erwartungskonform ist, da diese nochjs(IR)referenzieren.
🚀 Nächste Schritte
- Welle 2: Systematische Bereinigung aller
frontend/features/*Module. - Welle 3: Finalisierung der Web-Shell und vollständige Entfernung aller JS-Leichen im Projekt.
Dokumentiert durch den Curator.