Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

itests: Test EAM interactions from accounts #10068

Merged
merged 2 commits into from
Jan 23, 2023
Merged

Conversation

magik6k
Copy link
Contributor

@magik6k magik6k commented Jan 19, 2023

Related Issues

Part of filecoin-project/ref-fvm#1491
On top of #10039

Proposed Changes

Additional Info

Checklist

Before you mark the PR ready for review, please make sure that:

  • Commits have a clear commit message.
  • PR title is in the form of of <PR type>: <area>: <change being made>
    • example: fix: mempool: Introduce a cache for valid signatures
    • PR type: fix, feat, build, chore, ci, docs, perf, refactor, revert, style, test
    • area, e.g. api, chain, state, market, mempool, multisig, networking, paych, proving, sealing, wallet, deps
  • New features have usage guidelines and / or documentation updates in
  • Tests exist for new functionality or change in behavior
  • CI is green

@magik6k magik6k force-pushed the test/eam-tests branch 2 times, most recently from 02625c4 to ab6bfa3 Compare January 20, 2023 16:47
@magik6k
Copy link
Contributor Author

magik6k commented Jan 20, 2023

    node_full.go:158: 
        	Error Trace:	/home/circleci/project/itests/node_full.go:158
        	            				/home/circleci/project/itests/eth_account_abstraction_test.go:364
        	Error:      	Received unexpected error:
        	            	implicit message failed with exit code: 18 and error: message failed with backtrace:
        	            	00: f010 (method 4) -- disallowed caller type placeholder (18)
        	            	 (RetCode=18)
        	Test:       	TestEthAccountManagerPermissions

is a valid fail

@magik6k magik6k changed the title [wip] itests: Test EAM interactions from accounts itests: Test EAM interactions from accounts Jan 20, 2023
@arajasek
Copy link
Contributor

    node_full.go:158: 
        	Error Trace:	/home/circleci/project/itests/node_full.go:158
        	            				/home/circleci/project/itests/eth_account_abstraction_test.go:364
        	Error:      	Received unexpected error:
        	            	implicit message failed with exit code: 18 and error: message failed with backtrace:
        	            	00: f010 (method 4) -- disallowed caller type placeholder (18)
        	            	 (RetCode=18)
        	Test:       	TestEthAccountManagerPermissions

is a valid fail

Okay, this isn't a bug, but it is an annoying issue. What should be happening is that the placeholder should get upgraded to an ethaccount, and the call should succeed.

That does happen when we actually send this message. But the StateCall fails, because that applies an implicit message, and the FVM doesn't run the placeholder -> ethaccount logic on implicit calls (it basically doesn't look at the sender at all).

We could just do the placeholder -> ethaccount transformation on Implicit messages as well, it wouldn't break anything. I don't really want too, though. Lotus is kiiiinda misusing the concept of implicit messages the way we StateCall.

@magik6k
Copy link
Contributor Author

magik6k commented Jan 23, 2023

That.. makes a lot of sense.

Swapped StateCall to GasEstimateMessageGas, and now it works

@magik6k magik6k marked this pull request as ready for review January 23, 2023 10:19
@magik6k magik6k requested a review from a team as a code owner January 23, 2023 10:19
@magik6k magik6k merged commit 74b33bd into release/v1.20.0 Jan 23, 2023
@magik6k magik6k deleted the test/eam-tests branch January 23, 2023 18:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants