1
0
forked from GRIN/grim
Commit Graph

33 Commits

Author SHA1 Message Date
2ro 2afea5abc0 i18n: translate lagging fallback strings and localize settings username hint 2026-07-04 23:25:06 -04:00
2ro a9023d0404 README: drop stale onion claim (Tor-exit only since 134), style sweep
Every relay, money path included, is reached over a Tor exit to its
clearnet host; the pinned-onion wording was Build <134. Em dashes
normalized per house style.
2026-07-04 23:25:06 -04:00
2ro e14a16f693 README: Build 136 news panel on Home
Latest article from the official Goblin news key (kind 30023) between
Send/Receive and Recent Activity; hidden when empty; latest-only with
edits-in-place.
2026-07-04 23:25:06 -04:00
2ro 47b095ab88 Goblin Build 136 - home news panel, faster send confirmation
Home now shows the latest post from the Goblin news key (kind 30023) in
a card with tappable links; the panel stays hidden until a post is seen.
Desktop Home widens to use the available space. Send confirms faster.
2026-07-04 20:42:17 -04:00
butler 71570980fe docs: mixnet references updated to Tor (build 134) 2026-07-04 20:42:17 -04:00
2ro 05ee05e2d2 Goblin: dedupe balance sync indicator
Remove the Build 135 balance-hero "Updating…" line. During a routine
sync it duplicated the header node card's "Syncing" status, so a funded
wallet showed two updating indicators at once. Keep the established
"Balance updating…" line (zero-balance / first-sync case) and the header
status as the single sync indicators. Drop the now-orphan
goblin.home.updating key from all six locales (i18n drift green).
2026-07-04 20:42:17 -04:00
2ro 04f8741686 chore: gitignore local release artifacts 2026-07-04 20:42:17 -04:00
2ro 1d7775a037 Goblin Build 135 - Tor credit, balance updating indicator, Nym sweep
- Third-party credits: replace the "Nym mixnet" row with "Tor (arti)" (0.43,
  linking the arti repo), matching the other credit rows' hardcoded style. No
  locale strings existed for it (credit labels are hardcoded, not localized).
- Balance: show a quiet "Updating…" line under the balance while the node is
  still warming, reusing the existing wallet.syncing() signal and the
  balance-updating line's muted style; it clears once the node is synced. New
  t!() key goblin.home.updating added to all six locales (i18n drift green).
- Nym sweep: Cargo.toml package description "Nym mixnet" -> "Tor". The only
  other user-facing Nym reference was the credit above. Remaining references
  are the deliberately-dormant `nym` feature/module and internal code comments,
  left as-is; README and all locale values were already Tor.
2026-07-04 06:21:05 -04:00
2ro 174e387a87 Goblin: retire Nym from the public toolchains + drop internal test harnesses
- CI (release.yml/build.yml): remove fetch-nym + AWS_LC_SYS_PREBUILT_NASM;
  the default cargo build --release is Tor/arti only now (nip44 fetch kept).
- Cargo.toml: nym-sdk is optional behind the `nym` feature so the default
  build never pulls it.
- Delete the dead Nym-era probes (xrelay_smoke, connect_timing,
  tunnel_measure) that referenced the removed Nym API and broke `cargo test`.
- Untrack the internal E2E harnesses (e2e.rs, nostr_e2e.rs) via .gitignore;
  gate `mod e2e` behind the `e2e-internal` feature so clones still compile.
- Refresh stale Nym comments in build.rs and the build scripts.
2026-07-04 06:21:05 -04:00
2ro 7b56855e16 Goblin Build 134 - Tor delivery fixes (drop the flapping onion)
build133 shipped the Tor transport but two delivery bugs remained; this
fixes both so payments resolve through confirmations again.

- Drop the pinned relay .onion. It was a single fragile hidden-service hop
  shared by every wallet; under load it flapped (WebSocket 1006), and when
  it dropped mid-handshake a payment stalled after the first gift-wrap --
  you'd get the incoming alert but the money never confirmed. Every relay is
  now reached over the Tor exit to its clearnet host: your IP still stays
  hidden from the relay, with no fragile onion hop to wedge. The has-onion
  gate that rejected an onion-less relay list is removed, and the pinned
  candidate pool carries no onion/exit fields.

- Tor-friendly relay set. Defaults/fallbacks had included relays that refuse
  Tor-exit connections (damus, nos.lol); wallets that fell back to them
  couldn't send at all. Defaults and the pinned pool are now
  relay.floonet.dev, relay.0xchat.com, offchain.pub.

- confirm-before-sent no longer false-fails across a relay reconnect (a
  confirmed-received wrap is treated as sent-pending instead of re-dispatched,
  which had duplicated wraps and hung the spinner); a v3 gift-wrap unwrap
  failure no longer silently drops the message.

Validated over Tor with two funded wallets on two independent mainnet nodes:
connect in seconds, send to finalize in 8s.
2026-07-04 05:33:48 -04:00
2ro 1e2f41b404 README: update transport description from Nym mixnet to Tor
The README still described the old Nym-mixnet transport, including a
reference to src/nym/sidecar.rs which no longer exists post-switch.
Update the intro, feature list, payment-travel diagram, and build
instructions to describe the current embedded-Tor (arti) transport:
in-process, dialed at the relay's pinned .onion, no sidecar, no sibling
checkout needed for the default build.
2026-07-04 03:52:29 -04:00
2ro 6f1caf4511 Goblin Build 133 - Tor transport (replaces the Nym mixnet)
The wallet's private transport moves from the Nym mixnet to embedded Tor
(arti, copied from GRIM's engine): it dials the relay's pinned .onion, so
the relay never learns your IP, while the relay + NIP-59 gift-wrap hide the
rest - content, sender, and (via a relay-side randomized release) timing.
The Grin node stays on the clear internet as before.

Why leave the mixnet: the Nym free-tier bandwidth this depended on is being
removed upstream (the grant expires at UTC midnight; the paid path requires
holding NYM tokens), so a payments wallet can't stand on it. Tor is
unmetered, embedded in-process on mobile, faster where users wait, and
lighter on the battery.

Preserved intact: the confirm-before-sent guard, relay-gated readiness, and
the lazy warm-on-activity node polling. src/nym/ is feature-gated off (arti
and nym-sdk can't share one binary); full removal is a follow-up.
2026-07-04 03:35:31 -04:00
2ro 1c8d848e18 Goblin Build 132 - payments never fail silently
Adds confirm-before-sent: a payment is not shown as "sent" until the relay
actually confirms receipt. If the path is slow or a send doesn't land, you now
see a clear "not confirmed — retry" instead of a false "sent" that quietly loses
the payment.

Routing is unchanged from prior builds: all wallet nostr traffic — slatepacks,
payment requests, identity, discovery, goblin.st name + relay lookups — rides
the mixnet; the grin node and price/fiat lookups stay direct.
2026-07-03 22:50:02 -04:00
2ro d05e015f98 Goblin Build 131 - connectivity sweep
Connect reliability, measured before release:
- Cold start: the wallet races two mixnet entry-gateway connects and takes the
  first up, so a dead random draw no longer costs the full timeout (dead-round
  rate drops from p to p^2; verified across 30 cold trials).
- Dead exits are condemned in ~10s instead of ~32s (fresh-tunnel probe budget
  5s x 2 rounds, 4.2x margin over the worst measured healthy probe), removing
  the 50-70s worst-case connects. Established-tunnel keepalive unchanged.
- "Connecting relays..." clears in ~2-4s after saving the relay list (the
  Connected flag now tracks the real relay-up signal instead of waiting on a
  30s catch-up fetch); identity publishes are time-boxed; the onboarding
  Claim button un-gates equally sooner.
- Gateway-race and probe timings are now visible in [timing] logs.

Also: the update banner shows Goblin build numbers (not the inherited 0.3.6),
and the nip44 crate is consumed from crates.io (v0.3.0) - no sibling checkout
needed to build.
2026-07-03 17:22:42 -04:00
2ro e8bfe8d76f Goblin Build 130 - Nym connect reliability
Bugfix: the mixnet exit-liveness probe now races two stable targets over two
rounds instead of a single one-shot 1.1.1.1 connect, so a healthy tunnel is no
longer false-condemned and reselected forever. Fixes the intermittent
Connecting to Nym hangs that could take minutes or never resolve (verified:
15/15 cold starts connected, zero hangs).

Also: the Android versionCode/versionName now track the Goblin build number
(were frozen at GRIM's 5 / "0.3.6"), so the OS detects upgrades correctly.
2026-07-03 11:49:01 -04:00
2ro 71f7584800 Goblin Build 129 - relay migration
Bugfix: the default and fallback messaging relay moved from relay.goblin.st
(being retired) to relay.floonet.dev, so new installs and reconnects use the
live relay. Built-in relay fallback list updated to match.
2026-07-03 04:02:23 -04:00
2ro 523d397ad7 Goblin Build 128 - warm connect, instant price, faster reads 2026-07-03 00:09:31 -04:00
2ro ce7008665a Goblin Build 127 - payment request notifications, remove avatar name ring, fix CI 2026-07-02 23:01:49 -04:00
2ro 4ab91c6ece Goblin Build 127 - payment request notifications, remove avatar name ring 2026-07-02 22:31:16 -04:00
2ro 36509c6b9a Goblin Build 127 - payment request notifications 2026-07-02 22:20:51 -04:00
2ro c0981916da Goblin Build 126 - major mixnet transport speedup 2026-07-02 20:54:41 -04:00
2ro c5fbb9fa14 Goblin Build 125 - faster Nostr reads and Nym reconnect 2026-07-02 19:18:35 -04:00
2ro b7d479ede7 Goblin Build 124 - fix in-app update download names 2026-07-02 17:09:33 -04:00
2ro f79bf9d926 Goblin Build 123 - fast relay connect, nostr-app login, scan amounts, name outline 2026-07-02 15:51:37 -04:00
2ro d1070008e7 Goblin Build 122 - drop notification enable-node action; re-enable macOS release CI 2026-07-02 13:38:57 -04:00
2ro 060272626a Goblin Build 121 - restore scoped exit + relay.floonet.dev money-path cutover 2026-07-02 13:27:18 -04:00
2ro 5f90f00d3b Goblin Build 120 - remove dead scoped-exit egress 2026-07-02 10:06:51 -04:00
2ro 3a3cf8fdb0 Goblin Build 119 - paste npub in Send-to (issue #1) 2026-07-02 09:56:40 -04:00
2ro ebe5bc94eb Goblin Build 118 - fast connect (drop blocking exit), avatar ring, ecosystem 2026-07-02 09:48:38 -04:00
2ro 90eb0500c1 Goblin Build 117 - avatar ring gap + magick/floonet ecosystem 2026-07-02 09:35:57 -04:00
2ro 2d2bf326b3 Goblin Build 116
Floonet scoped Nym exit on the money-path relay (dial a relay operator's
co-located exit over a MixnetStream, TLS end to end, no public DNS; anchor +
fallback, never pin-only), NIP-44 v3 gift wraps (G4), mix-DNS, localization,
GUI polish. Verified end to end: two wallets complete a real gift-wrapped Grin
payment over relay.goblin.st, finalized + posted on mainnet.
2026-07-02 04:23:06 -04:00
2ro 5deffbda4c settings: GRIM link now points at the live upstream
The Settings third-party 'GRIM (upstream wallet)' link opened github.com/ardocrat/grim
— a stale personal fork ~106 commits behind. Point it at github.com/GetGrin/grim, the
live GitHub mirror of canonical code.gri.mw/GUI/grim.
2026-06-18 00:24:34 -04:00
2ro 54e1e83bfe Goblin — Build 98 2026-06-17 22:22:21 -04:00