mana-swift-llm/devlog/2026-05-18/macher.md
till 4154b5d6c9 devlog: Repo-Historie nachgezogen (spieler+macher)
Erste Devlog-Befüllung; geerdet in den realen Commits, data.json via @mana/devlog-gen.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-16 01:44:33 +02:00

35 lines
1.5 KiB
Markdown

---
date: 2026-05-18
day: 1
view: macher
weekday: Montag
commits: 2
review: auto
---
# Montag, 2026-05-18 — Tag 1 (Macher-Sicht)
Tag eins: `mana-swift-llm` wird durch einen Lift aus
`memoro-native/Sources/Core/AI/` geboren (`fd376bb`, +1369, Phasen
L-1+L-2+L-3). Die KI-Schicht, die bislang in einer App steckte, wird
ein eigenes Swift-Package für alle nativen mana-Apps.
Architektur-Entscheidung, festgehalten im CLAUDE.md: **eigenes Repo
statt `ManaCore`-Erweiterung.** `mana-swift-core` bleibt schlank (genau
zwei Products); die LLM-Toolchain ist schwer (MLX-Swift-LM ~30 MB Dep)
und hat einen eigenen, schnellen Versions-Lifecycle, der nicht den Core
mitzieht. Zwei Products: `ManaLLM` (Backends FoundationModels/Gemma 4/
NoOp + Router + High-Level-Facade) und das schmale `ManaLLMShared`
(App-Group-Container-Helper ohne MLX-Dep).
Beim Lift generalisiert: `LLMBackend` bekommt eine generische
`generate(prompt:maxTokens:)`-Methode mit `summarize` als Default-Impl;
`LLMRouter` ersetzt die Memoro-spezifische User-Pref-Logik durch
**capability-basiertes Routing** — Foundation Models bevorzugt (shared-
by-OS, gratis, ANE-beschleunigt), Gemma nur wenn FM nicht reicht. Der
`GemmaBackend` zieht seinen HuggingFace-Cache aus dem geteilten
App-Group-Container, damit eine App lädt und alle anderen lesen.
Zweiter Commit `18e7b16`: `gemmaAllowsCellular`-Parameter im
`LLMRouter`-Init — Modell-Download über Mobilfunk ist opt-in, nicht
Default. Compliance-Linie von Anfang an: keine PII in Logs, OSLog-
Subsystem `ev.mana.llm`, Prompts/Transcripts `privacy: .private`.