Commit Graph

571 Commits

Author SHA1 Message Date
rigelrozanski
ec42e66501 fix old tests 2018-08-27 00:20:40 -04:00
ValarDragon
4451755600 simulation: rename TestAndRunTx to Operation, make timestamp randomized 2018-08-26 19:40:53 -07:00
rigelrozanski
86f07d271d unbonding validators, delegtion effects 2018-08-24 21:47:31 -04:00
Alessio Treglia
7e8feec738
Incorporating @cwgoes comments 2018-08-24 15:20:53 +01:00
Alessio Treglia
f36f749818
Incorporating @ValarDragon's comments 2018-08-24 10:16:51 +01:00
Alessio Treglia
f432c0c383
Simulate transactions before actual execution
* Change --gas=0 semantic in order to enable gas auto estimate.
* REST clients have been modified to simulate the execution of
  the tx first to then populate the context with the estimated
  gas amount returned by the simulation.
* The simulation returns both an unadjusted gas estimate and an
  adjusted one. The adjustment is required to ensure that the
  ensuing execution doesn't fail due to state changes that might
  have occurred. Gas adjustment can be controlled via the CLI's
  --gas-adjustment flag.
* Tiny refactorig of REST endpoints error handling.

Closes: #1246
2018-08-24 10:16:51 +01:00
Christopher Goes
879f78cfc0 Rename revoke(d) to jail(ed) 2018-08-22 17:56:13 +02:00
Federico Kunze
cfb5acca6e Merge PR #2099: Query staking Pool and Params 2018-08-21 17:32:54 +02:00
Jae Kwon
f076794c5a Fix bug introduced during merge 2018-08-20 21:55:23 -07:00
Christopher Goes
800ac2844e validator.Operator, sdk.Dec 2018-08-20 17:10:43 +02:00
Ethan Buchman
af73b885e7 Merge branch 'develop' into bucky/merge-master 2018-08-19 16:24:45 -04:00
Alexander Bezobchuk
5794f3c3ce Merge PR #2083: Fix broken invariant of bonded validator power decrease 2018-08-18 13:41:12 +02:00
Alexander Bezobchuk
cf03076a0a Merge PR #2047: Fix Invalid Cliff Validator Power Comparison 2018-08-17 17:33:13 +02:00
Christopher Goes
b8cfc1e19f
Merge PR #2068: Minor simulation changes 2018-08-17 16:19:33 +02:00
Dev Ojha
8bb79d12ca Fix non-deterministic map iteration in fuzzer (#2069)
* This demonstrates that the state machine is non-deterministic if there
are more than two txs in a block.

* fix non-deterministic map iteration

* (squash this) fix build errors

* (squash this) iterate using range
2018-08-16 23:45:07 +02:00
Alessio Treglia
187bc1972a Merge PR #1950: Validator.Owner -> .Operator
* Rename --address-validator flag to --validator

See #1901

* Update PENDING.md

* Rename Validator.Owner -> Validator.Operator

See #1901
2018-08-16 16:47:59 -04:00
Christopher Goes
3d50567034
Merge PR #1783: Slashing, validator set, and governance simulation 2018-08-16 17:36:15 +02:00
Rigel
422dfa3de9
Merge pr #2051: smol compile bug 2018-08-15 18:35:17 -04:00
Alessio Treglia
4fbaee205f Merge pull request #1997: Handle unmarshalling failures gracefully in x/stake commands
* Handle panic gracefully when unbond begin fails

See #1831

* Handle failure to query delegation gracefully.

Closes #1907

* Update PENDING.md

* Reuse stake's error functions

* New ErrBadValidatorAddr error

UnmarshalValidator() checks the address length first;
it does not make sense to attempt unmarshalling if the
address is wrong.

* New ErrBadDelegationAddr error

* Introduce ErrBad{Redelegation,UnbondingDelegation}Addr custom errors to replace errors.New() calls

* Replace ErrBadUnbondingDelegationAddr with ErrBadDelegationAddr to avoid duplication

Thanks: @melekes for pointing this out

* Use sdk.AddrLen instead of hardcoded address length

* s/triple/tuple/ ## mention PR id in PENDING.md
2018-08-15 15:49:06 -04:00
Alexander Bezobchuk
97ea51a335 Merge pull request #2023: Terminate Update Bonded Validators Iteration Properly 2018-08-15 14:51:19 -04:00
Federico Kunze
c9358ec198 R4R: Fix repeated cmds in CLI for staking (v.0.24.0 release) (#2043)
* Cherry picked commits

* Update CHANGELOG.md
2018-08-15 16:59:46 +02:00
Rigel
5fff217e9b Merge PR #2033: staking lcd uses owner address not pubkey address 2018-08-15 15:04:01 +02:00
Rigel
d9dc061b4f
Merge pull request #1819: rational -> decimal
* changelog

* ...

* decimal func working

* decimal complete, untested

* fixing tests

* decimal compile errors resolved

* test compile errors

* precision multiplier test

* 1% laptop battery

* fixed TestNewDecFromStr

* equalities working

* fix bankers round chop

* ...

* working, some decimal issues resolved

* fix rounding error

* rounding works

* decimal works

* ...

* deleted rational

* rational conversion working

* revert changelog

* code compiles (not tests)

* went through all NewDec, made sure they were converted from NewRat properly

* test debugging

* all testing bugs besides the json marshalling fixed

* json unmarshal

* lint

* document update

* fix lcd test

* cli test fix

* mostly undo Dece -> Rate

* val comments

* Efficiency improvements

This now caches all of the precision multipliers (as they were all
used in non-mutative functions), and caches the precisionInt calculation.
(Now it just copies the already calculated value)

* Cache another precisionInt() call.

* Improve banker rounding efficiency

* remove defer, make negation in-place.

* chris val comments

* bez comments

* Aditya comments

* ...

* val comments

* rebasing start

* ...

* compiling

* tests pass

* cli fix

* anton, cwgoes, val comments

* val and jae comments

* type

* undo reuse quo
2018-08-14 20:15:02 -04:00
Federico Kunze
63713c9378 Merge pull request #2000: tests for staking lcd
* Added tests for Delegator Validators routes

* Updated tests for undelegations

* Updated Gaia-lite docs

* Updated PENDING.md

* Updated comments

* Deleted more comments

* Add spacing
2018-08-13 18:06:48 -04:00
Dev Ojha
b2a4aecc44 Upgrade to tm version 23.0. (#1927)
* Start upgrade. Currently go test ./... hangs.

* (squash this) Fix staking tests

* wip

* note what changes need to be made to make this work on tm v0.23.0

* Fix addr -> pubkey map

* cleanup code

* Fix slashing test failures except for begin blocker

* fix all slashing tests

* fix lcd tests

* Address PR comments

* add link to changelog.

* (wip) start making addrToPubkey map persisted. Since amino can't handle maps,
we have to change from what this commit is doing.

* Use the correct method of storing a map

* (squash this) address PR comments

* Did you run 'make'?

* remove gaiadebug binary
2018-08-12 03:33:48 -04:00
Fabian
1479a35e5e Merge PR #1949: Fixed delegations endpoint 2018-08-10 15:41:01 +02:00
Christopher Goes
ac26d33547
Merge PR #1858: Fix Cliff Validator Update Bugs 2018-08-09 00:57:59 +02:00
Federico Kunze
1da1115a24 Merge PR #1880: Staking Gaia-lite (ex LCD) refactor 2018-08-08 12:38:39 +02:00
Alexander Bezobchuk
12c2c236c2 Merge PR #1741: CoreContext Refactor 2018-08-06 20:11:30 +02:00
Joon
19b0781e60 Merge PR #1811: NewCoin takes sdk.Int 2018-07-31 02:09:50 +02:00
Rigel
c40d5debcc
Merge pull request #1862 from cosmos/dev/speed_up_handleMsgEditValidator
x/stake: Speed up handleMsgEditValidator
2018-07-29 23:21:10 -04:00
ValarDragon
0bb3497356 x/stake: Speed up handleMsgEditValidator
This removes running the power update logic on handleMsgEditValidator,
as its unnecessary.

Closes #1815
2018-07-27 21:42:59 -07:00
Christopher Goes
79aeb2b4b9 Fix genesis bond intra-tx counter bug 2018-07-27 20:01:06 +02:00
Aditya
74e06d8b96 Merge PR #1841: Must specify amount flag
* Removed default value for staking. Must now specify amount flag or it will error
* add to pending and better error msg
2018-07-26 23:41:24 +02:00
rigelrozanski
422eb0374e ... 2018-07-26 13:49:58 -04:00
rigelrozanski
07705444fd do-not-modify in defaults for edit-validator cli 2018-07-26 13:41:34 -04:00
rigelrozanski
58afe9780b Merge remote-tracking branch 'origin/develop' into sunny/fix-do-not-modify 2018-07-26 13:25:51 -04:00
Sunny Aggarwal
29bdd663c2 fixed donotmodify bug 2018-07-25 16:05:43 -07:00
Dev Ojha
5d02a743fb Update to tendermint v0.22.6-rc0 (#1798)
* Update to tendermint v0.22.6-rc0

This is comprised of updating the crypto imports / API

* (squash this) switch to v0.22.6

If this passes tests, I'll squash this commit and update the PR.
2018-07-25 16:43:37 -04:00
Rigel
d6cd0d4acc Merge PR #1818: CLI keybase-sig -> identity 2018-07-25 20:43:13 +02:00
Christopher Goes
4b7f6efd87
Merge PR #1805: Downtime slashing off-by-one-block fix
* Avoid slashing & revoking no longer stored or already revoked validators for downtime
* Add testcase
* Update PENDING.md
2018-07-25 04:12:48 +02:00
Rigel
52916f3c25
Merge branch 'develop' into rigel/no-endblock-rat-calcs 2018-07-23 14:59:06 -04:00
Rigel
17eb3eda02 Merge PR #1781: Gov tags cleanup 2018-07-21 03:58:45 +02:00
rigelrozanski
5686d6692a ... 2018-07-20 11:39:29 -04:00
rigelrozanski
9e5a78fc7a less stake endblock processing 2018-07-20 11:35:13 -04:00
rigelrozanski
accce5c7d8 lower rounding 2018-07-20 11:24:03 -04:00
rigelrozanski
df46339a45 benchmarking 2018-07-19 19:26:40 -04:00
Rigel
a054532a89
Merge pull request #1620 from cosmos/cwgoes/a-random-walk-down-proof-of-stake
R4R: Simulation framework, including staking simulation
2018-07-19 18:47:08 -04:00
Rigel
d2f70ec8af Merge PR #1748: CLI use --from consistently 2018-07-19 08:53:12 +02:00
Christopher Goes
7e88a50b2a
Merge branch 'develop' into cwgoes/a-random-walk-down-proof-of-stake 2018-07-19 08:49:20 +02:00
Christopher Goes
ee29e10068 RandomKey, RandomAmount 2018-07-19 08:48:43 +02:00
Joon
aa525418e1 Merge PR #1373: Initialization of POS chain 2018-07-19 08:39:40 +02:00
rigelrozanski
423d0c4a18 Merge remote-tracking branch 'origin/develop' into cwgoes/a-random-walk-down-proof-of-stake 2018-07-19 01:56:42 -04:00
Rigel
cfe78027f2 Merge PR #1724: R4R: Add Stake Genesis Intra-Tx Counter
* add revoked to human-readable validator
* changelog
* added failing test
* add intra-tx counter to the genesis validators
* changelog
2018-07-18 22:09:40 +02:00
Hendrik Hofstadt
b97ebef85e Fix inflation calculation period check 2018-07-18 13:12:49 +02:00
Christopher Goes
2c0cd73fc5 Remove old randomized pool testing, redundant 2018-07-18 10:00:19 +02:00
Christopher Goes
dc14eef639 Clarify 'nop', linter fix 2018-07-18 09:47:55 +02:00
Christopher Goes
cea2be6107 Fix loose tokens invariant 2018-07-18 09:42:18 +02:00
Christopher Goes
05ceff5212 Deterministic 'make test_sim' on CircleCI; bank test fix 2018-07-18 09:37:14 +02:00
Christopher Goes
ad410c1e2e Linter fixes 2018-07-18 07:50:04 +02:00
Christopher Goes
bf83385155 Merge branch 'develop' into cwgoes/a-random-walk-down-proof-of-stake 2018-07-18 07:49:52 +02:00
Christopher Goes
966f26dfb2 Remove print, quickfix 2018-07-18 07:44:40 +02:00
Christopher Goes
6c61577b0b Misc, environment variables 2018-07-18 07:37:38 +02:00
Christopher Goes
c61b1aa591 Event stats 2018-07-18 01:27:51 +02:00
Christopher Goes
5918ab18fd Restructure (probably) complete 2018-07-18 01:01:36 +02:00
Christopher Goes
253b82f92a Makefile changes 2018-07-18 00:04:10 +02:00
Sunny Aggarwal
d6969c1d22 Merge PR #1697: Proposal Query filter by status 2018-07-17 22:59:06 +02:00
Christopher Goes
af206bd0ed Update stake simulation 2018-07-17 20:50:30 +02:00
Christopher Goes
9ad3d62e49 Updates from merge 2018-07-17 02:41:36 +02:00
Christopher Goes
405bb538fc Merge branch 'master' into cwgoes/a-random-walk-down-proof-of-stake 2018-07-14 02:09:41 +02:00
Rigel
3231daa4d8 remove global shares (#1644)
* wip removing pool shares

* remove PoolShares/Tokens entirely

* worked through stake/type compile error

* work through a bunch of keeper errors

* worked through compile errors

* debugging tests

* resolve compilation error

* resolved types errors

* ...

* move inflation to pool type

* ...

* stumped problem

* Calculate newly issued shares, remove unnecessary pool arg from exchange rate calculation

* Rounding changed

* Update x/slashing tests for sdk.Rat BondedTokens

* testing fixes

* resolved test fixes

* cwgoes comments, changelog, lint

* cli bugfixes

* ..

* cli fixed

* spec update

* 'make format'

* cwgoes comments

* Increase test_cover parallelism
2018-07-13 21:46:14 +01:00
Christopher Goes
c272db06b8 Delegation bug fixed! 2018-07-13 01:54:07 +02:00
Christopher Goes
9bd09e651d Merge branch 'master' into cwgoes/a-random-walk-down-proof-of-stake 2018-07-13 01:38:56 +02:00
Rigel
2885ac586e Merge PR #1660: Redelegation doesn't subtract from liquid
* fix redelegation subtracting source coins
* changelog
* Add testcases for balance subtraction
* Move changelog entry
2018-07-13 01:38:35 +02:00
Christopher Goes
50d384aa90 Merge branch 'master' into cwgoes/a-random-walk-down-proof-of-stake 2018-07-12 21:30:11 +02:00
Christopher Goes
a6cc85ae87
Merge PR #1619: R4R: Clearer staking logic 2018-07-12 19:39:51 +02:00
Christopher Goes
f9f326cefb Move files 2018-07-12 00:14:37 +02:00
Christopher Goes
4623923fb8 Add 'test_sim' to CircleCI 2018-07-11 22:44:21 +02:00
Christopher Goes
88364c838e TestMsgBeginUnbonding 2018-07-11 19:51:04 +02:00
Christopher Goes
53138fb36f 'make test_sim', simulation folder 2018-07-11 19:43:25 +02:00
Christopher Goes
0572a2743e Changes from merge 2018-07-11 19:17:09 +02:00
Christopher Goes
5e3cd77554 Merge branch 'master' into cwgoes/a-random-walk-down-proof-of-stake 2018-07-11 19:11:45 +02:00
Christopher Goes
27f157a3e2 CacheContext() 2018-07-11 04:55:57 +02:00
Christopher Goes
a3d8b38d47 Add several simulated Msgs 2018-07-11 04:36:12 +02:00
Christopher Goes
940cfa98af Invariants & random Msgs in progress 2018-07-11 02:36:50 +02:00
Aditya
b195c556e2 Merge pull request #1600: Friend can create validator and delegate on behalf of genesis validator
* Added msg and handling for surrogate create validator

* changelog and error fix

* fix changelog

* Remove unnecessary msg by combining into CreateValidator

* Refactor

* Appease linter

* Added onbehalfof functionality in client

* fmt

* Added gaia onbehalfof test

* Update test for onbehalfof validator creation

* fix test

* Fix flag error

* Add app test

* fmt

* Fixed signer for onbehalfof createvalidator

* Fix error msg

* Simplify test

* fmt
2018-07-10 20:16:37 -04:00
rigelrozanski
9eeb47517d cwgoes comments 2018-07-10 19:27:39 -04:00
Christopher Goes
a33229380b Merge branch 'develop' into cwgoes/a-random-walk-down-proof-of-stake 2018-07-11 01:00:20 +02:00
Christopher Goes
75b4f4104a Merge branch 'develop' into joon/673-am-constructor 2018-07-11 00:57:46 +02:00
rigelrozanski
561eda3fc3 typo 2018-07-10 18:39:52 -04:00
rigelrozanski
e8e5e8c600 bez updates 2018-07-10 18:36:57 -04:00
rigelrozanski
c21e6a0642 Merge remote-tracking branch 'origin/develop' into rigel/clearer-staking-logic 2018-07-10 14:52:49 -04:00
Christopher Goes
6a119f6934 Work-in-progress staking invariants 2018-07-10 20:46:28 +02:00
rigelrozanski
12932de40f further cleanup, also reorg updateBondedValidators 2018-07-10 10:23:31 -04:00
rigelrozanski
61cbd12976 cleanup logic in updateValidator 2018-07-10 02:38:09 -04:00
Christopher Goes
efa003db9a
Merge PR #1612: prevent zero power validators at genesis 2018-07-10 07:43:59 +02:00
Christopher Goes
d217954ccb
Merge pull request #1615: Fix unformatted files 2018-07-10 07:29:07 +02:00
Christopher Goes
0ce2732660
Merge branch 'develop' into rigel/genesis-no-zero-power 2018-07-10 07:25:13 +02:00
ValarDragon
985037d2bd Fix unformatted files 2018-07-09 22:08:01 -07:00
rigelrozanski
a31404c628 more detailed comments 2018-07-10 00:18:25 -04:00