IndexedAction

constructor(index: Long, action: A, dedupKey: DedupKey)

Parameters

index

1-based monotonically increasing position in the committed log. Two nodes in the same cluster assign the same index to the same action.

action

The deserialized application action.

dedupKey

The Raft §8 client-serial dedup identity stamped onto this entry by its proposer. Always present — every committed application entry is stamped, including the auto-serial TurnSequencer.propose path. Fold it through a us.tractat.kuilt.raft.ClientSessionTable in the apply loop to preserve exactly-once across forwarding and reconnect: skip the entry when us.tractat.kuilt.raft.ClientSessionTable.shouldApply returns false.