mana-kotlin-event-sync-room/devlog/2026-06-10/macher.md
Till JS 7cbec2aa14 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:27 +02:00

33 lines
1.5 KiB
Markdown

---
date: 2026-06-10
day: 1
view: macher
weekday: Mittwoch
commits: 1
review: auto
---
# Mittwoch, 2026-06-10 — Tag 1 (Macher-Sicht)
Repo-Gründung in einem Commit (`f8410dd`, +801): der Room-Adapter zu
`mana-kotlin-event-sync` wird aus den fünf identischen App-Kopien
(`RoomEventStore`/`EventSyncDao`/`EventSyncDb` in wordeck/pageta/zitare/
nutriphi/stetick-android) in ein eigenes Artefakt extrahiert.
Architektur-Grund: Die Engine in `mana-kotlin-event-sync` ist bewusst pure
Kotlin/JVM (emulator-frei testbar). Die Persistenz braucht das Android-SDK
(Room), darf die JVM-Reinheit der Engine also nicht verunreinigen — deshalb
ein **separater** Adapter-Artefakt statt Einbau in die Kern-Lib. Das ist die
saubere Auflösung der „EventStore-Adapter fehlt noch, lebt im App-Modul"-
Schuld aus dem event-sync-README.
Inhalt: `EventSyncDatabase` (Room, version 1: `events`/`outbox`/`meta`),
`EventSyncDao`, `RoomEventStore`, `createEventSyncDatabase(context, name)`.
Artefakt `ev.mana:mana-kotlin-event-sync-room` auf Forgejo-Maven, **Lockstep-
Versionierung** mit `mana-kotlin-event-sync` — gestartet bei 0.4.0, damit die
Versionsnummer mit dem Stand der Kern-Lib gleichzieht (kein eigener
0.1.0-Beginn).
Migrations-Footgun bewusst dokumentiert: Der DB-Dateiname muss in jeder App
der bisherige bleiben (`createEventSyncDatabase(context, "wordeck.db")`), weil
das Schema identisch (version 1) ist — so werden bestehende Event-Logs nahtlos
weiterverwendet, kein Daten-Reset bei der Umstellung.