Stores leben jetzt im Package mit App-übergreifenden Keys
(mana.llm.backend, mana.llm.allowCellular). Auto-Migration aus
memoro.* Legacy-Keys beim ersten Read (memoro.llmBackend,
memoro.onDeviceLLMEnabled Bool-Toggle, memoro.llmDownloadOverCellular).
Ermöglicht ManaLLMUI in mana-swift-ui 0.8.0 als geteilte Settings-
Schicht für alle 4 Konsumenten (Memoro, Pageta, Comicello, Herbatrium).
Außerdem:
- LLMBackend.removeCachedModel() als Protocol-Methode mit Default-
No-Op. GemmaBackend überschreibt (async throws statt throws).
- 13 neue Tests in LLMPreferenceStoresTests (.serialized wegen
UserDefaults.standard).
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Apps reichen User-Setting durch (WiFi-only vs cellular OK) statt
über globale GemmaBackend-Properties. LLMRouter instanziiert
GemmaE2B + GemmaE4B mit dem allowsCellular-Wert.
Default false (WiFi-only). Bei Toggle-Change muss App den Router
neu instanziieren — memoro-native SettingsView macht das bereits
über die makeRouter()-Factory.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>