Single-writer GenServer para ingestão de arestas.
Padrão GraphJet: um único processo de escrita evita race conditions no gerenciamento de segmentos. Leituras são feitas diretamente nas tabelas ETS (multi-reader).
Padrão Oban: trap_exit + drain da mailbox no shutdown para não
perder arestas durante graceful shutdown.
No modo :sync, usa call em vez de cast para garantir que
a inserção completou antes de retornar (essencial para testes).
Summary
Functions
Returns a specification to start this module under a supervisor.
Insere uma aresta no grafo, com peso opcional (default 1.0).
Functions
Returns a specification to start this module under a supervisor.
See Supervisor.
@spec insert_edge(MeliGraph.Config.t(), term(), term(), atom(), float()) :: :ok
Insere uma aresta no grafo, com peso opcional (default 1.0).
No modo :sync, a chamada é síncrona (call).
No modo :disabled, a chamada é assíncrona (cast).