mirror of
https://github.com/Darkrock-Studios/hammer-editor.git
synced 2026-08-12 19:13:21 +00:00
On a legacy server.json carrying inline tokens, GlobalSettingsStore.init triggered loadServerSettings, which migrated the tokens with a guarded write through ContainedFileSystem. The containment check resolved managedStorageRoots by re-entering the still-constructing store, which Koin rebuilt, looping forever and hanging startup on every platform with a pre-v3.5.0 synced account. Make store construction perform only pure reads: loadServerSettings and loadSettings no longer write during load (inline-token rewrite and corrupt-file self-delete removed from the load paths). The inline-token migration moves to a new idempotent MigrateInlineAuthTokens global migration, run by DataMigrator after the store is built (after MigrateInstallIdToGlobal, which must read the legacy installId before the tokenless rewrite drops it). |
||
|---|---|---|
| .. | ||
| src/jvmTest/kotlin/com/darkrockstudios/apps/hammer/integration | ||
| build.gradle.kts | ||