// readiness.go — состояние подсистем для readiness-пробы /ready. package api import "sync/atomic" // Readiness отслеживает, работают ли фоновые подсистемы (bridge, consumer). // /health — liveness (процесс жив), /ready — readiness (подсистемы в строю). type Readiness struct { bridgeUp atomic.Bool consumerUp atomic.Bool } // SetBridge — отметить состояние bridge. func (r *Readiness) SetBridge(up bool) { r.bridgeUp.Store(up) } // SetConsumer — отметить состояние consumer. func (r *Readiness) SetConsumer(up bool) { r.consumerUp.Store(up) } // Ready — true, когда обе подсистемы работают. func (r *Readiness) Ready() bool { return r.bridgeUp.Load() && r.consumerUp.Load() }