Medisin medisin med det samme. En mindre masete løsning enn andre.
  • Kotlin 97.8%
  • Python 2.2%
Find a file
Ole-Morten Duesund 8f5b18cf68 Backup: versioned JSON serializer, SigV4 + S3 client, JCE crypto, daily worker
Milestone 5. One BackupManager entry point so export, import and
auto-backup share the same serializer and crypto by construction.
Explicit DTOs decouple the backup contract from the Room schema.
JCE baseline (PBKDF2-HMAC-SHA256 600k → AES-256-GCM) behind the
BackupCrypto interface with format auto-detection on decrypt; age
lands behind the same interface in milestone 6. SigV4 signer verified
against AWS's published documentation example signature. Settings in
SharedPreferences encrypted under a non-exportable AndroidKeyStore key
— replaces the now fully deprecated androidx security-crypto with the
same construction (~70 lines, zero deps); threat-model comments state
plainly that the stored auto-backup passphrase only protects against
bucket compromise. WorkManager daily periodic job, inexact by design.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 13:54:13 +02:00
app Backup: versioned JSON serializer, SigV4 + S3 client, JCE crypto, daily worker 2026-06-10 13:54:13 +02:00
gradle Reminder subsystem: exact alarms, escalation, boot re-arm — verified on emulator 2026-06-10 13:48:39 +02:00
.gitignore Project skeleton: Gradle 9.4.1 wrapper, AGP 9.2.1, Compose, manifest with reminder permission set 2026-06-10 13:31:39 +02:00
build.gradle.kts Project skeleton: Gradle 9.4.1 wrapper, AGP 9.2.1, Compose, manifest with reminder permission set 2026-06-10 13:31:39 +02:00
CLAUDE.md Project skeleton: Gradle 9.4.1 wrapper, AGP 9.2.1, Compose, manifest with reminder permission set 2026-06-10 13:31:39 +02:00
gradle.properties Project skeleton: Gradle 9.4.1 wrapper, AGP 9.2.1, Compose, manifest with reminder permission set 2026-06-10 13:31:39 +02:00
gradlew Project skeleton: Gradle 9.4.1 wrapper, AGP 9.2.1, Compose, manifest with reminder permission set 2026-06-10 13:31:39 +02:00
gradlew.bat Project skeleton: Gradle 9.4.1 wrapper, AGP 9.2.1, Compose, manifest with reminder permission set 2026-06-10 13:31:39 +02:00
med-det-samme-build-prompt.md Project skeleton: Gradle 9.4.1 wrapper, AGP 9.2.1, Compose, manifest with reminder permission set 2026-06-10 13:31:39 +02:00
settings.gradle.kts Project skeleton: Gradle 9.4.1 wrapper, AGP 9.2.1, Compose, manifest with reminder permission set 2026-06-10 13:31:39 +02:00