pub(crate) fn ssa_reconstructor(
cfg: &PixGlobalConfig,
) -> Result<Arc<SsaReconstructor<HoprPixSpec>>>Expand description
Builds the Exit-side SSA reconstructor from operator configuration.
The single place PixReconstructorConfig becomes an SsaReconstructorConfig, called once per
node role that needs a reconstructor. Both production sites used to take
SsaReconstructorConfig::default() instead, which left all seven of the Exit’s dials — capacity,
lifetimes, the acknowledgement window — unreachable from a config file.
try_new rather than new, for the same reason the generator uses it at the one call site
above: these values now come from an operator, so an out-of-range one is a startup error to
report and not a panic to take the node down with. run_inner has already validated
self.cfg.pix — reconstructor is #[validate(nested)] — so in practice this reports what that
validation would have caught anyway; it stays fallible because nothing in the type system says
the two must be called in that order.