osmosis-labs / mesh-security

Other
62 stars 8 forks source link

Implement validator set historical queries #119

Closed maurolacy closed 1 year ago

maurolacy commented 1 year ago

Implement historical valset data on the Provider. So that we can check for validator pubkey at the misbehaviour height.

This can be done through an SnapshotMap or IndexedShapshotMap. Alternatively, it can be done through a conventional Map or IndexedMap, with composite (validator, height) keys, for flexibility and maintenance (pruning of older keys).

Note: This may be difficult to do with the current impl, as the valset updates use CRDT for consistency over unordered channels. Let's consider changing this into a SnapshotMap or composite key Map, relaxing consistency and order guarantees in the pursuit of functionality: historical, queryable data.