What's Changed
- iOS: restore NSLocationWhenInUseUsageDescription with a real purpose string by @openrung-admin in #87
- About us: add a Donate button linking to the Every.org donation page by @openrung-admin in #89
- App size: stub libbox NativeShellSession to unlink Tailscale (~12 MB per binary) by @openrung-admin in #90
- iOS: ship the Go engine once via a shared LibboxKit dynamic framework by @openrung-admin in #91
- Vendor the cross-repo contract vectors and run them against the Kotlin, Swift, and TypeScript clients by @openrung-admin in #92
- Reject tunnel addresses whose DNS successor escapes the TUN prefix by @openrung-admin in #93
- Classify connect failures through the bound connectcore classifier (D4: failure classifier) by @openrung-admin in #95
- Build sing-box configs through the bound connectcore builder (D4: config builder) by @openrung-admin in #96
- Queue and upload telemetry through the bound shared outbox (D4: telemetry outbox) by @openrung-admin in #97
- Re-vendor the contract vectors from connectcore/contract/vectors by @openrung-admin in #98
- Delete dead code stranded by the binding migrations by @openrung-admin in #99
- Remove dead code, trim binary size, and fix stale docs (audit sweep) by @openrung-admin in #100
Full Changelog: v0.3.7...v0.3.8