Skip to main content

75 posts tagged with "CoreDevsCall"

View All Tags

Core Devs Call - 2023/05/03

· 3 min read
Lion - dapplion
Hard Fork Coordinator
0xarmagan
Validator Comms Lead @ Gnosis

Welcome to the weekly Gnosis Core Devs Call, where members of the Gnosis team and contributors gather to discuss the latest developments and updates related to the Gnosis ecosystem. This meeting is held every Wednesday and serves as a platform for participants to collaborate and exchange ideas.

The participants of this call include representatives from various teams such as Erigon, Gateway, Nethermind, Geth, Gnosis DevOps, Gnosis Core Devs, Gnosis DevRels, Gnosis Comms team, and community contributors. The presence of diverse team members ensures that discussions are comprehensive and informative, with insights from multiple perspectives.

For those who missed the live meeting, a full recording is available on YouTube.

The Gnosis Core Devs Call is a crucial component of the Gnosis ecosystem. It provides an opportunity for participants to stay informed, share ideas and collaborate, thus driving innovation and progress within the Gnosis community.

May 3, 2023

Client Team Updates

EL

Confirming EIPs

  • EIP-3651: Warm COINBASE

  • EIP-3855: PUSH0 instruction

  • EIP-3860: Limit and meter initcode

  • EIP-170 is added as well because it was still missing https://eips.ethereum.org/EIPS/eip-170

  • Regarding max code size

  • EIP-6049: Deprecate SELFDESTRUCT

  • EIP-4895: Beacon chain push withdrawals as operations** Gnosis modified. These need to be added to our specs repo https://github.com/gnosischain/specs/issues/5

  • Nethermind: Started work on the shutter chain. Nothing specific to show yet. Running 50% Erigon nodes

  • Erigon: No updates

  • Geth: I got fullsync to kickstart after the database reconstruction: code was missing. I fixed this and now I am debugging the "system call" at the end of the block, where the block reward is distributed. Once this is fixed, and since it's the last thing that gets executed in the block, fullsync should work.

CL

  • Prysm: No updates.
  • Nimbus: No updates.

Chain Infra

Gateway : Nothing specific. Igor is participating in a hackathon today

Devnet

No updates from Nethermind, Erigon or Gateway. Nethermind, ran a tool that generates bad blocks to test if the network handles them well. Everything is working well. Tests on Gnosis’ side; we haven’t tested a lot on our side yet. Defined a todo list of what we are going to test this week. https://github.com/gnosischain/consensus-deployment-ansible/issues/67

Research

Shutterized Beacon Chain Being implemented as a Nethermind plugin

Tests

Hive Last week’s issue was solved. Related to geth being hardcoded. Trying to make this more universal. It was recalculating a hash instead of just taking one received by the API. Ensure that we reach the TTD. Generating some post-shanghai blocks. During each step, we check if the chain is working correctly. Should have some withdrawal tests for end of next week.Focused on integrating the withdrawal contract this week

Core Devs Call - 2023/04/26

· 2 min read
Lion - dapplion
Hard Fork Coordinator
0xarmagan
Validator Comms Lead @ Gnosis

Greetings everyone, and welcome to the weekly Gnosis Core Devs Call. Just a quick reminder that this meeting takes place every Wednesday.

Watch full record on YouTube

Participants: Erigon, Gateway, Nethermind, Geth, Gnosis DevOps, Gnosis Core Devs, Gnosis DevRels, Gnosis Comms team and the contributors.

April 26, 2023

Client Team Updates

EL

  • Nethermind: Got close to releasing the first hive tests. Maybe later today or tomorrow. Preparing a new major release. Found some issues, mostly optimizations and bug fixes. Probably going to be released next week. Will send the release notes once they have them

  • Erigon: New release (2.43) Replaced the light consensus client with a more experimental full consensus version. As it’s a full blown CL implementation, it should also be able to work for Gnosis in the future--externalcl is now default (and the flag was removed).Use --internalcl now to use the new experimental CL. Looking to hire a new core developer. Gnosis HR has been helping. New diagnostic tool https://github.com/ledgerwatch/diagnostics. Idea is to also use it as a recruitment tool

  • Geth: Still has a sync problem. Nethermind hangs up without telling why. Spent some time with Nethermind to fix this. Related to a wrong chain ID. Resulted in the need to resync everything

CL

  • Prysm: No updates.
  • Nimbus: No updates.

Chain Infra

Gateway : No peers found on Devnet (probably just the different genesis).

Devnet

No major updates. Withdrawals look good. Activated ~80% of the keys and withdrawals work. Failure scenario works as well.Exiting worked a few times as well.

Research

Shutterized Beacon Chain The EL specs seem to be clear enough. Nethermind can start prototyping something until libp2p is made available.

Tests

Hive Ran into issues regarding the config. Five basic withdrawal tests should be delivered today or tomorrow. The blocker is regarding the payload. The payload isn’t communicated correctly between CL and EL.

Core Devs Call - 2023/04/19

· 2 min read
Lion - dapplion
Hard Fork Coordinator
0xarmagan
Validator Comms Lead @ Gnosis

Greetings everyone, and welcome to the weekly Gnosis Core Devs Call. Just a quick reminder that this meeting takes place every Wednesday.

Watch full record on YouTube

Participants: Erigon, Gateway, Nethermind, Geth, Gnosis DevOps, Gnosis Core Devs, Gnosis DevRels, Gnosis Comms team and the contributors.

April 19, 2023

Client Team Updates

EL

  • Nethermind: No updates.
  • Erigon: No updates.
  • Geth: Was able to import the state (simulate snap sync)Is now starting the node in full sync, but it’s not connecting / downloading blocks. Once this is done, Guillaume should have a working prototype

CL

  • Prysm: No updates.
  • Nimbus: No updates.

Chain Infra

Gateway

No peers found on Devnet (probably just the different genesis).

Devnet

Wrong configuration was shared. There’s now a mismatch for outside nodes. There’s no Erigon node running at this point. 80% attestation rate (all nodes ran by Nethermind) Shapella went through Lion: does Nethermind have metrics for the network? I.e. withdrawal amounts per block etc. Apparently not. Might potentially be added. Most credentials are still 0x00. Meaning that no withdrawals are currently happening.

Research

Churn coefficient https://hackmd.io/@dapplion/gnosis-churn-limit Defines the number of validators that can join or exit the network in a specific time frame. On Gnosis that number is a bit high, meaning that it would theoretically be possible to get a big stake in the network very quickly. This would require a consensus client code change. Technically a change on the deposit contract could also limit inflow. But that break a lot of assumptions. It doesn’t change anything in the case of outflows.Attacking the light client bridge is exclusively an inflow problem

Shutterized Beacon Chain: is there progress? We’ve got more precise specs on a PR https://github.com/gnosischain/specs/pull/4 Lion: how specific do you need the spec to be? It seems like EL clients have more lax requirements for specs, is that true? On CL everything is specced quite precisely.

Tests

  • Hive

Will start writing Hive tests by the end of this week Improving the genesis loading for Erigon and Nethermind, but hasn’t been tested on Erigon yet. Lion: can we agree on which conditions tests would be considered good enough to move to testnet / mainnet? Ruben thinks it would be enough if we can just run the contract specific parts (balances etc)

Core Devs Call - 2023/04/12

· 2 min read
Lion - dapplion
Hard Fork Coordinator
0xarmagan
Validator Comms Lead @ Gnosis

Greetings everyone, and welcome to the weekly Gnosis Core Devs Call. Just a quick reminder that this meeting takes place every Wednesday.

Watch full record on YouTube

Participants: Erigon, Gateway, Nethermind, Geth, Gnosis DevOps, Gnosis Core Devs, Gnosis DevRels, Gnosis Comms team and the contributors.

April 12, 2023

Client Team Updates

EL

  • Nethermind: No updates. Steadily progressing with Hive tests
  • Erigon: No specific updates, waiting for Shanghai to happen. Marcos was asking for an Erigon config for Gnosis. Erigon doesn’t support single file configs for AuRa chains. It will require some code change. Is this required for Hive tests? Not absolutely necessary, but would be useful so that it’s generic for every client Andrew will take a look at it this week.
  • Geth: No update

CL

Chain Infra

  • Gateway

Bridge validators up and running and there are successful transactions for both (native and AMD) Helped Giveth team to setup their bridge validators by sharing steps via notion. Looked into the shapella issue on devnet

  • Plausible scenario: Lighthouse lost all peers just before it was its time to propose the block, so it began a new chain, then it couldn’t re-connect to reorg so it only proposed blocks when it was its time

Doesn’t seem to be the issue with Erigon or Nethermind Unlikely to repeat in real life because we won’t have that little actual nodes and that many validators. But we need to be careful with Chiado, because the setup is similar

Waiting for the next steps for the next devnet.

  • Gnosis

Setting up network metrics and alerts Grafana and Prometheus running. Doing some tests. We will follow up with new updates next week. Also have Telegram notifications working. We will invite appropriate teams in due time.

Devnet

We have consensus on the current broken devnet. We’re going to spin a new one up. Mainnet hardfork is happening today, so it might be a blocker. To be confirmed by Carlos

Tests

  • Hive

How to open up the network to outside validators? GNO faucet? New testnet for validators to keep Chiado stable for other testing?

Core Devs Call - 2023/04/05

· 4 min read
Lion - dapplion
Hard Fork Coordinator
0xarmagan
Validator Comms Lead @ Gnosis

Greetings everyone, and welcome to the weekly Gnosis Core Devs Call. Just a quick reminder that this meeting takes place every Wednesday.

Watch full record on YouTube

Participants: Erigon, Gateway, Nethermind, Geth, Gnosis DevOps, Gnosis Core Devs, Gnosis DevRels, Gnosis Comms team and the contributors.

April 5, 2023

Client Team Updates

EL

  • Nethermind:

Merged withdrawals to the master branch

  • Erigon:

No updates

  • Geth:

Was still syncing on Monday (~1 month left to sync)

CL

  • Prysm:

No updates

Chain Infra

  • Gateway

Has been helping quite a few teams. Giveth to setup their bridge validator. Max helped Marcos with Hive tests. Took all the traffic from the main Gnosis RPC because Gnosis was experiencing issues. Everything went fine

  • Gnosis

Had an outage on the public RPC. Redirected all the traffic to Gateway

Devnet

  • Gateway (on 4 nodes for 5k validators) that 3 validators are on the right chain and working correctly
    • 2 have Nethermind
    • 1 has Erigon: The last Erigon forked away on the block that it created by itself (#88092). A previous block by the same node has been accepted by the network. Except by the broken Erigon node. The failed block has a different state root and an additional withdrawal. This specific node rejected a block that was considered valid by all other nodes. We don’t exactly know why the broken node rejected the valid block. There was an unwind right before on the broken node. Logs for both Erigon nodes are in the Telegram group
  • Nethermind (5-6 Nethermind nodes, out of which 2 had issues)
  • Lodestar: Seemingly peering issue Ping-pongs between having enough peers and not having enough, so it wasn’t able to keep in sync
  • Teku (although another one was working fine) Started sending FCUs of the same blocks over and over again around 1k blocks before it lost sync Might have been connected to Gateway’s broken Erigon node
  • Gnosis Experiencing issues as well (running Erigon, Nethermind, Teku and Lighthouse, 2.5k keys total).Nodes are stuck on different block numbers. Currently debugging more in depth. None of the 4 validator combinations are working correctly and are on different forks. Giacomo and Igor will keep in touch to debug this.
  • Next steps
    • Find the issue (Andrew)
    • Launch a new devnet Alerts (Lion)

The objective is to track everything that can go bad and send alerts to the relevant parties. Has a private repo with a bunch of alerts. Covered basically everything on the consensus side. Will add the relevant people on the repo async. Will be set up by Gnosis DevOps, Giacomo knows about it already. Ruben tested failed withdrawals on Apr 4, 2023

The current implementation executes withdrawals transactions after standard transactions. This means that the event logs are missed. We might want to drop them, as they are thus useless. To track specific parameters we could add more variables. Erigon behaves in the same way. Instead of using events to check if a withdrawal was successful, we could check the state of the contract to see if the transaction was added to the failed transactions. If not, it should be considered successful This is not super accurate though and doesn’t give great visibility.

Lion thinks it might be possible to do it with the current withdrawal contract implementation, but if not we can add some primitives. There might be something with public variables on the contract:

failedWithdrawalsPointer numberOfFailedWithdrawals

Lion want to know how exactly the devnet was bootstrapped. ruben@nethermind.io will send this offline

Tests

  • Hive

Had a call last Thursday regarding what our objectives were defined a overview of what things should look like. Hopefully more information next week.

Withdrawal Contrat

No updates

Core Devs Call - 2023/03/29

· 2 min read
Lion - dapplion
Hard Fork Coordinator
0xarmagan
Validator Comms Lead @ Gnosis

Greetings everyone, and welcome to the weekly Gnosis Core Devs Call. Just a quick reminder that this meeting takes place every Wednesday.

Watch full record on YouTube

Participants: Erigon, Gateway, Nethermind, Geth, Gnosis DevOps, Gnosis Core Devs, Gnosis DevRels, Gnosis Comms team and the contributors.

Mar 29, 2023

Client Team Updates

EL

  • Nethermind:

Introducing Marcos for Hive tests. Will have a call tomorrow regarding those tests.

After Shapella, Nethermind will probably release a very big version with a lot of changes. Huge amounts of optimizations is coming.. Potential new light mode that would reduce memory consumption a lot

Improving attestation performance Better multi-threading Potentially (but way later) snap sync

  • Erigon:

Canceled their agreement with Gateway for developers, thus Max is no longer an Erigon dev. They want to hire new devs, but will take time. Added the max failed withdrawal parameters to the withdrawals system call, which should now work

  • Geth:

Guillaume has worked around the issue from last week, and is now importing the data to start syncing the chain. It has been running for two days, and there’s probably one more day to go, after which he’ll be able to give an update.

CL

  • Prysm:

No updates. Guillaume is focused on Geth

  • Nimbus:

We’ve written and reviewed our docs to be published soon After this, we’ll publish client diversity docs, so that validators can start using Nimbus.

Chain Infra

  • Gateway

A mainnet bridge validator is now running and has already processed a few transactions.Extra monitoring was added there.

Devnet

Withdrawals are working again. Tried partial withdrawals, not full exit yet. Gnosis mostly deployed Nethermind nodes. No one seems to know if Erigon nodes still sync. Andrew’s Erigon nodes still work

There’s close to 100% attestation participation.Ruben can do a full exit on 1024 nodes to drain the GNO in the deposit contract.

There’s a faucet for GNO afterwards.Ruben expects Gnosis to be testing this a bit more

Lion will run Truffle scripts

Tests

  • Hive

There’s a call tomorrow, invite in Telegram Happening at 3pm CET

Withdrawal Contrat

Adam’s audit is done, and another external audit should be done by early next week. The minimum amount to deposit is 1/32 GNO, which could be an attack vector. Looking into it. We might want to increase that minimum.

Core Devs Call - 2023/03/22

· 3 min read
Lion - dapplion
Hard Fork Coordinator
0xarmagan
Validator Comms Lead @ Gnosis

Greetings everyone, and welcome to the weekly Gnosis Core Devs Call. Just a quick reminder that this meeting takes place every Wednesday.

Participants: Erigon, Gateway, Nethermind, Geth, Gnosis DevOps, Gnosis Core Devs, Gnosis DevRels, Gnosis Comms team and the contributors.

Mar 22, 2023

Client Team Updates

EL

  • Nethermind: Bad block fix was shipped.
  • Erigon: No updates
  • Geth: Imported some blocks, but there’s issues with the freezer, hopefully that’s the last hurdle

CL

  • Prysm: No updates

Chain Infra

  • Gateway

Increasing mainnet RPC to 75% traffic. Implementing monitoring for the Chiado bridge. As soon as this is done, they’ll deploy both bridges for mainnet

Devnet

Some issues: 3 phases

  • Launching chain

    • No problem
  • Merge

    • Issues caught before the merge and fixed in time
  • Shapella hard fork

    • Erigon nodes got stuck with “known bad hash”. Erigon now stuck with another bug
  • Gateway switched Erigon nodes to Nethermind

    • Issues regarding sync committees Mar 22 13:01:07.055 WARN Error processing HTTP API request method: POST, path: /eth/v1/beacon/pool/sync_committees, status: 400 Bad Request, elapsed: 4.13746ms
  • Erigon

    • Was a good test, revealed some issues. DDoS protection from geth was problematic but is fixed. Missing gas limit implementation. The withdrawal contract reverts on Erigon, but works fine on Nethermind. Missing all the slots (or most?) Bad blocks on Sepolia, but works on Goerli. If any bad block is detected on Goerli, please tell Andrew. Could be linked to an old version of Erigon. Andrew will check on their Sepolia validators
  • Nethermind

    • Consensus issues need to be investigated separately. We need consensus between both clients to test client diversity / parity

Igor: where do (automatic) withdrawals go for genesis validators? Do they have a withdrawal address? Lion: the default tooling sets addresses to 0 Jorge: they sometimes set withdrawal addresses on genesis or after, depending on what’s to be tested Ruben: can help on how to check if withdrawals are happening or not The failed withdrawals per slot are fixed to 4 on Nethermind’s side for now Lion: this should be a consensus config Marek: how can we be sure that we are triggering all testing paths? Lion: we could add coverage tools from Solidity to automate those tests Igor: we need tooling to automatically test withdrawals, because they happen on both consensus and execution Lion: for the withdrawal contract we can easily test it on chain now because it’s insolvent at genesis anyways, as the validators are created in genesis and thus there’s no GNO in the contract Jorge: instead of deploying a new devnet or messing with the current one, we can create a shadow fork and modify some storage there to test specific scenarios I.e. removing the GNO in the contract for example Marek: downside is that this is not automated testing for the future Jorge: indeed, but we don’t have automated tests yet and that’s the best we have

  • Testnet

Was supposed to hard fork next week: still realistic? Igor: probably wise to postpone until Erigon is ready

Tests

  • Hive

Max not present: no update

Withdrawal Contrat

  • mGNO is getting removed Would require a contract upgrade on devnet. Will be tested on devnet by triggering actions that provide good solidity coverage

Core Devs Call - 2023/03/15

· 5 min read
Lion - dapplion
Hard Fork Coordinator
0xarmagan
Validator Comms Lead @ Gnosis

Greetings everyone, and welcome to the weekly Gnosis Core Devs Call. Just a quick reminder that this meeting takes place every Wednesday.

Participants: Erigon, Gateway, Nethermind, Geth, Gnosis DevOps, Gnosis Core Devs, Gnosis DevRels, Gnosis Comms team and the contributors.

At this meeting, the team talked about xDAI's base fee and options are being evaluated. Research is underway on Home stakers affected by ISP bandwidth limitation. Also shared updates from CL and EL teams.

Watch on Gnosis Chain Youtube

Mar 15, 2023

Client Team Updates

EL

  • Nethermind: Aiming to automate the contract deployment But having issues with the deploy contract. Going with truffle deployments. Contracts work as expected. Issues with deployment only.

  • Erigon: Working on documentation internally. Andrew is in holiday so wasn’t able to join the devnet yet. Maybe can next week (back on Monday)

  • Geth: Managed to rebuild the trie. Needs to finish importing blocks, after which it should be possible to follow the chain. Needed because snapshot sync doesn’t work. Will then serve snapsyncs to other instances of Geth

CL

  • Prysm: Doesn’t work with the “CAPELLA_FORK_EPOCH: 9999999999999” “hack” either, more investigations to do.
  • Guillaume: Might work when building locally instead of using their Docker image

Chain Infra

  • Gateway

Provisioned bridges on Chiado. If everything goes right -> mainnet. Serving half of the requests on the official RPC. Service 75% of the Chiado RPC requests. Figured out issues with The Graph. Figured out an issue with Erigon sometimes stopping to sync. Because of invalid blocks produced by Nethermind. Not super focused on withdrawals right now.

Provided Ethereum archival nodes for Gnosis Bridge validators

Devnet

New one to be spun up after deployments are automated (probably today or tomorrow)

Target configs: Monday Target launch date: Tuesday

  • Testnet

Tentative date for Chiado hard fork Nethermind: 10 days to 2 weeks (maybe a bit optimistic) Erigon: the code is ready and they don’t expect any big issues, so the hard fork could come relatively soon

Tests

  • Hive

It’s actually a lot of work to adapt Hive tests for Gnosis. The Erigon team is meeting IRL to discuss this Updating tests will take at least a few weeks, maybe a month or two. It’s a bigger task than anticipated

People

Nethermind agreed to take on DevOps and QA roles and is looking for people

Research

  • Home stakers affected by ISP bandwidth limitation (because of CL). Workaround?

Idea: Reduce transaction pool size (EL) Several members of community receiving letters from ISP saying their service will be cancelled due to high bandwidth consumption

Past Research

  • Research: 5s Blocktimes for Gnosis

There would be an advantage of having 4 or 6s block times to be in sync with Ethereum. Connected block builders could be used to have optimistic mechanisms in contracts for cross-chain arbitrage.

  • Also requires Genesis times to be aligned

Gnosis Dec-08-2021 07:55:40 PM Ethereum Dec-01-2020 12:00:23 PM Meaning that have one block time be a multiple of the other one would probably still not work either way

xDAI as base fee

Nothing actionable right now. The last weekend showed the problem. Gnosis wants to be decentralized and resilient. The base token (DAI) is essentially wrapped USD bank deposits at this point. Mostly USDC (60-70%). DAI is very affected by potential US banking problems.

  • Problematic for credible neutrality

Problematic because it’s linked to a specific “region” (i.e. the USA) Moving to GNO as a base token

The idea of a stable coin as a base token is nice and many like it based on an internal poll. How bad is it actually if DAI has an issue?

Having fees be twice cheaper is not a huge issue, as in any case there’s still an auction for block space DAI is not integral to the security of the chain, whatever its price.

It still impacts all the users that are forced to hold DAI because of Gnosis.

It would impact a lot of DeFi as well Using a less centralized stable instead of GNO would be a nice option.

There’s some very early research. We could schedule an open research call.

  • Option: fork Maker on Gnosis

In the same way that Maker accepts 1 USDC as collateral to get 1 DAI, we could start with that and then add options to add GNO or other crypto assets as collateral. Gives a lot more flexibility. We can limit the amount of xDAI minted through DAI and force more of it to be minted through decentralized collateral

  • Thought Experiment: GNO as a Native Token

Some ideas (lacking expertise) Different opcodes for "legacy" native asset transfers vs. GNO transfers Different txn types (e.g. type 1, EIP-1559, and GNO-native txns) Utilizing legacy RPC URLs to relay txns using a JIT airdrop of GNO

Misc

Figure out deploy strategy on Chiado so that we can replicate it on Mainnet I.e. go through the same deposit contract upgrades etc

Core Devs Call - 2023/03/08

· 3 min read
Lion - dapplion
Hard Fork Coordinator
0xarmagan
Validator Comms Lead @ Gnosis

Greetings everyone, and welcome to the weekly Gnosis Core Devs Call. Just a quick reminder that this meeting takes place every Wednesday. Watch on Gnosis Chain YouTube channel. ‍

Participants: Erigon, Gateway, Nethermind, Geth, Gnosis DevOps, Gnosis Core Devs, Gnosis DevRels, Gnosis Comms team and the contributors.

In this meeting, after a quick update was received from Chain Infra and Client teams, devnet planning was discussed in the Withdrawals process. Test processes continue. In addition, new positions were evaluated for needs.

Mar 8, 2023

Client Team Updates

EL

  • Nethermind: Managed to get the contract deployed on devnet. Will figure things out with Lion async
  • Erigon: No update
  • Geth: No update

CL

  • Prysm: No update

Chain Infra

  • Gateway : Close to final setup for a bridge validator for Chiado. Hopefully this week. If it works, they’ll go to mainnet with the same config

Withdrawals contract

  • Adam reached out, the audit is ready
  • Lion will follow up with that

Devnet

  • Contract deployment issues
  • Ownership: See hiring
  • Nethermind is maintaining the current DevNet short term Carlos, Lion and maybe someone from Gateway will maintain them. The current devnet is mostly internal for Nethermind It has a very low amount of validators. For a public one we should create a new devnet. Maybe we can still open it at least to Erigon so they can start testing Infra (explorers etc) are already mostly set up Lion is suggesting to use Nimbus’ explorer (which is way more minimal) in case beaconcha.in can’t keep up The withdrawal address contract isn’t known in advance, which is a bit problematic. Ideally we should have create2 deployments so that the address is known in advance The address should be identical across deployments to make things easier
  • Needs to be deployed with the same EOA. Ruben will try to get this to work
  • New larger devnet: We’ll give one week of notice to allow everyone to spin up infra

Tests

  • Hive Max brought in by Anna. He’s working with the Gateway team and moved to Erigon. Worked on the Hive tests to figure out the differences between Ethereum and Gnosis Crafted a new genesis for Gnosis. Went down a rabbit hole with dependencies and adapting the tests to work with Gnosis. Will ask questions regarding the network Commitment unclear

People

Philippe officially taking over as TPM “Core Devs”!

  • Hiring Roles QA: maintain test suite (Hive tests, etc) DevOps: DevNets, Shadowforks, Testnets Where headcount will sit: Gnosis, or with a core team Need help with JDs + recruiting

Core Devs Call - 2023/03/01

· 6 min read
0xarmagan
Validator Comms Lead @ Gnosis

Greetings everyone, and welcome to the weekly Gnosis Core Devs Call. Just a quick reminder that this meeting takes place every Wednesday.

Participants: Erigon, Gateway, Nethermind, Geth, Gnosis DevOps, Gnosis Core Devs, Gnosis DevRels, Gnosis Comms team and the contributors.

The main topic of discussion during the meeting was the Devnet and Hive test. The team is currently making preparations for the forthcoming Shapella upgrade. Furthermore, updates were given on withdrawal contract, the Client team, Chain infrastructure, and POSDAO test.

Watch on Gnosis Chain YouTube channel

Topics

  • Withdrawals Contract
  • Shapella Upgrade
  • Core Dev Team updates
  • Client Team Update
  • Chain Infrastructure Updates
  • Devnet
  • Hive and POSDAO test
  • Get rid of mGNO

Call Notes

Gnosis Core Devs Call Notes

Withdrawals contract

  • We should try to commit to a date soonish
    • Devnet with actual contract deployed today by Nethermind and joined tomorrow by Erigon
  • Semi final state
    • Adam should be taking a look for the audit
      • "I’m still auditing, but also waiting for your response on two threads. I should be able to wrap up the audit shortly after I receive the fixed code."
    • Lion is getting gas numbers to have accurate parameters
    • Coming up with a plan so that Jorge can easily deploy

Client team updates

EL

Nethermind

  • Figured out the issue with withdrawal testnet
  • Next step: spinning up a new one with the actual withdrawal contract’s bytecode

Erigon

  • Implemented the withdrawal logic for Gnosis chain
    • Not tested yet

Geth

  • Guillaume went back to snap sync, but it makes Nethermind hang up
  • Trying some sort of manual snap sync by exporting data from Nethermind and importing directly into geth

CL

Prysm

  • New release with the Gnosis changes also includes Capella changes
    • Breaks the fork id logic for networks where the Capella fork hasn’t been scheduled yet
    • One can set a Capella fork block far in the future to test it out

Devnet

  • No updates except the ones mentioned in the team updates
  • How are we going to split validator duties?
    • Ideally multiple teams should run keys
    • Between 1k and 10k in total
    • A third for Nethermind, Gnosis and Gateway

Chain infra

Gateway

  • Work on bridge validator
    • Created ansible scripts
  • Slowdown while Denver is happening
  • Updated the way traffic gets redirected from the Gnosis RPC to Gateway to better track RPS
  • Beaconchain

Additional Workstreams (will join this call in the future)

  • Shutterized Beacon Chain
  • Account Abstraction

Tests

Hive

  • Nethermind has been discussing it internally
    • They think it would be bad long term if Nethermind took ownership of testing because they’re the majority client already, and thus don’t really want to do it
    • At the same time, it’s unrealistic to fork without testing in place
  • Dapplion thinks that if Nethermind has capacity it would be nice to still do it and diversify later on
    • The shortest path right now to move forward is for Nethermind to implement tests
  • On Gnosis, previously Jorge wrote tests (but also implementation, so that’s not great)
    • We don’t have experience in-house for testing
    • We might not have enough work to hire a full-time test developer
  • Guillaume thinks that for a short period of time it could occupy a full-time developer position and will ask for finer details from the Ethereum Foundation / tester
  • On Ethereum, there’s a dedicated testing team and contributions from clients teams from time to time
    • Ideally, teams give ideas for good tests but don’t implement them
    • They also have tests other than Hive
  • Guillaume would be willing to help writing Hive tests with the Nethermind team potentially
  • Tests are a blocker right now
    • We have most implementations and devnets, but no tests
  • Dapplion: is it a big issue to not have tests if devnets work as expected?
    • Are there code paths that we can’t trigger on a devnet?
      • Failed withdrawals are trivial to trigger on devnet
    • Could be an issue for regression testing, but we could freeze that code
  • Dapplion: does Gateway have core devs that could do this?
    • Anna: not sure, will ask
  • For consensus-breaking features, tests are essential
    • Also useful for edge cases, which can be difficult to trigger on devnets / testnets
  • Guillaume and Marek don’t feel comfortable going to mainnet without tests
  • Dapplion: it might take a lot of time to hire someone to work on this, so ideally we should jumpstart it with existing talent to not delay the fork significantly
    • Ask: Find person who is familiar with Hive tests (HR? - ?), in worst-case scenario find Go (but has cold-start problem)
  • Next steps
    • Dapplion asks Nethermind to reconsider taking part ownership
    • Nethermind will talk about it internally and keep us up to date
    • Gateway should check if they have talent / capacity
    • Gnosis should consider hiring someone
    • Dapplion and Guillaume will take this offline
    • Stefan: Erigon - Go? (but unable to take it on)
      • The core team is rather small and there probably aren’t any free developers
  • POSDAO
    • Written in JS
    • Jorge would prefer to get rid of them
      • The code is quite complex
      • Still makes it possible to tests withdrawals

Miscellaneous

mGNO: sole purpose is to allow to use 1 GNO for validators and emulate the 32 ETH on mainnet