tane/apps/app_seeds/lib
vjrj 2a6b4b0947 feat(block2): relay pool — publish to many relays, discover deduped, tolerate failures
Relay-strategy hardening (network-trust §3): don't hang on one relay.
- NostrChannel interface: what the transports need (sign, publish, subscribe,
  reqOnce). Implemented by NostrConnection (single relay) and the new RelayPool.
- RelayPool: connects to all configured relays (skips unreachable ones, throws
  only when none are reachable), publishes to every live relay (accepted if any
  accepts), merges discovery deduped by event id, and survives a relay dropping.
- Transports now depend on NostrChannel, not a concrete connection.
- SocialService.openSession takes ALL configured relays (was relays.first);
  createOffersCubit passes the whole list.

commons_core 63 tests green (3 new pool tests over two in-process relays);
app_seeds social/market 18 green.
2026-07-10 10:35:39 +02:00
..
data feat(block2): publish my seeds to the network (completes publish->discover) 2026-07-10 10:18:30 +02:00
db feat(inventory): photo-first drafts + on-device OCR (digitization R2+R4) 2026-07-09 21:23:46 +02:00
di feat(block2): social settings + offers cubit factory (area, relays) 2026-07-10 02:54:06 +02:00
domain feat(species): auto-classify variety species from its label 2026-07-10 02:23:32 +02:00
i18n feat(block2): 'use my location' — set the sharing area without typing a code 2026-07-10 10:25:44 +02:00
security feat(backup): sealed backups + printable recovery sheet 2026-07-09 22:32:13 +02:00
services feat(block2): relay pool — publish to many relays, discover deduped, tolerate failures 2026-07-10 10:35:39 +02:00
state feat(block2): relay pool — publish to many relays, discover deduped, tolerate failures 2026-07-10 10:35:39 +02:00
ui feat(block2): 'use my location' — set the sharing area without typing a code 2026-07-10 10:25:44 +02:00
app.dart feat(block2): 'use my location' — set the sharing area without typing a code 2026-07-10 10:25:44 +02:00
main.dart feat(block2): 'use my location' — set the sharing area without typing a code 2026-07-10 10:25:44 +02:00