Steven Allen
23239c0393
fix: vm: always set the root message in execution traces in the FVM
...
Even when disabled. This mimics the behavior or the lotus VM.
2022-05-23 11:23:17 -07:00
Steven Allen
f7c610ee23
feat: vm: drop nv14 support from the FVM
...
The next FVM version will only support nv15+.
This change also disables the FVM before nv15, even if enabled through
the environment variable. This allows "catching up" from before nv15.
2022-05-23 09:50:54 -07:00
Aayush
b2b20e469f
Fix tests
2022-05-17 15:21:27 -04:00
Aayush
8cca9b1970
Use new go-state-types accessors
2022-05-17 15:21:27 -04:00
vyzo
89418a5c34
propagate gas outputs in fvm ApplyRet
2022-05-04 20:19:07 +03:00
Steven Allen
78899be05d
feat: vm: add actor error backtraces to FVM
2022-05-04 20:18:25 +03:00
vyzo
090c655422
remove log spam
2022-04-21 14:18:21 +03:00
Aayush
b60d795a5d
FVM: Support exectraces
2022-04-19 18:05:49 -04:00
vyzo
2690b69831
fix rebase issues
2022-04-14 19:49:08 +03:00
vyzo
fcf69e7b82
register mapping for methods using the real code cid
2022-04-14 19:31:14 +03:00
vyzo
752ce9e590
make tests work
2022-04-14 19:31:14 +03:00
vyzo
a8547ed840
make manifest cid access thread-safe
2022-04-14 19:30:47 +03:00
vyzo
ddede202a8
update fvm construction
2022-04-14 19:29:59 +03:00
Aayush
3370847f3e
Implement FIP-0031
2022-04-14 19:28:16 +03:00
Aayush Rajasekaran
656a33863f
Fixup merge
2022-04-11 20:45:13 -04:00
jennijuju
0dcad9cc18
Merge branch 'releases' into jen/mergeback
2022-04-12 01:25:02 +02:00
Aayush
7518854625
fix: FVM: add finality check for consensus faults
2022-04-07 12:27:33 -04:00
Aayush
d1c0b8b0c9
fix: FVM: add finality check for consensus faults
2022-04-07 12:22:07 -04:00
Aayush Rajasekaran
8c46d00ee7
Update to go-log 2.5.1
2022-04-01 01:13:55 -04:00
Jennifer Wang
2a988d453c
chore: ffi: the latest fvm release
2022-03-26 23:25:02 -04:00
Jennifer Wang
f2fa2f5067
chore: ffi: the latest fvm release
2022-03-26 22:45:47 -04:00
Aayush
25b2e144b8
VM: Refactor pricelist to be based on network versions
2022-03-25 15:06:10 -04:00
Aayush
3fbf765605
FVM: log when fvm is used
2022-03-23 14:05:43 -04:00
Aayush
694c45cd65
FVM: log when fvm is used
2022-03-23 13:19:28 -04:00
Aayush Rajasekaran
90d78f924f
Merge pull request #8293 from filecoin-project/feat/fvm
...
Filecoin Virtual Machine integration
2022-03-16 15:51:56 -04:00
Darko Brdareski
79453663b3
feat: Add additional test annotations ( #8272 )
...
* Annotate api,proxy_util,blockstore_badger, policy tests
* Annotate splitstore: bsbadger / markset
* Annotate splitstore feature
* Annotate union/timed blockstore tests
* Annotate openrpc, diff_adt tests
* Annotate error,drand,events tests
* Annotate predicates_test
* Fix annotations
* Annotate tscache, gen tests
* Annotate fundmanager test
* Annotate repub and selection tests
* Annotate statetree_test
* Annotate forks_test
* Annotate searchwait_test.go
* Fix duplicated @@ symbols
* Annotate chain stmgr/store tests
* Annotate more (types) tests
* More tests annotated
* Annotate conformance chaos actor tests
* Annotate more integration tests
* Annotate journal system tests
* Annotate more tests.
* Annotate gas,head buffer behaviors
* Fix markset annotations
* doc: test annotations for the markets dagstore wrapper
* Annotate miner_api test in dagstore
* Annotate more test files
* Remove bad annotations from fsrepo
* Annotate wdpost system
* Remove bad annotations
* Renamce "conformance" to "chaos_actor" tests
* doc: stm annotations for blockheader & election proof tests
* Annotate remaining "A" tests
* annotate: stm for error_test
* memrepo_test.go
* Annotate "b" file tests
* message_test.go
* doc: stm annotate for fsrepo_test
* Annotate "c" file tests
* Annotate "D" test files
* message_test.go
* doc: stm annotate for chain, node/config & client
* docs: stm annotate node_test
* Annotate u,v,wl tests
* doc: stm annotations for various test files
* Annotate "T" test files
* doc: stm annotate for proxy_util_test & policy_test
* doc: stm annotate for various tests
* doc: final few stm annotations
* Add mempool unit tests
* Add two more memPool Add tests
* Update submodules
* Add check function tests
* Add stm annotations, refactor test helper
* Annotate api,proxy_util,blockstore_badger, policy tests
* Annotate splitstore: bsbadger / markset
solving merge conflicts
* Annotate splitstore feature
* Annotate union/timed blockstore tests
* Annotate openrpc, diff_adt tests
* Annotate error,drand,events tests
* Annotate predicates_test
* Fix annotations
* Annotate tscache, gen tests
* Annotate fundmanager test
* Annotate statetree_test
* Annotate forks_test
* Annotate searchwait_test.go
* Fix duplicated @@ symbols
* Annotate chain stmgr/store tests
* Annotate more (types) tests
* More tests annotated
* Annotate conformance chaos actor tests
* Annotate more integration tests
* Annotate journal system tests
* Annotate more tests.
* Annotate gas,head buffer behaviors
solve merge conflict
* Fix markset annotations
* Annotate miner_api test in dagstore
* Annotate more test files
* doc: test annotations for the markets dagstore wrapper
* Annotate wdpost system
* Renamce "conformance" to "chaos_actor" tests
* Annotate remaining "A" tests
* doc: stm annotations for blockheader & election proof tests
* annotate: stm for error_test
* Annotate "b" file tests
* memrepo_test.go
* Annotate "c" file tests
* message_test.go
* Annotate "D" test files
* doc: stm annotate for fsrepo_test
* Annotate u,v,wl tests
* message_test.go
* doc: stm annotate for chain, node/config & client
* docs: stm annotate node_test
* Annotate "T" test files
* doc: stm annotations for various test files
* Add mempool unit tests
solve merge conflict
* doc: stm annotate for proxy_util_test & policy_test
* doc: stm annotate for various tests
* doc: final few stm annotations
* Add two more memPool Add tests
* Update submodules
* Add check function tests
solve conflict
* Add stm annotations, refactor test helper
solve merge conflict
* Change CLI test kinds to "unit"
* Fix double merged test
* Fix ccupgrade_test merge
* Fix lint issues
* Add stm annotation to types_Test
* Test vectors submodule
* Add file annotation to burn_test
Co-authored-by: Nikola Divic <divicnikola@gmail.com>
Co-authored-by: TheMenko <themenkoprojects@gmail.com>
2022-03-16 18:37:34 +01:00
Aayush
9ea623e125
Rename the Lotus VM to LegacyVM
2022-03-15 19:40:17 -04:00
Aayush
e6117c49ef
Address review
2022-03-15 19:34:59 -04:00
Aayush
673f558ba5
Rename vm.VMI to vm.Interface
2022-03-15 19:34:39 -04:00
Aayush
05fa9c81de
Rename FVM envvar to LOTUS_USE_FVM_EXPERIMENTAL
2022-03-12 11:03:43 -05:00
Aayush
d2054e8653
FVM: support nv15
2022-03-11 17:03:34 -05:00
Aayush
b6682f4bbe
feat: use either lotus vm or fvm consistently
2022-02-24 12:04:05 -05:00
Aayush
9bb936b75c
chore: refactor: rename NewVM to NewLotusVM
2022-02-24 12:04:05 -05:00
Steven Allen
420c5fb568
fvm: time message execution
2022-02-23 19:23:20 +00:00
Steven Allen
aad376296e
fvm: set gas costs to nil for implicit messages
...
This is what the lotus VM does.
2022-02-23 19:22:47 +00:00
Aayush
5be125ad1a
address review feedback
2022-02-18 13:21:17 -05:00
Aayush
393479ea69
Fvm: impl VerifyConsensusFault
2022-02-18 13:21:01 -05:00
Steven Allen
e8d771fcac
pass only fil-vested into FVM
2022-02-08 15:26:20 -08:00
Steven Allen
32b3618c74
fvm: feed in correct "base" circulating supply
2022-02-08 13:20:03 -08:00
Steven Allen
279cdd0760
fvm: fix implicit messages and message inclusion gas charging
2022-02-07 10:33:57 -08:00
Steven Allen
fc74a6c8ca
update fvm/ffi bindings
2022-02-04 12:46:15 -08:00
Aayush Rajasekaran
2a669b95fb
:Hook up the FVM
2022-02-04 12:46:15 -08:00
Aayush
9ec1abf880
:Fix: create a new VM for each epoch
2022-01-17 16:28:22 -05:00
Aayush Rajasekaran
207d33eaba
Merge pull request #7810 from filecoin-project/feat/snap-deals
...
Snap Deals Lotus Integration: FSM Posting and integration test
2022-01-11 12:46:55 -05:00
zenground0
33f2d24f54
Snap Deals Integration
...
- FSM handles the actual cc upgrade process including error states
- PoSting (winning and window) works over upgraded and upgrading sectors
- Integration test and changes to itest framework to reduce flakes
- Update CLI to handle new upgrade
- Update dependencies
2022-01-10 15:39:38 +05:30
Jakub Sztandera
736fb5c5b0
Add gas charge for VerifyReplicaUpdate
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2022-01-07 15:18:08 +01:00
Aayush Rajasekaran
5ec5ebac31
Fix circsuypply calc around null blocks
2022-01-05 14:17:40 -05:00
Raúl Kripalani
d4fa5a0f1d
tvx runner: adjust gas pricing to cope with synthetic epochs.
2022-01-04 17:32:57 +00:00
Aayush Rajasekaran
670bd993f3
Refactor: VM: Remove the NetworkVersionGetter
2021-12-17 19:14:21 -05:00
Aayush Rajasekaran
6f6f5d79fb
Refactor: State: Let Rand get network versions
2021-12-17 18:54:17 -05:00
Aayush Rajasekaran
aa1b770974
Rand: Refactor so that versioning lives in StateRand
2021-12-17 13:58:53 -05:00
Łukasz Magiera
bc384c01e3
Merge remote-tracking branch 'origin/master' into deps/update-ctx-dsbs
2021-12-17 13:01:22 +01:00
Aayush Rajasekaran
1f04cc1f23
VM: Circ supply should be constant per epoch
2021-12-17 00:29:55 -05:00
Aayush Rajasekaran
0e2278cc76
Merge branch 'master' into deps/update-ctx-dsbs
2021-12-14 18:08:29 -05:00
Aayush Rajasekaran
80d5e52923
Merge branch 'master' into next
2021-12-13 13:24:28 -05:00
Aayush Rajasekaran
dfb65ed89f
Plumb contexts through
2021-12-11 17:04:00 -05:00
gstuart
9108828aeb
Make Lotus vm gas tracing an env var
2021-12-10 17:27:44 -05:00
c r
e16e9ad343
reorder transfer
checks so as to ensure sending more money than you have to yourself fails with an error (fixing issue 7596)
...
PR #7637 , also adds tests to make sure behavior is correct across versions.
2021-11-29 17:26:47 -05:00
Aayush Rajasekaran
5f1783c9a5
Address review
2021-11-19 15:11:13 -05:00
Aayush Rajasekaran
1449644c34
Integrate v7 actors
2021-11-17 15:55:14 -05:00
Raúl Kripalani
95d294db63
rename vm#make{=>Account}Actor().
2021-10-26 19:11:00 +01:00
Łukasz Magiera
19f52b4541
inline-gen: Slightly nicer comment format
2021-10-18 17:21:53 +02:00
Łukasz Magiera
5616dfb1bc
Some more inline codegen
2021-10-11 22:57:24 +02:00
Jennifer Wang
38e01cba83
Merge branch 'release/v1.12.0' into jen/12tomaster
2021-10-04 02:38:00 -04:00
Aayush Rajasekaran
c3c46e9097
Fix Drand fetching around null tipsets
2021-09-29 11:57:59 -04:00
Aayush Rajasekaran
7b4c657e90
Add v6 actors
2021-09-21 14:23:14 -04:00
Aayush Rajasekaran
b9bfcc4b69
Randomness: Move getters from ChainAPI to StateAPI
2021-09-21 14:20:15 -04:00
Aayush Rajasekaran
1d6db306ec
Randomness: Move getters from ChainAPI to StateAPI
2021-09-15 00:03:13 +02:00
Łukasz Magiera
95b128b7bc
chain: Cleanup consensus logic
2021-09-02 18:09:37 +02:00
ZenGround0
b914e95f34
revert pricelist by version to pricelist by epoch
2021-08-11 09:49:23 -04:00
ZenGround0
6da26dcefc
Remove network version panic
2021-08-10 13:07:30 -04:00
ZenGround0
e09a25ca68
Remove unnecessary ret log
2021-07-28 18:26:29 -04:00
ZenGround0
a968784908
fix new panics in invoker_test.go
2021-07-28 18:26:29 -04:00
ZenGround0
0202192fc0
Log more call context during errors
2021-07-28 18:26:29 -04:00
Łukasz Magiera
e7d73cbe56
vm: Remove unused ActorBalance
2021-07-27 15:34:39 +02:00
ZenGround0
47b5afa84b
Add version six and a half
2021-07-22 09:49:47 -04:00
ZenGround0
f49a8248f0
PriceListByVersion
2021-07-22 09:49:47 -04:00
Steven Allen
d6abcff63c
fix(lotus-sim): apply code review from magik6k
...
Co-authored-by: Łukasz Magiera <magik6k@users.noreply.github.com>
2021-06-21 09:05:48 -07:00
Steven Allen
eb2b706156
chore: fix lint errors in simulation
2021-06-18 15:44:37 -07:00
Steven Allen
0075abea5e
fix(vm): always specify an ActorErr when ApplyMessage fails.
...
This case shouldn't actually happen, but we might as well be consistent.
2021-06-18 15:44:35 -07:00
Steven Allen
e2f5c494b0
feat: implement lotus-sim
2021-06-18 15:44:34 -07:00
Peter Rabbitson
29d7561dd1
Fix logging of stringified CIDs double-encoded in hex
2021-06-08 00:05:48 +02:00
Aayush Rajasekaran
a41a1cbd93
Gate runtime's GetRandomnessFromBeacon on HyperdriveHeight, not network version
2021-06-03 15:47:49 -04:00
Łukasz Magiera
dc642d0b7b
Merge remote-tracking branch 'origin/feat/nv13' into feat/nv13-1.11
2021-06-01 21:06:58 +02:00
Aayush Rajasekaran
39f2246ae6
Use build.UpgradeHyperDriveHeight directly when sourcing randomness in VM
2021-06-01 14:43:46 -04:00
Łukasz Magiera
66c1554670
vm syscalls: fix typo
2021-06-01 19:23:12 +02:00
Łukasz Magiera
ffa47659a1
Merge remote-tracking branch 'origin/feat/nv13' into feat/nv13-1.11
2021-05-31 21:38:34 +02:00
Łukasz Magiera
2a1b35e694
Merge pull request #6361 from filecoin-project/asr/fip-0015
...
Implement FIP-0015
2021-05-31 20:58:21 +02:00
Aayush Rajasekaran
61554cf3e0
Update to latest actors
2021-05-31 14:47:41 -04:00
Aayush Rajasekaran
7fca1c1ee7
Implement FIP-0015
2021-05-31 14:40:54 -04:00
Łukasz Magiera
dd79c2c41a
Merge pull request #6347 from filecoin-project/feat/agg-gas-price
...
Introduce gas prices for aggregate verifications
2021-05-28 12:40:16 +02:00
Jakub Sztandera
cb59daf3c1
Introduce gas prices for aggregate verifications
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2021-05-27 17:51:01 +02:00
Łukasz Magiera
1e4456138e
Merge master into feat/nv13
2021-05-27 12:28:20 +02:00
Aayush Rajasekaran
21b4741e30
Fix randomness fetching around null blocks
2021-05-26 21:06:06 -04:00
Aayush Rajasekaran
7714537239
Allow starting networks from arbitrary actor versions
2021-05-26 12:48:14 -04:00
Łukasz Magiera
43c62f4406
Revert "Allow starting networks from arbitrary actor versions"
2021-05-26 12:33:08 +02:00
Aayush Rajasekaran
cf574ca9a1
Allow starting networks from arbitrary actor versions
2021-05-25 19:30:20 -04:00
Łukasz Magiera
f5409845b5
Some review addressing
2021-05-25 16:07:45 +02:00
Łukasz Magiera
c7ba083fa4
Import precommit batcher
2021-05-18 16:51:06 +02:00
Łukasz Magiera
506f39b294
WIP: Integrate FIP0013
2021-05-11 22:10:29 -04:00