lnd/onionmessage
Gijs van Dam e87f4bfb6f onionmessage: use BackpressureMailbox for onion peer actors
This commit adds per-peer backpressure control to the onion message
actor system by introducing a BackpressureMailbox that uses Random
Early Detection (RED) to probabilistically drop messages when the
per-peer queue depth exceeds a configurable threshold.

The OnionActorFactory type now accepts variadic ActorOptions, allowing
the spawn call site (brontide) to provide per-peer mailbox configuration.
A DefaultOnionActorOpts helper provides the standard RED thresholds so
callers don't need to wire up the BackpressureMailbox manually.

Key changes:
- OnionActorFactory signature extended with ...ActorOption[*Request,
  *Response] so backpressure policy is no longer baked into the factory.
- NewOnionActorFactory drops its shouldDrop parameter; it forwards opts
  through to serviceKey.Spawn.
- DefaultOnionActorOpts(shouldDrop) returns the default backpressure
  options (BackpressureMailbox + DefaultOnionMailboxSize).
- peer.Config gains OnionActorOpts callback for per-peer customization.
- server.go creates default opts once and returns them for every peer.
2026-03-28 12:42:53 +01:00
..
actor.go onionmessage: use BackpressureMailbox for onion peer actors 2026-03-28 12:42:53 +01:00
actor_test.go multi: OnionPeerActor for per-peer message support 2026-03-02 15:46:21 +01:00
errors.go multi: OnionPeerActor for per-peer message support 2026-03-02 15:46:21 +01:00
hop.go multi: actor-based onion message forwarding 2026-03-02 15:46:21 +01:00
hop_test.go multi: actor-based onion message forwarding 2026-03-02 15:46:21 +01:00
interfaces.go multi: OnionPeerActor for per-peer message support 2026-03-02 15:46:21 +01:00
log.go multi: endpoints for onion messages 2025-11-12 22:54:04 +08:00
onion_endpoint.go multi: actor-based onion message forwarding 2026-03-02 15:46:21 +01:00
resolver.go onionmessage: add LRU cache to SCID resolver 2026-03-02 15:46:21 +01:00
resolver_test.go multi: actor-based onion message forwarding 2026-03-02 15:46:21 +01:00
test_utils.go multi: actor-based onion message forwarding 2026-03-02 15:46:21 +01:00