Commit Graph

650 Commits

Author SHA1 Message Date
Steven Allen
e60027c00a remove todo 2020-09-18 14:22:38 -07:00
Łukasz Magiera
70faa36b7f Merge remote-tracking branch 'origin/master' into refactor/net-upgrade 2020-09-18 19:29:06 +02:00
Aayush Rajasekaran
694463ffbe More lint fixes 2020-09-18 03:06:28 -04:00
Łukasz Magiera
6eda53565f Most tests passing 2020-09-17 17:30:24 +02:00
Aayush Rajasekaran
31ff5230bb Get State API almost working 2020-09-17 05:05:32 -04:00
Aayush Rajasekaran
053cfc1cc7 Migrate verifreg actor 2020-09-17 03:55:23 -04:00
hannahhoward
691bd9f442 feat(markets): complete markets conversion
complete markets conversion to using chain/actors types, also replacing DealProposal/DealState
interfaces with structs
2020-09-17 00:43:14 -07:00
Aayush Rajasekaran
e2295c372a Migrate multisig actor 2020-09-17 02:57:45 -04:00
Aayush Rajasekaran
b60614982e Migrate reward actor 2020-09-17 02:42:39 -04:00
Aayush Rajasekaran
9e48dd211a Fixups 2020-09-17 02:34:15 -04:00
Aayush Rajasekaran
b530f25f09 Migrate miner actor 2020-09-16 17:20:25 -04:00
Łukasz Magiera
ccce1a9715
Merge pull request from filecoin-project/refactor/net-upgrade-paych
Support Network Upgrades: Payment Channel
2020-09-16 20:25:16 +02:00
Aayush Rajasekaran
90853e24cf Add a boolean HasMinPower to return of GetPower 2020-09-16 01:47:24 -04:00
Aayush Rajasekaran
b4ee519282 Partial progress towards switching to miner and power interfaces 2020-09-16 01:37:49 -04:00
hannahhoward
05c11531b1 feat(paych): convert paych actor
build abstraction for paych actor and switch to using it in payment channel manager and state
predicates
2020-09-15 21:06:04 -07:00
jennijuju
5c69249ba3 Use window post for window PoSt related log messages. 2020-09-15 21:22:29 -04:00
Steven Allen
454c382e7e migrate StateMinerInitialPledgeCollateral 2020-09-15 18:05:33 -07:00
Steven Allen
91e9573863 Compile fixes 2020-09-15 12:13:13 -07:00
Łukasz Magiera
d4a7732d0a
Merge pull request from filecoin-project/asr/gascost
Add an API to get detailed gas costs for a message
2020-09-15 19:13:20 +02:00
Łukasz Magiera
4419850195 state api impl fixes 2020-09-15 15:29:25 +02:00
Łukasz Magiera
4dabab5ce6 state manager progress 2020-09-15 13:04:45 +02:00
Steven Allen
36f920bcd7 progress 2020-09-14 21:55:49 -07:00
Steven Allen
cc4d5306eb Progress 2020-09-14 15:43:12 -07:00
Steven Allen
02dcb5e182 Merge branch 'master' into refactor/net-upgrade 2020-09-14 14:53:57 -07:00
Steven Allen
9804310cc8 Update specs-actors to 0.9.10
Moves the Keyer type (and helpers) into go-state-types.
2020-09-14 14:32:57 -07:00
Steven Allen
32eeb96ce7 Update to specs-actors 0.9.9
This patch changes the runtime interfaces, to make it possible to abstract over them.
2020-09-14 12:47:39 -07:00
Aayush Rajasekaran
d1850ea27d Add an API to get detailed gas costs for a message 2020-09-14 14:40:13 -04:00
Łukasz Magiera
06ec571c20 Merge remote-tracking branch 'origin/master' into refactor/net-upgrade 2020-09-14 15:09:52 +02:00
Łukasz Magiera
683a58195e More terraforming in chain/ 2020-09-14 14:46:38 +02:00
Łukasz Magiera
68097132fe Fix vm build 2020-09-14 13:45:20 +02:00
Steven Allen
d3594835c4 [WIP] Network upgrade support
This patch starts adding support for network upgrades.

* It adds an actors abstraction layer for loading abstract (cross-version) actors.
* It starts switching over to a shared deadline type.
* It adds an abstraction for ADTs (hamt/amt).
* It removes the callback-based API in the StateManager (difficult to abstract
across actor versions).
* It _does not_ actually add support for actors v2. We can do that in a followup
patch but that should be relatively easy.

This patch is heavily WIP and does not compile. Feel free to push changes
directly to this branch.

Notes:

* State tree access now needs a network version, because the HAMT type will change.
* I haven't figured out a nice way to abstract over changes to the _message_
types. However, many of them will be type aliased to actors v0 in actors v2 so
we can likely continue using the v0 versions (or use the v2 versions
everywhere). I've been renaming imports to `v0*` to make it clear that we're
importing types from a _specific_ actors version.

TODO:

* Consider merging incremental improvements? We'd have to get this compiling
again first but we could merge in the new abstractions, and slowly switch over.
* Finish migrating to the new abstractions.
* Remove all actor state types from the public API. See `miner.State.Info()` for
the planned approach here.
* Fix the tests. This is likely going to be a massive pain.
2020-09-11 20:16:29 -07:00
Aayush Rajasekaran
beba92aed4 Improve network versioning logic 2020-09-10 17:41:55 -04:00
Aayush Rajasekaran
774e068436 Update to specs-actors v0.9.8 2020-09-10 17:41:55 -04:00
Aayush Rajasekaran
86ba21029d Update to go state types 001afaca718c 2020-09-10 17:41:55 -04:00
Aayush Rajasekaran
316ac61875 Update to go state types 3ca0d2890090 2020-09-10 17:41:55 -04:00
Jakub Sztandera
2d3f92aeed Introduce beacon Schedule
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-09-10 17:41:55 -04:00
whyrusleeping
8a8f0ab3ec pass tipset through upgrade logic 2020-09-08 13:45:44 -07:00
whyrusleeping
d1cf445327 use defined constant for fork height 2020-09-07 16:18:22 -07:00
whyrusleeping
26ec0716b9 fix lint errors 2020-09-07 16:12:44 -07:00
whyrusleeping
97af576f6a Implement faucet funds reallocation logic
use all committed sectors instead of power

give all miners who had at least a sector on friday a base amount

include genesis miner in redistribution

drop back to 1,000,000
2020-09-07 16:06:13 -07:00
Aayush Rajasekaran
45011c0fad Use latest version if no upgrade height is specified 2020-09-07 17:43:14 -04:00
Aayush Rajasekaran
6eea5dd109 Update to specs 0.9.7 and markets 0.6.0 2020-09-07 17:11:32 -04:00
Aayush Rajasekaran
d678fe4bfa Fix tests 2020-09-07 15:48:42 -04:00
Aayush Rajasekaran
39755a294a Update to specs v0.9.6 2020-09-07 15:48:41 -04:00
Łukasz Magiera
f90cfda2e6 wallet: Add interface layer 2020-09-04 22:18:03 +02:00
Steven Allen
fceeaf42ca Robustify state manager against holes in actor method numbers
Also, don't simply assume that the field order matches the method numbers in
`builtin.Method*` structs.
2020-09-04 12:26:55 -07:00
austinabell
ba881eb4cf
Remove height from chain rand 2020-09-01 15:48:16 -04:00
Łukasz Magiera
df635579c4 storagefsm: Handle sectors with expired deals better 2020-08-27 13:51:38 +02:00
Łukasz Magiera
e47e51275a
Merge pull request from filecoin-project/feat/remainder
place the remainder of unallocated funds in a 'remainder' account
2020-08-18 23:52:19 +02:00
Łukasz Magiera
71aa3a59d9
Merge pull request from filecoin-project/asr/burn-genesis
Do not include the burnt funds actor as a genesis account actor
2020-08-18 23:10:32 +02:00
Łukasz Magiera
d23cd2e507
Merge pull request from filecoin-project/asr/genesis-hardcode
Create a testnet version of setupGenesisActors
2020-08-18 21:21:04 +02:00
Aayush Rajasekaran
214eeccb18 Create a testnet version of setupGenesisActors 2020-08-18 13:56:47 -04:00
Aayush Rajasekaran
8942c02f28 Add a reminder comment 2020-08-18 06:01:48 -04:00
whyrusleeping
13e5b72cdb proper genesis block history
Commit hash originally stamped into the ethereum blockchain:
https://etherscan.io/tx/0xe8f51c9eefb682cd866f059462577b6dd3d2685ff4b6437f6c940ff4f4aaf067
2020-08-17 21:13:43 -07:00
Łukasz Magiera
6ef7a30b19
Merge pull request from filecoin-project/integrate/storage-fsm
integrate extern/{storage-fsm,sector-storage} into lotus source tree
2020-08-17 18:37:54 +02:00
Łukasz Magiera
704578c9c2
Merge pull request from austinabell/msload
Remove unnecessary miner state load for checking slashed
2020-08-17 18:11:09 +02:00
austinabell
c3c6fda9d5
Remove unnecessary miner state load for checking slashed 2020-08-17 09:32:47 -04:00
Raúl Kripalani
efdc428d5d keep storage-fsm (renamed to storage-sealing) and sector-storage in extern. 2020-08-17 14:26:18 +01:00
Raúl Kripalani
3c17cd655e integrate extern/sector-storage into lotus proper. 2020-08-16 11:09:58 +01:00
Aayush Rajasekaran
0359a458e4 Include more info in StateCirculatingSupply 2020-08-14 16:53:30 -04:00
Aayush Rajasekaran
5702ea236c Do not include the burnt funds actor as a genesis account actor 2020-08-13 20:19:47 -04:00
whyrusleeping
b3a31d8823 add function to check entire state tree balance 2020-08-12 15:45:46 -07:00
Aayush Rajasekaran
5b280057b8 Move genesis locked funds into filVested 2020-08-12 16:16:35 -04:00
Aayush Rajasekaran
b6b5a79833 Get FilMined from the reward actor's state, not balance 2020-08-12 15:32:11 -04:00
Aayush Rajasekaran
165bcc1e38 Extract stmgr's genesis infos into a new struct 2020-08-12 15:32:11 -04:00
Aayush Rajasekaran
48ab706691 Subtract out genesis pledge and market funds when calculating circ supply 2020-08-12 15:32:11 -04:00
Aayush Rajasekaran
fe2da35a45 Move GetCircSupply out of the vm, and into stmgr 2020-08-12 15:32:07 -04:00
Aayush Rajasekaran
5933e64de1 Include premined actors in vested funds calculation 2020-08-12 15:19:48 -04:00
Steven Allen
9135a5d048 Pass bitfields by-value
This ensures we can't end up decoding nil bitfields from clients when not
expecting them.

Part of https://github.com/filecoin-project/specs-actors/issues/895. Please see
this issue for details and leave any comments there.
2020-08-12 10:32:39 -07:00
Łukasz Magiera
e2c6cc6c6d
Merge pull request from filecoin-project/asr/sync-test
MessagesForTipset should filter out bad nonce messages
2020-08-12 13:05:57 +02:00
Aayush Rajasekaran
532c32a741 Add new BlockMsgsForTipset() 2020-08-10 15:55:44 -04:00
Łukasz Magiera
bc381fc053 stmgr: Allow changing gas values in WaitMsg 2020-08-10 14:55:52 +02:00
Jakub Sztandera
ea92f5f1ff
Handle error
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-09 00:30:00 +02:00
Jakub Sztandera
46fd9d5e80
Quiet down pending messages, fix GasLimit estimation, reduce fee cap
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-09 00:29:59 +02:00
whyrusleeping
fbe206f843 add command to view circulating supply 2020-08-07 12:57:03 -07:00
Jakub Sztandera
ab08858b45
Delete GasPrice from this world
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-06 23:08:42 +02:00
Jakub Sztandera
b384ac6943
Compute correct base burns, miner tip and so on
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-06 21:14:38 +02:00
Jakub Sztandera
722d6e8ffb
Introduce base fee
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-08-06 21:14:38 +02:00
Łukasz Magiera
4cb4e7c2c2 Merge remote-tracking branch 'origin/master' into next 2020-07-31 14:02:04 +02:00
Aayush Rajasekaran
b51e2a868b
Merge branch 'next' into feat/cid-builder 2020-07-28 21:02:30 -04:00
Aayush Rajasekaran
a4fe359c28
Merge pull request from filecoin-project/asr/vesting-genesis
Correct calculation of TotalCircSupply
2020-07-28 20:43:55 -04:00
Aayush Rajasekaran
890f56ac38 Lock before setting up genesis msigs 2020-07-28 20:35:40 -04:00
Aayush Rajasekaran
de867d7a9a Correct calculation of TotalCircSupply 2020-07-28 17:26:55 -04:00
Aayush Rajasekaran
859168015a Use specs actor's MinerNominalPowerMeetsConsensusMinimum 2020-07-28 17:21:05 -04:00
Łukasz Magiera
fb59b40507 Fix some tests 2020-07-28 18:16:56 +02:00
Łukasz Magiera
473a1f91d5 Update specs-actors to 33f4d6e 2020-07-28 16:36:32 +02:00
Łukasz Magiera
09b90773d8 Merge remote-tracking branch 'origin/next' into feat/cid-builder 2020-07-28 16:06:06 +02:00
Łukasz Magiera
ca36519325 stmgr: Bigger number for cron gas limit 2020-07-28 14:32:30 +02:00
Łukasz Magiera
eac0a1bba9 stmgr: Handle state forks with cron on null blocks correctly 2020-07-28 14:31:28 +02:00
Łukasz Magiera
8889c5cfd3 stmgr: Dedupe cron invocation 2020-07-28 02:28:22 +02:00
Łukasz Magiera
5b6006f8fe stmgr: Execute cron tick on null rounds 2020-07-28 02:25:16 +02:00
Simon Peffers
0f3105a01f Integrate blst signature library: https://github.com/supranational/blst 2020-07-25 21:38:18 -04:00
Steven Allen
b7a4dbb07f Support inline CIDs
And use the new CidBuilder from the spec actors.

This patch does not switch over to inline CIDs by default, but paves the way.
2020-07-23 23:12:32 -07:00
Steven Allen
5fc83f4d05 Refactor to use actor adt types instead of directly using HAMTs and AMTs
This way there's a single source of truth. Preparation for fixing
https://github.com/filecoin-project/specs-actors/issues/517 (requires changing
HAMT parameters).
2020-07-23 09:34:57 -07:00
Dirk McCormick
462562a921 fix: stmgr forks test 2020-07-22 16:27:50 -04:00
Łukasz Magiera
d70edbcb7c Set things on syscallShim 2020-07-22 13:35:10 -04:00
Jakub Sztandera
629e03f303
Apply sequence of messages
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-22 18:16:07 +02:00
Jakub Sztandera
6673a80db5
Fix nonce setting in gas estimation
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-21 03:41:18 +02:00
Jakub Sztandera
a5334eb2b3
Fix lint warnings
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-20 21:41:05 +02:00
Jakub Sztandera
7da629d03b
Update gas prices
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-20 21:31:05 +02:00
Jakub Sztandera
310fa67f9d
Add gas estimation
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-20 19:48:30 +02:00
Jakub Sztandera
1b5797be9d
Merge pull request from filecoin-project/feat/increase-cron-gas
Increase cron gas
2020-07-17 20:11:21 +02:00
Jakub Sztandera
b6f3513173
Increase gas limit for CallRaw
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-17 19:54:39 +02:00
Jakub Sztandera
aafafce083
Increase cron gas
Make gas check overflow safe
2020-07-17 19:49:55 +02:00
Łukasz Magiera
cb6767a02b Merge remote-tracking branch 'origin/next' into feat/actors-miner-refactor 2020-07-17 15:18:11 +02:00
Łukasz Magiera
5a3ab5c5f0 More actor updates 2020-07-16 14:48:20 +02:00
Jakub Sztandera
7b14d445b4
Update message gas limits
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-15 20:01:57 +02:00
Łukasz Magiera
af87b9aa98 Fix widowed PoSt scheduler 2020-07-14 19:10:31 +02:00
Łukasz Magiera
faebc4c948 WIP Integrating specs-actors with refactored miner state 2020-07-14 13:45:45 +02:00
Aayush Rajasekaran
2a61b241a8 Replace abi.BitFieldUnion with bitfield.MultiMerge 2020-07-12 00:30:42 -04:00
Łukasz Magiera
4b0ae7ef9a Merge remote-tracking branch 'origin/master' into next 2020-07-06 11:38:19 +02:00
whyrusleeping
16e493a67a provide decoded return values in output of StateWaitMsg 2020-07-03 09:57:58 -07:00
Łukasz Magiera
655d6f6720 Merge remote-tracking branch 'origin/master' into next 2020-07-03 17:03:09 +02:00
Aayush Rajasekaran
605e9bbbd7 Add docs comments to API 2020-07-01 17:16:05 -04:00
Łukasz Magiera
4c422c2d50 specs-actors v0.7.1 2020-07-01 13:47:40 +02:00
Łukasz Magiera
cfdbc2312d Merge branch 'master' into next 2020-07-01 11:22:57 +02:00
whyrusleeping
da78ff9151 use bitfields to enumerate sectors for winning post 2020-06-30 21:57:49 -07:00
Aayush Rajasekaran
8e7ac226b0 Include WinCount when awarding block rewards 2020-06-26 14:27:49 -04:00
Łukasz Magiera
edd7151184 Fix StateMinerInitialPledgeCollateral 2020-06-26 15:49:39 +02:00
Łukasz Magiera
a6d1323eba Update specs-actors to v0.7.0; More correct genesis sector import 2020-06-26 15:08:12 +02:00
Jakub Sztandera
4895c895aa
Change WinCount to int64, wire it to BlockMessage
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-24 19:51:22 +02:00
Łukasz Magiera
907364ce67 Update deps, fix more tests 2020-06-15 18:30:49 +02:00
Jakub Sztandera
c3f23ddce8
Refactor ExecutionResult to ExecutionTrace
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-11 15:53:47 +02:00
Jakub Sztandera
7bee5b3abc
Merge remote-tracking branch 'origin/master' into next
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-05 00:33:43 +02:00
Łukasz Magiera
f9f0d86ddf
Merge pull request from acruikshank/feat/1853-confirmations-in-StateWaitMsg2
Add confidence and timeout to message wait
2020-06-04 23:23:15 +02:00
acruikshank
ce33074626 go fmt 2020-06-03 22:30:09 -04:00
acruikshank
04f0130530 remove timeout 2020-06-03 17:42:06 -04:00
acruikshank
5574e4f11b add confidence and timeout to message wait 2020-06-03 15:38:37 -04:00
Aayush Rajasekaran
4b01b666f6 Bugfix: searchback for a message should stop if we reach sender nonce of 0 2020-06-03 14:08:05 -04:00
Jakub Sztandera
96ade5f2dd
Cleanup more lint warnings
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-02 18:38:41 +02:00
Jakub Sztandera
5605aae269
Fix even more lint warnings
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-02 16:29:39 +02:00
Łukasz Magiera
785eeb1eee
Merge pull request from filecoin-project/chore/lint
Cleanup many lint warnings
2020-05-29 18:06:06 +02:00
Jeromy
e2a554c2e6 update specs actors to version with batch porep verification 2020-05-28 13:19:18 -07:00
Jakub Sztandera
d6615b6286
Cleanup many lint warnings
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-05-27 22:53:20 +02:00
Łukasz Magiera
ae60001dcc post: Handle Recovering sectors 2020-05-20 18:41:20 +02:00
Jeromy
50fae56baf Verify data for presealed data 2020-05-13 19:35:44 -07:00
Łukasz Magiera
ba389598ee Cleanup build package 2020-05-12 19:59:28 +02:00
Jeromy
fa59cdc2ad update to specs-actors code with faster publish deals 2020-05-05 17:06:32 -07:00
Jeromy
74510adaaa add flag to choose what to do when looking back tipsets in null rounds 2020-05-05 10:06:05 -07:00
Jeromy
be2a357102 winning post wants the actual epoch of the block, not the previous 2020-05-01 12:42:59 -07:00
Łukasz Magiera
d9acd484c0 storageminer: Improve CLI UX 2020-05-01 14:06:19 +02:00
Jeromy
bee25d221f fix mining base randomness 2020-04-30 15:11:14 -07:00
Aayush Rajasekaran
a047e158ed Add some validity checks to runtime.CreateActor() 2020-04-30 14:21:29 -04:00
Aayush Rajasekaran
5900d765fd caller must be validated exactly once 2020-04-28 00:07:47 -04:00
Frrist
0f0589bcf5 Update validation driver to match latest in chain-validation ()
* update driver to match new chain-validation interfaces

* update chain-validation

* update filecoin-ffi

* gofmt

* update chain-validation again
2020-04-24 15:08:16 -07:00
Łukasz Magiera
c137b0cf73 Merge remote-tracking branch 'origin/testnet/3' into feat/newminer 2020-04-23 23:53:23 +02:00
Łukasz Magiera
86e7f5914b testing: test 2-miner mining 2020-04-23 23:20:02 +02:00
Whyrusleeping
faa9002cce working on sector pledge requirements after specs-actors 1.0.0 ()
* WIP: working on sector pledge requirements after specs-actors 1.0.0

* update storage-fsm with pledge collateral logic

* Set bigger balances for miners

* Return only additional required pledge

* split collateral methods into two methods

Co-authored-by: Łukasz Magiera <magik6k@gmail.com>
2020-04-23 12:39:34 -07:00
Łukasz Magiera
8be9494672 windowed post: Get correct sector set 2020-04-21 19:22:53 +02:00
Łukasz Magiera
f43ce74604 Update specs-actors 2020-04-21 16:32:17 +02:00
Łukasz Magiera
ecc38d1bd8 sync: env var to fix drand 2020-04-20 20:33:53 +02:00
Jeromy
91f56742c4 Use lookback to get sector set and power for miners 2020-04-17 16:44:18 -07:00
Łukasz Magiera
3b7ae0d6d9 mod tidy, gofmt 2020-04-18 00:02:43 +02:00
Łukasz Magiera
712e2683d6 miner: proving info commands 2020-04-18 00:02:18 +02:00
Łukasz Magiera
e6270e4291 Update fsm; get sectorset form correct ts 2020-04-17 21:49:32 +02:00
Łukasz Magiera
93b2b6d65d Merge branch 'testnet/3' into feat/windowed-post 2020-04-17 18:38:20 +02:00
Łukasz Magiera
bab352fb44 Wireup WinningPost validation 2020-04-17 16:47:19 +02:00
Jeromy
708988244d WIP: working on winning post integration 2020-04-16 22:39:55 -07:00
Łukasz Magiera
50a8b6a184 Update GetMinerSlashed 2020-04-16 22:52:40 +02:00
Aayush Rajasekaran
14ad808a00 Remove unused fields from VM 2020-04-16 15:34:01 -04:00
Łukasz Magiera
afdfc8807d api: Single method for static miner info 2020-04-16 19:36:36 +02:00
Łukasz Magiera
8338be3a6e Fix genesis creation 2020-04-16 19:17:56 +02:00
Łukasz Magiera
98f3cab24e Update specs-actors 2020-04-16 18:41:45 +02:00
Łukasz Magiera
85993848be bring back api.StateMinerProvingSet 2020-04-15 22:40:46 +02:00
Łukasz Magiera
0336b32fcd windowpost: Wire up challenge generation 2020-04-15 22:22:58 +02:00
Łukasz Magiera
149bb56b8e wip updates to sector set handling 2020-04-15 21:59:11 +02:00
Łukasz Magiera
bb3789b130 Fix ADT uses 2020-04-13 23:06:11 +02:00
Łukasz Magiera
a2554952d1 Some electionPoSt -> winningPoSt renaming 2020-04-11 00:22:45 +02:00
Łukasz Magiera
072dd8b744 Merge remote-tracking branch 'origin/testnet/3' into feat/windowed-post 2020-04-10 20:38:25 +02:00
Łukasz Magiera
b0fe8b8b4c v25: get bench to almost work 2020-04-10 14:19:06 +02:00
Jeromy
ac271b021d finish addressing review 2020-04-09 10:13:09 -07:00
Jakub Sztandera
1bd28bdb6a Fix lint errors
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-08 21:37:04 +02:00
Jakub Sztandera
ce4978d8c3 Reintroduce correct ticket randomness alongside ElectionProof
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-08 21:06:41 +02:00
Jeromy
8e0ca306d2 more wiring up of drandomness 2020-04-08 08:11:42 -07:00
Łukasz Magiera
f05be81275 fsm: Get correct interactive randomness if it lands on a nullblock 2020-04-04 04:57:05 +02:00
Jeromy
beaa3dffab add a command to lotus-bench to benchmark importing and validating a chain 2020-04-02 16:18:38 -07:00
whyrusleeping
aa23266c6f use gas used in block rewards 2020-04-01 21:16:16 -07:00
Jeromy
c55501024e remove hacky bits 2020-04-01 18:25:58 -07:00
Jeromy
5b9ee1dea9 Add GetMiningBaseInfo api and use it for mining 2020-04-01 18:15:25 -07:00
Łukasz Magiera
13f2c21e1d Get network name from genesis 2020-04-01 01:15:49 +02:00
Jakub Sztandera
edf03c9ba8 Use adt.Empty
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-03-26 02:00:25 +01:00
Jeromy
088d693eea code review changes 2020-03-25 12:13:09 -07:00
Aayush Rajasekaran
ebcefa80e3 provide msg length to vm::ApplyMessage 2020-03-25 08:25:03 -04:00
Aayush Rajasekaran
c951e0cc83 do not reprocess duplicate messages in a block 2020-03-25 08:25:03 -04:00
Aayush Rajasekaran
3896631a1c Remove pre-execution validity checks on messages 2020-03-25 08:25:03 -04:00
Aayush Rajasekaran
490f85e690 Send implicit messages for block rewards, cron ticks, state calls, and genesis setup 2020-03-25 08:25:03 -04:00
Whyrusleeping
60ea9e6ec8 Merge pull request from filecoin-project/asr/statewait
Re: : Add a non-blocking version of StateWaitMsg
2020-03-24 16:17:47 -07:00
Aayush Rajasekaran
d350a9d415 Re: : Add a non-blocking version of StateWaitMsg
- This commit adds a new method called StateSearchMsg
- We can probably overhaul StateWaitMsg onto this new method at a later point in time
2020-03-24 06:43:15 -04:00
Aayush Rajasekaran
753e8ff7f5 Award gas fees to miners correctly 2020-03-24 03:35:58 -04:00
Lucas Molas
d21cb96ddb doc: add comments related to actor code review 2020-03-18 16:43:58 -07:00
whyrusleeping
ddf1beac6c change gas limit to be a normal int64 2020-03-18 13:45:37 -07:00
Whyrusleeping
d48d073bcf Merge pull request from filecoin-project/fix/fallbackpost-finally
get fallback post running successfully!
2020-03-10 23:41:41 -07:00
whyrusleeping
16d087cce4 get fallback post running successfully! 2020-03-10 23:30:48 -07:00
Whyrusleeping
65506376a4 Merge pull request from filecoin-project/fix/genesis-double-power-accounting
Don't double account for miner power when setting up genesis blocks
2020-03-10 18:56:47 -07:00
whyrusleeping
14f9724bc9 Don't double account for miner power when setting up genesis blocks 2020-03-10 15:42:41 -07:00
whyrusleeping
baca881473 dont panic when replay fails to find a message 2020-03-10 12:44:50 -07:00
whyrusleeping
f1ff55f8b6 pass ticket count into reward application message 2020-03-09 00:45:40 -07:00
whyrusleeping
4260cc38c9 implement compute state trace output 2020-03-08 20:07:25 -07:00
whyrusleeping
24bf720a9a Merge branch 'master' into testnet/3 2020-03-07 16:46:12 -08:00
Aayush Rajasekaran
340afc3503 Add information about internal message executions to SimulationResult
- The VM now tracks a list of ExecutionResults to keep track of internal messages
2020-03-06 11:11:06 -08:00
Aayush Rajasekaran
2d63b007f2 Unify MethodCall and ReplayResults into SimulationResult
- Call and Replay now return the same type, which includes both Message and MessageReceipt
2020-03-06 11:10:40 -08:00
whyrusleeping
2cd06e3ea0 update to latest specs-actors 2020-03-05 13:02:33 -08:00
whyrusleeping
5076b2b950 fix reward actor and block reward application 2020-03-04 13:21:24 -08:00
whyrusleeping
2be2891647 wire up lotus side of make deal for manual commP 2020-03-03 16:18:08 -08:00
whyrusleeping
0da2f81252 get most of the chain validation tests passing 2020-03-03 16:06:41 -08:00
whyrusleeping
0f6c365411 Do proper shimming for chain validation library 2020-03-03 16:06:41 -08:00
whyrusleeping
61fcbd1664 remove unnecessary cid casting 2020-03-01 20:38:18 -08:00
whyrusleeping
60b19c51ef more misc fixes 2020-03-01 17:09:38 -08:00
whyrusleeping
1a07cb7bbf a few more fixes 2020-02-28 17:12:47 -08:00
Łukasz Magiera
4dc35285dd Minimum sector size is now 2k 2020-02-28 01:48:34 +01:00
whyrusleeping
6c12068fb7 more fixes for random garbage 2020-02-26 16:42:39 -08:00
Łukasz Magiera
0a9e0acc6f types: Drop some redundant alias types 2020-02-25 22:09:22 +01:00
Łukasz Magiera
ae634ef7df actors: Remove addrass aliases 2020-02-25 21:54:58 +01:00
Łukasz Magiera
cd10a3126b actors: drop a bunch of type aliases 2020-02-25 21:35:15 +01:00
Łukasz Magiera
d787aa5007 Merge branch 'testnet/3' into feat/specs-actors 2020-02-24 18:32:02 +01:00
Łukasz Magiera
a82d156ccb Deal flow fixes 2020-02-23 16:50:36 +01:00
Łukasz Magiera
b8428423a1 get chain to runnable state 2020-02-22 14:10:46 +01:00
Łukasz Magiera
18627e77ff gofmt; mod tidy 2020-02-21 20:28:20 +01:00
Łukasz Magiera
4e98f2e438 some test fixes 2020-02-21 20:28:01 +01:00
Łukasz Magiera
57c43183e6 update specs-actors 2020-02-21 17:57:40 +01:00
whyrusleeping
00d7bd1a77 chain/gen tests now pass! 2020-02-20 00:37:10 -08:00
Łukasz Magiera
69ec3c205a Merge remote-tracking branch 'origin/master' into testnet/3 2020-02-19 22:10:14 +01:00
Łukasz Magiera
35d14788d3 stmgr: Fix GetPower 2020-02-19 21:39:10 +01:00
Łukasz Magiera
c69c9e62c2 stmgr: Correctly read sectorset 2020-02-19 21:34:21 +01:00
Łukasz Magiera
9c31f61db4 sectorset updates 2020-02-19 20:26:11 +01:00
whyrusleeping
6d0eec6395 working towards a working genesis generator 2020-02-17 23:15:30 -08:00
Łukasz Magiera
c544c2b5c5 Set hamt bitwidth 2020-02-14 15:14:39 +01:00
Łukasz Magiera
48c5494cf9 use specs-actors birfields 2020-02-14 01:24:24 +01:00
Łukasz Magiera
0aaf7b25a9 Propagate spec actor types more 2020-02-12 08:44:20 +01:00
Łukasz Magiera
63e801e00f genesis: Cleanup the structure 2020-02-11 21:48:03 +01:00
Łukasz Magiera
4d5c4d89ce stmgr: Update stmgr utils 2020-02-11 03:33:27 +01:00
Łukasz Magiera
91ca4a841a specs-actors: Import miner/power/cron/paych code 2020-02-11 02:43:26 +01:00
Łukasz Magiera
fa2c6605c2 Fix compilation after dep updates 2020-02-11 02:11:58 +01:00
Łukasz Magiera
c0ed0dda8e specs-actors: Fis some test compilation errors 2020-02-10 20:16:36 +01:00
Łukasz Magiera
c72727b4fd specs-actors: Fix most compilation errors 2020-02-09 07:06:32 +01:00
Łukasz Magiera
13435aebdc Spec Actors integration 2020-02-08 03:18:32 +01:00
whyrusleeping
0309e2332c add proper signature imports to tests 2020-02-06 23:01:37 -08:00
whyrusleeping
faf05cafcf squash forks and use correct amt library everywhere 2020-02-04 18:26:42 -08:00
Łukasz Magiera
c013ef3b30 Merge pull request from filecoin-project/feat/auto-shim
Make it all build
2020-02-05 00:01:41 +01:00
whyrusleeping
028a113737 Make it all build 2020-02-04 14:19:05 -08:00
Łukasz Magiera
d9f3b6c121 Merge pull request from filecoin-project/feat/msig-integration
DO NOT MERGE: Feat/msig integration
2020-02-04 07:19:49 +01:00
Łukasz Magiera
90ecfbe0e4 Merge branch 'master' into feat/new-sb-fs 2020-02-04 04:15:25 +01:00
whyrusleeping
dfe87c9f6f update to latest hamt changes 2020-02-03 18:52:18 -08:00
whyrusleeping
01b6ddbbd3 add a test to ensure there are no off-by-one errors in fork activation logic 2020-01-31 15:52:39 -08:00
Łukasz Magiera
a62572bb76 Merge remote-tracking branch 'origin/master' into feat/new-sb-fs 2020-01-31 08:36:47 +01:00
whyrusleeping
d70ebd2ba5 some code review 2020-01-30 21:10:37 -08:00
whyrusleeping
19a65319ee test and fix fork, add bigint parsing to lotus shed 2020-01-30 18:14:20 -08:00
Jakub Sztandera
c6fd45727d
Add state fork logic
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-01-30 17:17:34 -08:00
Łukasz Magiera
4aaa758543 fpost: better fault checks 2020-01-30 01:50:58 +01:00
whyrusleeping
dcd01df2d3 wire up tracing into state tree flush, add pprof flag 2020-01-22 11:53:06 -08:00
Łukasz Magiera
fd0bfc8777
Merge pull request from filecoin-project/feat/state-call-cmd
implement state call command for easy method calling
2020-01-21 17:16:54 +01:00
whyrusleeping
955b755055 wire up importing 2020-01-20 17:53:55 -08:00
Łukasz Magiera
55fd0a4e60 stmgr: Exetute miner amt after correctly switching to amt2 in miner code 2020-01-19 17:27:43 +01:00
whyrusleeping
c6bf252a21 use right fork trigger height 2020-01-17 21:35:45 -08:00
whyrusleeping
f9ea6969c3 Catch cases where new old miners with bad code were getting made 2020-01-17 21:20:56 -08:00
whyrusleeping
0a45e97699 implement state call command for easy method calling 2020-01-17 18:27:29 -08:00
whyrusleeping
055b215bc7 don't allow slashing with old blocks 2020-01-16 22:14:00 -08:00
whyrusleeping
fb173c058e WIP: blizzard fork changes and test utilities 2020-01-16 18:33:43 -08:00
Jakub Sztandera
84de47377c
Intoroduce AMT v2 and amtFsck
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-01-16 23:21:16 +01:00
Łukasz Magiera
a2bcc1fec2 Mostly functional mock sectorbuilder 2020-01-14 03:05:35 +01:00
Jakub Sztandera
1ed62628a7
Update go-log to v2
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-01-08 20:22:31 +01:00
Łukasz Magiera
22e9815928 Merge remote-tracking branch 'origin/master' into feat/testnet2 2020-01-07 21:45:30 +01:00
laser
841f9c3627 reorganize imports to pass linter 2020-01-07 08:23:12 -08:00
acruikshank
7873213b11 switch sectorbuilder from lib to external module
point to correct version of sectorbuilder + ensure go-datastore stays at 0.1.1

replace local address type with go-address

consume paramfetch.GetParams instead of local paramfetch.go

remove constants now defined in sectorbuilder
2020-01-07 07:48:43 -08:00
Łukasz Magiera
97ae184d0a Merge remote-tracking branch 'origin/master' into feat/testnet2 2020-01-07 15:06:35 +01:00
hannahhoward
8418464d91 refactor(address): use extracted address library
Switch to using extracted address library
2020-01-07 14:53:27 +01:00
Łukasz Magiera
605562467d Flatten fork code for testnet2 2020-01-06 19:39:57 +01:00
Łukasz Magiera
ed3a2b0025 Set correct head in forkNoPowerEPS 2019-12-20 08:30:12 +01:00
Łukasz Magiera
6ce4cf12f7 Care about nullblocks in handleStateForks 2019-12-19 21:01:05 +01:00
Łukasz Magiera
3f54cbabe0 FORK: No power EPS Fix 2019-12-19 19:47:25 +01:00
whyrusleeping
022581d50b add routine to tag miners peer IDs as high value in connection manager 2019-12-16 22:51:41 -08:00
Łukasz Magiera
fc6073d13b chainwatch: Collect sector set sizes 2019-12-12 00:32:09 +01:00
Łukasz Magiera
44f3a501ab
Merge pull request from filecoin-project/fix/bad-epost-mining
Fix/bad epost mining
2019-12-09 18:27:24 +01:00
whyrusleeping
e8c43d00cc dont waste work when calling ComputeTipSetState in parallel 2019-12-08 18:07:44 +01:00
whyrusleeping
8181b283c0 don't accept blocks from slashed miners 2019-12-07 18:59:34 +01:00
whyrusleeping
e6a08784f8 print more errors if epost fails during tipset state evaluation 2019-12-07 17:24:42 +01:00
Łukasz Magiera
38eedd05e8 stmgr: Mute duplicate msg in tipset spam 2019-12-05 19:59:51 +01:00
Łukasz Magiera
5810922441 This helps for some reason 2019-12-03 17:39:47 +01:00
Whyrusleeping
dd6e75f49d
Merge pull request from filecoin-project/feat/election-post
Election post restructuring
2019-12-02 15:32:12 -08:00
Łukasz Magiera
849b9741d9
Merge pull request from filecoin-project/feat/cron
actors: Implement cron actor
2019-12-02 12:11:04 +01:00
whyrusleeping
3b533ed76c Genesis miner config actually sets the created miner address now 2019-11-29 22:31:26 -06:00
Łukasz Magiera
adf71f502c don't print scary errors when miner has no sectors 2019-11-29 20:14:10 +01:00
Łukasz Magiera
466f1d8cb9 Use ProvingSet for GetSectorsForElectionPost 2019-11-28 19:52:28 +01:00
Łukasz Magiera
920fd3ba9b storageminer: New fallback post scheduler 2019-11-28 18:44:57 +01:00
whyrusleeping
8fae155cf6 Add timings for proof verification 2019-11-27 19:43:52 -06:00
Łukasz Magiera
23e0008b81 Merge remote-tracking branch 'origin/master' into feat/election-post 2019-11-27 13:31:44 +01:00
laser
3623925f66 replace go-bls-sigs and go-sectorbuilder with filecoin-ffi
- remove old submodules and add new submodule
- update build tooling to consume new unified static library
- update consumers of old libs to use new package
2019-11-26 18:16:37 -08:00
Łukasz Magiera
67b22ac22e stmgr: Fix WaitMessage with more than one msg from single origin 2019-11-25 14:59:12 +01:00
whyrusleeping
a0588d513d Add lotus-gen, rewire genesis mining 2019-11-24 22:45:13 -06:00
Łukasz Magiera
a755ca5dae stmgr: check for duplicate nonces when looking back for msg 2019-11-24 20:16:18 +01:00
Łukasz Magiera
96023d415e actors: Implement cron actor 2019-11-22 23:51:44 +01:00
whyrusleeping
96482f456a WIP: election post restructuring 2019-11-21 16:21:45 -06:00
Łukasz Magiera
ddf2e05dd0 post: More correct 'wait' logic 2019-11-20 18:00:05 +01:00
whyrusleeping
f8eabd3db4 Refactor mining logic to match specs ticket chain 2019-11-20 10:52:36 -06:00
Łukasz Magiera
5381d10fe3 StateAPI: account for slashing in StateMinerPower 2019-11-15 02:01:53 +01:00
Łukasz Magiera
004f647504
Merge pull request from filecoin-project/feat/simple-power-slash
Simple power slashing
2019-11-15 01:14:20 +01:00
Jakub Sztandera
c54b28a419
Check if miner is included twice in tipset
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-11-15 01:01:00 +01:00
郭光华
dd439e0af8
Keep the context consistent 2019-11-14 14:34:54 +08:00
Łukasz Magiera
2dd155e9e9 Make basic slashing work 2019-11-14 01:02:24 +01:00
Łukasz Magiera
7363ec714a chain: make tests pass after slashing changes 2019-11-14 00:35:58 +01:00
Łukasz Magiera
0241e31129 chain: wire CheckProofSubmissions to computeTipSetState 2019-11-14 00:14:11 +01:00
whyrusleeping
86624c8ed4 fix tests and add some more trace attributes 2019-11-12 22:44:29 -08:00
Łukasz Magiera
071f05fa95 Storage miner API improvements 2019-11-08 19:23:58 +01:00
whyrusleeping
54722a0d38 WIP: fixing the tests by waiting for chain activity 2019-11-06 23:57:10 -08:00
Whyrusleeping
790ac7b510
Merge pull request from lanzafame/feat/connect-chain-sync-trace
add statemanager.CallRaw span
2019-10-30 10:57:09 -07:00
Adrian Lanzafame
0822bdadac
add statemanager.CallRaw span
This allows for the chain.Sync trace to be connected to the
entire chain sync operation, when viewing in Jaeger.
2019-10-28 19:29:41 +10:00
whyrusleeping
4890f577f5 give miners the ability to select different sector sizes 2019-10-25 17:26:15 +02:00
Łukasz Magiera
eeca3d86df
Merge pull request from filecoin-project/feat/deals-on-chain
On-Chain deals
2019-10-25 17:03:25 +02:00
whyrusleeping
acb7d57794 fix handling of actor not found for balance checks 2019-10-24 15:55:00 +08:00
Łukasz Magiera
fabd074165 on chain deals: Deals make it to the chain 2019-10-23 19:39:14 +02:00
Łukasz Magiera
c41dd4efeb actora: register storagemarket 2019-10-23 12:44:00 +02:00
Jakub Sztandera
7532f92c98
Cleanup GetBalance call and warn if actor does not exist
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-10-22 21:58:51 +02:00
Jakub Sztandera
1bf713cb0a
Cleanup imports after rename
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-10-18 13:47:41 +09:00
Łukasz Magiera
0f8b450880 Fix lotus state power 2019-10-15 16:59:31 +02:00
Łukasz Magiera
fb80d75b07 Almost building weight function 2019-10-15 14:31:34 +02:00
Łukasz Magiera
2ce338e162 wip weight function 2019-10-15 14:31:34 +02:00
Łukasz Magiera
a576b72364 actors: Sync with the new spec, storage actors 2019-10-15 14:31:34 +02:00
Jakub Sztandera
68db93b62e
More if not needed
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-10-13 03:08:05 +02:00
whyrusleeping
45737f8a51
add more tracing spans
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-10-13 03:07:55 +02:00
Łukasz Magiera
704f06761a
Merge pull request from filecoin-project/feat/list-miners-cmd
implement commands to list actors and miners
2019-10-12 09:10:19 +02:00
whyrusleeping
edcf47ff31 implement commands to list actors and miners 2019-10-12 15:45:48 +09:00
whyrusleeping
a56e786e36 some cleanup of vm transfer logic to make juan happier 2019-10-11 18:13:04 +09:00
whyrusleeping
3f342d7ae2 add some more tracing to chain sync 2019-10-10 20:13:26 +09:00
whyrusleeping
8e51ab8375 don't bother looking in genesis block for messages 2019-10-09 17:56:47 +09:00
whyrusleeping
14c4a8bee6 implement looking in the past for messages 2019-10-09 09:33:18 +02:00
whyrusleeping
249074761c verify message signatures during block validation 2019-10-09 11:58:49 +09:00
whyrusleeping
f15557649f leave better rationale for the special case in TipSetState 2019-10-02 14:27:41 -06:00
whyrusleeping
c0e6e611be clean up usage of stmgr.TipSetState 2019-10-02 14:03:27 -06:00
whyrusleeping
65def6cc58 handle getting state for genesis block 2019-10-02 12:00:08 -06:00
whyrusleeping
1ec5c61015 fix block reward application 2019-10-02 09:50:10 -06:00
whyrusleeping
8f203bc29b WIP: refactor waitformsg to use parent tipset inclusion 2019-10-01 15:21:01 -06:00
whyrusleeping
1419031f1e switch to parent state roots 2019-10-01 15:21:01 -06:00
whyrusleeping
798b1ebde9 Add some more error annotations 2019-09-30 17:55:35 -06:00
Łukasz Magiera
caa767e081 Incremental deal payments 2019-09-24 23:13:47 +02:00
Łukasz Magiera
9d36a499b6 post merge fixes 2019-09-20 14:22:46 +02:00
Łukasz Magiera
b58246d128 Merge remote-tracking branch 'origin/master' into feat/post-schedule 2019-09-20 14:22:22 +02:00
whyrusleeping
394edc6317 refactor to use 'randomness' as input to new vm creation 2019-09-19 20:08:44 -07:00
whyrusleeping
f7e3762cfc add state replay api and command 2019-09-19 13:25:18 -07:00
whyrusleeping
9763810100 cleaup, small refactor 2019-09-17 19:55:51 -07:00
whyrusleeping
b1e77748e7 scaffolding and refactoring to make post scheduler work 2019-09-17 19:50:03 -07:00
whyrusleeping
cc877f5c04 WIP: expanding API to serve post producer needs 2019-09-17 17:08:49 -07:00
whyrusleeping
11040f105b WIP: post scheduling 2019-09-17 15:51:46 -07:00
Łukasz Magiera
8f84aa7097 Fix stmgr.GetMinerPeerID 2019-09-17 10:34:41 +02:00
Łukasz Magiera
567ae92ff2 Move more logic into statemanager 2019-09-17 10:00:38 +02:00
whyrusleeping
2f019158d0 more switching over to correct cbor marshaling 2019-09-10 12:58:45 -07:00
whyrusleeping
512da42cde address review feedback 2019-09-09 19:14:27 -07:00
Whyrusleeping
3ab711d133 Update chain/stmgr/stmgr.go
Co-Authored-By: Łukasz Magiera <magik6k@users.noreply.github.com>
2019-09-09 19:14:27 -07:00
whyrusleeping
bc7f86ef05 self review, cleanup 2019-09-09 19:14:27 -07:00
whyrusleeping
b5462542a8 fix tests and fix a bug in blocksync 2019-09-09 19:14:26 -07:00
whyrusleeping
ed45d1c2b4 refactor state utilities into StateManager package, implement proper election proofs 2019-09-09 19:14:00 -07:00