#760

Feature: Expanded store-and-forward (open couriers, durable outbox, 6h public history)

Opencallebtcopened 3mo ago

Summary

Port iOS expanded store-and-forward so DMs and public history eventually deliver through crowds of strangers — not only mutual favorites currently connected.

Android has a basic StoreForwardManager; iOS substantially extended the model.

Upstream (iOS)

What it is

  • MessageOutboxStore: queued private messages persist to disk (sealed); retry across app restarts
  • Open couriers: strangers can carry sealed mail (quota-bounded), not only mutual favorites at send time
  • Spray-and-wait: multi-carrier deposit strategy
  • 6h public history persistence for peer serve + echoes UX
  • No instant fail when peer is neither mesh-reachable nor Nostr-mutual — hand to router/outbox/courier/bridge

Why Android needs it

Delivery parity is fundamental; without it Android DMs still die when the recipient briefly leaves range, while iOS queues them.

Acceptance criteria

  • Durable encrypted outbox survives process death
  • Open-courier deposit/pickup wire-compatible with iOS
  • Unreachable DM path never marks failed without enqueue
  • Public history retention window parity (~6h) for sync/echoes
  • Quotas, expiry, panic-wipe behavior

Priority

High — core messaging reliability; prerequisite for bridge/courier excellence.

Activity

0

No activity yet.