You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The infosync proposal topic negotiates the cluster-wide supported block proposal types (builder/synthetic/full) every epoch, but its result is dead code. infosync.Proposals() has had no callers since #1762 (Feb 2023), which disabled the dynamic cluster-wide builder-API toggle because VCs cannot be reconfigured at runtime. The builder-vs-full decision is now driven entirely by static config (--builder-api → builder_boost_factor pre-gloas, charon's BuilderConfig from the gloas fork). The topic therefore costs a priority exchange each epoch for a value nobody reads.
🛠️ Proposed solution
Remove the dead proposal topic and its supporting code: topicProposal, Component.Proposals, the proposals field and proposalsToStrings in core/infosync, app.ProposalTypes, and the now-unused core.ProposalType constants. Dropping the topic is backward compatible: the priority protocol treats topics as arbitrary and scores each independently, so a topic sent by fewer than quorum peers simply drops out of the result during a mixed-version rollout, with no effect on the version and protocol topics.
Activity