Sub-task of #106.
Provide a high-level, idiomatic Go API that mirrors logos-delivery's Nim MessagingClient, implemented over the liblogosdelivery C bindings (internal/ffi) rather than exposing the raw FFI.
Scope
MessagingClient: New / Start / Stop / Close, Subscribe / Unsubscribe, Send(ctx, Envelope) (RequestID, error).
- A unified
Events() <-chan Event with a sealed Event interface (MessageReceived / Sent / Propagated / Error, ConnectionStatus); non-blocking delivery.
- Typed
Envelope / Config; event decoding that matches the library's wire format.
- Runnable example + unit tests.
Introduced by #117 (stacked on the single-library migration).
Sub-task of #106.
Provide a high-level, idiomatic Go API that mirrors logos-delivery's Nim
MessagingClient, implemented over theliblogosdeliveryC bindings (internal/ffi) rather than exposing the raw FFI.Scope
MessagingClient:New/Start/Stop/Close,Subscribe/Unsubscribe,Send(ctx, Envelope) (RequestID, error).Events() <-chan Eventwith a sealedEventinterface (MessageReceived/Sent/Propagated/Error,ConnectionStatus); non-blocking delivery.Envelope/Config; event decoding that matches the library's wire format.Introduced by #117 (stacked on the single-library migration).