v1.4.5 πŸ”„ Cross-device sync - Your read state (notifications, messages, crew chat, newsletter) and app preferences now sync across devices via encrypted NIP-78 app data. πŸ”’ Security hardening - Amber signatures are verified, and trust scores verify event signatures before they're used. - Cashu wallet seed is stored in the native Keychain/Keystore with a mandatory first-time backup. - The agent (CVM) server only serves signature-verified events. πŸ—ΊοΈ Map & spots - Crisp map pins with spot-type and shelter glyphs, plus smoother loading. - New "Shelter" (weather protection) field. - Better spot dedupe across geohash/city and name variants. - Faster cold-start: query persistence, optimistic geolocation, skeleton pins. πŸ“… Tours & events - Tour countdown badges, session times on scheduled local tours, and calendar export. Polished Create Tour flow. 🐿️ Sasquatch - Faster answers via a local fast-path, honest spot counts, deduped results, and no more empty/typo dead-ends. 🎨 Polish & accessibility - Lighter onboarding, shared empty states, improved contrast, a skip-to-content link, and live-region announcements. - Relay list UI polish with live connection indicators. - Mobile fix: detail-page grids no longer overflow horizontally on narrow screens. --- v1.3.3 πŸ“‘ NEW β€” Local Relay (Citrine) Β· Android Run a private Nostr relay right on your phone with the free Citrine app, then flip it on in Settings β†’ Relays. When it's connected you get: - Instant reads β€” the map, spots, crews and messages load from your device - Works offline β€” browse (and queue posts) at a spot with no signal - On-device backup β€” a durable local copy of your own events It's opt-in, Android-only, and your Stash and messages stay end-to-end encrypted exactly as before β€” the local relay only speeds things up. πŸ›Ή Reliability & polish across the app - Events/Tours: month calendar view with a list⇄calendar toggle - Notifications: RSVP/update alerts now open the event, not the sender - Map: fixed trusted-first sorting and stash card borders - Crews: fixed roster edits clobbering each other on rapid changes - Lab/Market/Stash: always show the newest revision of a profile - Wallet: clear warning (with the exact sats at risk) before removing a mint - Spot claims: cleaner ownership history - Newsletter: recurring issue titles no longer overwrite older issues - Messages: group chats no longer leak into your 1:1 conversations --- v1.2.14 πŸ”’ Security hardening (payments & trust signals) - Auto-pay now verifies every Lightning invoice's amount before paying (zaps, crew zaps, listing fee). A server can no longer return an inflated invoice to overcharge your wallet. - Pro access is granted only by a verifiable, provider-issued zap receipt (plus platform owners). Self-signed receipts no longer grant Pro. - "Verified payment" badges on featured listings now require a provider-issued zap receipt β€” self-published receipts can't fake verification. - Crew funding goals tally only real invoice-backed zaps, so totals can't be inflated with fake zap receipts. Plus the delete diagnostics from 1.2.13 to pinpoint the signing/publish step. --- v1.2.10 πŸ› οΈ Fixes a startup crash (black screen) introduced in the previous build and keeps the Amber signing fix: signing now opens Amber the same reliable way login does, so delete / accept invite / zap complete instead of hanging. After updating, log OUT and log back IN once. --- v1.2.8 πŸ› οΈ Amber finally pops up β€” signing works (the real fix) The big one. On some Android setups (notably GrapheneOS), tapping delete, accepting a crew invite, sending a zap, or editing your profile would spin forever and Amber never appeared. Root cause: the app's browser layer was silently dropping the request that opens Amber, so the approval screen never launched. We added a native hand-off so signing requests now open Amber directly β€” exactly like login already does. Now every signing/encryption action launches Amber, you approve, and the action completes. If Amber genuinely doesn't respond you get a clear message in seconds instead of an endless spinner. IMPORTANT: after updating, log OUT and log back IN once. Then delete, accept invite, zap, and profile edits will just work. πŸ”” Notification bell "Mark read" actually clears the badge Marking notifications read now clears the count for crew items too, while your pending invites and requests stay visible in the Crews tab until you act on them. 🧹 Housekeeping Behind-the-scenes reliability fixes across the signing and notification flows.