diora-web/books
mrwnslz 60dd4926cf
All checks were successful
Build and push Docker image / build (push) Successful in 15s
Test / test (push) Successful in 8m21s
Lesestand: die zuletzt gelesene Stelle gewinnt, nicht mehr die weiteste; sw v100
docs/progress-sync.md ist der Vertrag für Server, Web, Android und Desktop.

- Server: read_at (Zeit, zu der dort gelesen wurde, Uhrfehler des Geräts per
  sent_at herausgerechnet, nie nach "jetzt"), Gerät, weiteste Stelle. Ältere
  Schreibvorgänge (offline nachgereicht, liegengelassener Tab) gewinnen nicht.
  Apps ohne read_at: nur strikt vorwärts. Antwort = Zustand nach dem Schreiben.
  /books/ mit X-Server-Now, /api/sync/ mit server_now.
- Web-Reader: Zeit einer Stelle ist der Moment, in dem man durch eigenes Tun
  hinkam (Scrollen, Blättern, Tasten, Vorlesen); unverändert Liegendes
  schickt nichts bzw. nur seine alte Zeit. Vor dem Wiederherstellen und
  während eines Blicks (Fußnote, "Weit gescrollt") wird nicht gespeichert.
  Eigene Stellen in einem Ausgang (localStorage) bis der Server sie hat.
  Angebote "Auf <Gerät> weitergelesen" und "Weiteste Stelle".
- Tests: books/tests.py (Reihenfolge, Uhrfehler, Zukunft, alte Apps, weiteste
  Stelle, Liste und Snapshot).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-12 19:31:36 +02:00
..
migrations Lesestand: die zuletzt gelesene Stelle gewinnt, nicht mehr die weiteste; sw v100 2026-10-12 19:31:36 +02:00
__init__.py Add ebook reader features: highlights, bookmarks, search, settings, PDF paginated mode 2026-03-19 13:08:42 +01:00
admin.py Add ebook reader features: highlights, bookmarks, search, settings, PDF paginated mode 2026-03-19 13:08:42 +01:00
apps.py Add ebook reader features: highlights, bookmarks, search, settings, PDF paginated mode 2026-03-19 13:08:42 +01:00
models.py Lesestand: die zuletzt gelesene Stelle gewinnt, nicht mehr die weiteste; sw v100 2026-10-12 19:31:36 +02:00
tests.py Lesestand: die zuletzt gelesene Stelle gewinnt, nicht mehr die weiteste; sw v100 2026-10-12 19:31:36 +02:00
urls.py Bücher: Cloud-Import aus WebDAV/Nextcloud (SW v41) 2026-08-28 08:26:22 +00:00
views.py Lesestand: die zuletzt gelesene Stelle gewinnt, nicht mehr die weiteste; sw v100 2026-10-12 19:31:36 +02:00
webdav.py Bücher: Cloud-Import aus WebDAV/Nextcloud (SW v41) 2026-08-28 08:26:22 +00:00