ref-fvm
ref-fvm copied to clipboard
Account Abstraction `validate` method
attempt no. 3
tracking #694
- [ ] ffi entrypoint (TODO link PR)
- [x] validate method on ~~kernel~~ executor
- [ ] linker trap on illegal calls
- [ ] caching wasm instance (things may just work:tm: here)
- [x] execution type value
- [x] validate params (XXX: I expect this to change a lot)
- [ ] fil message with evm payload format (spec work)
- Honestly I would love to just have the whole message embedded in params, even if we end up duplicating values
Codecov Report
Merging #848 (dd67800) into master (1039d67) will decrease coverage by
13.88%. The diff coverage is0.00%.
@@ Coverage Diff @@
## master #848 +/- ##
===========================================
- Coverage 51.30% 37.42% -13.89%
===========================================
Files 123 123
Lines 10060 10061 +1
===========================================
- Hits 5161 3765 -1396
- Misses 4899 6296 +1397
| Impacted Files | Coverage Δ | |
|---|---|---|
| fvm/src/call_manager/default.rs | 0.00% <0.00%> (ø) |
|
| fvm/src/call_manager/mod.rs | 0.00% <ø> (-20.00%) |
:arrow_down: |
| fvm/src/executor/default.rs | 0.00% <0.00%> (-1.01%) |
:arrow_down: |
| fvm/src/executor/mod.rs | 0.00% <ø> (ø) |
|
| fvm/src/executor/threaded.rs | 0.00% <ø> (ø) |
|
| shared/src/state/mod.rs | 0.00% <0.00%> (-100.00%) |
:arrow_down: |
| fvm/src/gas/charge.rs | 0.00% <0.00%> (-91.67%) |
:arrow_down: |
| fvm/src/kernel/blocks.rs | 0.00% <0.00%> (-91.57%) |
:arrow_down: |
| fvm/src/init_actor.rs | 0.00% <0.00%> (-87.72%) |
:arrow_down: |
| fvm/src/state_tree.rs | 0.00% <0.00%> (-80.77%) |
:arrow_down: |
| ... and 22 more |
Honestly I would love to just have the whole message embedded in params, even if we end up duplicating values
- We cannot duplicate the actual EVM message params, doubling on-chain storage of messages. No matter how much simpler that would make this.
- The "params" section of the message needs to be ready to pass off to the receiving actor, so we can't just stuff the entire transaction in the params.
That means that the EVM actor will need to piece the transaction back together from a signature and parameters, but that's really not that hard.
The code and design have deviated substantially, so I'm closing this for now.