Skip to content

Commit

Permalink
Merge pull request o1-labs#945 from MinaFoundation/update-o1Labs-refe…
Browse files Browse the repository at this point in the history
…rences

Update O(1) Labs references to o1Labs
  • Loading branch information
shimkiv authored May 10, 2024
2 parents 0048883 + 148c406 commit 14dbbed
Show file tree
Hide file tree
Showing 21 changed files with 76 additions and 71 deletions.
4 changes: 2 additions & 2 deletions docs/about-mina/faq.mdx
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Mina FAQ
description: Frequently asked questions about Mina Protocol.
keywords:
keywords:
- mina faq
- mina language
- zkapp language
Expand Down Expand Up @@ -30,7 +30,7 @@ A Mina node can run with an optional flag to make it an archive node to store hi

### What zero knowledge (zk) proof system does Mina use?

Mina Protocol uses a custom proof system called Kimchi, developed by [O(1) Labs](https://o1labs.org/). Mina is the only blockchain offering infinite recursion.
Mina Protocol uses a custom proof system called Kimchi, developed by [o1Labs](https://o1labs.org/). Mina is the only blockchain offering infinite recursion.

Check out the [Mina Book](https://o1-labs.github.io/proof-systems/plonk/overview.html) to learn more about Kimchi and the cryptography powering Mina Protocol.

Expand Down
2 changes: 1 addition & 1 deletion docs/about-mina/what-are-zero-knowledge-proofs.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,6 @@ import ResponsiveVideo from '@site/src/components/common/ResponsiveVideo';

Zero knowledge proofs keep Mina's blockchain light and your personal data private.

In this video, Brandon from <a href="https://o1labs.org/">O(1) Labs</a> explains what zero knowledge proofs are by comparing them to the game of "Where's Waldo?". Learn what zero knowledge proofs are, how they work, and their importance to Mina and the greater crypto community.
In this video, Brandon from <a href="https://o1labs.org/">o1Labs</a> explains what zero knowledge proofs are by comparing them to the game of "Where's Waldo?". Learn what zero knowledge proofs are, how they work, and their importance to Mina and the greater crypto community.

<ResponsiveVideo src="https://www.youtube.com/embed/GvwYJDzzI-g" />
2 changes: 1 addition & 1 deletion docs/exchange-operators/faq.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ Archive node operators often choose to run redundant archive nodes to store bloc

For convenience, [mina_network_block_data](https://console.cloud.google.com/storage/browser/mina_network_block_data) from the archive node is available to help others in the community backfill any missing information.

This bucket contains blocks from various Mina networks — for example, Mainnet and the most recent Devnet `devnet2`. Filter by filename for the network you want. Note that this bucket contains blocks for various other networks too, such as QAnet, which is not recommended for your testing. QAnet is used by O(1) Labs during targeted iterative development.
This bucket contains blocks from various Mina networks — for example, Mainnet and the most recent Devnet `devnet2`. Filter by filename for the network you want. Note that this bucket contains blocks for various other networks too, such as QAnet, which is not recommended for your testing. QAnet is used by o1Labs during targeted iterative development.

Filenames contain the network name, block height, and state hash of the block. Blocks older than height 25,705 include only the network name and state hash in the filename.

Expand Down
4 changes: 2 additions & 2 deletions docs/exchange-operators/rosetta/run-with-docker.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ To run Mina Rosetta on Apple silicon, you can use the steps in [Building and run

1. [Install Docker](https://www.docker.com/get-started) and check that your Docker configuration has at least 12 GB RAM (the recommended amount is 16 GB).

1. Check the latest release for Mainnet on the official [Mina GitHub releases](https://github.com/MinaProtocol/mina/releases) page.
1. Check the latest release for Mainnet on the official [Mina GitHub releases](https://github.com/MinaProtocol/mina/releases) page.

1. Go to [minaprotocol/mina-rosetta](https://hub.docker.com/r/minaprotocol/mina-rosetta) ` page on the Docker Hub repository. Pull the image with the commit hash matching to the latest Mainnet release.

Expand All @@ -39,7 +39,7 @@ If you want to build your own docker image, you can find more details in [Mina

The container in `/rosetta` includes four entrypoints, which each run a different set of services connected to a particular network.

- **docker-start.sh** (default) - connects the mina node to our Mainnet network and initializes the archive database from publicly-available nightly O(1) Labs backups. This script runs a mina node, mina-archive, a postgresql DB, and mina-rosetta. The script also periodically checks for blocks that may be missing between the nightly backup and the tip of the chain and will fill in those gaps by walking back the linked list of blocks in the canonical chain and importing them one at a time. Take a look at the source for more information about what and how you can configure.
- **docker-start.sh** (default) - connects the mina node to our Mainnet network and initializes the archive database from publicly-available nightly o1Labs backups. This script runs a mina node, mina-archive, a postgresql DB, and mina-rosetta. The script also periodically checks for blocks that may be missing between the nightly backup and the tip of the chain and will fill in those gaps by walking back the linked list of blocks in the canonical chain and importing them one at a time. Take a look at the source for more information about what and how you can configure.
- **docker-standalone-start.sh** - starts only the mina-rosetta API endpoint and any flags passed into the script go to mina-rosetta. Use this for the "offline" part of the Construction API.
- **docker-demo-start.sh** launches a mina node with a very simple 1-address genesis ledger as a sandbox for developing and playing around in. This script starts the full suite of tools (a mina node, mina-archive, a postgresql DB, and mina-rosetta), but for a demo network with all operations occurring inside this container and no external network activity.
- **docker-devnet-start.sh** - connects the mina node to our Devnet network with the archive database initialized in a similar way to `docker-start.sh`. As with `docker-start.sh`, this script runs a mina node, mina-archive, a postgresql DB, and mina-rosetta. `docker-devnet-start.sh` is now just a special case of `docker-start.sh` so inspect the source there for more detailed configuration.
Expand Down
17 changes: 8 additions & 9 deletions docs/node-operators/block-producer-node/getting-started.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -25,19 +25,19 @@ keywords:

# Block Producer Getting Started

Welcome to Mina!
Welcome to Mina!

Get started setting up a Mina node, learn how to [generate a key pair](/node-operators/generating-a-keypair) for use with the network, and install the `mina daemon`.

This documentation is for the **Mainnet** release. You can find the releases and version-specific flags on the [Mina Protocol releases](https://github.com/MinaProtocol/mina/releases) page.
This documentation is for the **Mainnet** release. You can find the releases and version-specific flags on the [Mina Protocol releases](https://github.com/MinaProtocol/mina/releases) page.

## Block Producer Requirements

**Software**: Supported environments include macOS, Linux (Debian 10, 11 and Ubuntu 20.04 LTS), and any host machine with Docker.
**Software**: Supported environments include macOS, Linux (Debian 10, 11 and Ubuntu 20.04 LTS), and any host machine with Docker.

**Processor**: Only x86-64 CPU architecture is supported.

**Hardware**: Sending and receiving MINA does not require any special hardware.
**Hardware**: Sending and receiving MINA does not require any special hardware.

Running a block producer on the Mina network requires at least:

Expand All @@ -49,7 +49,7 @@ Running a block producer on the Mina network requires at least:

**VM Instances**:

O(1) Labs has tested running nodes on several cloud providers. We recommend the following instances for basic node operator needs. Custom requirements and different cost constraints might require a different instance type.
o1Labs has tested running nodes on several cloud providers. We recommend the following instances for basic node operator needs. Custom requirements and different cost constraints might require a different instance type.

- AWS [c5.2xlarge](https://www.ec2instances.info/?filter=c5.2xl&region=us-west-2&cost_duration=daily&selected=c5.2xlarge)
- GCP [c2-standard-8](https://cloud.google.com/compute/docs/machine-types)
Expand All @@ -68,7 +68,7 @@ To discover and install pre-release (Beta) builds, see the [Mina Releases](https

Set up the new Debian `stable` repository and install the latest binary version.

Set up and update the rampup Debian Repository for your platform.
Set up and update the rampup Debian Repository for your platform.

```
sudo rm /etc/apt/sources.list.d/mina*.list
Expand Down Expand Up @@ -99,7 +99,7 @@ sudo ufw allow 3089
```

### Windows
Windows is not natively supported. Instead, use the [Docker instructions](getting-started#docker).
Windows is not natively supported. Instead, use the [Docker instructions](getting-started#docker).

If you are interested in receiving a grant to develop Mina for Windows, email [email protected] or reach out in the [Mina Protocol Discord server](https://discord.gg/minaprotocol).

Expand All @@ -111,7 +111,7 @@ Instead, use the Docker instructions or build from source.

### Docker

Docker is a cross-platform tool. You can download and install Docker on multiple platforms.
Docker is a cross-platform tool. You can download and install Docker on multiple platforms.

Use the Docker installation instructions for your platform on [Get Docker](https://docs.docker.com/get-docker/). After Docker is installed, follow the [Connect to the Mina Network](/node-operators/block-producer-node/connecting-to-the-network#docker) instructions.

Expand All @@ -131,4 +131,3 @@ Enable port forwarding on your router to allow inbound traffic to the following

- TCP port `8302`
- To use the GraphQL service, expose TCP port `3085`

2 changes: 1 addition & 1 deletion docs/node-operators/data-and-history/rosetta.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ The container in `/rosetta` includes 4 scripts, which each run a different set o

#### Mainnet:Online

**docker-start.sh** (default) - connects the mina node to our Mainnet network and initializes the archive database from publicly-available nightly O(1) Labs backups. As with docker-demo-start.sh, this script runs a mina node, mina-archive, a postgresql DB, and mina-rosetta. The script also periodically checks for blocks that may be missing between the nightly backup and the tip of the chain and will fill in those gaps by walking back the linked list of blocks in the canonical chain and importing them one at a time. Take a look at the source for more information about what and how you can configure.
**docker-start.sh** (default) - connects the mina node to our Mainnet network and initializes the archive database from publicly-available nightly o1Labs backups. As with docker-demo-start.sh, this script runs a mina node, mina-archive, a postgresql DB, and mina-rosetta. The script also periodically checks for blocks that may be missing between the nightly backup and the tip of the chain and will fill in those gaps by walking back the linked list of blocks in the canonical chain and importing them one at a time. Take a look at the source for more information about what and how you can configure.

To run docker-devnet-start.sh and connect to the live Mainnet:

Expand Down
5 changes: 2 additions & 3 deletions docs/node-operators/delegation-program/bp-sidecar.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -161,11 +161,10 @@ It likely means you're shipping off data to the ingest pipeline without any bloc

- [Latest Release Notes for Mina Protocol](https://github.com/MinaProtocol/mina/releases)
- [Mina Foundation Delegation Policy](https://minaprotocol.com/blog/mina-foundation-delegation-policy)
- [O(1) Labs Delegation Policy](https://blog.o1labs.org/o-1-labs-delegation-policy-786bf96f9fdd)
- [o1Labs Delegation Policy](https://blog.o1labs.org/o-1-labs-delegation-policy-786bf96f9fdd)
- [Mina Docs: Mina Foundation Delegation Program](foundation-delegation-program)
- [Mina Docs: SNARK-based Uptime System](./uptime-tracking-system)

#### Need any help?
#### Need any help?

Post your questions in the [#Delegation-Program](https://discord.com/channels/484437221055922177/808895957978447882) channel on Mina Protocol Discord.

Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ If you are a block producer looking to participate in the Mina Foundation Delega

:::note

There are two delegation programs in Mina's ecosystem — one from the Mina Foundation and [one from O(1) Labs](https://blog.o1labs.org/o-1-labs-delegation-policy-786bf96f9fdd), Mina's ecosystem partner. This page details the program only for the Mina Foundation.
There are two delegation programs in Mina's ecosystem — one from the Mina Foundation and [one from o1Labs](https://blog.o1labs.org/o-1-labs-delegation-policy-786bf96f9fdd), Mina's ecosystem partner. This page details the program only for the Mina Foundation.

:::

Expand Down Expand Up @@ -156,7 +156,7 @@ All the rewards for epoch N must be delivered (ie. accepted in a block, not just

### How do I calculate the reward payout?

For reference, this explanation describes how reward returns are calculated.
For reference, this explanation describes how reward returns are calculated.

For details, see the [implementation](https://github.com/jrwashburn/mina-pool-payout/blob/main/src/core/payoutCalculator/PayoutCalculatorIsolateSuperCharge.ts) code.

Expand All @@ -171,11 +171,11 @@ At the end of each epoch, do <u>all</u> of the following:

2. Compute the share of stake from the token provider (from both accounts) by dividing the token provider delegation by the total stake. (i.e. `provider_share = provider_delegation / total_stake`). The resulting share should be between 0 and 1.

3. For each block produced that has a non-zero block-reward on the canonical chain rewards must be calculated based on 720 MINA.
3. For each block produced that has a non-zero block-reward on the canonical chain rewards must be calculated based on 720 MINA.

4. Calculate the Mina Foundation payout by multiplying the coinbase reward (equal to `720 MINA` ) by the provider share calculated in the previous step minus an 8% percent fee. (i.e. `payout = (provider_share * 0.92) * 720)`.

5. Send a transaction to the token provider accounts with the appropriate payout and memo - please follow the rules in the "Payout Attribution" section with your transaction.
5. Send a transaction to the token provider accounts with the appropriate payout and memo - please follow the rules in the "Payout Attribution" section with your transaction.
More details in the following source code parts: [PayoutCalculatorIsolateSuperCharge.ts](https://github.com/jrwashburn/mina-pool-payout/blob/7f00dbd9e693f76ea6a950c29862120a170625a9/src/core/payoutCalculator/PayoutCalculatorIsolateSuperCharge.ts#L126) and [ConfigurationManager.ts](https://github.com/jrwashburn/mina-pool-payout/blob/7f00dbd9e693f76ea6a950c29862120a170625a9/src/configuration/ConfigurationManager.ts#L21C15-L21C15).


Expand All @@ -194,16 +194,16 @@ Consider the following:
- Account B is controlled by the Mina Foundation and has 6 million MINA which are delegated to Account A via the Delegation Program.
- Account C is controlled by a third party and has 2 million MINA. This account also delegates to Account A and has also agreed to Account A retaining 8% of the staking rewards.

In this example, the total amount of stake for Account A is 10 million calculated by adding up the balances from all the accounts.
In this example, the total amount of stake for Account A is 10 million calculated by adding up the balances from all the accounts.

Now let's consider Epoch 5. The share of the stake from the Foundation is `6 million MINA / 10 million MINA = 0.6` or 60%. The share of the stake from Account B is `2 million MINA / 10 million MINA = 0.2` or 20%.

3 blocks are produced in this epoch that end up on the canonical chain. The blocks were won by Account A.

1. Account A retains, 0.2 x 720 MINA x 3 blocks = 432 MINA.
2. Mina Foundation, Account B, payout would be: (0.6 x 0.92) x 720 MINA x 3 blocks = 1,192.32 MINA.
3. Account A retains 8%, (0.6 x 0.08) x 720 MINA x 3 blocks = 103.68 MINA.
3. Account C payout would be: (0.2 x 0.92) x 720 MINA x 3 blocks = 397.44 MINA.
2. Mina Foundation, Account B, payout would be: (0.6 x 0.92) x 720 MINA x 3 blocks = 1,192.32 MINA.
3. Account A retains 8%, (0.6 x 0.08) x 720 MINA x 3 blocks = 103.68 MINA.
3. Account C payout would be: (0.2 x 0.92) x 720 MINA x 3 blocks = 397.44 MINA.
4. Account A retains 8%, (0.2 x 0.08) x 720 MINA x 3 blocks = 34.56 MINA


Expand All @@ -213,6 +213,6 @@ Now let's consider Epoch 5. The share of the stake from the Foundation is `6 mil
- [Delegation Program Tiebreak System](/node-operators/delegation-program/delegation-tiebreak)
- [SNARK-based Uptime System](/node-operators/delegation-program/uptime-tracking-system)

#### Need any help?
#### Need any help?

Post your questions in the [#delegation-program](https://discord.com/channels/484437221055922177/808895957978447882) channel on the Mina Protocol Discord.
4 changes: 2 additions & 2 deletions docs/node-operators/delegation-program/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ If you are a block producer looking to participate in the Mina Foundation Delega

:::note

There are two delegation programs in Mina's ecosystem — one from the Mina Foundation and [one from O(1) Labs](https://blog.o1labs.org/o-1-labs-delegation-policy-786bf96f9fdd), Mina's ecosystem partner. This page details the program only for the Mina Foundation.
There are two delegation programs in Mina's ecosystem — one from the Mina Foundation and [one from o1Labs](https://blog.o1labs.org/o-1-labs-delegation-policy-786bf96f9fdd), Mina's ecosystem partner. This page details the program only for the Mina Foundation.

:::

Expand All @@ -46,4 +46,4 @@ Mina Foundation is committed to decentralizing the governance of the Mina protoc

In the Delegation Program, Mina Foundation delegates its tokens to a number of validators. As the validators earn staking rewards associated with the delegation, they must return the remaining rewards to Mina Foundation, but can keep 8% of the staking rewards.

Block producers are selected on a quarterly basis, known as a delegation cycle, based on their Performance Scores (see below) and requirements outlined in the [Mina Foundation Delegation Policy](https://minaprotocol.com/blog/mina-foundation-delegation-policy).
Block producers are selected on a quarterly basis, known as a delegation cycle, based on their Performance Scores (see below) and requirements outlined in the [Mina Foundation Delegation Policy](https://minaprotocol.com/blog/mina-foundation-delegation-policy).
4 changes: 2 additions & 2 deletions docs/node-operators/seed-peers/getting-started.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: Seed Peers Getting Started
sidebar_label: Getting Started
hide_title: true
description: How to run a seed peer. Seed Peers help connect to the network.
description: How to run a seed peer. Seed Peers help connect to the network.
keywords:
- connect to network
- running a seed peer
Expand Down Expand Up @@ -96,7 +96,7 @@ Make sure to create ~/.mina-env as described above so that it can be mounted int

## Peers List

There will be a peers list hosted with a handful of O(1) Labs nodes and another much larger handful of addresses from folks unaffiliated with O(1). This list is curated for nodes that should be great seed peers and will try their best to keep the list up-to-date as well.
There will be a peers list hosted with a handful of o1Labs nodes and another much larger handful of addresses from folks unaffiliated with o1Labs. This list is curated for nodes that should be great seed peers and will try their best to keep the list up-to-date as well.

## Alternate Peer Lists

Expand Down
Loading

0 comments on commit 14dbbed

Please sign in to comment.