ForgedLeaderForTerm
RaftEngine.adoptLeaderForTerm (#1906): a same-term AppendEntries or InstallSnapshot from a peer that is not the node already established as this term's leader.
§5.2 permits one leader per term, so one of the two frames is forged — which one is not locally decidable, and the pin is first-claim-wins. Dropped rather than clamped (an identity has no conservative in-range reading, and clamping one launders a forgery into the most favourable valid value, #1817) and rather than answered (the recipient cannot tell the two senders apart, so it has nothing to say the honest one could act on).
The value with the largest gap between its safety weight and its observability, which is why #2033 named it first. RaftEngine.demoteToFollowerOnLeaderContact runs immediately before it and emits BecomeFollower only if this node was still Leader or Candidate; reaching it as an ordinary Follower — the overwhelmingly common case — the refusal produced nothing at all, and the dropped frame was indistinguishable from one the §5.3 consistency check drops a screen later.
#2033 closed the per-frame half of that gap, and left the sustained half open: a node whose term is pinned to the wrong identity refuses the real leader's every frame forever, and the report that exists to name a node in exactly that state — RaftMetric.WedgeSuspected — cannot fire for it (see wedgeGate, and the measurement there). A run of refusals at this gate is now reported as RaftMetric.LeaderPinDenial instead, off a counter of its own, carrying the pinned identity and the refused sender rather than a voter set.
Properties
The RaftMetric.WedgeSuspected.Gate a refusal at this gate is reported under, or null when this gate feeds no wedge diagnosis at all.