Steven Allen
95c57d0ce3
and actually hook up loading logic
2021-01-21 15:21:19 -08:00
Steven Allen
be1f15052c
register remaining state decoders
2021-01-21 15:21:19 -08:00
Steven Allen
9ce63c1211
simplify v3 claims map access
2021-01-21 15:21:19 -08:00
Aayush Rajasekaran
06f13f8e00
Add v3 actors support for verifreg
2021-01-21 15:21:19 -08:00
Aayush Rajasekaran
76abbb8938
Add v3 actors support for reward
2021-01-21 15:21:19 -08:00
Aayush Rajasekaran
ee99e68614
Add v3 actors support for power
2021-01-21 15:21:19 -08:00
Aayush Rajasekaran
abb388512e
Add v3 actors support for paych
2021-01-21 15:21:19 -08:00
Aayush Rajasekaran
9d06a8b116
Add v3 actors support for multisig
2021-01-21 15:21:19 -08:00
Aayush Rajasekaran
0bb3aed53c
Add v3 actors support for miner
2021-01-21 15:21:19 -08:00
Aayush Rajasekaran
ab90a3b2bc
Actors update: MinerInfo.SealProofType has been removed
2021-01-21 15:21:19 -08:00
Aayush Rajasekaran
82635f2515
Rename Deadline.PoStSubmissions to PartitionsPoSted
2021-01-21 15:21:19 -08:00
Aayush Rajasekaran
b4f479affd
Add v3 actors support for market
2021-01-21 15:21:18 -08:00
Aayush Rajasekaran
378f169f14
Add v3 actors support for init
2021-01-21 15:21:18 -08:00
Aayush Rajasekaran
3961e3daf8
Add v3 actors support for account
2021-01-21 15:21:18 -08:00
Aayush Rajasekaran
ba3b32cfe7
Pull in actors v3
2021-01-21 15:21:18 -08:00
Łukasz Magiera
80b8d4b9d7
Address review
2021-01-14 20:27:15 +01:00
Łukasz Magiera
49abdd7d7d
Sector termination support - address review
2021-01-14 15:46:57 +01:00
Aayush Rajasekaran
68a16afeda
Merge branch 'master' into release/v1.2.0
2020-11-17 19:40:05 -05:00
frrist
d25e5d1c08
polish: add DeffAddressMap method to init wrapper
...
- replace logic in predicates
2020-11-16 11:45:25 -08:00
Łukasz Magiera
2a7e4af5ee
Fix lotus-miner/lotus-worker build
2020-11-16 19:03:30 +01:00
Dirk McCormick
1182927fe5
refactor: add wallet param to FundManager methods
2020-11-10 19:44:26 -08:00
Łukasz Magiera
6bb8521a55
Merge pull request #4719 from filecoin-project/frrist/msig-diffing
...
polish: add msig pendingtxn diffing and comp
2020-11-06 16:47:29 +01:00
Frank
a3f5d0f590
match data type for reward state api
2020-11-06 11:06:57 +08:00
frrist
7d540fc0d8
polish: add msig pendingtxn diffing and comp
2020-11-03 17:25:53 -08:00
whyrusleeping
77ec7caaad
WIP: add a command for compacting sector numbers bitfield
2020-10-29 00:18:10 -07:00
frrist
7b8dae92d9
feat: add power actor claim diff method
2020-10-28 16:52:52 -07:00
frrist
e33cc5ee12
polish: add ClaimsChanged method to power shim
2020-10-28 13:56:02 -07:00
frrist
0d384050fa
polish: add Equals method to MinerInfo shim
2020-10-26 14:45:02 -07:00
Łukasz Magiera
041762a34f
Merge pull request #4383 from filecoin-project/steb/actor-v2-imports
...
Remove most v0 actor imports
2020-10-22 17:17:56 +02:00
Łukasz Magiera
b85bf82d00
Merge pull request #4318 from filecoin-project/asr/shed-won-power
...
Add a shed util to determine % of power that has won a block
2020-10-22 15:40:55 +02:00
Steven Allen
bcabe7b3b5
migrate methods to abstracted methods
...
Method numbers never change anyways. At worst, we'll deprecate old methods and
have to explicitly import them from the correct actors version to use them.
2020-10-21 12:18:37 -07:00
Steven Allen
4e730b5ec8
port to v2 imports
2020-10-21 12:16:23 -07:00
frrist
28823fb8e9
fix: bad indirection of deadline diffing
2020-10-14 14:50:59 -07:00
frrist
ea1349205b
fix: return true when partitions changed
2020-10-14 14:37:33 -07:00
frrist
470a565c34
fix: return true when deadlines changed
2020-10-14 14:27:35 -07:00
Whyrusleeping
dfd6fbfaa4
Merge pull request #4311 from filecoin-project/feat/msig-remove-cmd
...
Add propose remove
2020-10-14 11:36:55 -05:00
Aayush Rajasekaran
96e1dfd8d7
Add an endpoint for precise circulating supply
2020-10-12 16:38:29 -04:00
Łukasz Magiera
224a96431f
Merge pull request #4319 from filecoin-project/asr/repay-debt-cli
...
Add a CLI tool for miner's to repay debt
2020-10-12 19:24:40 +02:00
Steven Allen
c296e1bbca
use actor abstraction in metrics command
2020-10-11 20:31:20 -07:00
Aayush Rajasekaran
b4215e5f46
Add a CLI tool for miner's to repay debt
2020-10-11 19:57:30 -04:00
Aayush Rajasekaran
bae3b7d594
add a shed util to determine % of power that has won a block
2020-10-11 19:05:54 -04:00
Jakub Sztandera
85be11fb75
Add propose remove
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-10-11 18:10:02 +02:00
Ian Davis
f87d325b6f
fix: spec actors 2 reward shim uses correct field for CumsumRealized
2020-10-09 17:48:20 +01:00
Aayush Rajasekaran
d1555106a4
Set actorsv2 upgrade epoch
2020-10-07 19:41:36 -04:00
Steven Allen
df4b068d0e
Merge branch 'master' into next
2020-10-07 11:55:00 -07:00
Aayush Rajasekaran
839d1121ce
Update to actors v2.0.1
2020-10-06 20:37:54 -04:00
Aayush Rajasekaran
282c99bdbd
Merge pull request #4160 from filecoin-project/asr/reserve-funds-cric-supply
...
Add funds that have left FilReserve to circ supply
2020-10-06 17:39:05 -04:00
frrist
d4cbd4fb55
feat(miner): add miner deadline diffing
...
- logic gathering all removed, faulted, recovered, and recovering
sectors for a miner.
2020-10-06 11:39:38 -07:00
Aayush Rajasekaran
4a9155ba85
Use new MinerEligibleToMine method post-v2 actors
2020-10-06 04:43:55 -04:00
Aayush Rajasekaran
f55b18eabe
Add funds that have left FilReserve to circ supply
2020-10-05 23:54:57 -04:00
Steven Allen
8bcc201fc0
fix v2 GetSectorExpiration
2020-10-05 10:54:22 -07:00
Steven Allen
b9f8831aaf
fix specs-actors import in payment channel abstraction
...
Co-authored-by: Łukasz Magiera <magik6k@users.noreply.github.com>
2020-10-05 09:51:04 -07:00
Steven Allen
8292d60196
Merge branch 'master' into asr/spec-v1
2020-10-02 18:03:03 -07:00
Łukasz Magiera
bd964b4c3e
Merge pull request #4124 from filecoin-project/asr/verifreg
...
Some helpers for verifreg work
2020-10-03 00:20:45 +02:00
Dirk McCormick
9dc75a7bc4
fix: verify voucher amount check
2020-10-01 11:35:41 +02:00
Aayush Rajasekaran
93e4eae94c
Some helpers for verifreg work
2020-10-01 04:49:38 -04:00
Steven Allen
b01a1d457a
abstract multisig calls
2020-09-30 12:30:02 -07:00
Steven Allen
2e9915ac28
move common from message param into message builder constructor
2020-09-30 10:58:34 -07:00
Steven Allen
4c60d7b5ce
abstract over paych messages
2020-09-30 10:04:10 -07:00
Steven Allen
4989b1cc90
Merge branch 'master' into asr/spec-v1
2020-09-30 09:19:12 -07:00
Łukasz Magiera
7a3a2f8db9
Merge pull request #3924 from filecoin-project/feat/dont-recompute-PoST-redux
...
Dont recompute post on revert <<redux>>
2020-09-30 09:18:46 +02:00
Aayush Rajasekaran
be9d23b329
Centralize some params in builtin
2020-09-29 02:25:43 -04:00
Steven Allen
3e6323a503
make setNetworkName work with any actors version
2020-09-28 15:54:48 -07:00
Steven Allen
233d8a9b72
update even more imports
2020-09-28 14:25:58 -07:00
Steven Allen
ca9448bc11
rename actors v1 -> actors v2
...
The actual actors version is v2, not v1. Using Version1 internally was really confusing.
2020-09-28 13:13:18 -07:00
Steven Allen
2049daa008
fix actor imports
2020-09-28 13:12:41 -07:00
Steven Allen
947d1e2902
Merge branch 'master' into asr/spec-v1
2020-09-28 12:53:40 -07:00
Steven Allen
5f3160cf5b
continue expanding vm abstraction layer
2020-09-28 12:48:08 -07:00
Łukasz Magiera
ef28ebb14a
Ignition upgrades, much excite.
2020-09-25 23:55:37 -07:00
Steven Allen
d9656f5220
add a generic load method for actor state
...
This will make it easier to load arbitrary actors. We can:
* Type switch (sort of unsafe, may want marker methods?)
* Use this with `vm.MutateActorState`.
2020-09-25 12:49:39 -07:00
Steven Allen
87351fa35c
move version to actors, from builtin
...
Otherwise, we're going to end up with an import cycle between the adt and this
version.
2020-09-25 12:49:39 -07:00
Steven Allen
edb31e606a
correctly load new actors
2020-09-25 12:49:39 -07:00
Steven Allen
35562bd2f9
fixup v1 actors for new methods
...
Also, correctly handle multiple ADT versions.
2020-09-25 12:49:39 -07:00
Aayush Rajasekaran
ebad0ded3d
Introduce v1 actors
2020-09-25 12:49:39 -07:00
Steven Allen
bdc782617f
return an error when we fail to find a sector when checking sector expiration
...
Returning nil, nil is a footgun.
fix: https://github.com/filecoin-project/lotus/issues/3984
2020-09-25 11:28:38 -07:00
Dirk McCormick
80a7ed8116
refactor: use abstract types instead of specs-actors
2020-09-25 15:54:27 +02:00
Łukasz Magiera
17a84c9a2c
Merge pull request #3975 from filecoin-project/steb/abstract-actor-policy
...
Add some actors policy setters for testing
2020-09-24 15:51:41 +02:00
Steven Allen
32a699d6a3
Add some actors policy setters for testing
...
Addresses:
* a307e4593a (r491966115)
* a307e4593a (r491966634)
Note: This puts everything into a policy package to avoid a dependency cycle
between the build package, the miner package, and the types package. This is
also why I introduced a GetPreCommitChallengeDelay function and removed the
variable.
2020-09-23 15:00:52 -07:00
Steven Allen
46f5b62a76
Remove a misleading miner actor abstraction
...
We shouldn't implement CBOR functions on the "abstract" miner info. Otherwise,
we could end up trying to actually _use_ this "abstract" info when decoding
state (which won't work across version).
Also remove the use of these CBOR functions, and instead explicitly use miner0
types. We'll have to abstract over versions eventually, but we'll probably need
some form of abstract miner builder (or maybe even adding some "add sector",
etc. functions to the current miner abstraction?
2020-09-23 14:49:53 -07:00
Steven Allen
1c1d23d142
fix out-of-bounds when loading all sector infos
...
fixes #3972
2020-09-23 12:40:44 -07:00
Raúl Kripalani
f1ab1af617
add init.State#Remove() for testing.
2020-09-23 17:42:01 +01:00
Aayush Rajasekaran
a876a0ba44
Use actor state addresses
2020-09-23 02:32:40 -04:00
Aayush Rajasekaran
476e7992e8
Add an error return to all actor state interface methods
2020-09-23 01:51:38 -04:00
Aayush Rajasekaran
e27fc03f55
Reward state interface only needs cbor.Marshaler
2020-09-23 01:42:10 -04:00
Aayush Rajasekaran
ed4bf9b8fe
API shouldn't depend on actors directly
2020-09-23 00:51:12 -04:00
Steven Allen
46fb0e74cd
add deal state iterator
2020-09-22 14:09:33 -07:00
Aayush Rajasekaran
1dc69e397e
Resolve some unnecessary actor upgrade TODOs
2020-09-22 01:34:21 -04:00
Aayush Rajasekaran
d56da1b014
Refinements to stmgr and utils
2020-09-22 01:34:20 -04:00
Steven Allen
3f0106cfe5
migrate lotus-shed/genesis-verify to actor abstraction
2020-09-21 15:18:30 -07:00
Steven Allen
4bab784e40
migrate lotus-shed verifreg to specs-actors abstractions
2020-09-21 15:04:39 -07:00
Steven Allen
916421b247
convert lotus-shed balances
2020-09-21 13:43:47 -07:00
Steven Allen
a41bf74bad
fix: remove incorrect variable
2020-09-21 13:25:03 -07:00
Steven Allen
0ab2459fce
convert multisig to new actor abstractions
2020-09-21 13:13:38 -07:00
Steven Allen
4cf0c105eb
optimize sector loading
...
And avoid exposing "arrays" via the miner abstraction. We may change these
structures later.
2020-09-21 12:12:08 -07:00
Łukasz Magiera
0b5e4a9612
Make GetSectorsForWinningPoSt fast again
2020-09-21 18:28:32 +02:00
Aayush Rajasekaran
b355eb75eb
Add compile-time checks that actors interfaces are correctly implemented
2020-09-21 02:19:32 -04:00
Aayush Rajasekaran
a95e34f742
Fix build
2020-09-21 02:02:33 -04:00
Aayush Rajasekaran
ed285f1114
Abstract SectorOnChainInfo and SectorPreCommitOnChainInfo
2020-09-21 01:09:42 -04:00
Łukasz Magiera
b25dd2a00d
More correct / fasterer GetSectorsForWinningPoSt
2020-09-20 23:04:45 +02:00
Aayush Rajasekaran
7c3f638f68
Abstract FilterEstimate, PreCommitDepositForPower, and InitialPledgeForPower
2020-09-19 00:41:24 -04:00
Steven Allen
35bce5a5c6
revert post changes
...
1. Calling the specific partition/deadline APIs is faster.
2. It's _much_ easier to test this way.
2020-09-18 15:40:49 -07:00
Steven Allen
1bf3b4989d
rename imports to match actors code
...
`sed -i 's/\bv0\(\w\)\(\w*\)/\L\1\E\20/g' **/*.go`
2020-09-18 14:59:27 -07:00
Steven Allen
8285eda8e5
migrate storage miner info
2020-09-18 14:46:42 -07:00
Steven Allen
8747c6083e
abstract over account actor
2020-09-18 14:20:53 -07:00
Steven Allen
fb2b25c297
finish upgrading chainwatch
2020-09-18 13:43:30 -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
37de154a7c
Fixup tests
2020-09-18 01:56:21 -04:00
Steven Allen
daa441b989
simplify market diff
2020-09-17 21:48:50 -07:00
Steven Allen
b2ee59024f
improve diff logic
...
* Make diffing work across versions.
* Start porting more chainwatch logic.
2020-09-17 21:39:34 -07:00
Steven Allen
5bcfee0042
make market diffs work across version upgrades
2020-09-17 16:08:54 -07:00
Steven Allen
dc58f71604
remove unnecessary code
...
Go does have some nice features, once in a while.
2020-09-17 14:59:10 -07:00
Steven Allen
ae38970526
remove WpostProvignPeriod function
2020-09-17 14:56:11 -07:00
Dirk McCormick
c40c1361f0
fix: paych To()
2020-09-17 18:14:07 +02: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
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
b5ba7a0fad
Miner migration
2020-09-17 02:21:16 -04:00
hannahhoward
80b6994fe2
feat(market): update state diffing for market actor
...
Update to abstract actor for markets state diffing. Also move the diff adt functions inside the
abstract actors
2020-09-16 19:14:07 -07:00
Aayush Rajasekaran
b530f25f09
Migrate miner actor
2020-09-16 17:20:25 -04:00
Łukasz Magiera
ccce1a9715
Merge pull request #3877 from filecoin-project/refactor/net-upgrade-paych
...
Support Network Upgrades: Payment Channel
2020-09-16 20:25:16 +02: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
Steven Allen
92471d41d6
migrate precommit deposit function
2020-09-15 16:47:58 -07:00
Steven Allen
02bc5fab26
add power actor address alias
2020-09-15 14:56:00 -07:00
Steven Allen
e1ba4eb5c4
sub reward actor
2020-09-15 14:55:48 -07:00
Steven Allen
4e01fad0d4
start multisig abstraction
2020-09-15 14:44:03 -07:00
Steven Allen
91e9573863
Compile fixes
2020-09-15 12:13:13 -07:00
Steven Allen
6bf7976add
fix decode
2020-09-15 10:51:18 -07:00
Steven Allen
00c6397ec9
more progress
2020-09-15 10:46:44 -07:00
Łukasz Magiera
9dad38c9a5
gofmt
2020-09-15 15:29:39 +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
7fa6c1e8d0
add info method to miner state API
2020-09-14 15:45:00 -07:00
Steven Allen
cc4d5306eb
Progress
2020-09-14 15:43:12 -07:00
Łukasz Magiera
683a58195e
More terraforming in chain/
2020-09-14 14:46:38 +02:00
Łukasz Magiera
38f87981c1
Fix some build errors
2020-09-14 13:14:06 +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