ConfigChange
data class ConfigChange(val clock: Long, val node: NodeId, val index: Long, val old: ClusterConfig?, val new: ClusterConfig) : RaftTraceEvent
A config entry was appended to the log (adopted on append, per §6). Emitted by both the leader (on RaftNode.changeMembership) and followers (on receiving the AppendEntries carrying the config entry). This is the primary assertion point for membership-change tests — config and term are private engine state, so tests observe transitions through this event.
old is the previous effective configuration — the bootstrap config on the first ever change. new is the newly adopted configuration.