ref-fvm icon indicating copy to clipboard operation
ref-fvm copied to clipboard

Reference implementation of the Filecoin Virtual Machine

Results 298 ref-fvm issues
Sort by recently updated
recently updated
newest added

## MVP - [ ] Endpoint for FFI to call into FVM to start up a validator - [ ] CGO FFI bindings - [ ] Syscall access constraining TODO...

Kind: Epic

## Context and motivation In order to ship the EVM runtime as a built-in actor, the easiest solution is to place the code inside the builtin-actors repo so that its...

Topic: Built-in actors
Topic: EVM runtime

## Motivation Foreign runtimes (e.g. EVM) make assumptions about the addressing scheme. Furthermore, existing workloads deployed on those runtimes (e.g. smart contracts on Ethereum) make further assumptions, as is the...

Kind: Design
Hint: Needs design

## Context The FVM team has decided to deliver FVM M2.1 (FEVM) in an incremental fashion. This allows the Filecoin community: - continuously experiment with FEVM, as it's being built...

ARM64 architecture wasn't the problem in https://github.com/filecoin-project/ref-fvm/issues/599, the ancient Linux kernel was. However, we should run unit, integration and conformance tests (as well as the build, obviously) on CI on...

HAMTs currently perform SHA256 hashing inside the actors (for hashing HAMT keys). We should be doing this via a syscall.

Topic: Built-in actors
Topic: Syscalls

Currently, we need to pay an "extern" cost to get the randomness. However, we can pretty easily construct the FVM with 2x finality randomness information to avoid having to go...

Topic: Syscalls

(For M2.2) Besides `invoke` we are adding new entrypoints to actors to support [account abstraction](https://github.com/filecoin-project/FIPs/discussions/388) and updatable actors. Both the FVM and clients will need to make a quick determination...

Hint: Needs design

Currently, we pull in the v7 bundle via cargo. However: 1. We no longer publish the bundle to crates.io. 2. We now build the bundle in github CI. So, we...

Hint: Good first issue
Topic: Testing

Currently, there are two code-paths for actor creation: 1. [Implicitly created actor accounts.](https://github.com/filecoin-project/ref-fvm/blob/7a4526943b404e47137714612f963bef50d30a37/fvm/src/state_tree.rs#L262-L277) 2. [Explicitly created actors (from the init actor)](https://github.com/filecoin-project/builtin-actors/blob/b7a35b4368377f090465553d0d6fe651fefb771b/actors/init/src/lib.rs#L80-L83). Both methods take entirely separate code paths. Proposal: Use...

Kind: Improvement
P3