Skip to content

Commit 4e4a47d

Browse files
committed
Website: introduce page for HF Berkeley and update Mesa one
1 parent c7e68d7 commit 4e4a47d

File tree

4 files changed

+125
-20
lines changed

4 files changed

+125
-20
lines changed
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
---
2+
sidebar_position: 2
3+
---
4+
5+
# Berkeley upgrade
6+
7+
The Berkeley upgrade was the first hardfork of the Mina Protocol, deployed in
8+
June 2024. It introduced zkApps (zero-knowledge applications) and programmable
9+
smart contracts to Mina.
10+
11+
## Overview
12+
13+
The Berkeley upgrade implemented three Mina Improvement Proposals (MIPs):
14+
15+
### MIP-1: Remove supercharged rewards
16+
17+
Removes the supercharged coinbase rewards mechanism from the protocol.
18+
19+
- **MIP**:
20+
[MIP-1](https://github.com/MinaProtocol/MIPs/blob/main/MIPS/mip-0001-remove-supercharged-rewards.md)
21+
22+
### MIP-3: Kimchi
23+
24+
Introduces Kimchi, an updated version of the PLONK proof system with improved
25+
performance and capabilities.
26+
27+
- **MIP**:
28+
[MIP-3](https://github.com/MinaProtocol/MIPs/blob/main/MIPS/mip-0003-kimchi.md)
29+
30+
### MIP-4: zkApps
31+
32+
Introduces zkApps, enabling programmable smart contracts on Mina with
33+
zero-knowledge proofs.
34+
35+
- **MIP**:
36+
[MIP-4](https://github.com/MinaProtocol/MIPs/blob/main/MIPS/mip-0004-zkapps.md)
37+
38+
## TODO
39+
40+
This page needs to be updated with detailed implementation tracking for the
41+
Berkeley features in the Rust node, including:
42+
43+
- Links to OCaml node implementation patches for each feature
44+
- Links to Rust node implementation PRs
45+
- Implementation status and testing coverage
46+
- Any Berkeley-specific configuration or compatibility notes
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
---
2+
sidebar_position: 1
3+
---
4+
5+
# Hardforks
6+
7+
Mina Protocol evolves through hardforks that introduce new features and protocol
8+
improvements. This section tracks the implementation of hardfork features in the
9+
Rust node.
10+
11+
## Overview
12+
13+
A hardfork is a protocol upgrade that is not backward-compatible with previous
14+
versions. All nodes on the network must upgrade to continue participating in
15+
consensus.
16+
17+
The Mina Rust node maintains compatibility with the OCaml node by implementing
18+
the same protocol changes. Each hardfork page in this section documents:
19+
20+
- The features introduced in the hardfork
21+
- Links to official specifications and blog posts
22+
- Implementation tracking via GitHub issues and pull requests
23+
- OCaml node patches that serve as reference implementations
24+
25+
## Hardfork history
26+
27+
### Berkeley (June 2024)
28+
29+
The first hardfork of the Mina Protocol, deployed in June 2024. Berkeley
30+
introduced zkApps and programmable smart contracts to Mina.
31+
32+
See the [Berkeley hardfork page](./berkeley.md) for details.
33+
34+
### Mesa (Upcoming)
35+
36+
The second hardfork of the Mina Protocol. Mesa enhances zkApp capabilities with
37+
increased limits for account updates, events/actions, and on-chain state.
38+
39+
See the [Mesa hardfork page](./mesa.md) for implementation tracking.

website/docs/developers/mesa-upgrade.md renamed to website/docs/developers/hardforks/mesa.md

Lines changed: 31 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -4,44 +4,61 @@ sidebar_position: 3
44

55
# Mesa upgrade
66

7-
The Mesa upgrade is a hardfork of the Mina Protocol that introduces several
8-
enhancements to zkApp capabilities. This page tracks the implementation of these
9-
features in the Rust node.
7+
The Mesa upgrade is the second hardfork of the Mina Protocol that introduces
8+
several enhancements to zkApp capabilities. This page tracks the implementation
9+
of these features in the Rust node.
1010

1111
## Overview
1212

13-
The Mesa upgrade consists of three main protocol improvements:
13+
The Mesa upgrade consists of four main protocol improvements:
1414

15-
### Account update limit increases
15+
### MIP-6: Slot reduction to 90 seconds
1616

17-
Increases the number of account updates allowed per transaction from 10
18-
signature-based and 5 proof-based updates to roughly triple those limits. This
19-
enables more complex zkApp logic to be executed in fewer transactions.
17+
Reduces the slot time from 180 seconds to 90 seconds, enabling faster block
18+
production and improved network responsiveness.
2019

20+
- **MIP**:
21+
[MIP-6](https://github.com/MinaProtocol/MIPs/blob/main/MIPS/mip-0006-slot-reduction-90s.md)
2122
- **Blog post**:
2223
[Road to Mesa: Performance Dialed Up for zkApps](https://www.o1labs.org/blog/account-update-limit)
2324
- **Implementation status**: To be tracked
2425

25-
### Events and actions capacity expansion (MIP-8)
26+
### MIP-7: Increase state size limit
27+
28+
Expands zkApp account state from 8 to 32 fields, allowing developers to store
29+
more data directly on-chain and reducing the need for external storage
30+
workarounds.
31+
32+
- **MIP**:
33+
[MIP-7](https://github.com/MinaProtocol/MIPs/blob/main/MIPS/mip-0007-increase-state-size-limit.md)
34+
- **Blog post**:
35+
[Road to Mesa: Expanding zkApp State with Fewer Constraints](https://www.o1labs.org/blog/increasing-zkapp-state)
36+
- **Implementation status**: To be tracked
37+
38+
### MIP-8: Increase events and actions limit
2639

2740
Increases the field element limit from 100 to 1024 for both events and actions
2841
per transaction, and removes the per-event/per-action mini-cap of 16 field
2942
elements. This allows zkApps to carry more information and instructions in a
3043
single transaction.
3144

45+
- **MIP**:
46+
[MIP-8](https://github.com/MinaProtocol/MIPs/blob/main/MIPS/mip-0008-increase-events-actions-limit.md)
3247
- **Blog post**:
3348
[Road to Mesa: Preparing for the Next Chapter with More Use Cases](https://www.o1labs.org/blog/mip-8-events-actions)
3449
- **Implementation tracking**:
3550
[#1261](https://github.com/o1-labs/mina-rust/issues/1261)
3651

37-
### zkApp state expansion
52+
### MIP-9: Increase zkApp account update limit
3853

39-
Expands zkApp account state from 8 to 32 fields, allowing developers to store
40-
more data directly on-chain and reducing the need for external storage
41-
workarounds.
54+
Increases the number of account updates allowed per transaction from 10
55+
signature-based and 5 proof-based updates to roughly triple those limits. This
56+
enables more complex zkApp logic to be executed in fewer transactions.
4257

58+
- **MIP**:
59+
[MIP-9](https://github.com/MinaProtocol/MIPs/blob/main/MIPS/mip-0009-increase-zkapp-account-update-limit.md)
4360
- **Blog post**:
44-
[Road to Mesa: Expanding zkApp State with Fewer Constraints](https://www.o1labs.org/blog/increasing-zkapp-state)
61+
[Road to Mesa: Performance Dialed Up for zkApps](https://www.o1labs.org/blog/account-update-limit)
4562
- **Implementation status**: To be tracked
4663

4764
## Implementation tracking
@@ -54,8 +71,3 @@ own sub-issue that includes:
5471
- OCaml node patches implementing the feature
5572
- Rust node implementation PRs
5673
- Performance benchmarks and tests
57-
58-
## Additional resources
59-
60-
- [Mesa Hard Fork Project Board](https://www.notion.so/o1labs/Hard-Fork-MIPs-Project-1c9e79b1f910805fb44cdc2b9db2ee8e?p=1c9e79b1f910804da24ed4f96638ab2b&pm=s)
61-
- [Mina Protocol Website](https://minaprotocol.com/)

website/sidebars.ts

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,15 @@ const sidebars: SidebarsConfig = {
7373
items: [
7474
'developers/getting-started',
7575
'developers/updating-ocaml-node',
76-
'developers/mesa-upgrade',
76+
],
77+
},
78+
{
79+
type: 'category',
80+
label: 'Hardforks',
81+
items: [
82+
'developers/hardforks/index',
83+
'developers/hardforks/berkeley',
84+
'developers/hardforks/mesa',
7785
],
7886
},
7987
{

0 commit comments

Comments
 (0)