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

pos/vp: do not return early on unknown permitted key #763

Merged
merged 9 commits into from
Nov 30, 2022

Conversation

tzemanovic
Copy link
Member

@tzemanovic tzemanovic commented Nov 9, 2022

fixes #762

based on #706

tzemanovic added a commit that referenced this pull request Nov 9, 2022
@tzemanovic tzemanovic marked this pull request as ready for review November 9, 2022 10:03
@tzemanovic tzemanovic force-pushed the tomas/fix-init-validator-vp-validation branch from dde492f to 2a7da24 Compare November 9, 2022 11:23
tzemanovic added a commit that referenced this pull request Nov 17, 2022
* tomas/fix-init-validator-vp-validation:
  changelog: add #763
  pos/vp: do not return early on unknown permitted key
@tzemanovic tzemanovic mentioned this pull request Nov 17, 2022
@tzemanovic tzemanovic added this to the v0.11.0 milestone Nov 17, 2022
@juped juped merged commit 351b217 into main Nov 30, 2022
@juped juped deleted the tomas/fix-init-validator-vp-validation 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
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

PoS VP init-validator validation returns too early
2 participants