Skip to content

Conversation

@camembera
Copy link
Collaborator

  • overview
  • installation
  • contract reference
  • developer guide
  • user guide

@vercel
Copy link

vercel bot commented Sep 12, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Updated (UTC)
berachain-docs-bex Ready Ready Preview Nov 7, 2025 4:52pm
docs-bend Error Error Nov 7, 2025 4:52pm

# Conflicts:
#	apps/bex/.vitepress/config.ts
#	apps/bex/content/developers/guides/pool-creation.md
#	apps/bex/content/developers/migration-guide.md
#	apps/core/.vitepress/config.ts
#	apps/core/content/developers/guides/create-helloworld-contract-using-hardhat.md
#	apps/core/content/developers/guides/deploy-contract-using-nextjs-walletconnect.md
#	apps/core/content/developers/quickstart/frontend.md

- **Validator Setup**: A fully operational Berachain validator node
- **Validator Keys**: Your validator's public key and withdrawal credentials
- **Initial Stake**: At least {{ config.mainnet.minEffectiveBalance.toLocaleString() }} BERA for the initial deposit

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same here, the initial stake must be 10K

To generate the correct credentials:

1. **Calculate the predicted addresses** using the factory's `predictStakingPoolContractsAddresses` function
2. **Generate the withdrawal credentials** using the predicted withdrawal vault address (format: `0x01` + 20-byte withdrawal vault address)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i don't know if we need to be more specific 0x01 + 11 * 0x00 bytes + 20 bytes

Copy link
Collaborator Author

@camembera camembera Oct 2, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

corrected. there were many spots with this
Updated the format description in the "Prepare Withdrawal Credentials" section
Updated the function parameter comment
Updated the deployment parameters description
Updated the JavaScript example comment
Updated the debugging section format verification
Updated the Solidity code example to use new bytes(11) for the 11 zero bytes

bytes memory credentials = abi.encodePacked(bytes1(0x01), withdrawalVault);
```

**Problem: "Signature Verification Failed"**

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This must be made more visible because it leads to a loss of funds. Currently, atm smart contracts do not support BSL signature verification. Hopefully, we will support it in a future upgrade

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would also suggest adding a paragraph explaining that, during the activation process, the validator can deposit directly to the deposit contract in order to start with a greater amount staked, and then provide proof of the correct amount upon activation.
However, we would also advise against doing this for security reason, and underlign that any further direct deposits to the beacon deposit contract after activation are considered donations to the corresponding staking pool, which will be distributed among all shares holders.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

added detail on failed signatures

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants