Skip to content

Commit 3c11191

Browse files
Add Note for Partners to the page directly
1 parent 8f1afc2 commit 3c11191

File tree

5 files changed

+162
-29
lines changed

5 files changed

+162
-29
lines changed

public/locales/es/translation.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,7 @@
144144
"auditsAndBugBounty": "Auditorías y recompenzas por encontrar bugs",
145145
"l2BeatAssessment": "Análisis de L2Beat",
146146

147-
"euclidUpgrade": "Actualización de Euclides",
147+
"euclidUpgrade": "Actualización de Euclid",
148148
"darwinV2Upgrade": "Actualización de Darwin v2",
149149
"darwinUpgrade": "Actualización de Darwin",
150150
"curieUpgrade": "Actualización de Curie",

src/content/docs/en/technology/overview/scroll-upgrades/euclid-upgrade.mdx

Lines changed: 42 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,6 @@ lang: "en"
66
permalink: "technology/overview/scroll-upgrades/euclid-upgrade"
77
---
88

9-
import Aside from "../../../../../../components/Aside.astro"
10-
11-
<Aside type="note" title="Note">
12-
Detailed impacts and action items for partner can be found in this [Note for Partners](https://scrollzkp.notion.site/Euclid-Upgrade-5-Note-for-Partners-1ad7792d22af808cad5ac643a5ecdaf0)
13-
</Aside>
14-
159
### Overview
1610
This upgrade contains five main changes:
1711
- Migration to OpenVM Prover.
@@ -67,4 +61,45 @@ Enforced transaction inclusion is a censorship resistance mechanism. It allows u
6761
Permissionless batch submission is a mechanism to prevent liveness failure. In the unlikely scenario that the Scroll sequencer stops posting or finalizing batches for an extended period of time, this mechanism allows anyone to step up and start posting and finalizing batches.
6862
Both mechanisms force the Scroll sequencer to do its job. As such, they serve as deterrents, and they offer important safety guarantees to the users.
6963

70-
We have also recently transferred control to the [Security Council](https://scroll.io/blog/introducing-scroll-security-council), an independent body of 12 reputable members, forming a 9/12 multisig. The Euclid upgrade will be the first upgrade to be executed by the Security Council.
64+
We have also recently transferred control to the [Security Council](https://scroll.io/blog/introducing-scroll-security-council), an independent body of 12 reputable members, forming a 9/12 multisig. The Euclid upgrade will be the first upgrade to be executed by the Security Council.
65+
66+
### Compatibility
67+
68+
#### Node Operators
69+
70+
##### Phase 1 Changes
71+
* Node operators should migrate to the new MPT version of l2geth. This requires a full resync (from network or from snapshot). We will provide a node release and snapshots later.
72+
Please refer to [Node Runner State Migration Guideline](https://www.notion.so/Node-Runner-State-Migration-Guideline-17b7792d22af80e4ab4bdc294f4f7541?pvs=21) for node runner state migration guide.
73+
* Zktrie nodes will continue to operate, but they will stop verifying state roots on the received block headers. We encourage node operators to migrate to mpt nodes shortly before Euclid.
74+
75+
##### Phase 2 Changes
76+
* Node operators need to be aware of stage-1 (permissionless batches). While this mechanism will most likely not be triggered in practice, if it is, it will require manual steps to recover the nodes. We will provide detailed documentation about this in our next node release notes.
77+
78+
#### Dapps and Indexers
79+
80+
##### Phase 1 Changes
81+
* State commitment structure switches from zktrie to MPT
82+
* Any dapp relying on zktrie proofs must migrate to MPT proofs
83+
* Batch versions will use v5 and v6 (format identical to previous v4 batches)
84+
85+
##### Phase 2 Changes
86+
* Batch headers and blob payload will use a new encoding. The batch versions used in phase-2 will be v7.
87+
* Commit batch calldata will no longer contain block headers. Projects that need this information from L1 must fetch and decode the blob.
88+
* Previously, one `CommitBatch` event would correspond to one commit transaction that carried a single blob. After Euclid phase-2, a single commit transaction can carry multiple batches. This means that indexers should be able to process multiple batches from the same L1 transaction. We maintain the 1 batch = 1 blob semantics and emit a `CommitBatch` event for each batch.
89+
* In permissionless batch mode, the batch submitter commits and finalizes a single batch in a single atomic step through the newly added `commitAndFinalizeBatch` function. While this will be rare in practice, indexers should prepare to handle this case.
90+
* Function signatures will change for commit, finalize, and revert batch. Projects that decode transaction calldata should add support for the new signatures. See the contract changes for the detailed function signatures.
91+
92+
Pre-Euclid-phase-2: `commitBatchWithBlobProof`, `finalizeBundleWithProof`, `revertBatch`
93+
94+
Post-Euclid-phase-2: `commitBatches`, `finalizeBundlePostEuclidV2`, `commitAndFinalizeBatch`, `revertBatch` (new).
95+
96+
* The `committedBatches` array in the `ScrollChain` will become sparse: Only the last batch hash from each commit batch transaction will be stored in the contract state.
97+
* We will migrate to a new message queue contract (`L1MessageQueueV2`) that will store messages by a different (rolling) hash.
98+
99+
In addition, L2 unsafe blocks will no longer include a signature or vanity tag in the `ExtraData` field.
100+
101+
#### Resources
102+
* [Contract changes on GitHub](https://github.com/scroll-tech/scroll-contracts/pull/79)
103+
* [DA codec repository](https://github.com/scroll-tech/da-codec)
104+
105+
Projects requiring additional guidance should open a [ticket on Discord](https://discord.com/channels/853955156100907018/1280768286124146732).

src/content/docs/es/technology/overview/scroll-upgrades/euclid-upgrade.mdx

Lines changed: 41 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,6 @@ lang: "es"
66
permalink: "technology/overview/scroll-upgrades/euclid-upgrade"
77
---
88

9-
import Aside from "../../../../../../components/Aside.astro"
10-
11-
<Aside type="note" title="Note">
12-
Los impactos detallados y las acciones para los socios se pueden encontrar en esta [Nota para Socios](https://scrollzkp.notion.site/Euclid-Upgrade-5-Note-for-Partners-1ad7792d22af808cad5ac643a5ecdaf0).
13-
</Aside>
14-
159
### Resumen
1610

1711
Esta actualización incluye cinco cambios principales:
@@ -76,4 +70,44 @@ La presentación de lotes sin permiso es un mecanismo para prevenir fallas de di
7670

7771
Ambos mecanismos obligan al secuenciador de Scroll a hacer su trabajo. Como tal, sirven como elementos disuasorios y ofrecen garantías de seguridad importantes a los usuarios.
7872

79-
También hemos transferido recientemente el control al [Consejo de Seguridad](https://scroll.io/blog/introducing-scroll-security-council), un organismo independiente de 12 miembros reputados, formando una multisig de 9/12. La actualización Euclid será la primera actualización ejecutada por el Consejo de Seguridad.
73+
También hemos transferido recientemente el control al [Consejo de Seguridad](https://scroll.io/blog/introducing-scroll-security-council), un organismo independiente de 12 miembros reputados, formando una multisig de 9/12. La actualización Euclid será la primera actualización ejecutada por el Consejo de Seguridad.
74+
75+
### Compatibilidad
76+
77+
#### Operadores de Nodo
78+
79+
##### Cambios de la Fase 1
80+
81+
- Los operadores de nodo deben migrar a la nueva versión MPT de l2geth. Esto requiere una resincronización completa (desde la red o desde una instantánea). Proporcionaremos una versión del nodo y instantáneas más adelante. Consulte la [Guía de Migración del Estado del Nodo](https://www.notion.so/Node-Runner-State-Migration-Guideline-17b7792d22af80e4ab4bdc294f4f7541?pvs=21) para obtener instrucciones detalladas.
82+
- Los nodos zktrie seguirán operando, pero dejarán de verificar las raíces de estado en los encabezados de bloque recibidos. Recomendamos a los operadores de nodo migrar a nodos MPT poco antes de Euclid.
83+
84+
##### Cambios de la Fase 2
85+
86+
- Los operadores de nodo deben estar al tanto de la etapa 1 (lotes sin permisos). Aunque es poco probable que este mecanismo se active en la práctica, si lo hace, requerirá pasos manuales para recuperar los nodos. Proporcionaremos documentación detallada sobre esto en nuestras próximas notas de lanzamiento del nodo.
87+
88+
#### Dapps e Indexadores
89+
90+
##### Cambios de la Fase 1
91+
92+
- La estructura de compromiso de estado cambia de zktrie a MPT.
93+
- Cualquier dapp que dependa de pruebas zktrie debe migrar a pruebas MPT.
94+
- Las versiones de lote utilizarán v5 y v6 (formato idéntico a los lotes v4 anteriores).
95+
96+
##### Cambios de la Fase 2
97+
98+
- Los encabezados de lote y la carga útil del blob utilizarán una nueva codificación. Las versiones de lote utilizadas en la fase 2 serán v7.
99+
- El calldata de compromiso de lote ya no contendrá encabezados de bloque. Los proyectos que necesiten esta información desde L1 deben obtener y decodificar el blob.
100+
- Una sola transacción de compromiso puede transportar múltiples lotes. Los indexadores deben poder procesar múltiples lotes desde una misma transacción L1.
101+
- En el modo de lote sin permisos, el remitente compromete y finaliza un solo lote atómicamente con `commitAndFinalizeBatch`.
102+
- Las firmas de funciones cambiarán. Los proyectos deben agregar soporte para las nuevas funciones:
103+
- Antes de Euclid fase 2: `commitBatchWithBlobProof`, `finalizeBundleWithProof`, `revertBatch`
104+
- Después: `commitBatches`, `finalizeBundlePostEuclidV2`, `commitAndFinalizeBatch`, `revertBatch`
105+
- La matriz `committedBatches` será escasa.
106+
- Migramos a `L1MessageQueueV2`, con diferentes hashes de almacenamiento de mensajes.
107+
- Los bloques L2 inseguros ya no incluirán firma o etiqueta de vanidad en `ExtraData`.
108+
109+
#### Recursos
110+
111+
- [Cambios de contrato en GitHub](https://github.com/scroll-tech/scroll-contracts/pull/79)
112+
- [Repositorio de códec DA](https://github.com/scroll-tech/da-codec)
113+
- [Abrir ticket en Discord](https://discord.com/channels/853955156100907018/1280768286124146732)

src/content/docs/tr/technology/overview/scroll-upgrades/euclid-upgrade.mdx

Lines changed: 39 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,6 @@ lang: "tr"
66
permalink: "technology/overview/scroll-upgrades/euclid-upgrade"
77
---
88

9-
import Aside from "../../../../../../components/Aside.astro"
10-
11-
<Aside type="note" title="Note">
12-
İzinsiz batch gönderimi, sistemin çalışmasını sürdürmesini sağlar. Scroll sequencer’ı belirli bir süre boyunca batch göndermez veya son
13-
</Aside>
14-
159
### Genel Bakış
1610

1711
Bu yükseltme beş ana değişikliği içeriyor:
@@ -70,4 +64,42 @@ Euclid’de Scroll, [EIP-7702](https://github.com/ethereum/EIPs/blob/master/EIPS
7064

7165
Euclid ile Scroll, [L2BEAT tarafından tanımlanan standarda](https://medium.com/l2beat/introducing-stages-a-framework-to-evaluate-rollups-maturity-d290bb22befe) göre Aşama-1'e ulaşmayı sağlayacak önemli güvenlik garantileri sunmaktadır.
7266

73-
Zorunlu işlem dahil etme, sansür direncine yönelik bir mekanizmadır. Kullanıcılar, Ethereum üzerinden doğrudan bir işlem gönderebilir ve sequencer’ı bunu dahil etmeye zorlayabilir.
67+
Zorunlu işlem dahil etme, sansür direncine yönelik bir mekanizmadır. Kullanıcılar, Ethereum üzerinden doğrudan bir işlem gönderebilir ve sequencer’ı bunu dahil etmeye zorlayabilir.
68+
69+
#### Düğüm Operatörleri
70+
71+
##### 1. Aşama Değişiklikleri
72+
73+
- Düğüm operatörleri l2geth'in MPT sürümüne geçmelidir. Bu, tam yeniden senkronizasyon gerektirir. Yakında bir sürüm ve anlık görüntüler paylaşılacak. [Geçiş Rehberini](https://www.notion.so/Node-Runner-State-Migration-Guideline-17b7792d22af80e4ab4bdc294f4f7541?pvs=21) inceleyin.
74+
- zktrie düğümleri çalışmaya devam edecek ancak blok başlıklarındaki state root’ları doğrulamayacaktır. Euclid'den önce MPT düğümlerine geçmeniz önerilir.
75+
76+
##### 2. Aşama Değişiklikleri
77+
78+
- İzin gerektirmeyen partiler etkinleşirse, manuel kurtarma gerekecektir. Detaylı belge yakında yayınlanacaktır.
79+
80+
#### Dapps ve İndeksleyiciler
81+
82+
##### 1. Aşama
83+
84+
- State commitment yapısı zktrie'den MPT'ye geçer.
85+
- zktrie kanıtları kullanan dapp’ler MPT'ye geçmelidir.
86+
- v5 ve v6 parti sürümleri kullanılacaktır.
87+
88+
##### 2. Aşama
89+
90+
- Parti başlıkları & blob içeriği yeni formatta olacak (v7).
91+
- Blok başlıkları artık calldata'da olmayacak. L1'den alınmalı ve decode edilmelidir.
92+
- Tek işlemde birden çok parti desteklenir. 1 parti = 1 blob.
93+
- `commitAndFinalizeBatch` ile tek adımda batch gönderimi mümkün.
94+
- Yeni fonksiyon imzaları:
95+
- Öncesi: `commitBatchWithBlobProof`, `finalizeBundleWithProof`, `revertBatch`
96+
- Sonrası: `commitBatches`, `finalizeBundlePostEuclidV2`, `commitAndFinalizeBatch`, `revertBatch`
97+
- `committedBatches` array’i seyrek hale gelir.
98+
- Yeni mesaj kuyruğu `L1MessageQueueV2` kullanılacak.
99+
- Güvensiz L2 bloklarında `ExtraData` artık imza içermez.
100+
101+
#### Kaynaklar
102+
103+
- [Kontrat değişiklikleri](https://github.com/scroll-tech/scroll-contracts/pull/79)
104+
- [DA codec deposu](https://github.com/scroll-tech/da-codec)
105+
- [Discord üzerinden ticket açın](https://discord.com/channels/853955156100907018/1280768286124146732)

src/content/docs/zh/technology/overview/scroll-upgrades/euclid-upgrade.mdx

Lines changed: 39 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,6 @@ lang: "zh"
66
permalink: "technology/overview/scroll-upgrades/euclid-upgrade"
77
---
88

9-
import Aside from "../../../../../../components/Aside.astro"
10-
11-
<Aside type="note" title="Note">
12-
合作伙伴相关的详细影响和行动项目请见这份 [合作伙伴说明](https://scrollzkp.notion.site/Euclid-Upgrade-5-Note-for-Partners-1ad7792d22af808cad5ac643a5ecdaf0)
13-
</Aside>
14-
159
### 概览
1610

1711
此次升级包含五个主要变化:
@@ -75,4 +69,42 @@ Euclid 引入了关键的安全机制,使 Scroll 可达到由 [L2BEAT 定义](
7569

7670
这些机制强制 sequencer 履行职责,提供重要的安全保障。
7771

78-
此外,Scroll 已将控制权交由 [安全委员会](https://scroll.io/blog/introducing-scroll-security-council),由 12 名声誉良好的成员组成,采用 9/12 多签机制。Euclid 将是安全委员会执行的第一个升级。
72+
此外,Scroll 已将控制权交由 [安全委员会](https://scroll.io/blog/introducing-scroll-security-council),由 12 名声誉良好的成员组成,采用 9/12 多签机制。Euclid 将是安全委员会执行的第一个升级。
73+
74+
#### 节点运营商
75+
76+
##### 第一阶段更新
77+
78+
- 节点运营商需迁移至新的 MPT 版本 l2geth。这需要完全重新同步(从网络或快照开始)。稍后我们将发布节点版本和快照。请查看 [节点状态迁移指南](https://www.notion.so/Node-Runner-State-Migration-Guideline-17b7792d22af80e4ab4bdc294f4f7541?pvs=21)
79+
- zktrie 节点将继续运行,但将不再验证区块头中的状态根。建议在 Euclid 升级前迁移至 MPT 节点。
80+
81+
##### 第二阶段更新
82+
83+
- 节点运营商需知悉第一阶段引入的“无需许可的批次”。尽管不太可能在实际中触发,一旦触发将需要手动恢复操作。我们将在下个节点版本中提供详细文档。
84+
85+
#### Dapps 与索引器
86+
87+
##### 第一阶段更新
88+
89+
- 状态承诺结构从 zktrie 切换为 MPT。
90+
- 所有依赖 zktrie 证明的 Dapp 需迁移至 MPT。
91+
- 批次版本为 v5 和 v6(与 v4 格式相同)。
92+
93+
##### 第二阶段更新
94+
95+
- 批次头和 blob 数据将采用新的编码格式(批次版本 v7)。
96+
- 批次承诺 calldata 将不再包含区块头。需要此信息的项目应从 L1 获取并解码 blob。
97+
- 一笔交易可能包含多个批次。索引器需支持处理同一 L1 交易中的多个批次。
98+
- 在无需许可模式中,使用 `commitAndFinalizeBatch` 一步原子提交并终结批次。
99+
- 函数签名更新如下:
100+
- 升级前:`commitBatchWithBlobProof``finalizeBundleWithProof``revertBatch`
101+
- 升级后:`commitBatches``finalizeBundlePostEuclidV2``commitAndFinalizeBatch``revertBatch`
102+
- `committedBatches` 数组将变得稀疏。
103+
- 消息队列合约迁移为 `L1MessageQueueV2`,其消息哈希方式不同。
104+
- 不安全的 L2 区块不再包含签名或自定义标记(`ExtraData` 字段)。
105+
106+
#### 资源
107+
108+
- [GitHub 合约变更 PR](https://github.com/scroll-tech/scroll-contracts/pull/79)
109+
- [DA 编解码器仓库](https://github.com/scroll-tech/da-codec)
110+
- [Discord 提交工单](https://discord.com/channels/853955156100907018/1280768286124146732)

0 commit comments

Comments
 (0)