Local dev env with Espresso Sequencer#2
Conversation
d6e846c to
3c588a7
Compare
822aaca to
d1db79b
Compare
0d95fa0 to
db20d1a
Compare
|
@ImJeremyHe since this seems to cause problem with the contract deployment on L1 is it possible that the commitment task interferes with the L1 deployment? Can you confirm that the account we use here for the hotshot commitment isn't otherwise used? |
|
@ImJeremyHe I had a look at the code and it looks like there should be no interference. Another possibility is that there are some hardcoded contract addresses during the test deployment and having the commitment task run before the rollup deployment messes with that. I haven't yet had time to check if that's the case, but currently I don't have another idea. Edit: if we do use a separate account this shouldn't be possible either. |
|
@ImJeremyHe I'm a bit confused that the failing gas estimation happens while initialising the L1 but the failing request is a request to the L2 sequencer. On the upside it now makes more sense that our changes break this. |
|
@ImJeremyHe it's also possible the issues arise from L2 transactions going through the sequencer. Since the sequencer may sequence transactions out of order this could explain why we get transactions replaced errors. It could also explain why we get the permissions error (sometimes) but I can't say for sure. If all the L2 transaction wait until they get a transaction receipt then re-ordering should not be an issue. Maybe would be good to confirm if that is the case I think the places I have looked at inside the Does |
| echo == Funding validator and sequencer | ||
| docker-compose run scripts send-l1 --ethamount 1000 --to validator --wait | ||
| docker-compose run scripts send-l1 --ethamount 1000 --to sequencer --wait | ||
| docker-compose run scripts send-l1 --ethamount 1000 --to espresso-sequencer --wait |
There was a problem hiding this comment.
What is the purpose of this espresso-sequencer account? Does it correspond to the hotshot commitment contract?
There was a problem hiding this comment.
Yes. It needs to commit/deploy the hotshot contract. There are some other ways to do this, like funding in the Genesis Block. But I think it is not a good idea to change so many files and this special account may be useful in later testing.
ea91552 to
bb9b6dd
Compare
bb9b6dd to
19275dd
Compare
| return specialAccount(4); | ||
| } | ||
| if (name == "espresso-sequencer") | ||
| return specialAccount(5); |
There was a problem hiding this comment.
I wonder if the espresso sequencer account should be a user account instead? One could argue we don't require it to be a special account since it's we didn't increment specialAccounts but things are working anyway?
There was a problem hiding this comment.
Thanks! I didn't realize that. This constant is only to write down the information of accounts(for debugging?). Using espresso-sequencer as the name of the account maybe not necessary, but it clearly shows there is a special entity in our integration.
sveitser
left a comment
There was a problem hiding this comment.
LGTM. Just one question remaining.
19275dd to
af0a81d
Compare
No description provided.