LemonRouter.QueueEffect (lemon_router v0.1.0)

View Source

Tiny typed effect surface for reducer-produced queue commands.

LemonRouter.SessionTransitions returns these effects after pure state transitions. LemonRouter.SessionCoordinator interprets them. Queue policy stays in the reducer rather than in the interpreter.

Summary

Types

fallback_mode()

@type fallback_mode() :: :followup | :collect

steer_mode()

@type steer_mode() :: :steer | :steer_backlog

t()

@type t() ::
  :maybe_start_next
  | {:cancel_active, term()}
  | {:dispatch_steer, binary(), steer_mode(), LemonRouter.Submission.t(),
     fallback_mode()}
  | :noop