You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I was able to use the fvm-workbench to emit the actor events we are interested in by running some of the built-in Actor itests to get gas traces for emitting actors events.
We should do a complete workstream to get all built-in Actor itests green with the fvm-workbench. This will involve debugging and fixing the issues highlighted in the above PRs.
The text was updated successfully, but these errors were encountered:
I got a bit lost investigating some of this because I was (separate to your efforts) trying to get this to run just to use it as a learning tool. Some things I learned trying to integrate the current ref-fvm and builtin-actors:
A bunch of awkward changes needed to BenchKernel to adapt to the changes in ref-fvm
GasOps is gone, ops integrated into the Kernel now
CircSupplyOps is gone, integrated into FilecoinKernel
ActorOps has an install_actor()
price_list() is now on the Kernel's call_manager
SendOps and UpgradeOps are now things, but they are bound to generic K:Kernel
Syscalls now need to be handled by the kernel, since Add initial support for pluggable syscalls ref-fvm#1922, so, at least in the incarnation I got to, we get an awkward impl<K> SyscallHandler<K> for BenchKernel<K::CallManager> that does a link_syscalls. You can defer to DefaultFilecoinKernel::<K::CallManager>::link_syscalls(linker) to get that done thankfully, but the actual syscalls themselves aren't publicly exported (fvm::syscalls::filecoin) so intercepting requires that those syscalls link up in the way you need here.
fvm::engine::EnginePool does new instead of new_default
fvm::trace::ExecutionEvent::InvokeActor has grown a new property
I'm going to stash my changes for now rather than push a branch because it's quite a mess and this feels like quite a rabbit hole that I probably shouldn't entertain right now!
I was able to use the fvm-workbench to emit the actor events we are interested in by running some of the built-in Actor itests to get gas traces for emitting actors events.
However, not all tests pass with the workbench.
See these PRs for the changes we had to make to
ref-fvm
& built-in Actors to get green itests.filecoin-project/ref-fvm#1962 (cloned FVM 4.0 and made these changes)
filecoin-project/builtin-actors#1505
We should do a complete workstream to get all built-in Actor itests green with the fvm-workbench. This will involve debugging and fixing the issues highlighted in the above PRs.
The text was updated successfully, but these errors were encountered: