Changelog
Current version#
| Version name | 0.2.2 |
| Version code | 13 |
| Minimum Android | 8.0 (API 26) |
| Target Android | API 36 |
TODO: verify. The entries below are reconstructed from what is present in the source tree, not from a maintained release history. Dates, and the exact mapping of changes to released version codes, need to be confirmed against the Play Console before this page is published as a release history.
What is in the current build#
Rather than guess at which release each change shipped in, this is the state of the app as the source stands.
Blocking#
- DNS filtering through a local VPN, IPv4 and IPv6, with an IPv4-only fallback.
- A six-layer domain matcher: allowlist, encrypted-DNS resolvers, exact and subdomain, wildcard, keyword tiers, fuzzy and phonetic.
- Gambling-app blocking that reuses the domain engine, so newly-listed operators are recognised without an app update.
- App-check: an on-device scan of installed apps with per-app reasons, release, and an offer to use Android's uninstall dialog.
- A calm redirect replacing the browser's error page on a blocked domain.
- A multi-signal page-content risk engine with an anchor requirement and two-scan confirmation, including a prediction-market signal source.
- Self-learning: a confirmed catch becomes a personal filter, with the evidence kept and reversible.
- Signed, rollback-protected blocklist deltas on a periodic background sync, plus a manual sync.
Commitment and anti-tamper#
- Escalating disable cooldown with a reflection step, surviving restart and reboot.
- A mandatory PIN while protection runs, with optional biometric unlock.
- Delete protection through device admin with zero policies requested.
- Restart after reboot, and a self-healing restart on launch.
- Strength-graded release flow for automatically-learned blocks.
Pro features#
- Financial protection: reflection pause, curated app catalog, installed-app picker, hard lock, recurring spending day, emergency unlock, pause log.
- Budget, weekly balance tracker and expense sheet.
- Rest library: 4-7-8 breathing, grounding, body scan, evening wind-down, and soundscapes generated on the device.
- Accountability partner with double opt-in and event notifications through the user's own mail app.
Buddy and interface#
- Sam: treat economy, four growth stages, moods, cosmetics across five slots, and tricks.
- A server-owned daily streak, replacing an earlier on-device streak.
- A home-screen widget.
- Onboarding with start profiles, and Sam's spotlight tours.
- English and Dutch, chosen independently of the phone's language.
- Light, dark and follow-system appearance.
Removed#
- An XP/coins/level progression system. It was awarded server-side, never shown, and nothing was gated on it. The daily streak is now the only progression Haven keeps.
Known limitations in this build#
- The blocklist distribution host currently serves pre-signed static files, so an incremental request returns the full current rule set rather than a true delta. The client only ever applies a strictly newer version, so this is safe, just not incremental.
- Some model-driven detection sources are present as interfaces with no implementation and contribute nothing. See Detection engine.
Reporting#
Please report problems through the channels on Support.