Commit Graph

413 Commits

Author SHA1 Message Date
whyrusleeping
76ceb1f25a a bit more hacking to make the test framework bend to my will 2019-10-05 17:18:39 -06:00
whyrusleeping
fca5a4765d begin allowing test framework to generate forks 2019-10-05 10:04:58 -06:00
whyrusleeping
6dd8ed7d7a pass those tests 2019-10-04 10:06:05 -06:00
whyrusleeping
27f120bfce improve accuracy of block printing with getblock 2019-10-03 13:22:21 -07:00
Łukasz Magiera
1534536590 Store libp2p key in keystore 2019-10-03 02:11:31 +02: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
b9cc6f61b6 rebase and fix tests 2019-10-01 15:34:53 -06:00
whyrusleeping
1419031f1e switch to parent state roots 2019-10-01 15:21:01 -06:00
whyrusleeping
404e14d3eb Add a command to read an object by its cid 2019-10-01 10:28:07 -06:00
whyrusleeping
af18cbac53 Add a command to inspect sync state progress 2019-09-30 15:06:47 -06:00
Łukasz Magiera
fe8e1fe1e4 Almost working new post code 2019-09-27 01:07:40 +02:00
whyrusleeping
0a0a4d30aa fix account balances to cover costs and collateral 2019-09-26 12:23:03 -07:00
Łukasz Magiera
18211b7bee storageminer: Fix PledgeCollateral calc on init 2019-09-26 12:13:43 -07:00
Łukasz Magiera
a2a2169ef8 Setup first devnet params 2019-09-26 12:13:43 -07:00
Łukasz Magiera
2fe4ffdfdc deals: more atomic voucher handling 2019-09-25 14:56:04 +02:00
Łukasz Magiera
caa767e081 Incremental deal payments 2019-09-24 23:13:47 +02:00
Łukasz Magiera
5fa1a74e74 Bump test genesis token amount 2019-09-24 13:02:54 +02:00
Łukasz Magiera
a6dafed486 tests: Basic mining integration test 2019-09-23 19:50:15 +02:00
Łukasz Magiera
18651ecaa3 pond: Integrate StateReply 2019-09-23 13:15:16 +02:00
Łukasz Magiera
4202da62cd
Merge pull request #216 from filecoin-project/feat/consensus-slashing
Feat/consensus slashing
2019-09-20 16:58:03 +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
3154374132 fix account balances to make tests pass 2019-09-19 22:25:10 -07: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
Łukasz Magiera
cc82cc9675 miner: Initial event system integration 2019-09-18 15:32:21 +02:00
Łukasz Magiera
fe7efa753d events: Build on chain API calls 2019-09-18 13:01:52 +02:00
whyrusleeping
02887a63a3 simplify stateminersectors impl 2019-09-17 20:14: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
Łukasz Magiera
7f68fa9567 Fix tests 2019-09-17 16:45:09 +02:00
Łukasz Magiera
f2ecb772fa repo: Close datastore in Close 2019-09-17 16:34:22 +02:00
Łukasz Magiera
83f1a336a6 node: Basic graceful shutdown 2019-09-17 16:23:08 +02:00
Łukasz Magiera
8f84aa7097 Fix stmgr.GetMinerPeerID 2019-09-17 10:34:41 +02:00
Łukasz Magiera
5ea1459275 Use atomic moppl API in more places 2019-09-17 10:15:26 +02:00
Łukasz Magiera
567ae92ff2 Move more logic into statemanager 2019-09-17 10:00:38 +02:00
Łukasz Magiera
f8a2ecaf52 gofmt; mod tidy 2019-09-16 23:26:19 +02:00
Łukasz Magiera
9fe198dc6f retrieval: payment validation 2019-09-16 23:25:23 +02:00
Łukasz Magiera
0a853ac0e7 pond: Retrieve button in deal client 2019-09-16 22:11:17 +02:00
Łukasz Magiera
18675bb052 impl: Fix ClientQueryAsk post rebase 2019-09-16 20:39:18 +02:00
Łukasz Magiera
12c777a3c7 paych: Set nil cid in ChannelMessage if not creating channel 2019-09-16 20:08:24 +02:00
Łukasz Magiera
b88d23fd8b paych: Fix createPaych 2019-09-16 20:08:24 +02:00
Łukasz Magiera
eda72468ce Sector Commitment tracker 2019-09-16 20:08:24 +02:00
Łukasz Magiera
1e07a12a2e More atomic mpool APIs 2019-09-16 20:08:23 +02:00
Łukasz Magiera
385e0cfd48 Paych improvements; Retrieval payments 2019-09-16 20:08:23 +02:00
whyrusleeping
1075c9a5e0 implement ask query protocol 2019-09-13 16:49:27 -07:00
Łukasz Magiera
6a31ff2f2e deals: Wait for channel messagi in handler 2019-09-13 19:59:10 +02:00
Łukasz Magiera
c121d9b8af pond: List client deals 2019-09-13 19:59:10 +02:00
Łukasz Magiera
1fc7a48759 deals: API to list client deals 2019-09-13 19:59:10 +02:00
Łukasz Magiera
388e3ffa96 paych: Api to reuse open channels for new payments 2019-09-13 19:59:10 +02:00
Łukasz Magiera
72a406ec7e deals: Better client deal tracking 2019-09-13 19:59:10 +02:00
whyrusleeping
512da42cde address review feedback 2019-09-09 19:14:27 -07:00
whyrusleeping
ed45d1c2b4 refactor state utilities into StateManager package, implement proper election proofs 2019-09-09 19:14:00 -07:00
whyrusleeping
6e21372ccb initial refactor for creating tipsets with multiple parents 2019-09-09 19:12:32 -07:00
Łukasz Magiera
5200a37349 paychmgr: store proofs with vouchers 2019-09-09 15:59:07 +02:00
Łukasz Magiera
4acf6d9d47 Partial payment integration in deals 2019-09-07 00:42:01 +02:00
Łukasz Magiera
7b7f128e43 paych: Fix paych init 2019-09-06 19:43:05 +02:00
Łukasz Magiera
57d0f7c722
Merge pull request #162 from filecoin-project/feat/retrieval
Retrieval
2019-08-31 00:29:00 +02:00
whyrusleeping
b69557251c Add proper timestamping and checking of timestamps 2019-08-29 19:59:54 -07:00
Łukasz Magiera
fe6d5ff3a8 retrieval: resolve some TODOs 2019-08-29 17:51:52 +02:00
Łukasz Magiera
a5d3122ba5 Make deals work with chunked files 2019-08-29 17:50:19 +02:00
Łukasz Magiera
c0566399c6 retrieval: Way to get the data 2019-08-29 17:50:19 +02:00
Łukasz Magiera
6714240653 SectorSize const 2019-08-29 17:50:19 +02:00
Łukasz Magiera
be30bc79a5 Retrieval works! 2019-08-29 17:50:19 +02:00
Łukasz Magiera
60eedb699e retrieval: Client impl 2019-08-29 17:48:58 +02:00
Łukasz Magiera
28d3eb38eb basic retrieval content discovery 2019-08-29 17:48:19 +02:00
Łukasz Magiera
cad3efb9ba Command to list sealed blocks 2019-08-29 17:48:19 +02:00
Łukasz Magiera
e0dc17bc1a Correctly construct sealbstore 2019-08-29 17:48:19 +02:00
Łukasz Magiera
9691211df1 Sealed blockstore 2019-08-29 17:48:19 +02:00
whyrusleeping
ccdc1575d6 add signatures to blocks 2019-08-26 17:46:39 -07:00
whyrusleeping
7eb89f90d1 Replace most marshaling with codegen 2019-08-22 12:53:32 -07:00
Łukasz Magiera
89dc87d890 use StateMinerPower in 'state power' cmd 2019-08-22 00:15:45 +02:00
Łukasz Magiera
fd2f0ed4f2 pond: Display miner power 2019-08-22 00:15:45 +02:00
Łukasz Magiera
e01ab507ca pond: New miner spawning 2019-08-22 00:15:45 +02:00
Łukasz Magiera
90dd19fe49 miner.Unregister 2019-08-20 20:05:17 +02:00
Łukasz Magiera
eda26faf21 Register miner address from storageminer process 2019-08-20 19:19:24 +02:00
Łukasz Magiera
4431dffc39 miner: Create miner in DI 2019-08-20 18:50:17 +02:00
Łukasz Magiera
e087cc2e7a impl: Split full node implementation 2019-08-20 18:48:33 +02:00
whyrusleeping
b2d425b891 TEMP: accept miner address from cli 2019-08-16 12:39:13 -07:00
whyrusleeping
f7dc253669 (mostly) proper ticket generation 2019-08-16 12:39:13 -07:00
whyrusleeping
e9d1f3e7c9 WIP: base mining on power and VRFs 2019-08-16 12:39:12 -07:00
Łukasz Magiera
3327781e60 chain: Better ReadState 2019-08-16 04:33:59 +02:00
Łukasz Magiera
760ebc341f storageminer: Split PaymentVerify into 2 methods 2019-08-15 22:57:14 +02:00
Łukasz Magiera
eb962940bd deals: wire up PaymentVerify 2019-08-15 17:04:40 +02:00
Łukasz Magiera
4c5ffb185e deals: setup payment channel for deals 2019-08-15 02:28:52 +02:00
Łukasz Magiera
baf4fbe309 sectorstore: Address review feetback 2019-08-15 00:46:15 +02:00
Łukasz Magiera
e6493afd46 move poller to sector store 2019-08-14 23:34:43 +02:00
Łukasz Magiera
399f91940b Sector store 2019-08-14 22:27:32 +02:00
Whyrusleeping
e050d56594
Merge pull request #132 from filecoin-project/feat/paych-manager
Implement payment channel manager
2019-08-13 12:13:23 -07:00
whyrusleeping
47efaece60 address review feedback 2019-08-13 11:47:40 -07:00
Łukasz Magiera
3a7a21ee83
Merge pull request #134 from filecoin-project/feat/more-deals
More deals progress
2019-08-13 19:32:58 +02:00
whyrusleeping
12acee5242 add payment channel CLI and finish up commands 2019-08-12 21:27:54 -07:00
Łukasz Magiera
9733e1f011 deals: use GetWorkerAddr 2019-08-13 01:54:53 +02:00
whyrusleeping
c986267a2e finish up initial api calls 2019-08-12 12:51:01 -07:00
whyrusleeping
ae34757e2a pull chain call into its own method and fix paych module 2019-08-12 11:30:20 -07:00
whyrusleeping
6d52abcb2e WIP: wiring up the payment channel manager to the api 2019-08-12 10:54:17 -07:00
whyrusleeping
6979c28e05 Add API interface for payment channels and a few tests 2019-08-12 10:12:51 -07:00
Łukasz Magiera
2229fae79d pond: basic state inspection 2019-08-10 03:54:52 +02:00
Łukasz Magiera
f99c8e032d pond: +1k button for addresses 2019-08-09 17:59:12 +02:00
whyrusleeping
28ef081d0e use wallet has instead of list 2019-08-08 10:56:14 -07:00
whyrusleeping
959fe371b0 move storage miner keys to full node 2019-08-08 10:56:14 -07:00
Łukasz Magiera
b2c3434bcd deals: Upstream bitswap changes 2019-08-08 19:16:41 +02:00
Łukasz Magiera
2114e8f555 deals: Show proposal cid in cli 2019-08-07 20:20:04 -07:00
Łukasz Magiera
3e2d04a540 deals: Use temp files for AddPiece 2019-08-07 20:02:05 -07:00
Łukasz Magiera
7423327b26 deals: Use real data in client 2019-08-07 20:01:51 -07:00
Łukasz Magiera
c79cb7bf31 deals: Almost sealing client data 2019-08-07 20:01:51 -07:00
Łukasz Magiera
b65041cac1 deals: Sending initial proposal works 2019-08-07 20:01:22 -07:00
Łukasz Magiera
549e7db12f deals: Implement basic handshake logic 2019-08-07 20:01:22 -07:00
Łukasz Magiera
ad9e433232 Start implementing storage deals 2019-08-07 20:00:49 -07:00
whyrusleeping
ba0d648546 sealing garbage data into a sector that gets accepted by the chain works! 2019-08-07 18:16:58 -07:00
whyrusleeping
5c32725510 sector commitments make it all the way to the chain 2019-08-07 16:22:35 -07:00
whyrusleeping
b7c6333fef implement sector commitments and proof verification 2019-08-06 23:35:57 -07:00
Łukasz Magiera
b1aee461ae
Merge pull request #110 from filecoin-project/feat/pond-storage-miners
Storage Miners in Pond
2019-08-06 18:11:51 +02:00
Whyrusleeping
3e768742a2
Merge pull request #113 from filecoin-project/feat/bls-spec-change-refactor
refactoring to accomodate the bls message changes in the spec
2019-08-05 12:09:01 -07:00
Whyrusleeping
c18711b3f9
Merge pull request #105 from filecoin-project/feat/multisig
Implement multisig
2019-08-05 12:08:32 -07:00
Jakub Sztandera
9577348422 Dual impl
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-08-03 13:26:35 +02:00
Łukasz Magiera
282654bf7b pond: storage miner init 2019-08-02 16:15:14 +02:00
whyrusleeping
ff3433baa1 fix chain progression after restarting process 2019-08-01 23:46:14 -07:00
whyrusleeping
e5f4c75ca4 fix up the tests and cli 2019-08-01 20:51:34 -07:00
whyrusleeping
dc7c0fcabe refactoring to accomodate the bls message changes in the spec 2019-08-01 18:19:22 -07:00
Łukasz Magiera
cfc3ac795d Fix tests 2019-08-01 16:26:12 +02:00
Łukasz Magiera
542f645c28 gofmt 2019-08-01 16:20:50 +02:00
Łukasz Magiera
9ae450620a Cleanup node/modules 2019-08-01 16:19:53 +02:00
Łukasz Magiera
6a4b9a6515 More separation for storage types in di modules 2019-08-01 16:14:16 +02:00
Łukasz Magiera
0f2334f513 chain sync: rebase 'fixes' 2019-07-31 10:43:14 -07:00
Łukasz Magiera
cdf0e0c858 chain: Test 'manual' sync 2019-07-31 10:43:13 -07:00
Łukasz Magiera
412a168151 chain: more work on chain sync, sync testing 2019-07-31 10:43:13 -07:00
Łukasz Magiera
9ef5e1266e chain: Test basinc sync on generated chain 2019-07-31 10:43:13 -07:00
Łukasz Magiera
a656aea7fe chain: WIP Generated node sync test 2019-07-31 10:43:13 -07:00
Łukasz Magiera
006fbe556f Use correct ctx for SectorBuilder/Miner 2019-07-31 19:01:04 +02:00
Łukasz Magiera
d8bd222cb1 Optional tipset param for ChainCall 2019-07-31 18:54:28 +02:00
whyrusleeping
ee224e5b21 Implement 'storage miner' module, wire up a few bits it needs to start 2019-07-29 17:46:56 -07:00
whyrusleeping
259b38eb55 move sectorbuilder DI stuff to Online option 2019-07-29 12:11:55 -07:00
whyrusleeping
b83ff6b9dc Wire up sector builder commands through the api 2019-07-29 12:08:47 -07:00
whyrusleeping
4fb4835b35 can we store it? YES WE CAN 2019-07-29 12:08:47 -07:00
whyrusleeping
f1432826d5 start integrating sector builder 2019-07-29 12:08:05 -07:00
whyrusleeping
0c67d66198 Make message wait work and use it for the storage-miner init 2019-07-29 11:58:30 -07:00
whyrusleeping
fa5e27d7b9 finish wiring up message wait 2019-07-29 11:57:48 -07:00
Whyrusleeping
54c78877bb
Merge pull request #104 from filecoin-project/feat/chain-notifs
expose head change notifications through api
2019-07-29 11:36:04 -07:00
whyrusleeping
03f653b88e expose head change notifications through api 2019-07-28 12:19:33 -07:00
whyrusleeping
71baa5cbfe implement chain generator 2019-07-26 13:47:29 -07:00
Jakub Sztandera
0e35240fe9 Wire in context to VMContext
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-07-26 21:01:02 +02:00
Łukasz Magiera
590b5f0299 Allocate funds in testing.MakeGenesis 2019-07-26 14:51:32 +02:00
whyrusleeping
78da356752 pull more things apart 2019-07-26 13:49:30 +02:00
Łukasz Magiera
12baee0e57 Use xerrors 2019-07-26 13:45:25 +02:00
whyrusleeping
2facece1f6 improve errors a bit 2019-07-25 20:26:29 -07:00
Łukasz Magiera
a565598b25 Merge remote-tracking branch 'origin/master' into feat/pond 2019-07-26 03:58:13 +02:00
whyrusleeping
e09ad3d65c Refactor out more types into types package, and pull genesis block code into gen package 2019-07-25 16:35:47 -07:00
Łukasz Magiera
45ddd8e590 Don't pannic on walletDefAddr with no addrs 2019-07-26 01:26:40 +02:00
Łukasz Magiera
583f4e02cb pond: ConnMgr: DisconAll, syncing 2019-07-25 23:52:16 +02:00
Whyrusleeping
663cdbe167
Merge pull request #74 from filecoin-project/feat/payment-channels
implement initial payment channel actor
2019-07-25 13:49:52 -07:00
Łukasz Magiera
7ae8f31218
Merge pull request #79 from filecoin-project/fix/hello-close
close stream after writing in hello
2019-07-25 13:51:58 +02:00
Łukasz Magiera
515fbd41c2 Use go-car for genesis file 2019-07-25 13:46:48 +02:00
Łukasz Magiera
99acdbade0 Better error message when genesis is missing 2019-07-25 01:32:44 +02:00
Łukasz Magiera
16c1dc5268 Fix imports in node_test 2019-07-25 01:25:33 +02:00
Łukasz Magiera
f2abb33933 Generate single genesis in tests 2019-07-25 01:23:06 +02:00
Łukasz Magiera
8d58c0a2fd Only set genesis once 2019-07-25 01:12:22 +02:00
whyrusleeping
859471aeaf implement initial payment channel actor 2019-07-24 15:45:12 -07:00
whyrusleeping
d06898e354 close stream after writing in hello 2019-07-24 15:16:47 -07:00
whyrusleeping
69d21d39a0 fix chainstore default option 2019-07-24 15:04:31 -07:00
whyrusleeping
4b76a06224 address code review 2019-07-24 14:46:54 -07:00
Łukasz Magiera
4fa9e45eb7 repo: check for config in exists 2019-07-24 13:20:00 +02:00
Łukasz Magiera
81d7c30fac Couple lint fixes 2019-07-24 03:16:17 +02:00
Łukasz Magiera
33dc14c9f2 Move API implementations to a separate package 2019-07-24 03:13:56 +02:00
Łukasz Magiera
c6b4fadba1 Fix permissions after split and rebase 2019-07-24 03:10:26 +02:00
Łukasz Magiera
772dd6c549 Implement storage miner API in node 2019-07-24 02:58:31 +02:00
Łukasz Magiera
f0e807dabb Fix jsonrpc client after splitting apis 2019-07-24 02:40:19 +02:00
Łukasz Magiera
eda03095b0 Separate API for storageminer 2019-07-24 02:09:34 +02:00
Łukasz Magiera
d0cbf02d36 Don't build full API in storage miner 2019-07-24 01:48:59 +02:00
Łukasz Magiera
8d529d1ae7 gofmt 2019-07-24 01:47:36 +02:00
Łukasz Magiera
4c8b028887 Return error form Repo.Exists 2019-07-24 01:47:36 +02:00
Łukasz Magiera
fe147ce90d StorageMiner node type 2019-07-24 01:47:36 +02:00
Łukasz Magiera
b41763d8cf Fix secret loading in tests 2019-07-24 00:38:52 +02:00
Łukasz Magiera
5be0ecadd1 gofmt 2019-07-24 00:38:52 +02:00
Łukasz Magiera
0aadddb6c8 auth: Load JWT secret once 2019-07-24 00:38:52 +02:00
Łukasz Magiera
3c9f88d043 auth: Actually generate API secrets 2019-07-24 00:38:52 +02:00
Łukasz Magiera
a88be8d1df auth: Store token in repo 2019-07-24 00:38:52 +02:00
Łukasz Magiera
309ecc4052 auth: Put auth methods in API 2019-07-24 00:37:05 +02:00
Łukasz Magiera
fa4bf5178a auth: Restructure for getting tokens form keystore 2019-07-24 00:37:05 +02:00
whyrusleeping
5fb59c06bd add a getblock command 2019-07-22 17:54:27 -07:00
whyrusleeping
3f0c7f37f9 fix serialization issues 2019-07-20 16:37:38 -07:00
whyrusleeping
05b8158285 implement a few of the TODOs 2019-07-20 16:37:37 -07:00
whyrusleeping
9a7823ab84 WIP: create miner command, stubbed out methods 2019-07-20 16:37:37 -07:00
whyrusleeping
f0841203a3 add a command to check wallet balance 2019-07-18 13:26:04 -07:00
Jakub Sztandera
935e4e8da7 Move KeyStore into separate module
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-07-18 18:10:53 +02:00
Jakub Sztandera
5ee7ba8420 Fix tests
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-07-18 17:52:48 +02:00
Jakub Sztandera
710f87fdf4 Integrate keystore with chain/wallet
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-07-18 17:41:30 +02:00
Jakub Sztandera
cb9bf4200c Move KeyStore into types
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-07-18 16:57:49 +02:00
Jakub Sztandera
902ea18686 Add keystore to the repo
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-07-18 16:01:39 +02:00
Whyrusleeping
35905cb3fe
Merge pull request #31 from filecoin-project/feat/wsrpc
JsonRPC over WebSockets
2019-07-16 09:36:32 -07:00
Łukasz Magiera
0fa47c6dfa Lint fixes 2019-07-16 18:07:08 +02:00
Łukasz Magiera
d30d9a30bc Fix test node setup 2019-07-16 18:02:51 +02:00
Łukasz Magiera
3fca70f112 Fix rpcBuilder in node_test 2019-07-15 18:28:00 +02:00
Łukasz Magiera
041598dbb6 Use extracted go-filestore 2019-07-15 17:08:18 +02:00
Łukasz Magiera
1f6629e978 Basic ClientListImports 2019-07-15 16:18:47 +02:00
Łukasz Magiera
cec4918cd9 Make client import actually work 2019-07-15 16:17:34 +02:00
Łukasz Magiera
97c61d4ce5 Client import 2019-07-15 16:17:34 +02:00
whyrusleeping
1a929d0f73 add wallet new and list commands 2019-07-12 17:41:32 -07:00
Jakub Sztandera
46a93d2448 Add more tests to repo
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-07-12 17:51:38 +02:00