Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement event log and patch Namada to use it for tx querying #674

Merged
merged 8 commits into from
Nov 30, 2022

Conversation

sug0
Copy link
Contributor

@sug0 sug0 commented Oct 24, 2022

This PR patches in the diff from #587, adjusted to main.

The following changes are made:

  • The websockets client is removed from our code.
  • We Implement a log to store events emitted by ABCI+ calls to FinalizeBlock.
  • The log is hooked up to the shell, and is made queryable from two new ABCI query endpoints.
  • The client code now calls the new ABCI query endpoints to check the state (accepted/applied) of user txs.

Future work:

  • Tune default parameters of the event log.
  • Add a config option to change the number of kept events in the log.
  • Perhaps we could allow validators to disable the event log altogether.

@sug0 sug0 added ledger client enhancement New feature or request labels Oct 24, 2022
@sug0
Copy link
Contributor Author

sug0 commented Oct 24, 2022

pls update wasm

@sug0 sug0 marked this pull request as ready for review October 25, 2022 08:36
@sug0 sug0 requested a review from tzemanovic October 25, 2022 08:36
@sug0
Copy link
Contributor Author

sug0 commented Oct 25, 2022

I've tested manual transfers a bit, locally, and the client seems to be working fine.

@sug0 sug0 marked this pull request as draft November 2, 2022 12:56
@sug0
Copy link
Contributor Author

sug0 commented Nov 2, 2022

Putting this PR on hold until we fix e2e tests in #723

sug0 and others added 4 commits November 3, 2022 10:32
This commit patches in the diff from #587, adjusted to main.
Co-authored-by: Tomas Zemanovic <tomas@heliax.dev>
Co-authored-by: Tomas Zemanovic <tomas@heliax.dev>
Move event log from `Shell` to `Storage`

Guard less things with the ferveo-tpke feature so that wasm compiles

Fix cargo doc link

Update client to use new RPC router for accepted/applied queries

Use Vec<Event> instead of raw Vec<u8>

Remove no longer used From<TxEventQuery> impl

query_tx_events should return eyre::Result
@sug0 sug0 requested a review from tzemanovic November 3, 2022 11:25
@sug0 sug0 marked this pull request as ready for review November 3, 2022 11:25
@sug0
Copy link
Contributor Author

sug0 commented Nov 3, 2022

pls update wasm

@sug0
Copy link
Contributor Author

sug0 commented Nov 3, 2022

e2e tests are failing, but a fix is already available in #706

* Remove the `EventLog` from `Storage`, and add it back to the `Shell`.
* Pass a reference to the `EventLog` to `RequestCtx`.
* Return `Option<Event>` instead of `Vec<Event>` from accepted and
  applied RPC calls.
tzemanovic
tzemanovic previously approved these changes Nov 3, 2022
tzemanovic
tzemanovic previously approved these changes Nov 16, 2022
@tzemanovic tzemanovic added this to the v0.11.0 milestone Nov 16, 2022
tzemanovic added a commit that referenced this pull request Nov 16, 2022
* tiago/main/event-log:
  changelog: add #674
  Small fixes
  Code review suggestions
  [ci] wasm checksums update
  Move namada_apps::node::ledger::events to the shared crate
  Update apps/src/lib/client/tendermint_rpc_types.rs
  Update apps/src/lib/client/tx.rs
  Implement event log
@tzemanovic tzemanovic mentioned this pull request Nov 16, 2022
@@ -151,7 +162,7 @@ impl From<ProposalEvent> for Event {
}

/// Convert our custom event into the necessary tendermint proto type
impl From<Event> for crate::facade::tendermint_proto::abci::Event {
impl From<Event> for tendermint_proto::abci::Event {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@tzemanovic this should be crate::facade::tendermint_proto::abci::Event, sorry

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it affects abcipp build right? We should be maybe check it in the CI

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yep

@juped juped merged commit 8ebc94c into main Nov 30, 2022
@juped juped deleted the tiago/main/event-log branch November 30, 2022 07:46
tzemanovic added a commit that referenced this pull request Dec 1, 2022
Namada 0.11.0

* tag 'v0.11.0': (195 commits)
  Namada 0.11.0
  wasm: update checksums.json
  wasm_for_tests: rebuild all
  fix default chain IDs lengths
  make fmt
  s/anoma/namada in all files
  apps: s/anoma/namada/ in paths
  wasm: update checksums.json
  [ci] wasm checksums update
  changelog: add #733
  docs/overview: update deps graph and add a generated one too
  pos: replace generic types with concrete types from core
  update paths for core split and apply many small fixes
  add new crate "namada_core" for core types, storage_api, tx_env, vp_env
  proto/types: remove an & to placate 1.65 clippy
  changelog: add #807
  tx: sign hash of code rather than full code blob
  maint: fix incorrect clippy placation in previous merge
  fix: use multitoken credit_tokens() in tests
  maint: patch funty 1.2.0
  ci: update rust/docker image
  Fix changelog
  Fix up for namada v0.10.1
  Add changelog
  Add check-abcipp command
  Use ferveo-tpke flag to stop tendermint-rpc being pulled into wasm
  First attempt at fixing shared abcipp
  deleted out of date TS docs
  changelog: add #797
  [ci] wasm checksums update
  changelog: add #707
  remove comments to self
  convert to tm voting power in `update_epoch`
  client: replace voting power with bonded stake in queries, etc
  fix pos state machine test
  clean up naming of "validator total deltas" -> "validator deltas"
  fix client voting power query
  fix `TendermintValidator::power`
  clippy: suppress unused validation vars (may need later)
  fmt + cleanup after cherrypicking commits from #388
  more voting_power removal and accurate variable renaming
  keep voting_power as a possible client query
  change `validator_total_deltas` -> `validator_deltas`
  Update wasm tx_(un)bond with VotingPower removal
  refactor VotingPower out of PoS VP
  continue refactoring away VotingPower
  refactor out VotingPower(Delta) in pos crate, distinguish total and validator deltas
  rename slash rate params with `min`, update default `PosParam` values
  Update tests/src/vm_host_env/tx.rs
  Update shared/src/ledger/parameters/mod.rs
  changelog: add #775
  [feat]: Renamed 'fee' CLI arguments to 'gas'.
  make: clean any existing WASM files before WASM build
  changelog: add #719
  changelog: add #674
  pos: use  method
  governance: added  method, fmt, clippy
  changelog: add #570
  [ci] wasm checksums update
  changelog: add #708
  remove `min_duration` from `ParametersConfig`
  remove `staked_ratio` and `pos_inflation_amount` from `ParametersConfig`
  update comments
  [ci] wasm checksums update
  fmt and includes
  updates to accommodate `tm_votes_per_token` relative to namnam
  Update rewards parameters and distribution
  update toml files with latest parameters and values
  fix arb_amount to max out at max tm voting power (fix wasm test bug)
  storage change: last inflation rate -> last inflation token amount
  fix: write all fields in Parameters storage in `init_storage`
  fix initial staked ratio parameter at genesis
  update rust_decimal version + fmt
  clean comments and toml files of basis points
  fix correct inner type of ValidationError::TotalVotingPowerTooLarge
  more decimal_mult function uses
  add fns to multiply Decimal and integer type, return truncated integer
  remove BasisPoints and change relevant parameters to Decimal type
  documentation updates + unused imports removal
  rename reward_rate -> inflation_rate for pos
  specify read or write intentions for parameters storage keys
  add target_staked_ratio to PoS params
  update max inflation rate in params (formerly max_staking_rewards_rate)
  rename `votes_per_token` to `tm_votes_per_token` since this will only be used to interface with tendermint
  add new parameters needed for rewards PD controller to the Parameters storage
  add max_staking_reward_rate to PosParams
  clarify+rename 'epoch_storage_key' as 'epoch_duration_storage_key'
  changelog: add #695
  [ci] wasm checksums update
  addressing 2nd round of review comments
  async tx to change validator commission rate
  [ci] wasm checksums update
  changelog: add #763
  pos/vp: do not return early on unknown permitted key
  changelog: add #582
  add vp validator to wasms
  fix: critical flaw in pos VP that was prematurely returning true
  add max commission rate info to validation and pos state machine test
  validator VP that checks source and signature for a commission rate change tx
  changes in response to review comments
  ...
tzemanovic added a commit that referenced this pull request Dec 2, 2022
Namada 0.11.0

* tag 'v0.11.0': (195 commits)
  Namada 0.11.0
  wasm: update checksums.json
  wasm_for_tests: rebuild all
  fix default chain IDs lengths
  make fmt
  s/anoma/namada in all files
  apps: s/anoma/namada/ in paths
  wasm: update checksums.json
  [ci] wasm checksums update
  changelog: add #733
  docs/overview: update deps graph and add a generated one too
  pos: replace generic types with concrete types from core
  update paths for core split and apply many small fixes
  add new crate "namada_core" for core types, storage_api, tx_env, vp_env
  proto/types: remove an & to placate 1.65 clippy
  changelog: add #807
  tx: sign hash of code rather than full code blob
  maint: fix incorrect clippy placation in previous merge
  fix: use multitoken credit_tokens() in tests
  maint: patch funty 1.2.0
  ci: update rust/docker image
  Fix changelog
  Fix up for namada v0.10.1
  Add changelog
  Add check-abcipp command
  Use ferveo-tpke flag to stop tendermint-rpc being pulled into wasm
  First attempt at fixing shared abcipp
  deleted out of date TS docs
  changelog: add #797
  [ci] wasm checksums update
  changelog: add #707
  remove comments to self
  convert to tm voting power in `update_epoch`
  client: replace voting power with bonded stake in queries, etc
  fix pos state machine test
  clean up naming of "validator total deltas" -> "validator deltas"
  fix client voting power query
  fix `TendermintValidator::power`
  clippy: suppress unused validation vars (may need later)
  fmt + cleanup after cherrypicking commits from #388
  more voting_power removal and accurate variable renaming
  keep voting_power as a possible client query
  change `validator_total_deltas` -> `validator_deltas`
  Update wasm tx_(un)bond with VotingPower removal
  refactor VotingPower out of PoS VP
  continue refactoring away VotingPower
  refactor out VotingPower(Delta) in pos crate, distinguish total and validator deltas
  rename slash rate params with `min`, update default `PosParam` values
  Update tests/src/vm_host_env/tx.rs
  Update shared/src/ledger/parameters/mod.rs
  changelog: add #775
  [feat]: Renamed 'fee' CLI arguments to 'gas'.
  make: clean any existing WASM files before WASM build
  changelog: add #719
  changelog: add #674
  pos: use  method
  governance: added  method, fmt, clippy
  changelog: add #570
  [ci] wasm checksums update
  changelog: add #708
  remove `min_duration` from `ParametersConfig`
  remove `staked_ratio` and `pos_inflation_amount` from `ParametersConfig`
  update comments
  [ci] wasm checksums update
  fmt and includes
  updates to accommodate `tm_votes_per_token` relative to namnam
  Update rewards parameters and distribution
  update toml files with latest parameters and values
  fix arb_amount to max out at max tm voting power (fix wasm test bug)
  storage change: last inflation rate -> last inflation token amount
  fix: write all fields in Parameters storage in `init_storage`
  fix initial staked ratio parameter at genesis
  update rust_decimal version + fmt
  clean comments and toml files of basis points
  fix correct inner type of ValidationError::TotalVotingPowerTooLarge
  more decimal_mult function uses
  add fns to multiply Decimal and integer type, return truncated integer
  remove BasisPoints and change relevant parameters to Decimal type
  documentation updates + unused imports removal
  rename reward_rate -> inflation_rate for pos
  specify read or write intentions for parameters storage keys
  add target_staked_ratio to PoS params
  update max inflation rate in params (formerly max_staking_rewards_rate)
  rename `votes_per_token` to `tm_votes_per_token` since this will only be used to interface with tendermint
  add new parameters needed for rewards PD controller to the Parameters storage
  add max_staking_reward_rate to PosParams
  clarify+rename 'epoch_storage_key' as 'epoch_duration_storage_key'
  changelog: add #695
  [ci] wasm checksums update
  addressing 2nd round of review comments
  async tx to change validator commission rate
  [ci] wasm checksums update
  changelog: add #763
  pos/vp: do not return early on unknown permitted key
  changelog: add #582
  add vp validator to wasms
  fix: critical flaw in pos VP that was prematurely returning true
  add max commission rate info to validation and pos state machine test
  validator VP that checks source and signature for a commission rate change tx
  changes in response to review comments
  ...
tzemanovic added a commit that referenced this pull request Dec 2, 2022
Namada 0.11.0

* tag 'v0.11.0': (195 commits)
  Namada 0.11.0
  wasm: update checksums.json
  wasm_for_tests: rebuild all
  fix default chain IDs lengths
  make fmt
  s/anoma/namada in all files
  apps: s/anoma/namada/ in paths
  wasm: update checksums.json
  [ci] wasm checksums update
  changelog: add #733
  docs/overview: update deps graph and add a generated one too
  pos: replace generic types with concrete types from core
  update paths for core split and apply many small fixes
  add new crate "namada_core" for core types, storage_api, tx_env, vp_env
  proto/types: remove an & to placate 1.65 clippy
  changelog: add #807
  tx: sign hash of code rather than full code blob
  maint: fix incorrect clippy placation in previous merge
  fix: use multitoken credit_tokens() in tests
  maint: patch funty 1.2.0
  ci: update rust/docker image
  Fix changelog
  Fix up for namada v0.10.1
  Add changelog
  Add check-abcipp command
  Use ferveo-tpke flag to stop tendermint-rpc being pulled into wasm
  First attempt at fixing shared abcipp
  deleted out of date TS docs
  changelog: add #797
  [ci] wasm checksums update
  changelog: add #707
  remove comments to self
  convert to tm voting power in `update_epoch`
  client: replace voting power with bonded stake in queries, etc
  fix pos state machine test
  clean up naming of "validator total deltas" -> "validator deltas"
  fix client voting power query
  fix `TendermintValidator::power`
  clippy: suppress unused validation vars (may need later)
  fmt + cleanup after cherrypicking commits from #388
  more voting_power removal and accurate variable renaming
  keep voting_power as a possible client query
  change `validator_total_deltas` -> `validator_deltas`
  Update wasm tx_(un)bond with VotingPower removal
  refactor VotingPower out of PoS VP
  continue refactoring away VotingPower
  refactor out VotingPower(Delta) in pos crate, distinguish total and validator deltas
  rename slash rate params with `min`, update default `PosParam` values
  Update tests/src/vm_host_env/tx.rs
  Update shared/src/ledger/parameters/mod.rs
  changelog: add #775
  [feat]: Renamed 'fee' CLI arguments to 'gas'.
  make: clean any existing WASM files before WASM build
  changelog: add #719
  changelog: add #674
  pos: use  method
  governance: added  method, fmt, clippy
  changelog: add #570
  [ci] wasm checksums update
  changelog: add #708
  remove `min_duration` from `ParametersConfig`
  remove `staked_ratio` and `pos_inflation_amount` from `ParametersConfig`
  update comments
  [ci] wasm checksums update
  fmt and includes
  updates to accommodate `tm_votes_per_token` relative to namnam
  Update rewards parameters and distribution
  update toml files with latest parameters and values
  fix arb_amount to max out at max tm voting power (fix wasm test bug)
  storage change: last inflation rate -> last inflation token amount
  fix: write all fields in Parameters storage in `init_storage`
  fix initial staked ratio parameter at genesis
  update rust_decimal version + fmt
  clean comments and toml files of basis points
  fix correct inner type of ValidationError::TotalVotingPowerTooLarge
  more decimal_mult function uses
  add fns to multiply Decimal and integer type, return truncated integer
  remove BasisPoints and change relevant parameters to Decimal type
  documentation updates + unused imports removal
  rename reward_rate -> inflation_rate for pos
  specify read or write intentions for parameters storage keys
  add target_staked_ratio to PoS params
  update max inflation rate in params (formerly max_staking_rewards_rate)
  rename `votes_per_token` to `tm_votes_per_token` since this will only be used to interface with tendermint
  add new parameters needed for rewards PD controller to the Parameters storage
  add max_staking_reward_rate to PosParams
  clarify+rename 'epoch_storage_key' as 'epoch_duration_storage_key'
  changelog: add #695
  [ci] wasm checksums update
  addressing 2nd round of review comments
  async tx to change validator commission rate
  [ci] wasm checksums update
  changelog: add #763
  pos/vp: do not return early on unknown permitted key
  changelog: add #582
  add vp validator to wasms
  fix: critical flaw in pos VP that was prematurely returning true
  add max commission rate info to validation and pos state machine test
  validator VP that checks source and signature for a commission rate change tx
  changes in response to review comments
  ...
tzemanovic added a commit that referenced this pull request Dec 2, 2022
Namada 0.11.0

* tag 'v0.11.0': (195 commits)
  Namada 0.11.0
  wasm: update checksums.json
  wasm_for_tests: rebuild all
  fix default chain IDs lengths
  make fmt
  s/anoma/namada in all files
  apps: s/anoma/namada/ in paths
  wasm: update checksums.json
  [ci] wasm checksums update
  changelog: add #733
  docs/overview: update deps graph and add a generated one too
  pos: replace generic types with concrete types from core
  update paths for core split and apply many small fixes
  add new crate "namada_core" for core types, storage_api, tx_env, vp_env
  proto/types: remove an & to placate 1.65 clippy
  changelog: add #807
  tx: sign hash of code rather than full code blob
  maint: fix incorrect clippy placation in previous merge
  fix: use multitoken credit_tokens() in tests
  maint: patch funty 1.2.0
  ci: update rust/docker image
  Fix changelog
  Fix up for namada v0.10.1
  Add changelog
  Add check-abcipp command
  Use ferveo-tpke flag to stop tendermint-rpc being pulled into wasm
  First attempt at fixing shared abcipp
  deleted out of date TS docs
  changelog: add #797
  [ci] wasm checksums update
  changelog: add #707
  remove comments to self
  convert to tm voting power in `update_epoch`
  client: replace voting power with bonded stake in queries, etc
  fix pos state machine test
  clean up naming of "validator total deltas" -> "validator deltas"
  fix client voting power query
  fix `TendermintValidator::power`
  clippy: suppress unused validation vars (may need later)
  fmt + cleanup after cherrypicking commits from #388
  more voting_power removal and accurate variable renaming
  keep voting_power as a possible client query
  change `validator_total_deltas` -> `validator_deltas`
  Update wasm tx_(un)bond with VotingPower removal
  refactor VotingPower out of PoS VP
  continue refactoring away VotingPower
  refactor out VotingPower(Delta) in pos crate, distinguish total and validator deltas
  rename slash rate params with `min`, update default `PosParam` values
  Update tests/src/vm_host_env/tx.rs
  Update shared/src/ledger/parameters/mod.rs
  changelog: add #775
  [feat]: Renamed 'fee' CLI arguments to 'gas'.
  make: clean any existing WASM files before WASM build
  changelog: add #719
  changelog: add #674
  pos: use  method
  governance: added  method, fmt, clippy
  changelog: add #570
  [ci] wasm checksums update
  changelog: add #708
  remove `min_duration` from `ParametersConfig`
  remove `staked_ratio` and `pos_inflation_amount` from `ParametersConfig`
  update comments
  [ci] wasm checksums update
  fmt and includes
  updates to accommodate `tm_votes_per_token` relative to namnam
  Update rewards parameters and distribution
  update toml files with latest parameters and values
  fix arb_amount to max out at max tm voting power (fix wasm test bug)
  storage change: last inflation rate -> last inflation token amount
  fix: write all fields in Parameters storage in `init_storage`
  fix initial staked ratio parameter at genesis
  update rust_decimal version + fmt
  clean comments and toml files of basis points
  fix correct inner type of ValidationError::TotalVotingPowerTooLarge
  more decimal_mult function uses
  add fns to multiply Decimal and integer type, return truncated integer
  remove BasisPoints and change relevant parameters to Decimal type
  documentation updates + unused imports removal
  rename reward_rate -> inflation_rate for pos
  specify read or write intentions for parameters storage keys
  add target_staked_ratio to PoS params
  update max inflation rate in params (formerly max_staking_rewards_rate)
  rename `votes_per_token` to `tm_votes_per_token` since this will only be used to interface with tendermint
  add new parameters needed for rewards PD controller to the Parameters storage
  add max_staking_reward_rate to PosParams
  clarify+rename 'epoch_storage_key' as 'epoch_duration_storage_key'
  changelog: add #695
  [ci] wasm checksums update
  addressing 2nd round of review comments
  async tx to change validator commission rate
  [ci] wasm checksums update
  changelog: add #763
  pos/vp: do not return early on unknown permitted key
  changelog: add #582
  add vp validator to wasms
  fix: critical flaw in pos VP that was prematurely returning true
  add max commission rate info to validation and pos state machine test
  validator VP that checks source and signature for a commission rate change tx
  changes in response to review comments
  ...
tzemanovic added a commit that referenced this pull request Dec 6, 2022
Namada 0.11.0

* tag 'v0.11.0': (195 commits)
  Namada 0.11.0
  wasm: update checksums.json
  wasm_for_tests: rebuild all
  fix default chain IDs lengths
  make fmt
  s/anoma/namada in all files
  apps: s/anoma/namada/ in paths
  wasm: update checksums.json
  [ci] wasm checksums update
  changelog: add #733
  docs/overview: update deps graph and add a generated one too
  pos: replace generic types with concrete types from core
  update paths for core split and apply many small fixes
  add new crate "namada_core" for core types, storage_api, tx_env, vp_env
  proto/types: remove an & to placate 1.65 clippy
  changelog: add #807
  tx: sign hash of code rather than full code blob
  maint: fix incorrect clippy placation in previous merge
  fix: use multitoken credit_tokens() in tests
  maint: patch funty 1.2.0
  ci: update rust/docker image
  Fix changelog
  Fix up for namada v0.10.1
  Add changelog
  Add check-abcipp command
  Use ferveo-tpke flag to stop tendermint-rpc being pulled into wasm
  First attempt at fixing shared abcipp
  deleted out of date TS docs
  changelog: add #797
  [ci] wasm checksums update
  changelog: add #707
  remove comments to self
  convert to tm voting power in `update_epoch`
  client: replace voting power with bonded stake in queries, etc
  fix pos state machine test
  clean up naming of "validator total deltas" -> "validator deltas"
  fix client voting power query
  fix `TendermintValidator::power`
  clippy: suppress unused validation vars (may need later)
  fmt + cleanup after cherrypicking commits from #388
  more voting_power removal and accurate variable renaming
  keep voting_power as a possible client query
  change `validator_total_deltas` -> `validator_deltas`
  Update wasm tx_(un)bond with VotingPower removal
  refactor VotingPower out of PoS VP
  continue refactoring away VotingPower
  refactor out VotingPower(Delta) in pos crate, distinguish total and validator deltas
  rename slash rate params with `min`, update default `PosParam` values
  Update tests/src/vm_host_env/tx.rs
  Update shared/src/ledger/parameters/mod.rs
  changelog: add #775
  [feat]: Renamed 'fee' CLI arguments to 'gas'.
  make: clean any existing WASM files before WASM build
  changelog: add #719
  changelog: add #674
  pos: use  method
  governance: added  method, fmt, clippy
  changelog: add #570
  [ci] wasm checksums update
  changelog: add #708
  remove `min_duration` from `ParametersConfig`
  remove `staked_ratio` and `pos_inflation_amount` from `ParametersConfig`
  update comments
  [ci] wasm checksums update
  fmt and includes
  updates to accommodate `tm_votes_per_token` relative to namnam
  Update rewards parameters and distribution
  update toml files with latest parameters and values
  fix arb_amount to max out at max tm voting power (fix wasm test bug)
  storage change: last inflation rate -> last inflation token amount
  fix: write all fields in Parameters storage in `init_storage`
  fix initial staked ratio parameter at genesis
  update rust_decimal version + fmt
  clean comments and toml files of basis points
  fix correct inner type of ValidationError::TotalVotingPowerTooLarge
  more decimal_mult function uses
  add fns to multiply Decimal and integer type, return truncated integer
  remove BasisPoints and change relevant parameters to Decimal type
  documentation updates + unused imports removal
  rename reward_rate -> inflation_rate for pos
  specify read or write intentions for parameters storage keys
  add target_staked_ratio to PoS params
  update max inflation rate in params (formerly max_staking_rewards_rate)
  rename `votes_per_token` to `tm_votes_per_token` since this will only be used to interface with tendermint
  add new parameters needed for rewards PD controller to the Parameters storage
  add max_staking_reward_rate to PosParams
  clarify+rename 'epoch_storage_key' as 'epoch_duration_storage_key'
  changelog: add #695
  [ci] wasm checksums update
  addressing 2nd round of review comments
  async tx to change validator commission rate
  [ci] wasm checksums update
  changelog: add #763
  pos/vp: do not return early on unknown permitted key
  changelog: add #582
  add vp validator to wasms
  fix: critical flaw in pos VP that was prematurely returning true
  add max commission rate info to validation and pos state machine test
  validator VP that checks source and signature for a commission rate change tx
  changes in response to review comments
  ...
tzemanovic added a commit that referenced this pull request Dec 9, 2022
* bat/eth-0.11.0-merge: (205 commits)
  tiny refactor vote_extensions
  [chore]: Added some docstrings
  Makefile: add core to clippy-abcipp and test-unit-abcipp and fix shared
  [fix] abcipp ethereum_events unit test
  [feat]: Fixed up the abcipp feature flag
  [fix]: Fixed FinalizeBlock method
  more abcipp fixes
  fix `make check-abcipp` and `make clippy-abcipp`
  fix 0.11.0 merge
  move eth-bridge types and storage mods to core
  Namada 0.11.0
  wasm: update checksums.json
  wasm_for_tests: rebuild all
  fix default chain IDs lengths
  make fmt
  s/anoma/namada in all files
  apps: s/anoma/namada/ in paths
  wasm: update checksums.json
  [ci] wasm checksums update
  changelog: add #733
  docs/overview: update deps graph and add a generated one too
  pos: replace generic types with concrete types from core
  update paths for core split and apply many small fixes
  add new crate "namada_core" for core types, storage_api, tx_env, vp_env
  proto/types: remove an & to placate 1.65 clippy
  changelog: add #807
  tx: sign hash of code rather than full code blob
  maint: fix incorrect clippy placation in previous merge
  fix: use multitoken credit_tokens() in tests
  maint: patch funty 1.2.0
  ci: update rust/docker image
  Fix changelog
  Fix up for namada v0.10.1
  Add changelog
  Add check-abcipp command
  Use ferveo-tpke flag to stop tendermint-rpc being pulled into wasm
  First attempt at fixing shared abcipp
  deleted out of date TS docs
  changelog: add #797
  [ci] wasm checksums update
  changelog: add #707
  remove comments to self
  convert to tm voting power in `update_epoch`
  client: replace voting power with bonded stake in queries, etc
  fix pos state machine test
  clean up naming of "validator total deltas" -> "validator deltas"
  fix client voting power query
  fix `TendermintValidator::power`
  clippy: suppress unused validation vars (may need later)
  fmt + cleanup after cherrypicking commits from #388
  more voting_power removal and accurate variable renaming
  keep voting_power as a possible client query
  change `validator_total_deltas` -> `validator_deltas`
  Update wasm tx_(un)bond with VotingPower removal
  refactor VotingPower out of PoS VP
  continue refactoring away VotingPower
  refactor out VotingPower(Delta) in pos crate, distinguish total and validator deltas
  rename slash rate params with `min`, update default `PosParam` values
  Update tests/src/vm_host_env/tx.rs
  Update shared/src/ledger/parameters/mod.rs
  changelog: add #775
  [feat]: Renamed 'fee' CLI arguments to 'gas'.
  make: clean any existing WASM files before WASM build
  changelog: add #719
  changelog: add #674
  pos: use  method
  governance: added  method, fmt, clippy
  changelog: add #570
  [ci] wasm checksums update
  changelog: add #708
  remove `min_duration` from `ParametersConfig`
  remove `staked_ratio` and `pos_inflation_amount` from `ParametersConfig`
  update comments
  [ci] wasm checksums update
  fmt and includes
  updates to accommodate `tm_votes_per_token` relative to namnam
  Update rewards parameters and distribution
  update toml files with latest parameters and values
  fix arb_amount to max out at max tm voting power (fix wasm test bug)
  storage change: last inflation rate -> last inflation token amount
  fix: write all fields in Parameters storage in `init_storage`
  fix initial staked ratio parameter at genesis
  update rust_decimal version + fmt
  clean comments and toml files of basis points
  fix correct inner type of ValidationError::TotalVotingPowerTooLarge
  more decimal_mult function uses
  add fns to multiply Decimal and integer type, return truncated integer
  remove BasisPoints and change relevant parameters to Decimal type
  documentation updates + unused imports removal
  rename reward_rate -> inflation_rate for pos
  specify read or write intentions for parameters storage keys
  add target_staked_ratio to PoS params
  update max inflation rate in params (formerly max_staking_rewards_rate)
  rename `votes_per_token` to `tm_votes_per_token` since this will only be used to interface with tendermint
  add new parameters needed for rewards PD controller to the Parameters storage
  add max_staking_reward_rate to PosParams
  clarify+rename 'epoch_storage_key' as 'epoch_duration_storage_key'
  changelog: add #695
  [ci] wasm checksums update
  addressing 2nd round of review comments
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
client enhancement New feature or request ledger
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants