First Android-library module in the kit. Privacy-respecting crash capture
(writes a self-contained, allowlist-only report to private storage, chains to
the platform handler, uploads nothing), startup crash-loop detection, a report
dialog showing the full text before it leaves the device, and an issue-tracker
hand-off. Extracted from Calendula and generalised: app label + issue URLs come
from a CrashConfig supplied at install(); each app keeps its own thin themed
CrashReportActivity. Lean deps (Compose + core-ktx). 3 unit tests on the pure
report builder.
Adds AGP/android-library + compose plugins and the compose/core-ktx libs to the
kit catalog; core-time stays a plain JVM module.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Calendula scans its whole source tree (incl. this submodule) for the literal
token as a reproducibility guard; the explanatory comment shouldn't trip it.
No behavioural change.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Calendula consumes the kit as an included build and publishes via official
F-Droid reproducible builds, whose offline source scanner rejects the foojay
toolchain resolver (it can fetch a JDK at build time). The kit never used a
Java toolchain block — modules set jvmTarget directly — so the resolver was
dead weight that would have broken Calendula's reproducibility invariant.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Generic content-provider time bridge shared by the family: Long epoch millis
<-> kotlin.time.Instant. Extracted from Calendula for Phase 1 (Calendula as the
second core-time consumer). 3 unit tests; module suite now 5 green.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
First module of floret-kit, the shared Material 3 Expressive design system +
plumbing for the Floret app family. core-time is a pure-Kotlin JVM library
(DayWindow local-day boundaries + locale/zone-aware Instant formatting),
extracted from Agendula. Standalone build + 2 unit tests green.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>