Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Implement gas relay mode and inclusion data for data attestation #3070

Merged
merged 30 commits into from
Oct 24, 2024

Conversation

QEDK
Copy link
Contributor

@QEDK QEDK commented Oct 10, 2024

What ❔

This PR adds gas relay API support for gasless submission to the Avail network, it also provides the attestation implementation necessary for data attestation.

Why ❔

Gas relay API support is required for Avail partners that choose to pay in a different token. Data attestation ensures that arbitrary tx data cannot be used for rollup finality and that no data withholding attack can occur.

Checklist

  • PR title corresponds to the body of PR (we generate changelog entries from PRs).
  • Tests for the changes have been added / updated.
  • Documentation comments have been added / updated.
  • Code has been formatted via zk fmt and zk lint.

Supersedes #2987

Copy link
Contributor

@dimazhornyk dimazhornyk left a comment

Choose a reason for hiding this comment

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

the logic seems good, but let's work on separating the configs/clients so it is always clear which one is used and what config fields are present

core/lib/config/src/configs/da_client/avail.rs Outdated Show resolved Hide resolved
core/lib/protobuf_config/src/secrets.rs Outdated Show resolved Hide resolved
core/node/da_clients/src/avail/client.rs Outdated Show resolved Hide resolved
core/node/da_clients/src/avail/client.rs Outdated Show resolved Hide resolved
core/lib/config/src/configs/da_client/avail.rs Outdated Show resolved Hide resolved
core/node/da_clients/src/avail/client.rs Show resolved Hide resolved
core/node/da_clients/src/avail/client.rs Outdated Show resolved Hide resolved
@QEDK QEDK force-pushed the dz-sync-layer-da-clients-2 branch from 9ddddfb to 0606be1 Compare October 15, 2024 11:24
core/lib/config/src/configs/da_client/avail.rs Outdated Show resolved Hide resolved
core/lib/config/src/configs/da_client/avail.rs Outdated Show resolved Hide resolved
core/lib/env_config/src/da_client.rs Outdated Show resolved Hide resolved
core/lib/env_config/src/da_client.rs Outdated Show resolved Hide resolved
core/lib/protobuf_config/src/proto/config/da_client.proto Outdated Show resolved Hide resolved
core/lib/protobuf_config/src/da_client.rs Outdated Show resolved Hide resolved
core/lib/protobuf_config/src/secrets.rs Outdated Show resolved Hide resolved
core/node/da_clients/src/avail/client.rs Outdated Show resolved Hide resolved
core/node/da_clients/src/avail/sdk.rs Outdated Show resolved Hide resolved
core/node/da_clients/src/avail/sdk.rs Outdated Show resolved Hide resolved
contracts Outdated Show resolved Hide resolved
@dimazhornyk dimazhornyk added this pull request to the merge queue Oct 23, 2024
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Oct 23, 2024
@dimazhornyk dimazhornyk added this pull request to the merge queue Oct 23, 2024
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Oct 23, 2024
@dimazhornyk dimazhornyk added this pull request to the merge queue Oct 23, 2024
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Oct 23, 2024
@dimazhornyk dimazhornyk added this pull request to the merge queue Oct 24, 2024
Merged via the queue into matter-labs:main with commit 561fc1b Oct 24, 2024
33 checks passed
@dimazhornyk dimazhornyk deleted the dz-sync-layer-da-clients-2 branch October 24, 2024 01:03
github-merge-queue bot pushed a commit that referenced this pull request Nov 5, 2024
🤖 I have created a release *beep* *boop*
---


##
[25.1.0](core-v25.0.0...core-v25.1.0)
(2024-11-04)


### Features

* add `block.timestamp` asserter for AA
([#3031](#3031))
([069d38d](069d38d))
* allow vm2 tracers to stop execution
([#3183](#3183))
([9dae839](9dae839))
* **api:** get rid of tx receipt root
([#3187](#3187))
([6c034f6](6c034f6))
* **api:** Integrate new VM into API server (no tracers)
([#3033](#3033))
([8e75d4b](8e75d4b))
* base token integration tests
([#2509](#2509))
([8db7e93](8db7e93))
* **consensus:** enabled syncing pregenesis blocks over p2p
([#3192](#3192))
([6adb224](6adb224))
* **da-clients:** add Celestia client
([#2983](#2983))
([d88b875](d88b875))
* **da-clients:** add EigenDA client
([#3155](#3155))
([5161eed](5161eed))
* gateway preparation
([#3006](#3006))
([16f2757](16f2757))
* Implement gas relay mode and inclusion data for data attestation
([#3070](#3070))
([561fc1b](561fc1b))
* **metadata-calculator:** Add debug endpoints for tree API
([#3167](#3167))
([3815252](3815252))
* **proof-data-handler:** add first processed batch option
([#3112](#3112))
([1eb69d4](1eb69d4))
* **proof-data-handler:** add tee_proof_generation_timeout_in_secs param
([#3128](#3128))
([f3724a7](f3724a7))
* **prover:** Add queue metric to report autoscaler view of the queue.
([#3206](#3206))
([2721396](2721396))
* **prover:** Add sending scale requests for Scaler targets
([#3194](#3194))
([767c5bc](767c5bc))
* **prover:** Add support for scaling WGs and compressor
([#3179](#3179))
([c41db9e](c41db9e))
* **vm:** Support EVM emulation in fast VM
([#3163](#3163))
([9ad1f0d](9ad1f0d))


### Bug Fixes

* **consensus:** better logging of errors
([#3170](#3170))
([a5028da](a5028da))
* **consensus:** made attestation controller non-critical
([#3180](#3180))
([6ee9f1f](6ee9f1f))
* **consensus:** payload encoding protected by protocol_version
([#3168](#3168))
([8089b78](8089b78))
* **da-clients:** add padding to the data within EigenDA blob
([#3203](#3203))
([8ae06b2](8ae06b2))
* **da-clients:** enable tls-roots feature for tonic
([#3201](#3201))
([42f177a](42f177a))
* extend allowed storage slots for validation as per EIP-7562
([#3166](#3166))
([c76da16](c76da16))
* **merkle-tree:** Fix tree truncation
([#3178](#3178))
([9654097](9654097))
* **tee_prover:** add prometheus pull listener
([#3169](#3169))
([1ffd22f](1ffd22f))
* update logging in cbt l1 behaviour
([#3149](#3149))
([d0f61b0](d0f61b0))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Co-authored-by: zksync-era-bot <zksync-era-bot@users.noreply.github.com>
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