Esta sección documenta la capa de tiempo real de B Brands construida sobre
Pusher Channels.
horizon-api publica eventos de
dominio tipados (ciclo de vida de contratos digitales, telemetría de Maihue Street / NOC) a
canales por entidad; los frontends se suscriben y reaccionan a ellos.Qué es esto
El tiempo real es una mejora de UX best-effort superpuesta sobre el estado autoritativo REST/query — nunca una fuente de verdad. Cuando una acción del backend debería llegar a un cliente conectado de inmediato (un contrato se firma, un tótem envía un frame de telemetría, se dispara una alerta NOC), el servidor dispara un evento de Pusher en el canal que posee esa entidad. El cliente reacciona, típicamente invalidando una query cacheada.Lo que el tiempo real hace
Empuja una notificación ligera para que la UI se refresque sin esperar al
próximo poll.
Lo que el tiempo real NO hace
Nunca transporta estado autoritativo y nunca garantiza la entrega. Si un
mensaje se pierde, la capa REST/query sigue siendo correcta.
Degradación elegante
Las credenciales de Pusher son opcionales en cada entorno:- Sin credenciales del servidor, el publisher corre en modo log-only (el trigger es un no-op) y nunca lanza.
- Sin una key del cliente, el hook de suscripción reporta
status: "disabled"y los consumidores recurren al polling.
Cómo fluye la señal
Adónde ir después
Arquitectura
El publisher, el cliente perezoso y el modelo de degradación.
Canales y eventos
El naming de canales, el contrato de eventos y el autorizador de canales privados.
Integración de clientes
El hook compartido
usePusherChannel y el contrato de env del cliente.Operaciones
Variables de entorno, health probe y solución de problemas.